电脑操作系统有哪些(什么是计算机操作系统)

电脑操作系统有哪些
今天我们来一起学习操作系统相关的知识内容,操作系统对于计算机来说,尤其是现代计算机有着相当重要的位置。因为计算机是由硬件和软件组成,而操作系统是配置在计算机硬件上的第一层软件,是对硬件系统的第一次扩充,是与计算机硬件密不可分的。操作系统对计算机系统的所有硬件、软件资源进行管理和调控,优化资源利用,协调系统内的各种活动,处理可能出现的各种问题。
操作系统的发展经过了手工系统、监控系统、单道系统、多道批处理系统、分时系统、实时系统这样几个阶段。其发展体现了计算机日益发展的软件研究成果,也体现了计算机硬件技术发展及计算机系统结构改进的发展成果。在计算机系统中,操作系统占有着至关重要的地位,其他所有的应用软件都需要依赖于操作系统的资源分配和调度执行,操作系统是其他应用软件运行的基础平台。 从严格意义上来讲,操作系统也是一种计算机软件;但是从功能上讲,操作系统与其他应用软件有着本质的不同,具有特有的软件特征。确切的来说,计算机操作系统是用来管理计算机系统的。也就是说,操作系统用于管理计算机硬件资源、其他软件程序。现代计算机系统中硬件资源包括中央处理器(CPU)、内部存储器、外部存储器、时钟、终端、打印机、网络接口和其他设备。操作系统对硬件设备的管理任务是在相互竞争的程序之间有序的控制中央处理器、内部存储器、输入输出设备,使得每一个硬件设备都能最大限度的、高效的执行,进而提高硬件设备的利用率。而对于软件方面的把控,操作系统需要合理的对需要执行的程序进行调度,使计算机可以完成多道任务,并合理的为每一个执行的程序进行资源分配和执行优化。 我们以多个程序同时需要使用打印机为例来对操作系统的基本功能做一些简单介绍。例如,系统中运行着5个程序,这些程序都需要使用打印机打印一系列内容,而当前计算机系统中只连接了一台打印机,如果操作系统对这5个程序按资源平均分配的话就会导致这样的结果:程序1使用打印机打印了一条信息,之后程序2使用打印机在同一张打印纸上打印了另一条信息,程序3在同一张打印纸上又打印了一条信息,因此程序4和程序5也同样的如此执行。于是同一张打印纸上就会被5个程序分别打印出互不相关的内容,这样的结果不是我们想要的。我们想要的结果是操作系统可以从宏观上对各个运行的程序进行调控,使他们在对外部资源的访问操作上相互独立,互不干扰。好的做法是:当多个程序需要使用打印机打印时,操作系统只为某一个程序进行资源分配,而当此程序对打印机使用完毕之后操作系统再为另一个程序进行资源分配。例如:任务1-5在执行打印时,只能排队,一个任务一个任务的操作打印机,当任务1将需要打印的内容都通过打印机打印结束之后,任务2才能进行打印操作,同样的,任务3必须等待任务2打印结束之后才能进行打印操作,以此类推。这是操作系统中多进程资源竞争中的互斥问题,我们会在后面的文章中讨论。 实际上,现代操作系统所采用的方式是将各个程序需要打印的内容暂时存放起来,然后将要打印的内容投入到打印队列中一步一步的打印出来。这样提高了打印机的执行效率,又不会让其他任务等待时间过长。也就是说当程序要求访问打印机时,操作系统并没有真正为其打印,而是等待时机成熟后再进行打印。 同样的道理,计算机系统中其他资源也都具有这样的问题,例如外部存储器、输入、输出设备等等。操作系统的职责之一就是要合理有效的管理好这些设备,最大限度的提高设备的利用率,同时为用户程序提供方便快捷的使用方式。 当我们从用户的角度来观察操作系统时,会有这样的观察结果:配备了操作系统的计算机与物理的、没有配备操作系统的计算机是截然不同的。因为用户既不关心计算机的工作原理和工作细节,也不关心操作系统的内部结构和实现方案。而只关心当前需要执行的程序如何方便的、高效的执行。于是如何做好一个能够给用户提供更优秀服务的操作系统就成为了操作系统中最为核心的课题。 一个没有配备操作系统的计算机被称为裸机。用户直接使用裸机是非常困难的,用户需要学习和了解计算机的工作原理和具体实现细节,需要使用计算机的机器语言来与其交互,因此裸机对于用户来讲是非常不友好的,用户也不可能直接使用裸机工作。 为了方便用户使用计算机,并提高计算机各个硬件资源的使用效率,我们就需要开发一套执行在裸机上的软件程序,这套软件程序可以管理所有的硬件资源,并为用户提供有好的友好的操作界面,这一套计算机软件就称为计算机操作系统。配备了操作系统的计算机不再称为裸机,对于用户来讲,计算机的硬件没有发生改变,而计算机的使用方式、操作界面都与原来的裸机有了本质上的不同,就相当于一台新的计算机,因此我们称配备了操作系统的计算机为虚拟机。它必须性能稳定、可靠、使用方便、灵活。 我们可以画图来说明计算机操作系统在计算机系统中的位置: 裸机:包括了计算机的所有硬件资源。 操作系统:裸机与用户的中间层,一方面提供友好的用户界面并接收用户的操作指令;另一方面统一管理计算机硬件资源,最大限度的提高硬件设备的使用率。而操作系统又分为内核程序和外壳程序,内核程序主要负责资源的管理和程序的调度,外壳程序主要负责为用户提供调用接口和操作界面。 应用程序:运行在操作系统之上的用户级普通程序,通常是完成用户的日常工作任务,例如:打印、计算、播放音乐、播放电影、编写文档等等。