操作系统(英语:Operating System,缩写:OS)是一种内置的程序,用来协作计算机的各种硬件,以与用户进行交互。常见有Windows,macOS 和开源的 Linux。
根据运行的环境,操作系统可以分为桌面操作系统,手机操作系统,服务器操作系统,嵌入式操作系统等。操作系统是人与计算机之间的接口,也是计算机的灵魂。
操作系统:计算机管理控制程序
特 征:并发、共享、虚拟、异步
功 能:处理器管理、存储器管理、设备管理、文件管理、作业管理
基本类型:批处理系统、分时操作系统、实时操作系统
组成部分:内核、驱动程序、接口库、外围
体系结构:模块组合结构、层次结构、大内核结构、微内核结构
一、系统简介
在计算机中,操作系统是其最基本也是最为重要的基础性系统软件。从计算机用户的角度来说,计算机操作系统体现为其提供的各项服务;从程序员的角度来说,其主要是指用户登录的界面或者接口;如果从设计人员的角度来说,就是指各式各样模块和单元之间的联系。事实上,全新操作系统的设计和改良的关键工作就是对体系结构的设计,经过几十年以来的发展,计算机操作系统已经由一开始的简单控制循环体发展成为较为复杂的分布式操作系统,再加上计算机用户需求的愈发多样化,计算机操作系统已经成为既复杂而又庞大的计算机软件系统之一。
二、发展历史
纵观计算机之历史,操作系统与计算机硬件的发展息息相关。操作系统之本意原为提供简单的工作排序能力,后为辅助更新更复杂的硬件设施而渐渐演化。从最早的批量模式开始,分时机制也随之出现,在多处理器时代来临时,操作系统也随之添加多处理器协调功能,甚至是分布式系统的协调功能。其他方面的演变也类似于此。另一方面,个人计算机之操作系统因袭大型机的成长之路,在硬件越来越复杂、强大时,也逐步实现以往只有大型机才有的功能。
从1946年诞生第一台电子计算机以来,它的每一代进化都以减少成本、缩小体积、降低功耗、增大容量和提高性能为目标,随着计算机硬件的发展,同时也加速了操作系统(简称OS)的形成和发展。
最初的电脑没有操作系统,人们通过各种按钮来控制计算机,后来出现了汇编语言,操作人员通过有孔的纸带将程序输入电脑进行编译。这些将语言内置的电脑只能由制作人员自己编写程序来运行,不利于程序、设备的共用。为了解决这种问题,就出现了操作系统,这样就很好实现了程序的共用,以及对计算机硬件资源的管理。
随着计算技术和大规模集成电路的发展,微型计算机迅速发展起来。从20世纪70年代中期开始出现了计算机操作系统。在美国1976年的时候就研制了DIGITAL RESEARCH软件公司出8位的CP/M操作系统。这个系统允许用户通过控制台的键盘对系统进行控制和管理,其主要功能是对文件信息进行管理,以实现其他设备文件或硬盘文件的自动存取。此后出现的一些8位操作系统多采用CP/M结构。
2023年7月5日,“开放麒麟”操作系统 1.0 版本正式发布。
三、主要功能
计算的操作系统对于计算机可以说是十分重要的,从使用者角度来说,操作系统可以对计算机系统的各项资源板块开展调度工作,其中包括软硬件设备、数据信息等,运用计算机操作系统可以减少人工资源分配的工作强度,使用者对于计算的操作干预程度减少,计算机的智能化工作效率就可以得到很大的提升。其次在资源管理方面,如果由多个用户共同来管理一个计算机系统,那么可能就会有冲突矛盾存在于两个使用者的信息共享当中。为了更加合理的分配计算机的各个资源板块,协调计算机系统的各个组成部分,就需要充分发挥计算机操作系统的职能,对各个资源板块的使用效率和使用程度进行一个最优的调整,使得各个用户的需求都能够得到满足。最后,操作系统在计算机程序的辅助下,可以抽象处理计算系统资源提供的各项基础职能,以可视化的手段来向使用者展示操作系统功能,减低计算机的使用难度。
操作系统主要包括以下几个方面的功能 :
①进程管理,其工作主要是进程调度,在单用户单任务的情况下,处理器仅为一个用户的一个任务所独占, 进程管理的工作十分简单。但在多道程序或多用户的情况 下,组织多个作业或任务时,就要解决处理器的调度、 分配和回收等问题 。
②存储管理分为几种功能:存储分配、存储共享、存储保护 、存储扩张。
③设备管理分有以下功能:设备分配、设备传输控制 、设备独立性。
④文件管理:文件存储空间的管理、目录管理 、文件操作管理、文件保护。
⑤作业管理是负责处理用户提交的任何要求。
四、用途分类
计算机的操作系统根据不同的用途分为不同的种类,从功能角度分析,分别有实时系统、批处理系统、分时系统、网络操作系统等。
实时系统主要是指系统可以快速的对外部命令进行响应,在对应的时间里处理问题,协调系统工作。
分时系统可以实现用户的人机交互需要,多个用户共同使用一个主机,很大程度上节约了资源成本。 分时系统具有多路性、独立性、交互性、及时性的优点,能够将用户-系统-终端任务实现。
批处理系统出现于20世纪60年代,批处理系统能够提高资源的利用率和系统的吞吐量。
网络操作系统是一种能代替操作系统的软件程序,是网络的心脏和灵魂,是向网络计算机提供服务的特殊的操作系统。借由网络达到互相传递数据与各种消息,分为服务器及客户端。而服务器的主要功能是管理服务器和网络上的各种资源和网络设备的共用,加以统合并控管流量,避免有瘫痪的可能性,而客户端就是有着能接收服务器所传递的数据来运用的功能,好让客户端可以清楚的搜索所需的资源。
五、体系结构
1、简单体系结构
计算机操作系统诞生初期,其体系结构就属于简单体系结构,由于当时各式各样影响因素的作用,如硬件性能、平台、软件水平等方面的限制,使得当时的计算机操作系统结构呈现出一种混乱且结构模糊的状态,其操作系统的用户应用程序和其内核程序鱼龙混杂,甚至其运行的地址和空间都是一致的。这种操作系统实际上就是一系列过程和项目的简单组合,使用的模块方法也相对较为粗糙,因此导致其结构宏观上非常模糊。
2、单体内核结构
随着科学技术的不断发展和进步,硬件及其平台的水平和性能得到了很大程度的提高,其数量和种类也与日俱增,操作系统的复杂性也逐渐加深,其具备的功能以及性能越来越多,在此背景下,单体内核结构的操作系统诞生并得到了应用,例如UNIX操作系统、windows NT/XP等。一般情况下,单体内核结构的操作系统主要具备以下几种功能,分别是文件及内存管理、设备驱动、CPU调度以及网络协议处理等。由于内核的复杂性不断加深,相关的开发设计人员为了实现对其良好的控制,逐渐开始使用了一些较为成熟的模块化方法,并根据其不同的功能将其进行结构化,进而将其划分为诸多的模块,例如文件及内存管理模块、驱动模块、CPU调度模块及网络协议处理等。这些模块所使用的地址和空间与内核使用的完全一致,其以函数调用的方式构建了用于通讯的结构来实现各个模块之间的通讯。在使用模块化的方法以后,只要其通讯接口没有发生明显的变化,即使整个结构中的任何一个模块发生变化也不会对结构中的其他模块造成任何的影响,为其系统的维护和改良扩充提供了便利。虽然单体内核结构的计算机操作系统经过了模块化的处理,但是其中的全部模块仍然是在硬件之上、应用软件之下的操作系统核心中运转和工作。模块与模块之间活动的层次没有任何的差别。
3、层次式结构
层次式结构的计算机操作系统是为了减少以往操作系统中各个模块之间由于联系紧密而带来的各种问题而诞生的,其可以最大程度的减少甚至是避免循环调用现象的发生,确保调用有序,为操作系统设计目标的实现奠定了坚实的基础。在层次式结构的计算机操作系统之中,其是由诸多系统分为若干个层次的,其最底层是硬件技术,其他每一个层级均是建立在其下一层级之上的。在设计其计算机操作系统内核时,主要采用与抽象数据类型十分类似的设计方法进行的,在系统中的每一个层级均包含着多种数据和操作,且每一个的数据和操作是其他层不可见的,在每一层当中都配备了用于其他层使用的一操作接口,同时每一层发生的访问行为只能针对其下层进行,不能访问其上层的数据和服务,严格遵守了调用规则,在很大程度上避免了其他层次对某一层次的干扰和破坏。对于理想的层次式计算机系统体系结构来说,其之间的联系不仅仅是单向依赖性的,同时各个层级之间也要具备相互的独立性,且只能对低层次的模块和功能进行调用,例如THE系统。但是这种理想的全序层次式计算机操作系统在现实中建成是较为困难的,其无法完全避免模块之间循环调用现象的出现,某个层级之间仍旧存在某种循环关系,这种层次式结构又被叫作半序层次式计算机操作系统,例如SUE操作系统。
4、微内核结构
微内核计算机操作系统体系结构又可以被叫作客户机结构或者服务器结构,其实际上就是一种将系统中的代码转移到更高层次当中,尽可能地减少操作系统中的东西,仅仅保留一个小体积的内核,一般情况下其使用的主要方法就是通过用户进程来实现操作系统所具备的各项功能,具体来说就是用户进程可以将相关的请求和要求发送到服务器当中,然后由服务器完成相关的操作以后在通过某种渠道反馈到用户进程当中。在微内核结构中,操作系统的内核主要工作就是对客户端和服务器之间的通信进行处理,在系统中包括许多部分,每一个部分均具备某一方面的功能,例如文件服务、进程服务、终端服务等,这样的部分相对较小,相关的管理工作也较为便利。这种机构的服务的运行都是以用户进程的形式呈现的,既不在核心中运行,也不直接地对硬件进行访问,这样一来即使服务器发生错误或受到破坏也不会对系统造成影响,仅仅只是会造成相对应服务器的崩溃。
5、外核结构
外核结构的计算机操作系统本质上就是为了获得更高的性能和灵活性而设计出来的,在系统中,操作系统接口处于硬件层,在内核中提出全部由以往操作系统带来的抽象,并将重点和关键放在了更多硬件资源的复用方面。在操作系统的外核结构中,内核负责的主要工作仅仅为简单的申请操作以及释放和复用硬件资源,其由以往操作系统提供的抽象全部在用户空间当中运行。
一般情况下,外核结构中的内核主要有三大方面的工作,分别是对资源的所有权进行跟踪、为操作系统的安全提供保护以及撤销对资源的访问行为。在核外,基本上所有的操作系统中的抽象都是以库的形式呈现出来的,而用户在访问硬件资源时也是通过库的调用来完成的。
六、安全加固
随着计算机网络与应用技术的不断发展,信息系统安全问题越来越引起人们的关注,信息系统一旦遭受破坏,用户及单位将受到重大的损失,对信息系统进行有效的保护,是必须面对和解决的迫切课题,而操作系统安全在计算机系统整体安全中至关重要,加强操作系统安全加固和优化服务是实现信息系统安全的关键环节。当前,操作系统安全构成威胁的问题主要有系统漏洞、脆弱的登录认证方式、访问控制形同虚设、计算机病毒、特洛伊木马、隐蔽通道、系统后门恶意程序和代码感染等,加强操作系统安全加固工作是整个信息系统安全的基础。
1、安全加固原理
安全加固是指按照系统安全配置标准,结合用户信息系统实际情况,对信息系统涉及的终端主机、服务器、网络设备、数据库及应用中间件等软件系统进行安全配置加固、漏洞修复和安全设备调优。通过安全加固,可以合理加强信息系统安全性,提高其健壮性,增加攻击入侵的难度,可以使信息系统安全防范水平得到大幅提升。
2、安全加固方法
安全加固主要通过人工对系统进行漏洞扫描,针对扫描结果使用打补丁、强化账号安全、修改安全配置、优化访问控制策略、增加安全机制等方法加固系统以及堵塞系统漏洞、“后门”,完成加固工作。
3、安全加固流程
安全加固主要包含以下几个环节:
(1)安全加固范围确定收集需要进行安全加固的信息系统所涉及的计算机设备、网络、数据库及应用中间件的设备情况。
(2)制订安全加固方案根据信息系统的安全等级划分和具体要求,利用网络安全经验和漏洞扫描技术和工具,对加固范围内的计算机操作系统、网络设备、数据库系统及应用中间件系统进行安全评估,从内、外部对信息系统进行全面的评估,检查这些系统目前安全状况,根据现状制定相应的安全加固措施,形成安全加固方案。
(3)安全加固方案实施根据制定的安全加固实施方案实施加固,完成后对加固后的系统进行全面的测试和检查,确保加固对系统业务无影响,并填写加固实施记录。
(4)安全加固报告输出根据安全加固实施记录,编写最终的安全加固实施报告,对加固工作进行总结,对已加固的项目、加固效果、遗留问题进行汇总统计。
七、系统虚拟化
操作系统虚拟化作为容器的核心技术支撑,得到了研究者的广泛关注。最近几年,无论是在以SOSP/OSDI为代表的计算机系统领域顶级学术会议上,还是以Google为代表的重要互联网企业中,都陆续出现了一批操作系统虚拟化的最新研究成果,并且成果数量呈现出逐年增加的总体趋势。
操作系统虚拟化技术允许多个应用在共享同一主机操作系统 (Host OS) 内核的环境下隔离运行, 主机操作系统为应用提供一个个隔离的运行环境, 即容器实例:操作系统虚拟化技术架构可以分为容器实例层、容器管理层和内核资源层。
操作系统虚拟化与传统虚拟化最本质的不同是传统虚拟化需要安装客户机操作系统 (Guest OS) 才能执行应用程序,而操作系统虚拟化通过共享的宿主机操作系统来取代 Guest OS。
八、操作实例
嵌入式
嵌入式系统使用非常广泛的系统(如VxWorks、eCos、Symbian OS及Palm OS)以及某些功能缩减版本的Linux或者其他操作系统。某些情况下,OS指称的是一个内置了固定应用软件的巨大泛用程序。在许多最简单的嵌入式系统中,所谓的OS就是指其上唯一的应用程序。
iOS是由苹果公司开发的手持设备操作系统。苹果公司于2007年1月9日的Macworld 大会上公布这个系统,以Darwin为基础,属于类Unix 的商业操作系统。最初是设计给 iPhone 使用的,后来陆续套用到 iPod touch 、iPad 以及 Apple TV 等产品上。iOS与苹果的 Mac OS X 操作系统一样,属于类Unix的商业操作系统。原本这个系统名为 iPhone OS,因为 iPad,iPhone,iPod touch 都使用 iPhone OS,所以 2010 年 WWDC 大会上宣布改名为 iOS(iOS 为美国 Cisco 公司网络设备操作系统注册商标,苹果改名已获得 Cisco 公司授权)。
Android是一种基于Linux的自由及开放源代码的操作系统。主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发。尚未有统一中文名称,中国大陆地区较多人使用“安卓”。Android操作系统最初由Andy Rubin开发,主要支持手机。2005年8月由Google收购注资。2007年11月,Google与84家硬件制造商、软件开发商及电信营运商组建开放手机联盟共同研发改良Android系统。随后Google以Apache开源许可证的授权方式,发布了Android的源代码。第一部Android智能手机发布于2008年10月。Android逐渐扩展到平板电脑及其他领域上,如电视、数码相机、游戏机、智能手表等。2011年第一季度,Android在全球的市场份额首次超过塞班系统,跃居全球第一。 2013年的第四季度,Android平台手机的全球市场份额已经达到78.1%。2013年09月24日谷歌开发的操作系统Android在迎来了5岁生日,全世界采用这款系统的设备数量已经达到10亿台。
类 Unix
主条目:类Unix
所谓的类Unix家族指的是一族种类繁多的OS,此族包含了System V、BSD与Linux。由于Unix是The Open Group的注册商标,特指遵守此公司定义的行为的操作系统。而类Unix通常指的是比原先的Unix包含更多特征的OS。
类Unix系统可在非常多的处理器架构下运行,在服务器系统上有很高的使用率,例如大专院校或工程应用的工作站。
1991年,芬兰学生林纳斯·托瓦兹根据类Unix系统Minix编写并发布了Linux操作系统内核,其后在理查德·斯托曼的建议下以GNU通用公共许可证发布,成为自由软件Unix变种. Linux近来越来越受欢迎,它们也在个人桌面计算机市场上大有斩获,例如Ubuntu系统。
某些Unix变种,例如惠普的HP-UX以及IBM的AIX仅设计用于自家的硬件产品上,而SUN的Solaris可安装于自家的硬件或x86计算机上。苹果计算机的Mac OS X是一个从NeXTSTEP、Mach以及FreeBSD共同派生出来的微内核BSD系统,此OS取代了苹果计算机早期非Unix家族的Mac OS。
经历数年的披荆斩棘,自由开源的Linux系统逐渐蚕食以往专利软件的专业领域,例如以往计算机动画运算巨擘──硅谷图形公司(SGI)的IRIX系统已被Linux家族及贝尔实验室研发小组设计的九号项目与Inferno系统取代,皆用于分散表达式环境。它们并不像其他Unix系统,而是选择内置图形用户界面。九号项目原先并不普及,因为它刚推出时并非自由软件。后来改在自由及开源软件许可证Lucent Public License发布后,便开始拥有广大的用户及社群。Inferno已被售予Vita Nuova并以GPL/MIT许可证发布。
当前,计算机按照计算能力排名世界500强中472台使用Linux,6台使用Windows,其余为各类BSD等Unix。
Microsoft Windows
Microsoft Windows系列操作系统是在微软给IBM机器设计的MS-DOS的基础上设计的图形操作系统。现在的Windows系统,如Windows 2000、Windows XP皆是创建于现代的Windows NT内核。NT内核是由OS/2和OpenVMS等系统上借用来的。Windows可以在32位和64位的Intel和AMD的处理器上运行,但是早期的版本也可以在DEC Alpha、MIPS与PowerPC架构上运行。
虽然由于人们对于开放源代码操作系统兴趣的提升,Windows的市场占有率有所下降,但是到2004年为止,Windows操作系统在世界范围内占据了桌面操作系统90%的市场。
Windows系统也被用在低级和中阶服务器上,并且支持网页服务的数据库服务等一些功能。最近微软花费了很大研究与开发的经费用于使Windows拥有能运行企业的大型程序的能力。
Windows XP在2001年10月25日发布,2004年8月24日发布服务包2(Service Pack 2),2008年4月21日发布最新的服务包3(Service Pack 3)。
Windows 7,是由微软公司(Microsoft)开发的操作系统,内核版本号为Windows NT 6.1。Windows 7可供家庭及商业工作环境:笔记本电脑 、多媒体中心等使用。和同为NT6成员的Windows Vista一脉相承,Windows 7继承了包括Aero风格等多项功能,并且在此基础上增添了些许功能。
Windows 10是由美国微软公司开发的应用于计算机和平板电脑的操作系统,于2015年7月29日发布正式版。
Windows 10操作系统在易用性和安全性方面有了极大的提升,除了针对云服务、智能移动设备、自然人机交互等新技术进行融合外,还对固态硬盘、生物识别、高分辨率屏幕等硬件进行了优化完善与支持。截至2022年5月26日,Windows 10正式版已更新至Windows 10 21H2版本。 [10]
微软的操作系统Windows Vista(开发代码为Longhorn)于2007年1月30日发售。Windows Vista增加了许多功能,尤其是系统的安全性和网上管理功能,并且其拥有接口华丽的Aero Glass。但是整体而言,其在全球市场上的口碑却并不是很好。其后继者Windows 7则是于2009年10月22日发售,Windows 7改善了Windows Vista为人诟病的性能问题,相较于Windows Vista,在同样的硬件环境下,Windows 7的表现较Windows Vista为好。而Windows 10则是于2015年7月29日发售。最新的系统为Windows 11,于2021年6月25日的直播中公布并发售 [9]
MacOS X
主条目:MacOS和MacOS X
macOS,前称“MacOS X”或“OS X”,是一套运行于苹果Macintosh系列计算机上的操作系统。Mac OS是首个在商用领域成功的图形用户界面系统。Macintosh开发成员包括比尔·阿特金森(Bill Atkinson)、杰夫·拉斯金(Jef Raskin)和安迪·赫茨菲尔德(Andy Hertzfeld)。从OS X 10.8开始在名字中去掉Mac,仅保留OS X和版本号。2016年6月13日在WWDC2016上,苹果公司将OS X更名为macOS,现行的最新的系统版本是13.X,即macOS Ventura。 [11]
Google Chrome OS
主条目:Google Chrome OS
Google Chrome OS是一项Google的轻型的、基于网络的计算机操作系统计划,其基于Google的浏览器Google Chrome的Linux内核。
2021年6月,华为鸿蒙系统正式亮相,国产操作系统迈出市场化和商业化重要一步。9月30日,面向数字基础设施的开源操作系统欧拉(openEuler)全新发布,与鸿蒙实现内核技术共享。11月9日,华为携手社区全体伙伴共同将欧拉开源操作系统正式捐赠给开放原子开源基金会,以推动操作系统产业快速发展。从服务器操作系统,升级为数字基础设施的操作系统,欧拉能够支持IT、CT、OT等数字基础设施全场景,覆盖服务器、云、边、嵌入式等各种设备形态的需求,更好地满足千行百业数字化转型的需求。 [8]