您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > 微内核操作系统的基本概念
第一章操作系统引论第一章操作系统引论1.1操作系统的目标和作用1.2操作系统的发展过程1.3操作系统的基本特性第一章操作系统引论1.1操作系统的目标和作用1.1.1操作系统的目标1.有效性在早期(20世纪50~60年代),由于计算机系统非常昂贵,操作系统最重要的目标无疑是有效性。事实上,那时有效性是推动操作系统发展最主要的动力。正因如此,现在的大多数操作系统书籍,都着重于介绍如何提高计算机系统的资源利用率和系统的吞吐量问题。操作系统的有效性可包含如下两方面的含意:第一章操作系统引论(1)提高系统资源利用率。在未配置OS的计算机系统中,诸如CPU、I/O设备等各种资源,都会因它们经常处于空闲状态而得不到充分利用;内存及外存中所存放的数据太少或者无序而浪费了大量的存储空间。配置了OS之后,可使CPU和I/O设备由于能保持忙碌状态而得到有效的利用,且可使内存和外存中存放的数据因有序而节省了存储空间。(2)提高系统的吞吐量。操作系统还可以通过合理地组织计算机的工作流程,而进一步改善资源的利用率,加速程序的运行,缩短程序的运行周期,从而提高系统的吞吐量。第一章操作系统引论2.方便性配置OS后可使计算机系统更容易使用。一个未配置OS的计算机系统是极难使用的,因为计算机硬件只能识别0和1这样的机器代码。用户要直接在计算机硬件上运行自己所编写的程序,就必须用机器语言书写程序;用户要想输入数据或打印数据,也都必须自己用机器语言书写相应的输入程序或打印程序。如果我们在计算机硬件上配置了OS,用户便可通过OS所提供的各种命令来使用计算机系统。比如,用编译命令可方便地把用户用高级语言书写的程序翻译成机器代码,大大地方便了用户,从而使计算机变得易学易用。第一章操作系统引论3.可扩充性随着VLSI技术和计算机技术的迅速发展,计算机硬件和体系结构也随之得到迅速发展,相应地,它们也对OS提出了更高的功能和性能要求。此外,多处理机系统、计算机网络,特别是Internet的发展,又对OS提出了一系列更新的要求。因此,OS必须具有很好的可扩充性,方能适应计算机硬件、体系结构以及应用发展的要求。这就是说,现代OS应采用新的OS结构,如微内核结构和客户服务器模式,以便于方便地增加新的功能和模块,并能修改老的功能和模块。关于新的OS结构将在本章最后一节中介绍。第一章操作系统引论4.开放性自20世纪80年代以来,由于计算机网络的迅速发展,特别是Internet的应用的日益普及,使计算机操作系统的应用环境已由单机封闭环境转向开放的网络环境。为使来自不同厂家的计算机和设备能通过网络加以集成化,并能正确、有效地协同工作,实现应用的可移植性和互操作性,要求操作系统必须提供统一的开放环境,进而要求OS具有开放性。开放性是指系统能遵循世界标准规范,特别是遵循开放系统互连(OSI)国际标准。凡遵循国际标准所开发的硬件和软件,均能彼此兼容,可方便地实现互连。开放性已成为20世纪90年代以后计算机技术的一个核心问题,也是一个新推出的系统或软件能否被广泛应用的至关重要的因素。第一章操作系统引论1.1.2操作系统的作用1.OS作为用户与计算机硬件系统之间的接口OS作为用户与计算机硬件系统之间接口的含义是:OS处于用户与计算机硬件系统之间,用户通过OS来使用计算机系统。或者说,用户在OS帮助下,能够方便、快捷、安全、可靠地操纵计算机硬件和运行自己的程序。应注意,OS是一个系统软件,因而这种接口是软件接口。图1-1是OS作为接口的示意图。由图可看出,用户可通过以下三种方式使用计算机。第一章操作系统引论图1-1OS作为接口的示意图用户应用程序系统调用命令图标、窗口操作系统计算机硬件第一章操作系统引论(1)命令方式。这是指由OS提供了一组联机命令接口,以允许用户通过键盘输入有关命令来取得操作系统的服务,并控制用户程序的运行。(2)系统调用方式。OS提供了一组系统调用,用户可在自己的应用程序中通过相应的系统调用,来实现与操作系统的通信,并取得它的服务。(3)图形、窗口方式。这是当前使用最为方便、最为广泛的接口,它允许用户通过屏幕上的窗口和图标来实现与操作系统的通信,并取得它的服务。第一章操作系统引论2.OS作为计算机系统资源的管理者在一个计算机系统中,通常都含有各种各样的硬件和软件资源。归纳起来可将资源分为四类:处理器、存储器、I/O设备以及信息(数据和程序)。相应地,OS的主要功能也正是针对这四类资源进行有效的管理,即:处理机管理,用于分配和控制处理机;存储器管理,主要负责内存的分配与回收;I/O设备管理,负责I/O设备的分配与操纵;文件管理,负责文件的存取、共享和保护。可见,OS的确是计算机系统资源的管理者。事实上,当今世界上广为流行的一个关于OS作用的观点,正是把OS作为计算机系统的资源管理者。第一章操作系统引论3.OS实现了对计算机资源的抽象对于一个完全无软件的计算机系统(即裸机),它向用户提供的是实际硬件接口(物理接口),用户必须对物理接口的实现细节有充分的了解,并利用机器指令进行编程,因此该物理机器必定是难以使用的。为了方便用户使用I/O设备,人们在裸机上覆盖上一层I/O设备管理软件,如图1-2所示,由它来实现对I/O设备操作的细节,并向上提供一组I/O操作命令,如Read和Write命令,用户可利用它来进行数据输入或输出,而无需关心I/O是如何实现的。此时用户所看到的机器将是一台比裸机功能更强、使用更方便的机器。这就是说,在裸机上铺设的I/O软件隐藏了对I/O设备操作的具体细节,向上提供了一组抽象的I/O设备。第一章操作系统引论图1-2I/O软件隐藏了I/O操作实现的细节物理接口硬件用户用户I/O软件物理接口硬件机器指令虚机器I/O操作命令(Read,Write)第一章操作系统引论通常把覆盖了上述软件的机器称为扩充机器或虚机器。它向用户(进程)提供了一个对硬件操作的抽象模型,用户可利用抽象模型提供的接口使用计算机,而无需了解物理接口实现的细节,从而使用户更容易地使用计算机硬件资源。由该层软件实现了对计算机硬件操作的第一个层次的抽象。第一章操作系统引论为了方便用户使用文件系统,人们又在第一层软件上再覆盖上一层用于文件的管理软件,同样由它来实现对文件操作的细节,并向上提供一组对文件进行存取操作的命令,用户可利用这组命令进行文件的存取。此时,用户所看到的是一台功能更强、使用更方便的虚机器。该层软件实现了对硬件资源操作的第二个层次的抽象。而当人们又在文件管理软件上再覆盖一层面向用户的窗口软件后,用户便可在窗口环境下方便地使用计算机,形成一台功能更强的虚机器。第一章操作系统引论由此可知,OS是铺设在计算机硬件上的多层系统软件,它们不仅增强了系统的功能,而且还隐藏了对硬件操作的细节,由它们实现了对计算机硬件操作的多个层次的抽象。值得说明的是,对一个硬件在底层进行抽象后,在高层还可再次对该资源进行抽象,成为更高层的抽象模型。随着抽象层次的提高,抽象接口所提供的功能就越来越强,用户使用起来也更加方便。第一章操作系统引论1.1.3推动操作系统发展的主要动力1.不断提高计算机资源的利用率在计算机发展的初期,计算机系统特别昂贵,人们必须千方百计地提高计算机系统中各种资源的利用率,这就是OS最初发展的推动力。由此形成了能自动地对一批作业进行处理的多道批处理系统。在20世纪60和70年代,又分别出现了能有效提高I/O设备和CPU利用率的SPOOLing系统和改善存储器系统利用率的虚拟存储器技术,以及在网络环境下,在服务器上配置了允许所有网络用户访问的文件系统和数据库系统。第一章操作系统引论2.方便用户当资源利用率不高的问题得到基本解决后,用户在上机、调试程序时的不方便性便又成为主要矛盾。于是人们又想方设法改善用户上机、调试程序时的环境,这又成为继续推动OS发展的主要因素。随之便形成了允许进行人机交互的分时系统,或称为多用户系统。在20世纪90年代初出现了受到用户广泛欢迎的图形用户界面,极大地方便了用户使用计算机,使中小学生都能很快地学会上机操作,这无疑会更加推动计算机的迅速普及。第一章操作系统引论3.器件的不断更新换代微电子技术的迅猛发展,推动着计算机器件,特别是微机芯片的不断更新,使得计算机的性能迅速提高,规模急剧扩大,从而推动了OS的功能和性能也迅速增强和提高。例如,当微机芯片由8位发展到16位、32位,进而又发展到64位时,相应的微机OS也就由8位发展到16位和32位,进而又发展到64位,此时相应OS的功能和性能也都有显著的增强和提高。第一章操作系统引论在多处理机快速发展的同时,外部设备也在迅速发展。例如,早期的磁盘系统十分昂贵,只能配置在大型机中。随着磁盘价格的不断降低且小型化,很快在中、小型机以及微型机上也无一例外地配置了磁盘系统,而且其容量还远比早期配置在大型机上的大得多。现在的微机操作系统(如WindowsXP)能支持种类非常多的外部设备,除了传统的外设外,还可以支持光盘、移动硬盘、闪存盘、扫描仪等。第一章操作系统引论4.计算机体系结构的不断发展计算机体系结构的发展,也不断推动着OS的发展并产生新的操作系统类型。例如,当计算机由单处理机系统发展为多处理机系统时,相应地,操作系统也就由单处理机OS发展为多处理机OS。又如,当出现了计算机网络后,配置在计算机网络上的网络操作系统也就应运而生,它不仅能有效地管理好网络中的共享资源,而且还向用户提供了许多网络服务。第一章操作系统引论1.2操作系统的发展过程1.2.1无操作系统的计算机系统1.人工操作方式从第一台计算机诞生(1945年)到20世纪50年代中期的计算机,属于第一代计算机。此时的计算机是利用成千上万个真空管做成的,它的运行速度仅为每秒数千次,但体积却十分庞大,且功耗也非常高。这时还未出现OS。计算机操作是由用户(即程序员)采用人工操作方式直接使用计算机硬件系统,即由程序员将事先已穿孔(对应于程序和数据)的纸带(或卡片)装入纸带输入机(或卡片输入机),再启动它们将程序和数据输入计算机,然后启动计算机运行。当程序运行完毕并取走计算结果之后,才让下一个用户上机。这种人工操作方式有以下两方面的缺点:第一章操作系统引论(1)用户独占全机。此时,计算机及其全部资源只能由上机用户独占。(2)CPU等待人工操作。当用户进行装带(卡)、卸带(卡)等人工操作时,CPU及内存等资源是空闲的。可见,人工操作方式严重降低了计算机资源的利用率,此即所谓的人机矛盾。随着CPU速度的提高和系统规模的扩大,人机矛盾变得日趋严重。此外,随着CPU速度的迅速提高而I/O设备的速度却提高缓慢,这又使CPU与I/O设备之间速度不匹配的矛盾更加突出。为了缓和此矛盾,曾先后出现了通道技术、缓冲技术,但都未能很好地解决上述矛盾,直至后来又引入了脱机输入/输出技术,才获得了较为令人满意的结果。第一章操作系统引论2.脱机输入/输出方式为了解决人机矛盾及CPU和I/O设备之间速度不匹配的矛盾,20世纪50年代末出现了脱机输入/输出(Off-LineI/O)技术。该技术是事先将装有用户程序和数据的纸带(或卡片)装入纸带输入机(或卡片机),在一台外围机的控制下,把纸带(卡片)上的数据(程序)输入到磁带上。当CPU需要这些程序和数据时,再从磁带上将其高速地调入内存。第一章操作系统引论图1-3脱机I/O示意图输入设备外围机磁盘主机外围机输出设备第一章操作系统引论类似地,当CPU需要输出时,可由CPU直接高速地把数据从内存送到磁带上,然后再在另一台外围机的控制下,将磁带上的结果通过相应的输出设备输出。图1-3示出了脱机输入/输出过程。由于程序和数据的输入和输出都是在外围机的控制下完成的,或者说,它们是在脱离主机的情况下进行的,故称为脱机输入/输出方式;反之,在主机的直接控制下进行输入/输出的方式称为联机。第一章操作系统引论输入/输出(On-LineI/O)方式。这种脱机I/O方式的主要优点如下:(1)减少了CPU的空闲时间。装带(卡)、卸带(卡)以及将数据从低速I/O设备送到高速磁带(或盘)上,
本文标题:微内核操作系统的基本概念
链接地址:https://www.777doc.com/doc-3433914 .html