计算机操作系统——操作系统的发展历程

操作系统的发展历程

《计算机操作系统(慕课版)》(汤小丹)书中p5-p15

一、未配置操作系统的计算机系统

从1945年诞生的第一台计算机,到50年代中期的计算机,都属于第一代计算机。这时还未出现OS,对计算机的全部操作都是由用户采取人工方式进行的。

1.人工操作方式

早期的操作方式是由程序员将事先己穿孔的纸带(或卡片),装入纸带输入机(或卡片输入机)。再启动它们将纸带(或卡片)上的程序和数据输入计算机,然后启动计算机运行。仅当程序运行完毕并取走计算结果后,才允许下一个用户上机。这种人工操作方式有以下两方面的缺点:

  1. 用户独占全机,即一台计算机的全部资源由上机用户所独占。
  2. CPU 等待人工操作。当用户进行装带(卡)卸带(卡)等人工操作时,CPU 及内存等资源是空闲的。

可见,人工操作方式严重降低了计算机资源的利用率,此即所谓的人机矛盾。虽然CPU的速度在迅速提高,但IO设备的速度却提高缓慢,这使CPU与IO设备之间速度不匹配的矛盾更加突出。为此,曾先后出现了通道技术,缓冲技术,然而都未能很好地解决上述矛盾,直至后来引入了脱机输入/输出技术,才获得了相对较为满意的结果。

2.脱机输入/输出(Off-line I/O)方式

在输入时,事先将程序和数据装入纸带输入机,在一台外围机的控制下将纸带上的数据和程序输入磁带,当CPU需要这些数据时再将数据从磁带调入,输出时同理,先将数据输出到磁带上,再由外围机控制进行输出,从而提升了I/O速度。

二、单道批处理系统(Single Batch Processing System)

1950年代中期进入第二代晶体管计算机。单道批处理系统是一组监控程序,为了实现对作业的连续控制,需要把一批作业以脱机的方式输入到磁带上,并在监控程序的控制下,每当一项作业完成后,程序将控制权交给监控程序,监控程序自动调入磁带上下一个作业,直至磁带上的所有作业被全部完成,从而使这批作业能一个接一个的被处理,减少空闲等待时间。虽然作业是一批一批完成的,但是在内存中始终只保持一项作业。

特征

  1. 自动性。自动逐个运行一批作业。
  2. 顺序性。调入内存的先后顺序与程序在磁带中的顺序一致。
  3. 单道性。内存中只存在一个程序,在执行完成或出现异常后装入后继程序运行。

缺点

在运行时如果遇到耗时的I/O操作,则CPU需要等待I/O完成之后才能完成继续的执行,这严重拖累了Cpu的运行,并且内存中仅装入一道程序必然会造成内存的浪费,因此便有了多道批处理系统。

三、多道批处理系统(Multiprogrammed Batch Processing System)

1960年代中期诞生的第一台小规模集成电路计算机IBM 360(第三代计算机系统)在体积、功耗、速度和可靠性上有了显著改善,取得了显著成功,同时计算机系统进入了更多工作领域。OS/360是第一个能运行多道程序的批处理系统。多道批处理系统相较于单道批处理系统改变在于在内存中同时装载多项作业,在该系统中,用户所提交的作业先存放在外存上,并排成“后备队列”,然后由作业调度程序按照一定的算法从后备队列中选择若干个作业调入内存,使他们共享CPU和其他资源。由于内存中装在多个程序,因此在程序运行过程中遇到I/O等需要等待的耗时操作时,可以调度另一程序执行,使多道程序轮流交替执行,从而使CPU保持忙碌状态,提高运行效率。由于需要完成CPU、内存与I/O设备等资源的分配调度等工作,因此多道程序的设计与实现复杂很多。

特点

  1. 多道。内存中存放多个程序。
  2. 宏观上并行。由于任务切换着执行,并且切换时间很短,因此在宏观上各程序并行执行。
  3. 微观上串行。由于CPU只有一个,因此只能同时运行一个程序,各程序间交替执行。

优点与缺点

  1. 资源利用率高
  2. 系统吞吐量大
  3. 平均周转时间长
  4. 无交互能力

需要解决的问题

  1. 处理机争用问题
  2. 内存分配和保护的问题
  3. I/O设备分配问题
  4. 文件的组织和管理问题
  5. 作业的组织和管理问题
  6. 用户与系统的接口问题

若在计算机系统中增加处理以上问题的一组软件,这组软件应包括:能有效管理和组织四大资源的软件、合理地对各类作业进行调度和控制他们运行的软件以及方便用户使用计算机的软件。正是这样一组软件构成了操作系统。因此操作系统被定义为:操作系统是一组能有效地组织和管理计算机硬件和软件资源,合理地对各类作业进行调度,以及方便用户使用的程序的集合。

四、分时系统(Time-Sharing Operating System,TOS)

所谓分时技术,是指把处理器的运行时间分成很短的时间片,按时间片轮流把处理器分配给各联机作业使用。若某个作业在分配给它的时间片内不能完成其计算,则该作业暂时停止运行,把处理器让给其他作业使用,等待下一轮再继续运行。由于计算机速度很快,作业运行轮转得也很快,因此给每个用户的感觉就像是自己独占一台计算机。分时操作系统是指多个用户通过终端同时共享一台主机(共享主机),这些终端连接在主机上,用户可以同时与主机进行交互操作而互不干扰。因此,实现分时系统最关键的问题是如何使用户能与自己的作业进行交互,即当用户在自己的终端上键入命令时,系统应能及时接收并及时处理该命令,再将结果返回用户(人机交互)。分时系统也是支持多道程序设计的系统,但它不同于多道批处理系统。多道批处理是实现作业自动控制而无须人工干预的系统,而分时系统是实现人机交互的系统,这使得分时系统具有与批处理系统不同的特征。

主要特征

  1. 同时性。同时性也称多路性,指允许多个终端用户同时使用一台计算机,即一台计算机与若干台终端相连接,终端上的这些用户可以同时或基本同时使用计算机。
  2. 交互性。用户能够方便地与系统进行人机对话,即用户通过终端采用人机对话的方式直接控制程序运行,与同程序进行交互。
  3. 独立性。系统中多个用户可以彼此独立地进行操作,互不干扰,单个用户感觉不到别人也在使用这台计算机,好像只有自己单独使用这台计算机一样。
  4. 及时性。用户请求能在很短时间内获得响应。分时系统采用时间片轮转方式使一台计算机同时为多个终端服务。

五、实时系统

实时系统是指系统能及响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致地运行。

实时系统的类型

  1. 工业(武器)控制系统
  2. 信息查询系统
  3. 多媒体系统
  4. 嵌入式系统

实时任务的类型

周期性实时任务和非周期性实时任务

周期性实时任务按指定周期循环执行,非周期性实时任务执行伴随着截止时间,截止时间分为:开始截至时间(收到请求后最迟开始执行时间)、完成截止时间(在指定时间内完成任务)

硬实时任务和软实时任务

硬实时任务(HIrd Real-time Task,HRT)是指系统必须满足任务对截止时间的要求,否则可能出现难以预测的后果。用于工业和武器控制的实时系统,通常它所执行的是硬实时任务。软实时任务(Soft Real-time Task,SRT)也联系着一个截止时间,但并不严格,若偶尔错过了任务的截止时间,对系统产生的影响也不会太大。诸如用于信息查询系统和多媒体系统中的实时系统,通常是软实时任务。

特征

  1. 多路性
  2. 独立性
  3. 及时性
  4. 交互性(简单交互性)
  5. 可靠性

六、网络操作系统

网络OS是用于在计算机网络环境下对网络资源进行管理和控制,实现数据通信及对网络资源的共享,为用户提供网络资源接口的一组软件和规程的集合。网络OS建立在网络中的计算机各自不同的单处理机OS之上,为用户提供使用网络资源的桥梁。常见的局域网上的OS有UNIX、Linux、Windows NT/2000/Server等。

网络操作系统的特征

  1. 硬件独立性:系统可以运行于各种硬件平台之上,例如,可以运行于Intel 80x86系统,也可以运行于面向精简指令集计算机(reduced instruction set computing,RISC)的系统,如DEC Alpha、MIPS R4000等。
  2. 接口一致性:系统为网络中的共享资源提供一致性的接口,即针对同一性质的资源,采用统一的访问方式和接口。
  3. 资源透明性:系统能对网络中的资源进行统一管理,能够根据用户的要求对资源进行自动选择和分配。
  4. 系统可靠性:系统利用资源在地理上分散的优点,通过统一的管理、分配和调度手段,确保了整个网络的安全可靠。如果一个节点和通信链路出现故障,则可屏蔽该节点或重新定义新的通信链路,以保证网络的正常运行。
  5. 执行并行性:系统不仅实现了在每个节点计算机中各道进程的并发执行,而且实现了网络中多个节点计算机上进程的并行执行。

网络 OS 的功能

网络OS不仅涵盖了单处理机OS的全部功能,还具有支持数据通信、应用互操作、网络管理等功能。

为了实现网络中计算机之间的数据通信,网络OS应具有如下基本功能:①连接的建立与拆除;②报文的分解与组装;③传输控制;④流量控制;⑤差错的检测与纠正。为了实现多个网络之间的通信和资源共享,不仅需要将它们从物理上连接在一起,还需要使不同网络中的计算机系统之间能进行通信(信息互通)和实现资源共享(信息互用)。为此,在网络OS中必须提供应用互操作功能,以实现“信息互通性”及“信息互用性”。在网络中引入网络管理功能,可以确保最大限度地增加网络的可用时间、提高网络设备的利用率、改善网络的服务质量以及保障网络的安全性等。

七、分布式操作系统

(一)分布式系统

分布式系统(distributed system),是基于软件实现的一种多处理机系统,是多个处理机通过通信线路互联而构成的松散耦合系统,系统的处理和控制功能分布在各个处理机上。换言之,分布式系统是利用软件系统方式构建在计算机网络上的一种多处理机系统。

与传统的多处理机系统(包括多处理机和多计算机等)相比,分布式系统的不同之处在于:①分布式系统中的每个节点都是一台独立的计算机,并配置有完整的外部设备;②分布式系统中节点的耦合程度更低,地理分布区域更加广阔;③分布式系统中的每个节点均可以运行不同的OS,每个节点均拥有自己的文件系统,除了本节点的管理外,还有其他多个机构会对其实施管理。

针对分布式系统,已有很多不同的定义。例如:分布式系统是一些独立的计算机的集合,但是对这个系统的用户来说,系统就像一台计算机一样。再如:分布式系统是能为用户自动管理资源的网络OS,它能调用用于完成用户任务所需要的资源,而整个网络就像一个大的计算机系统一样对用户是透明的。归纳起来,分布式系统应具有以下几个主要特征。

  1. 分布性:分布式系统由多台计算机组成,从位置和地域范围来看,它们是分散的和广阔的,此即地理位置的分布性。从系统的功能来看,功能分散在系统的各个节点计算机上,此即功能的分布性。从系统的资源来看,资源也分散配置在各节点计算机上,此即资源的分布性。从系统的控制来看,在一般的分布式系统中,计算机没有主从之分,此即控制的分布性。其中,资源和控制的分布性也称为自治性。
  2. 透明性:分布式系统的系统资源被所有计算机共享。每台计算机的用户不仅可以使用本机的资源,还可以使用分布式系统中其他计算机的资源,包括CPU、文件、打印机等。
  3. 同一性:分布式系统中的若干台计算机可以通过互相协作来完成同一任务,或者说一个程序可以分布在几台计算机上并行地运行。
  4. 全局性:系统具备一个全局性的进程通信机制,系统中的任意两台计算机都可以通过该机制实现信息交换。

(二)分布式 OS

分布式OS是配置在分布式系统上的公用OS,其以全局的方式对分布式系统中的所有资源进行统一管理,可以直接对系统中地理位置分散的各种物理和逻辑资源进行动态分配和调度,有效地协调和控制各个任务的并行执行,协调和保持系统内的各个计算机间的信息传输与协作运行,并向用户提供一个统一的、方便的、透明的使用系统界面和标准接口。一个典型的例子是万维网(world wide web,WWW),在万维网中,所有的操作只通过一种界面(即网页)进行。目前,华为所研发的鸿蒙系统(HarmonyOS)就是一个“面向未来”、面向全场景(包括移动办公、运动健康、社交通信、媒体娱乐等)的分布式OS。它在传统的单一设备系统能力的基础上,增加了支持多种终端设备的功能。

与网络OS不同,分布式OS的用户在使用系统资源时,不需要了解诸如网络中各个计算机的功能与配置、OS的差异、软件资源、网络文件的结构、网络设备的地址、远程访问的方式等情况,即系统对用户屏蔽了其内部实现的细节。分布式OS保持了网络OS所拥有的全部功能,同时又具有透明性、内聚性、可靠性和高性能等特点。

分布式OS除了涵盖单处理机OS的主要功能外,还应该包括以下功能。

  1. 通信管理功能。分布式OS应提供某种通信机制和方法,使不同节点上的用户或进程能方便地进行信息交换。一般地,分布式OS通过提供一些通信原语的方式,实现了系统内的进程通信,但由于系统中没有共享内存,这些原语需要按照通信协议的约定和规则来实现。
  2. 资源管理功能。分布式OS对系统中的所有资源实施统一管理、统一分配和统一调度,以提高资源利用率,方便用户共享和使用。例如,提供不同节点用户均可共享的分布式文件系统、分布式数据库系统、分布式程序设计语言及编译系统、分布式邮件系统等。
  3. 进程管理功能。针对系统的分布性特征,为了平衡各节点负载,加速计算速度,分布式OS应提供进程或计算迁移功能;为了协调进程对资源的共享与竞争,提高进程的并行程度,分布式OS还应提供分布式的同步和互斥机制以及应对死锁的措施等。

八、微机操作系统

随着计算机技术与超大规模集成电路(VLSI)的发展,计算机系统同时朝着大型化与小型化发展,8080与Z80等芯片的发布,更为廉价的微型机逐渐走向大众视野中,最早诞生的微机操作系统是配置在8位微机上的CP/M。后来逐渐出现字长16位、32位、64位的微机和微机操作系统。

(1)单用户单任务操作系统

单用户单任务操作系统是指只允许一个用户上机,且只允许用户程序作为一个任务运行,这是最简单的微机操作系统,主要配置在8位和16位微机上,最有代表性的单用户单任务微机操作系统是CP/M和MS-DOS。

CP/M

1974年第一代通用8位微处理机芯片Intel 8080出现后的第二年,Digital Research公司就开发出带有软盘系统的8位微机操作系统。1977年Digital Research公司对CP/M进行了重写,使其可配置在以Intel 8080、8085、Z80等8位芯片为基础的多种微机上。1979年又推出带有硬盘管理功能的CP/M 2.2版本。由于CP/M具有较好的体系结构,可适应性强,可移植性以及易学易用等优点,使之在8位微机中占据了统治地位。

MS-DOS

1981年IBM公司首次推出了IBM-PC个人计算机(16位微机),在微机中采用了微软公司开发的MS-DOS(Disk Operating System)操作系统,该操作系统在CP/M的基础上进行了较大的扩充,使其在功能上有很大的提高。1983年IBM推出 PC/AT(配有Intel 80286芯片),相应地微软又开发出 MS-DOS 2.0版本,它不仅能支持硬盘设备,还采用了树形目录结构的文件系统。1987年又宣布了MS-DoS 3.3版本。从MS-DoS 1.0到3.3为止的版本都属于单用户单任务操作系统,内存被限制在640KB。从1989到1993年又先后推出了多个MS-DOS版本,它们都可以配置在Intel80386、80486等32位微机上。从80年代到90年代初,由于MS-DOS性能优越受到当时用户的广泛欢迎,成为事实上的16位单用户单任务操作系统标准。

(2)单用户多任务操作系统

单用户多任务操作系统的含义是,只允许一个用户上机,但允许用户把程序分为若干个任务,使它们并发执行,从而有效地改善了系统的性能。目前在32位微机上配置的操作系统,基本上都是单用户多任务操作系统。其中最有代表性的是由微软公司推出了Windows。1985年和1987年微软公司先后推出了Windows 1.0和Windows 2.0版本操作系统,由于当时的硬件平台还只是16位微机,对10和2.0版本不能很好地支持。1990年微软公司又发布了Windows 3.0版本,随后又宣布了Windows 3.1版本,它们主要是针对386和486等32位微机开发的,它较之以前的操作系统有着重大的改进,引入了友善的图形用户界面,支持多任务和扩展内存的功能。使计算机更好使用,从而成为386和486等微机的主流操作系统。

1995年微软公司推出了Windows 95,它较之以前的Windows 3.1有许多重大改进,采用了全32位的处理技术,并兼容以前的16位应用程序,在该系统中还集成了支持Internet的网络功能。1998年微软公司又推出了Windows 95的改进版Windows 98,它已是最后一个仍然兼容以前的16位应用程序的Windows。其最主要的改进是把微软公司自己开发的Internet浏览器整合到系统中,大大方便了用户上网浏览:另一个改进是增加了对多媒体的支持。2001年微软又发布了Windows XP,同时提供了家用和商业工作站两种版本,在此后相当长的一段时间,成为使用最广泛的个人操作系统之一。在开发上述 Windows操作系统的同时,微软公司又开始对网络操作系统 Windows NT进行开发,它是针对网络开发的操作系统,在系统中融入许多面向网络的功能,从2006年后推出的一系列内核版本号为NT6.X的桌面及服务器操作系统,包括Windows Vista,Windows Server 2008、Windows 7、Windows Server 2008 R2、Windows 8和Windows Server 2012等,这里就不对它们进行介绍。

(3)多用户多任务操作系统

多用户多任务操作系统的含义是,允许多个用户通过各自的终端,使用同一台机器,共享主机系统中的各种资源,而每个用户程序又可进一步分为几个任务,使它们能并发执行,从而可进一步提高资源利用率和系统吞吐量。在大、中和小型机中所配置的大多是多用户多任务操作系统,而在32位微机上,也有不少配置的是多用户多任务操作系统,其中最有代表性的是UNIX OS。UNIX OS是美国电报电话公司的Bell实验室在1969~1970年期间开发的,1979年推出来的UNIX V.7已被广泛应用于多种中小型机上。随着微机性能的提高,人们又将UNIX移植到微机上。在1980年前后,将UNIX第7版本移植到Motorola公司的MC 680xx微机上,后来又将UNIX V7.0版本进行简化后,移植到Intel 8080上,把它称为Xenix。现在最有影响的两个能运行在微机上的UNIX 操作系统变形是Solaris OS 和Linux OS。

  1. Solaris OS:SUN公司于1982年推出的SUN OS 1.0,是一个运行在MOTOROLA 680x0平台上的UNIX OS,在1988年宣布的SUN OS 4.0,把运行平台从早期的MOTOROLA 680x0平台迁移到SPARC平台,并开始支持Intel公司的Intel 80x86;1992年SUN发布了Solaris 2.0。从1998年开始,Sun公司推出64位操作系统Solaris 2.7和2.8,这几款操作系统在网络特性、互操作性、兼容性以及易于配置和管理方面均有很大的提高。
  2. Linux OS:Linux是UNIX的一个重要变种,最初是由芬兰学生Linus Torvalds针对Intel 80386开发的,1991年,在Internet网上发布第一个Linux版本,由于源代码公开,因此有很多人通过Internet 与之合作,使Linux 的性能迅速提高,其应用范围也日益扩大,相应地,源代码也急剧膨胀,此时它已是具有全面功能的UNIX系统,大量在UNIX上运行的软件(包括1000多种实用工具软件和大量网络软件),被移植到Linux 上,而且可以在主要的微机上运行,如Inel 80X86 Pentium等。

九、嵌入式操作系统

(一)嵌入式系统

与通用的计算机(如便携式计算机或桌面系统等)不同,嵌入式系统(embedded system)是为了完成某个特定功能而设计的系统,或是具有附加机制的系统,或是其他部分的计算机硬件与软件的结合体。在许多情况下,嵌入式系统都是一个大系统或产品中的一部分,如汽车中的防抱死系统。

(二)嵌入式 OS

嵌入式OS是指应用于嵌入式系统的OS。嵌入式OS是一种用途广泛的系统软件,通常包括与硬件相关的低层驱动软件、系统内核、设备驱动接口、通信协议、图形用户界面、标准化浏览器等。嵌入式OS负责嵌入式系统的全部软硬件资源的分配、任务的调度以及并发活动的协调等。它必须体现其所在系统的特征,必须能够通过装卸某些模块来实现系统所要求的功能。

目前在嵌入式领域广泛使用的OS有嵌入式(实时)µC/OS-II、嵌入式Linux、Windows Embedded、VxWorks,以及应用在智能手机和平板电脑上的Android、iOS等。

(三)嵌入式 OS 的特点

由于嵌入式系统对存储空间、功耗和实时性等有特定的要求,因此嵌入式OS也具有独特的
特性。

  1. 系统内核小。由于嵌入式OS一般应用于小型电子装置,系统资源相对有限,因此其内核较传统OS要小得多。
  2. 系统精简。嵌入式OS一般没有系统软件和应用软件的明显区分,不要求功能设计与实现过于复杂。这样既可以控制系统成本,也有利于系统安全。
  3. 实时性高。实时性高是嵌入式软件的基本要求,此外,软件还要求固态存储以提高速度,软件代码要求高质量和高可靠性。
  4. 具有可配置性。由于嵌入式系统的多样性,一个嵌入式OS若想应用在不同的嵌入式系统中,它就必须可以灵活配置,以便为特定的应用和硬件系统提供所需的功能。

按时间排序

大型机操作系统的发展历程

1950s-1960s

  • GM-NAA I/O: 1956年,通用汽车为IBM 701计算机开发的操作系统,是最早的商用操作系统之一。
  • SHARE Operating System (SOS): 由IBM用户组织SHARE在1960年开发,用于IBM 7090计算机。
  • BESYS: 由贝尔实验室开发,用于科学计算,使用于1950年代末到1960年代中期。
  • IBSYS: IBM在1960年代初为其7090和7094大型计算机开发的操作系统,支持批处理和多道程序设计。

1960s-1970s

  • OS/360: 1964年推出,专为IBM System/360计算机系列设计。支持批处理、多编程和分时系统,成为商业领域的重要操作系统。
  • CP/CMS: 1967年推出,是第一个成功的虚拟机操作系统,支持在单台物理机器上运行多个操作系统实例。
  • TSS/360: 为System/360开发的时间共享系统,但由于可靠性问题未能广泛应用。

1970s-1980s

  • VM/370: CP/CMS的后继者,1972年推出,为System/370系列提供虚拟机支持。
  • MVS (Multiple Virtual Storage): 1974年推出,是OS/360的演进版本,增加了对虚拟内存的支持,成为IBM大型机的主要操作系统之一。
  • DOS/360: 为中小型System/360计算机设计,1966年推出,适用于磁盘驱动器有限的环境。

1980s-2000s

  • MVS/XA (Extended Architecture): 1981年推出,扩展了MVS的体系结构,支持更多的物理和虚拟内存。
  • MVS/ESA (Enterprise Systems Architecture): 1985年推出,进一步增强了MVS的功能。
  • OS/390: 1996年推出,将MVS与其它系统软件整合,提供更全面的企业级解决方案。
  • z/OS: 2000年推出,现代化的64位操作系统,兼容以前的MVS和OS/390应用程序。
  • Linux on IBM Z: 1999年开始,IBM在大型机上支持Linux操作系统,使大型机能够运行开源软件,满足新的市场需求。

小型机操作系统的发展历程

1960s-1970s

  • RT-11: 由Digital Equipment Corporation (DEC)在1970年推出,用于PDP-11小型计算机,是早期的实时操作系统。
  • UNIX: 1969年在贝尔实验室开发的分时操作系统,1970年代早期在PDP-7和PDP-11计算机上运行,奠定了现代操作系统的基础。

1980s

  • VAX/VMS: DEC在1977年推出,用于VAX系列小型计算机,支持虚拟内存和分时操作。
  • Xenix: 1980年代初,由微软开发的UNIX版本,运行于多种小型计算机上。
  • BSD UNIX: 1980年代,由加州大学伯克利分校开发的UNIX版本,增加了许多创新功能。

1990s-2000s

  • Windows NT: 微软在1993年推出的操作系统,支持多处理器和企业级应用,运行在多种硬件平台上。
  • Linux: 1991年由Linus Torvalds发布的开源操作系统,迅速发展成为服务器和桌面应用的重要操作系统。

2000s至今

  • Windows Server: 微软为企业服务器市场开发的操作系统,从2000年开始发布多个版本。
  • FreeBSD: 继承自BSD UNIX的开源操作系统,持续发展并广泛应用于服务器和嵌入式系统。

计算机操作系统——操作系统的发展历程
https://blog.cxhap.top/2024/07/22/计算机操作系统——操作系统的发展历程/
作者
DingWH03
发布于
2024年7月22日
许可协议