1.QNX开放性
2.qnx系统中怎么编译一个应用程序
3.基于高通SA8295平台下的译源译QNN环境配置及模型转换
4.QNXQNX结构
5.Qt的Pro文件常用关键字详细探究
6.什么是系统
QNX开放性
QNX以其高度的开放性,深受UNⅨ程序员的码源码编青睐。它兼容POSIX系统,译源译并配备了UNⅨ特色的码源码编工具集,包括编译器、译源译调试器、码源码编音乐官网源码X Window系统和TCP/IP协议,译源译这些都为UNⅨ开发者提供了熟悉的码源码编环境和资源。 QNX支持广泛的译源译CPU类型,如AMD的码源码编ElanSC///、Am DE/SE、译源译Cyrix MediaGX、码源码编x系列(包括及以上版本)以及Pentium系列,译源译甚至包括STMicroelectronics的码源码编STPC。这使得QNX能够适应多种硬件平台。译源译 在总线连接方面,QNX兼容CompactPCI、EISA、ISA、MPE(RadiSys)、STD、STD 、PC/、PC/-Plus、PCI、PCMCIA、VESA和VME等多种标准,这为系统集成提供了极大的灵活性和扩展性。 外设设备支持也同样全面,涵盖了各类SCSI设备、IDE/EIDE驱动器、以太网卡(包括M/M速度)和Token Ring网卡,还有FDDI接口卡、多种PCMCIA设备、闪存以及声卡等,满足了多样化的设备接入需求。扩展资料
Gordon Bell和Dan Dodge在年成立了Quantum Software Systems公司,他们根据大学时代的一些设想写出了一个能在IBM PC上运行的名叫QUNIX(Quick UNIX)的系统,直到AT&T发律师函过来才把名字改成QNX。qnx系统中怎么编译一个应用程序
QNX是由QNX软件系统有限公司开发的实时操作系统。重点强调的是实时。基本特征
QNX是一个分布式、嵌入式、可规模扩展的实时操作系统。它遵循POSIX.1(程序接口)和POSIX.2(Shell和工具)、部分遵循POSIX.1b(实时扩展)。
嵌入式操作系统与普通的操作系统有着很大的不同,不同的根源来自于嵌入式资源的限制,你需要在比pc小的多得多的cpu速度、内存、flash的嵌入式硬件环境中完成多任务、实时、内存访问、硬件设备操作等等复杂任务。几乎在开发的任何时候你都要考虑到如何使用最短代码、最小的内存得到最快速度的计算和操作。
基于高通SA平台下的QNN环境配置及模型转换
在进行基于高通SA平台下的QNN环境配置及模型转换时,首先需从高通QPM creat point 网站下载qnn dsk包、hexagon sdk包、以及android ndk包等。
接下来,配置环境变量以确保QNN、TensorFlow和ONNX能够正确运行。例如,emadif源码设置环境变量ANDROID_NDK_ROOT和QNN_SDK_ROOT,分别指向android ndk和QNN SDK的根目录,如下所示:
$ export ANDROID_NDK_ROOT=/home/xxx/automotive_qnn_SDK/android-ndk-rc-linux-x_/android-ndk-rc/
export QNN_SDK_ROOT=/home/xxx/automotive_qnn_SDK/qnn-v1..0._/
此外,配置Tensorflow运行所需的环境变量,通过运行相应的脚本实现,例如:
source ${ QNN_SDK_ROOT}/target/x_-linux-clang/bin/envsetup.sh -t
此步骤中,通过python查看当前环境变量路径确保正确加载。
配置ONNX环境变量以支持其运行,类似地使用相应的脚本完成设置。
环境变量设置完成后,配置QNX工具链以在QNX环境中运行QNN模型。
为了执行一个自定义操作包的浅层模型,首先编译模型以支持CPU后端,然后构建示例模型,通过QNN SDK生成模型库。
在CPU上运行libqnn_model_float.so模型,使用QNN SDK提供的工具运行模型。
进行CNN模型的转换和执行时,首先将模型转换为.cpp、.bin和.json文件,然后生成对应的动态库(.so文件)。
指定编译器以针对特定架构(如QNX)完成编译,生成模型的量化版本,即生成.cpp、.bin和.json文件。
最终,通过QNN SDK提供的工具运行转换后的模型,并查看模型的检测结果,例如使用python脚本来展示InceptionV3模型的分类结果。
QNXQNX结构
QNX,作为X平台上卓越的嵌入式实时操作系统,以其独特的微内核架构脱颖而出。这个架构基于微内核和完全地址空间保护,提供了实时、稳定和可靠的性能。QNX已经成功移植到PowerPC、MIPS和ARM等不同内核,成为国内嵌入式领域的广泛应用者。 QNX的微内核结构采用平板式内存设计,如图所示,所有程序共享同一地址空间,尽管效率高,但任何指针错误都可能导致内核崩溃。相比之下,大内核内存结构将内核与驱动、协议等分离,提供更高稳定性,但调试驱动较为困难,需重新编译内核。QNX采取了微内核策略,将内核置于受保护空间,驱动和应用程序则在程序空间运行,确保了系统的可靠性和灵活性。 微内核结构的优势包括:模块独立,如驱动和文件系统,故障不会影响核心,且模块可以动态加载或卸载;应用程序与内核API统一,开发和调试类似。高可靠性的内核使得QNX成为嵌入式操作系统的可靠选择。 QNX网络结构由io-net、协议模块和设备驱动模块构成,每个模块协同工作,以简化编程。io-net作为核心,springdatajpa源码负责数据处理和管理,其他模块与其通信。网络设备驱动位于硬件和io-net之间,负责配置、报告数据和接收io-net调度。 QNX网络驱动程序在初始化时,要设置网络设备并注册到io-net,确保上层模块正确操作。接收数据时,驱动通过DMA获取并处理,然后传递给上层。发送数据则通过io-net的管理函数,驱动配置设备并通知上层数据发送完成。 网络设备信息的统计由驱动程序维护,通过io-net查询,如Nicinfo工具通过/dev/io-net/en0获取。网络设备驱动是嵌入式开发的基础,QNX的微内核特性简化了驱动开发,为初学者提供了友好的环境。扩展资料
Gordon Bell和Dan Dodge在年成立了Quantum Software Systems公司,他们根据大学时代的一些设想写出了一个能在IBM PC上运行的名叫QUNIX(Quick UNIX)的系统,直到AT&T发律师函过来才把名字改成QNX。Qt的Pro文件常用关键字详细探究
在Qt编程中,pro文件是项目配置的核心,用于指定项目构建过程中的各种参数和选项。以下是对pro文件中一些常用关键字的详细探究。
QT += 表示项目使用的Qt模块,如GUI、网络等。
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets 表示若Qt版本大于4,则添加widgets模块。
CONFIG关键字用于配置编译选项:
CONFIG += c++ 表示使用C++标准编译。
CONFIG += debug|release|release_and_debug 指定编译配置模式。
CONFIG += console 表示项目为控制台应用程序。
CONFIG +=shared|static 指定生成动态链接库或静态链接库。
向项目添加文件包括源文件、头文件、ui文件。
SOURCES += 表示包含源文件。
HEADERS += 表示包含头文件。
FORMS += 表示包含ui文件。
TARGET=ssqqss 设置生成的应用程序文件名。
目标安装路径INSTALLS配置:
qnx: target.path = /tmp/$${ TARGET}/bin: 在QNX平台下,目标文件安装到/tmp/$${ TARGET}/bin。
else: unix:!android: target.path = /opt/$${ TARGET}/bin: 在非QNX的Unix平台且非Android下,安装到/opt/$${ TARGET}/bin。
!isEmpty(target.path): INSTALLS += target: 若目标路径非空,则将目标文件添加到安装列表。
TEMPLATE关键字用于指定项目类型:
TEMPLATE = lib 生成动态链接库或静态库。
TEMPLATE = app 生成可执行文件。
TEMPLATE = subdirs 包含多个子项目。
TEMPLATE = app_bundle macOS应用bundle。
LIBS关键字用于链接库:
LIBS += -lsystem_library 链接系统库。
LIBS += -L/path/to/library -lmylibrary 链接静态或动态库。
DESTDIR关键字指定编译输出文件的目标目录。
INCLUDEPATH和DEPENDPATH用于指定头文件和依赖关系的搜索路径。
INCLUDEPATH用于确保正确包含头文件。
DEPENDPATH用于查找项目的依赖关系。
DEFINES关键字用于预处理器宏定义:
CONFIG(release, debug|release): DEFINES += RELEASE_STATUS 若项目处于debug模式,则定义RELEASE_STATUS宏。
通过这些关键字,开发者可以灵活配置Qt项目构建过程,实现高效、aws源码定制化的开发体验。
什么是系统
系统是什么
尽管系统一词频繁出现在社会生活和学术领域中,但不同的人在不同的场合往往赋予它不同的含义。长期以来,系统概念的定义和其特征的描述尚无统一规范的定论。一般我们采用如下的定义:系统是由一些相互联系、相互制约的若干组成部分结合而成的、具有特定功能的一个有机整体(集合)。
我们可以从三个方面理解系统的概念:
(1)系统是由若干要素(部分)组成的。这些要素可能是一些个体、元件、零件,也可能其本身就是一个系统(或称之为子系统)。如运算器、控制器、存储器、输入/输出设备组成了计算机的硬件系统,而硬件系统又是计算机系统的一个子系统。
(2)系统有一定的结构。一个系统是其构成要素的集合,这些要素相互联系、相互制约。系统内部各要素之间相对稳定的****、组织秩序及失控关系的内在表现形式,就是系统的结构。例如钟表是由齿轮、发条、指针等零部件按一定的方式装配而成的,但一堆齿轮、发条、指针随意放在一起却不能构成钟表;人体由各个器官组成,单个各器官简单拼凑在一起不能成其为一个有行为能力的人。
(3)系统有一定的功能,或者说系统要有一定的目的性。 系统的功能是指系统与外部环境相互联系和相互作用中表现出来的性质、能力、和功能。例如信息系统的功能是进行信息的收集、传递、储存、加工、维护和使用,辅助决策者进行决策,帮助企业实现目标。
与此同时,我们还要从以下几个方面对系统进行理解:系统由部件组成,部件处于运动之中;部件间存在着联系;系统各主量和的贡献大于各主量贡献的和,即常说的1+1〉2;系统的状态是可以转换、可以控制的。
系统在实际应用中总是以特定系统出现的,如消化系统、生物系统、教育系统等,其前面的修饰词描述了研究对象的物质特点,即“物性”, 而“系统”一词则表征所述对象的整体性。
对某一具体对象的研究,既离不开对其物性的描述,也离不开对其系统性的描述。系统科学研究将所有实体作为整体对象的特征,如整体与部分、结构与功能、稳定与演化等等。backmir源码
[编辑本段]计算机系统
以下是有关现在关于操作系统的文章。
我们常说的系统通常是指操作系统。
一、计算机软件与操作系统
功能强大的计算机自从走进了人类的生活就发挥着越来越重要的作用,随着时代的发展,计算机已与人们的日常生活息息相关。不能不说计算机软件日新月异的发展在此起着关键作用。可以这么说,离开了软件,计算机就成了废铜烂铁。
计算机机软件大致可以分为两类:系统软件和应用软件。
系统软件用于管理计算机资源,并为应用软件提供一个统一的平台。
应用软件则在系统软件的基础上实现用户所需要的功能。
而操作系统(Operating System,简称os)则是最基本的系统软件,它控制计算机的所有资源并提供应用程序开发的基础。
二、操作系统诞生的原因
计算机是由CPU、内存、磁盘、显卡、声卡等许许多多设备组成的,而且这些设备的厂商众多,品种繁多,而且不同厂商生产的同种设备虽然完成同种功能,但是具体细节却存在千差万别。
为了正确地管理和使用这些设备来实现具体的应用,这样程序员就得了解和掌握各种设备的工作原理。
而且对于同种设备,由于不同的硬件厂商在实现细节上的差异使得程序员再次陷入了复杂的硬件控制的深渊。
必须找到一种方法使得程序员从苦海中脱离出来!多年的研究与发展终于使得这个愿望成为现实。这个解决方法就是在硬件的基础上加载一层软件来管理整个系统。
这个软件通过设备驱动程序来与计算机硬件打交道,通过一系列的功能模块将整个计算机硬件系统抽象成为一个公共、统一、开放的接口—虚拟机,从而使得程序员不必再陷入各种硬件系统的具体细节!
这一层软件就是操作系统。
三、什么是操作系统
操作系统是一个大型的软件系统,其功能复杂,体系庞大。
从不同的角度看的结果也不同,正是“横看成岭侧成峰”,下面我们通过最典型的两个角度来分析一下。
1。从程序员的角度看
正如前面所说的,如果没有操作系统,程序员在开发软件的时候就必须陷入复杂的硬件实现细节。程序员并不想涉足这个可怕的领域,而且大量的精力花费在这个重复的、没有创造性的工作上也使得程序员无法集中精力放在更具有创造性的程序设计工作中去。
程序员需要的是一种简单的,高度抽象的可以与之打交道的设备。
将硬件细节与程序员隔离开来,这当然就是操作系统。
从这个角度看,操作系统的作用是为用户提供一台等价的扩展机器,也称虚拟机,它比底层硬件更容易编程。
2。从使用者的角度看
从使用者的角度来看,操作系统则用来管理一个复杂系统的各个部分。
操作系统负责在相互竞争的程序之间有序地控制对CPU、内存及其它I/O接口设备的分配。
比如说,假设在一台计算机上运行的三个程序试图同时在同一台打印机上输出计算结果。那么头几行可能是程序1的输出,下几行是程序2的输出,然后又是程序3的输出等等。
最终结果将是一团糟。这时,操作系统采用将打印输出送到磁盘上的缓冲区的方法就可以避免这种混乱。在一个程序结束后,操作系统可以将暂存在磁盘上的文件送到打印机输出。
从这种角度来看,操作系统则是系统的资源管理者。
四、操作系统发展历史
下面我们结合计算机的发展历史来回顾一下操作系统的发展历程。
1。第一代计算机(-):真空管和插件板
年代中期,美国哈佛大学、普林斯顿高等研究院、宾夕法尼亚大学的一些人使用数万个真空管,构建了世界上第一台电子计算机。开启计算机发展的历史。这个时期的机器需要一个小组专门设计、制造、编程、操作、维护每台机器。
程序设计使用机器语言,通过插板上的硬连线来控制其基本功能。
这个时候处于计算机发展的最初阶段,连程序设计语言都还没有出现,操作系统更是闻所未闻!
2。第二代计算机(-):晶体管和批处理系统
这个时期计算机越来越可靠,已从研究院中走出来,走进了商业应用。
但这个时期的计算机主要完成各种科学计算,需要专门的操作人员维护,并且需要针对每次的计算任务进行编程。
第二代计算机主要用于科学与工程计算。使用FORTRAN与汇编语言编写程序。在后期出现了操作系统的雏形:FMS(FORTRAN监控系统)和IBMSYS(IBM为机配备的操作系统)
3。
第三代计算机(-):集成电路芯片和多道程序
年代初,计算机厂商根据不同的应用分成了两个计算机系列,一个针对科学计算,一个针对商业应用。
随着计算机应用的深入,对统一两种应用的计算机需求出现了。这时IBM公司试图通过引入System/来解决这个问题。
与这个计划配套,IBM公司组织了OS/操作系统的开发,然后复杂的需求,以及当时软件工程水平低下使得OS/的开发工作陷入了历史以来最可怕的“软件开发泥潭”,诞生了最著名的失败论著----《神秘的人月》。
虽然这个开发计划失败了,但是这个愿望却成为了计算机厂商的目标。
此时,MIT、Bell Lab(贝尔实验室)和通用电气公司决定开发一种“公用计算机服务系统”----MULTICS,希望其能同时支持数百名分时用户的一种机器。结果这个计划的研制难度超出了所有人的预料,最后这个系统也以失败结束。不过,MULTICS的思想却为后来的操作系统很多提示。
年代未,一位贝尔实验室曾参加过MULTICS研制工作的计算机科学家Ken Thompson,在一台无人使用的PDP-7机器上开发出了一套简化的、单用户版的MULTICS。后来导致了UNIX操作系统的诞生。
目前UNIX操作系统主导了小型机、工作站以及其他市场。
也是至今最有影响力的操作系统之一,而Linux也是UNIX系统的一种衍生。
4。第四代计算机(-今):个人计算机
随着计算机技术的不断更新与发展,计算机神奇般地闯入了人们的生活,现在以低廉的价格就可以获得强大计算能力的计算机。
价格不再是阻拦计算机普及的门槛时,降低计算机的易用性就显得十分重要!由于UNIX系统的本身特点,使得其不太适合于在运行在个人计算机上,这时就需要一种新的操作系统。
在这一历史关键时候,IBM公司由于低估了PC机的市场,并未使用最大的力量角逐这一市场,这时Intel公司趁机进入,成为了当今微处理器的老大。
同时善于抓住时机的微软公司的总裁比尔·盖茨适时地进入了这一领域,用购买来的CP/M摇身一变成为MS-DOS,并凭借其成为个人计算机操作系统领域的霸主。
虽然是苹果公司在GUI方面先拔头筹,但由于苹果公司的不兼容、不开放的市场策略,未能扩大战果,这时微软又适时地进入了GUI方面,凭借WINDOWS系统再次称雄!
五、操作系统构成
一般来说,操作系统由以下几个部分组成:
1)进程调度子系统:
进程调度子系统决定哪个进程使用CPU,对进程进行调度、管理。
2)进程间通信子系统:
负责各个进程之间的通信。
3)内存管理子系统:
负责管理计算机内存。
4)设备管理子系统:
负责管理各种计算机外设,主要由设备驱动程序构成。
5)文件子系统:
负责管理磁盘上的各种文件、目录!
6)网络子系统:
负责处理各种与网络有关的东西。
六、操作系统结构设计
操作系统有多种实现方法与设计思路,下面仅选取最有代表性的三种做一简单的叙述。
1。整体式系统结构设计
这是最常用的一种组织方式,它常被誉为“大杂烩”,也可说,整体式系统结构就是“无结构”。
这种结构方式下,开发人员为了构造最终的目标操作系统程序,首先将一些独立的过程,或包含过程的文件进行编译,然后用链接程序将它们链接成为一个单独的目标程序。
Linux操作系统就是采用整体式的系统结构设计。但其在此基础上增加了一些形如动态模块加载等方法来提高整体的灵活性,弥补整体式系统结构设计的不足。
2。层次式系统结构设计
这种方式则是对系统进行严格的分层,使得整个系统层次分明,等级森严!这种系统学术味道较浓!实际完全按照这种结构进行设计的操作系统不多,也没有广泛的应用。
可以这么说,现在的操作系统设计是在整体式系统结构与层次式系统结构设计中寻求平衡。
3。微内核系统结构设计
而微内核系统结构设计则是近几年来出现的一种新的设计理念,最有代表性的操作系统有Mach和QNX。
微内核系统,顾名思义就是系统内核很小!比如说QNX的微内核只负责:
¨ 进程间的通信
¨ 低层的网络通信
¨ 进程调度
¨ 第一级中断处理
七、操作系统横向比较
计算机历史中出现了许许多多的操作系统,然后大浪淘沙,无情地淘汰了许多,只留下一些经历过市场考验的:
1。
桌面操作系统:
1)MSDOS:Intel x系列的PC机上的最早的操作系统,微软公司产品,曾经统治了这个领域,现在已逐渐被自家兄弟WINDOWS 9x系列所代替,现在除了一些低档机外已不多见。
2)Windows 9x:微软公司产品,从Windows 3。
x发展而来,现在是基于Intel x系列的PC机上的主要操作系统,也是现然个人电脑中装机量最大的操作系统。面向桌面、面向个人用户。
3)Mac OS:苹果公司所有,界面友好,性能优异,但由于只能运行在苹果公司自己的电脑上而发展有限。
但由于苹果电脑独特的市场定位,现在仍存活良好。
[1]4)linux:Linux是一种计算机操作系统和它的内核的名字。它也是自由软件和开放源代码发展中最著名的例子。
严格来讲,Linux这个词本身只表示Linux内核,但在实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU 工程各种工具和数据库的操作系统(也被称为GNU/Linux)。
基于这些组件的Linux软件被称为Linux发行版。一般来讲,一个Linux发行套件包含大量的软件,比如软件开发工具,数据库,Web服务器(例如Apache),X Window,桌面环境(比如GNOME和KDE),办公套件(比如 ),等等。
2。
服务器操作系统:
1)UNIX系列:UNIX可以说是源远流长,是一个真正稳健、实用、强大的操作系统,但是由于众多厂商在其基础上开发了有自己特色的UNIX版本,所以影响了整体。在国外,UNIX系统可谓独树一帜,广泛应用于科研、学校、金融等关键领域。
但由于中国的计算机发展较为落后,UNIX系统的应用水平与国外相比有一定的滞后。
2)Windows NT系列:微软公司产品,其利用Windows的友好的用户界面的优势打进服务器操作系统市场。但其在整体性能、效率、稳定性上都与UNIX有一定差距,所以现在主要应用于中小企业市场。
3)Novell Netware系列:Novell公司产品,其以极适合于中小网络而著称,在中国的证券行业市场占有率极高,而且其产品特点鲜明,仍然是服务器系统软件中的长青树。
系统 xìtǒng [system]∶按一定的关系组成的同类事物
[编辑本段]人体系统
由各个器官按照一定的顺序排列在一起,完成一项或多项生理活动的结构叫系统。
人体共有八大系统:运动系统、神经系统、内分泌系统、循环系统、呼吸系统、消化系统、泌尿系统、生殖系统。这些系统协调配合,使人体内各种复杂的生命活动能够正常进行。
例如:口 - 咽 - 食管 - 胃 - 肠(小肠 - 大肠 - 直肠)- 肛门(其中包括:肝、胰和唾液腺等器官)
系统:是指相互联系又相互作用着的对象的有机组合。
系统:是由相互作用和相互依赖的若干组成部分结合而成的,具有特定功能的有机整体,而且这个有机整体又是它从属的更大系统的组成部分
★八大系统的作用:
一、运动系统:运动系统由骨、软骨、关节和骨骼肌等构成。起支架、保护和运动的作用。
二、神经系统:神经系统由神经元组成,是由中枢神经系统和遍布全身的周围神经系统而组成。在体内起主导作用;一方面它控制和调节个器官、系统的活动;另一方面通过神经系统的分析与综合,使人体对环境变化的刺激作出相应的反应,达到人体环境的统一。
三、内分泌系统:内分泌系统由多种腺体组成。
通过分泌不同的激素(雄性、雌性激素、胰岛素、肾上腺素)对整个人体的生长、发育、新陈代谢和生殖起到调节作用。
四、循环系统:循环系统由心脏、血管和淋巴管组成。它将消化系统的吸收的营养物质和肺吸收的氧送到全身器官的组织和细胞,同时将他们的代谢产物及CO2运送到肾、肺、皮肤排出体外。
以保证人体的新陈代谢不断。
五、呼吸系统:由呼吸道和肺组成。吸入新鲜空气,通过肺泡内的气体交换,使血液得到氧并排除Co2。
六、消化系统:有口腔、咽、食管、小肠、大肠等组成。是食物的消化和吸收的功能。供人体所需要的书屋和能量。
七、泌尿系统:由肾脏、输尿管、膀胱、尿道等组成。
排出体内多余的水分及代谢产物或毒素。
八、生殖系统:产生生殖细胞,繁殖后代。
[编辑本段]网络操作系统
网络操作系统严格来说应称为软件平台,因为目前并非单一的网络操作系统一统天下,而是存在着多种网络操作系统并存的情况,这种情况是由以下两方面的原因造成的:
1 。
以目前常用的酶来说,主要有UNIX的系统,网络系统和Windows NT的系统。以推出的时间来说, UNIX的为最早,网络为第二, Windows NT的最晚。除去技术上的原因,依靠推出时间早的优势, UNIX的几乎独霸了最早具有连网需求的邮电,银行,铁路,军事等领域,而随着网络技术的发展,虽然出现了像视窗新技这样界面更友好的操作系统,但用户出于保护投资及使用习惯上的原因不情愿完全抛弃一种操作系统,从而导致了操作系统的共存与混用。
2 。各种操作系统在网络应用方面都有各自的优势,而实际应用却千差万别,这种局面促使各种操作系统都极力提供跨平台的应用支持。由于以互联网的TCP / IP协议为基础,而的TCP / IP协议正是的UNIX的标准协议,互联网的高速发展自然就为的UNIX提供了极大的机遇,微软早在Windows 中里就提供了内嵌的TCP / IP的协议,其的Windows NT网络操作系统当然更是把对TCP / IP协议的支持作为其重要的开发策略;而随着视窗客户的日益增多,使得UNIX的,均提供对网络的Windows的支持。
2024-12-22 12:38
2024-12-22 12:06
2024-12-22 11:52
2024-12-22 11:40
2024-12-22 11:25
2024-12-22 10:49