第一章操作系统引论.ppt

上传人:少林足球 文档编号:3721093 上传时间:2019-09-21 格式:PPT 页数:187 大小:2.09MB
返回 下载 相关 举报
第一章操作系统引论.ppt_第1页
第1页 / 共187页
第一章操作系统引论.ppt_第2页
第2页 / 共187页
第一章操作系统引论.ppt_第3页
第3页 / 共187页
第一章操作系统引论.ppt_第4页
第4页 / 共187页
第一章操作系统引论.ppt_第5页
第5页 / 共187页
点击查看更多>>
资源描述

《第一章操作系统引论.ppt》由会员分享,可在线阅读,更多相关《第一章操作系统引论.ppt(187页珍藏版)》请在三一文库上搜索。

1、第一章 操作系统引论,1.1 操作系统的目标和作用 1.2 操作系统的发展过程 1.3 操作系统的基本特性,1.1 操作系统的目标和作用,1.1.1 操作系统的目标 1.1.2 操作系统的作用 1.1.3 推动操作系统发展的主要动力,软盘,内存,打印机,CPU(由运算器和控制器组成),输 入,程序 原始数据,输出,运算结果,指令数据线,控制信号线,存储程序并自动执行,键盘,0,输入设备,外部存储器,输出设备,0,0,0,1,0,0,1,1,0,0,0,0,0,0,1,1,0,0,0,0,1,0,1,1.1.1 操作系统的目标 1有效性 在早期(20世纪5060年代),由于计算机系统非常昂贵,操

2、作系统最重要的目标无疑是有效性。事实上,那时有效性是推动操作系统发展最主要的动力。正因如此,现在的大多数操作系统书籍,都着重于介绍如何提高计算机系统的资源利用率和系统的吞吐量问题。操作系统的有效性可包含如下两方面的含意:,(1) 提高系统资源利用率。在未配置OS的计算机系统中,诸如CPU、I/O设备等各种资源,都会因它们经常处于空闲状态而得不到充分利用;内存及外存中所存放的数据太少或者无序而浪费了大量的存储空间。配置了OS之后,可使CPU和I/O设备由于能保持忙碌状态而得到有效的利用,且可使内存和外存中存放的数据因有序而节省了存储空间。,(2) 提高系统的吞吐量。 计算机的吞吐量: 计算机系统

3、的吞吐量是指流入,处理和流出系统的信息的速率。 信息能够多快地输入内存 CPU能够多快地取指令 数据能够多快地从内存取出或存入 所得结果能够多快地从内存送给一台外围设备 这些步骤中的每一步都关系到主存,因此,系统吞吐量主要取决于主存的存取周期。 操作系统还可以通过合理地组织计算机的工作流程,而进一步改善资源的利用率,加速程序的运行,缩短程序的运行周期,从而提高系统的吞吐量。,2方便性 配置OS后可使计算机系统更容易使用。一个未配置OS的计算机系统是极难使用的,因为计算机硬件只能识别0和1这样的机器代码。用户要直接在计算机硬件上运行自己所编写的程序,就必须用机器语言书写程序;用户要想输入数据或打

4、印数据,也都必须自己用机器语言书写相应的输入程序或打印程序。如果我们在计算机硬件上配置了OS,用户便可通过OS所提供的各种命令来使用计算机系统。比如,用编译命令可方便地把用户用高级语言书写的程序翻译成机器代码,大大地方便了用户,从而使计算机变得易学易用。,3可扩充性 随着VLSI技术和计算机技术的迅速发展,计算机硬件和体系结构也随之得到迅速发展,相应地,它们也对OS提出了更高的功能和性能要求。此外,多处理机系统、计算机网络,特别是Internet的发展,又对OS提出了一系列更新的要求。因此,OS必须具有很好的可扩充性,方能适应计算机硬件、体系结构以及应用发展的要求。这就是说,现代OS应采用新的

5、OS结构,如微内核结构和客户服务器模式,以便于方便地增加新的功能和模块,并能修改老的功能和模块。关于新的OS结构将在本章最后一节中介绍。,4开放性 自20世纪80年代以来,由于计算机网络的迅速发展,特别是Internet的应用的日益普及,使计算机操作系统的应用环境已由单机封闭环境转向开放的网络环境。为使来自不同厂家的计算机和设备能通过网络加以集成化,并能正确、有效地协同工作,实现应用的可移植性和互操作性,要求操作系统必须提供统一的开放环境,进而要求OS具有开放性。 开放性是指系统能遵循世界标准规范,特别是遵循开放系统互连(OSI)国际标准。凡遵循国际标准所开发的硬件和软件,均能彼此兼容,可方便

6、地实现互连。开放性已成为20世纪90年代以后计算机技术的一个核心问题,也是一个新推出的系统或软件能否被广泛应用的至关重要的因素。,1.1 操作系统的目标和作用,1.1.1 操作系统的目标 1.1.2 操作系统的作用 1.1.3 推动操作系统发展的主要动力,1.1.2 操作系统的作用 1OS作为用户与计算机硬件系统之间的接口 OS作为用户与计算机硬件系统之间接口的含义是:OS处于用户与计算机硬件系统之间,用户通过OS来使用计算机系统。或者说,用户在OS帮助下,能够方便、快捷、安全、可靠地操纵计算机硬件和运行自己的程序。应注意,OS是一个系统软件,因而这种接口是软件接口。图1-1是OS作为接口的示

7、意图。由图可看出,用户可通过以下三种方式使用计算机。,图1-1 OS作为接口的示意图,(1) 命令方式。这是指由OS提供了一组联机命令接口,以允许用户通过键盘输入有关命令来取得操作系统的服务,并控制用户程序的运行。 (2) 系统调用方式。OS提供了一组系统调用,用户可在自己的应用程序中通过相应的系统调用,来实现与操作系统的通信,并取得它的服务。 (3) 图形、窗口方式。这是当前使用最为方便、最为广泛的接口,它允许用户通过屏幕上的窗口和图标来实现与操作系统的通信,并取得它的服务。,2OS作为计算机系统资源的管理者 在一个计算机系统中,通常都含有各种各样的硬件和软件资源。归纳起来可将资源分为四类:

8、 处理器 存储器 I/O设备 信息(数据和程序)。,2OS作为计算机系统资源的管理者 相应地,OS的主要功能也正是针对这四类资源进行有效的管理,即: 处理机管理,用于分配和控制处理机; 存储器管理,主要负责内存的分配与回收; I/O设备管理,负责I/O设备的分配与操纵; 文件管理,负责文件的存取、共享和保护。 可见,OS的确是计算机系统资源的管理者。事实上,当今世界上广为流行的一个关于OS作用的观点,正是把OS作为计算机系统的资源管理者。,3OS实现了对计算机资源的抽象 对于一个完全无软件的计算机系统(即裸机),它向用户提供的是实际硬件接口(物理接口),用户必须对物理接口的实现细节有充分的了解

9、,并利用机器指令进行编程,因此该物理机器必定是难以使用的。 为了方便用户使用I/O设备,人们在裸机上覆盖上一层I/O设备管理软件,如图1-2所示,由它来实现对I/O设备操作的细节,并向上提供一组I/O操作命令,如Read和Write命令,用户可利用它来进行数据输入或输出,而无需关心I/O是如何实现的。此时用户所看到的机器将是一台比裸机功能更强、使用更方便的机器。这就是说,在裸机上铺设的I/O软件隐藏了对I/O设备操作的具体细节,向上提供了一组抽象的I/O设备。,图1-2 I/O软件隐藏了I/O操作实现的细节,通常把覆盖了上述软件的机器称为扩充机器或虚机器。它向用户(进程)提供了一个对硬件操作的

10、抽象模型,用户可利用抽象模型提供的接口使用计算机,而无需了解物理接口实现的细节,从而使用户更容易地使用计算机硬件资源。由该层软件实现了对计算机硬件操作的第一个层次的抽象。,为了方便用户使用文件系统,人们又在第一层软件上再覆盖上一层用于文件的管理软件,同样由它来实现对文件操作的细节,并向上提供一组对文件进行存取操作的命令,用户可利用这组命令进行文件的存取。此时,用户所看到的是一台功能更强、使用更方便的虚机器。该层软件实现了对硬件资源操作的第二个层次的抽象。而当人们又在文件管理软件上再覆盖一层面向用户的窗口软件后,用户便可在窗口环境下方便地使用计算机,形成一台功能更强的虚机器。,由此可知,OS是铺

11、设在计算机硬件上的多层系统软件,它们不仅增强了系统的功能,而且还隐藏了对硬件操作的细节,由它们实现了对计算机硬件操作的多个层次的抽象。值得说明的是,对一个硬件在底层进行抽象后,在高层还可再次对该资源进行抽象,成为更高层的抽象模型。随着抽象层次的提高,抽象接口所提供的功能就越来越强,用户使用起来也更加方便。,1.1.1 操作系统的目标 1.1.2 操作系统的作用 1.1.3 推动操作系统发展的主要动力,1.1.3 推动操作系统发展的主要动力 1不断提高计算机资源的利用率 在计算机发展的初期,计算机系统特别昂贵,人们必须千方百计地提高计算机系统中各种资源的利用率,这就是OS最初发展的推动力。由此形

12、成了能自动地对一批作业进行处理的多道批处理系统。 在20世纪60和70年代,又分别出现了能有效提高I/O设备和CPU利用率的SPOOLing系统和改善存储器系统利用率的虚拟存储器技术,以及在网络环境下,在服务器上配置了允许所有网络用户访问的文件系统和数据库系统。,2方便用户 当资源利用率不高的问题得到基本解决后,用户在上机、调试程序时的不方便性便又成为主要矛盾。于是人们又想方设法改善用户上机、调试程序时的环境,这又成为继续推动OS发展的主要因素。随之便形成了允许进行人机交互的分时系统,或称为多用户系统。在20世纪90年代初出现了受到用户广泛欢迎的图形用户界面,极大地方便了用户使用计算机,使中小

13、学生都能很快地学会上机操作,这无疑会更加推动计算机的迅速普及。,3器件的不断更新换代 微电子技术的迅猛发展,推动着计算机器件,特别是微机芯片的不断更新,使得计算机的性能迅速提高,规模急剧扩大,从而推动了OS的功能和性能也迅速增强和提高。例如,当微机芯片由8位发展到16位、32位,进而又发展到64位时,相应的微机OS也就由8位发展到16位和32位,进而又发展到64位,此时相应OS的功能和性能也都有显著的增强和提高。,在多处理机快速发展的同时,外部设备也在迅速发展。例如,早期的磁盘系统十分昂贵,只能配置在大型机中。随着磁盘价格的不断降低且小型化,很快在中、小型机以及微型机上也无一例外地配置了磁盘系

14、统,而且其容量还远比早期配置在大型机上的大得多。现在的微机操作系统(如Windows XP)能支持种类非常多的外部设备,除了传统的外设外,还可以支持光盘、移动硬盘、闪存盘、扫描仪等。,4计算机体系结构的不断发展 计算机体系结构的发展,也不断推动着OS的发展并产生新的操作系统类型。例如,当计算机由单处理机系统发展为多处理机系统时,相应地,操作系统也就由单处理机OS发展为多处理机OS。又如,当出现了计算机网络后,配置在计算机网络上的网络操作系统也就应运而生,它不仅能有效地管理好网络中的共享资源,而且还向用户提供了许多网络服务。,1.2 操作系统的发展过程,1.2.1 无操作系统的计算机系统 1.2

15、.2 单道批处理系统 1.2.3 多道批处理系统 1.2.4 分时系统 1.2.5 实时系统 1.2.6 微机操作系统的发展,1.2.1 无操作系统的计算机系统 1人工操作方式 从第一台计算机诞生(1945年)到20世纪50年代中期的计算机,属于第一代计算机。此时的计算机是利用成千上万个真空管做成的,它的运行速度仅为每秒数千次,但体积却十分庞大,且功耗也非常高。这时还未出现OS。计算机操作是由用户(即程序员)采用人工操作方式直接使用计算机硬件系统,即由程序员将事先已穿孔(对应于程序和数据)的纸带(或卡片)装入纸带输入机(或卡片输入机),再启动它们将程序和数据输入计算机,然后启动计算机运行。当程

16、序运行完毕并取走计算结果之后,才让下一个用户上机。这种人工操作方式有以下两方面的缺点:,(1) 用户独占全机。此时,计算机及其全部资源只能由上机用户独占。 (2) CPU等待人工操作。当用户进行装带(卡)、卸带(卡)等人工操作时,CPU及内存等资源是空闲的。 可见,人工操作方式严重降低了计算机资源的利用率,此即所谓的人机矛盾。随着CPU速度的提高和系统规模的扩大,人机矛盾变得日趋严重。此外,随着CPU速度的迅速提高而I/O设备的速度却提高缓慢,这又使CPU与I/O设备之间速度不匹配的矛盾更加突出。为了缓和此矛盾,曾先后出现了通道技术、缓冲技术,但都未能很好地解决上述矛盾,直至后来又引入了脱机输

17、入/输出技术,才获得了较为令人满意的结果。,2脱机输入/输出方式 为了解决人机矛盾及CPU和I/O设备之间速度不匹配的矛盾,20世纪50年代末出现了脱机输入/输出(Off-Line I/O)技术。该技术是事先将装有用户程序和数据的纸带(或卡片)装入纸带输入机(或卡片机),在一台外围机的控制下,把纸带(卡片)上的数据(程序)输入到磁带上。当CPU需要这些程序和数据时,再从磁带上将其高速地调入内存。,图1-3 脱机I/O示意图,类似地,当CPU需要输出时,可由CPU直接高速地把数据从内存送到磁带上,然后再在另一台外围机的控制下,将磁带上的结果通过相应的输出设备输出。图1-3示出了脱机输入/输出过程

18、。由于程序和数据的输入和输出都是在外围机的控制下完成的,或者说,它们是在脱离主机的情况下进行的,故称为脱机输入/输出方式;反之,在主机的直接控制下进行输入/输出的方式称为联机 。,输入/输出(On-Line I/O)方式。这种脱机I/O方式的主要优点如下: (1) 减少了CPU的空闲时间。装带(卡)、卸带(卡)以及将数据从低速I/O设备送到高速磁带(或盘)上,都是在脱机情况下进行的,并不占用主机时间,从而有效地减少了CPU的空闲时间,缓和了人机矛盾。 (2) 提高了I/O速度。当CPU在运行中需要数据时,是直接从高速的磁带或磁盘上将数据调入内存的,不再是从低速I/O设备上输入,极大地提高了I/

19、O速度,从而缓和了CPU和I/O设备速度不匹配的矛盾,进一步减少了CPU的空闲时间。,1.2 操作系统的发展过程,1.2.1 无操作系统的计算机系统 1.2.2 单道批处理系统 1.2.3 多道批处理系统 1.2.4 分时系统 1.2.5 实时系统 1.2.6 微机操作系统的发展,1.2.2 单道批处理系统 1单道批处理系统的处理过程 上世纪50年代中期发明了晶体管,人们开始用晶体管替代真空管来制作计算机,从而出现了第二代计算机。它不仅使计算机的体积大大减小,功耗显著降低,同时可靠性也得到大幅度提高,使计算机已具有推广应用的价值,但计算机系统仍非常昂贵。为了能充分地利用它,应尽量让该系统连续运

20、行,以减少空闲时间。为此,通常是把一批作业以脱机方式输入到磁带上,并在系统中配上监督程序(Monitor),在它的控制下使这批作业能一个接一个地连续处理。,其自动处理过程是:首先,由监督程序将磁带上的第一个作业装入内存,并把运行控制权交给该作业。当该作业处理完成时,又把控制权交还给监督程序,再由监督程序把磁带(盘)上的第二个作业调入内存。计算机系统就这样自动地一个作业一个作业地进行处理,直至磁带(盘)上的所有作业全部完成,这样便形成了早期的批处理系统。由于系统对作业的处理都是成批地进行的,且在内存中始终只保持一道作业,故称此系统为单道批处理系统(Simple Batch Processing

21、System)。图1-4示出了单道批处理系统的处理流程。,图1-4 单道批处理系统的处理流程,2单道批处理系统的特征 单道批处理系统是最早出现的一种OS。严格地说,它只能算作是OS的前身而并非是现在人们所理解的OS。尽管如此,该系统比起人工操作方式的系统已有很大进步。该系统的主要特征如下: (1) 自动性。在顺利情况下,在磁带上的一批作业能自动地逐个地依次运行,而无需人工干预。,(2) 顺序性。磁带上的各道作业是顺序地进入内存,各道作业的完成顺序与它们进入内存的顺序,在正常情况下应完全相同,亦即先调入内存的作业先完成。 (3) 单道性。内存中仅有一道程序运行,即监督程序每次从磁带上只调入一道程

22、序进入内存运行,当该程序完成或发生异常情况时,才换入其后继程序进入内存运行。,1.2 操作系统的发展过程,1.2.1 无操作系统的计算机系统 1.2.2 单道批处理系统 1.2.3 多道批处理系统 1.2.4 分时系统 1.2.5 实时系统 1.2.6 微机操作系统的发展,1.2.3 多道批处理系统 1多道程序设计的基本概念 在单道批处理系统中,内存中仅有一道作业,它无法充分利用系统中的所有资源,致使系统性能较差。为了进一步提高资源的利用率和系统吞吐量,在20世纪60年代中期又引入了多道程序设计技术,由此而形成了多道批处理系统(Multiprogrammed Batch Processing

23、System)。在该系统中,用户所提交的作业都先存放在外存上并排成一个队列,称为“后备队列”;然后,由作业调度程序按一定的算法从后备队列中选择若干个作业调入内存,使它们共享CPU和系统中的各种资源。具体地说,在OS中引入多道程序设计技术可带来以下好处:,(1) 提高CPU的利用率。当内存中仅有一道程序时,每逢该程序在运行中发出I/O请求后,CPU空闲,必须在其I/O完成后CPU才继续运行;尤其因I/O设备的低速性,更使CPU的利用率显著降低。图1-5(a)示出了单道程序的运行情况,从图中可以看出:在t2t3、t6t7时间间隔内CPU空闲。在引入多道程序设计技术后,由于同时在内存中装有若干道程序

24、,并使它们交替地运行,这样,当正在运行的程序因I/O而暂停执行时,系统可调度另一道程序运行,从而保持了CPU处于忙碌状态。图1-5(b)示出了四道程序时的运行情况。,图1-5 单道和多道程序运行情况,(2) 可提高内存和I/O设备利用率。为了能运行较大的作业,通常内存都具有较大容量,但由于80%以上的作业都属于中小型,因此在单道程序环境下,也必定造成内存的浪费。类似地,对于系统中所配置的多种类型的I/O设备,在单道程序环境下也不能充分利用。如果允许在内存中装入多道程序,并允许它们并发执行,则无疑会大大提高内存和I/O设备的利用率。 (3) 增加系统吞吐量。在保持CPU、I/O设备不断忙碌的同时

25、,也必然会大幅度地提高系统的吞吐量,从而降低作业加工所需的费用。,2多道批处理系统的优缺点 虽然早在20世纪60年代就已出现了多道批处理系统,但至今它仍是三大基本操作系统类型之一。在大多数大、中、小型机中都配置了它,说明它具有其它类型OS所不具有的优点。多道批处理系统的主要优缺点如下: (1) 资源利用率高。由于在内存中驻留了多道程序,它们共享资源,可保持资源处于忙碌状态,从而使各种资源得以充分利用。,(2) 系统吞吐量大。系统吞吐量是指系统在单位时间内所完成的总工作量。能提高系统吞吐量的主要原因可归结为:第一,CPU和其它资源保持“忙碌”状态; 第二,仅当作业完成时或运行不下去时才进行切换,

26、系统开销小。,(3) 平均周转时间长。作业的周转时间是指从作业进入系统开始,直至其完成并退出系统为止所经历的时间。在批处理系统中,由于作业要排队,依次进行处理,因而作业的周转时间较长,通常需几个小时,甚至几天。 (4) 无交互能力。用户一旦把作业提交给系统后,直至作业完成,用户都不能与自己的作业进行交互,这对修改和调试程序是极不方便的。,3多道批处理系统需要解决的问题 多道批处理系统是一种有效、但十分复杂的系统。为使系统中的多道程序间能协调地运行,必须解决下述一系列问题。 (1) 处理机管理问题。在多道程序之间,应如何分配被它们共享的处理机,使CPU既能满足各程序运行的需要,又能提高处理机的利

27、用率,以及一旦把处理机分配给某程序后,又应在何时收回等一系列问题,属于处理机管理问题。,(2) 内存管理问题。应如何为每道程序分配必要的内存空间,使它们“各得其所”且不致因相互重叠而丢失信息,以及应如何防止因某道程序出现异常情况而破坏其它程序等问题,就是内存管理问题。 (3) I/O设备管理问题。系统中可能具有多种类型的I/O设备供多道程序所共享,应如何分配这些I/O设备,如何做到既方便用户对设备的使用,又能提高设备的利用率,这就是I/O设备管理问题。,(4) 文件管理问题。在现代计算机系统中,通常都存放着大量的程序和数据(以文件形式存在),应如何组织这些程序和数据,才能使它们既便于用户使用,

28、又能保证数据的安全性和一致性,这些属于文件管理问题。 (5) 作业管理问题。对于系统中的各种应用程序,其中有的属于计算型,即以计算为主的程序;有的属于I/O型,即以I/O为主的程序;又有些作业既重要又紧迫;而有的作业则要求系统能及时响应,这时应如何组织这些作业,这便是作业管理问题。,1.2 操作系统的发展过程,1.2.1 无操作系统的计算机系统 1.2.2 单道批处理系统 1.2.3 多道批处理系统 1.2.4 分时系统 1.2.5 实时系统 1.2.6 微机操作系统的发展,1.2.4 分时系统 1分时系统的产生 分时系统(Time Sharing System)与多道批处理系统之间有着截然不

29、同的性能差别,它能很好地将一台计算机提供给多个用户同时使用,提高计算机的利用率。它被经常应用于查询系统中,满足许多查询用户的需要。用户的需求具体表现在以下几个方面: (1) 人-机交互。每当程序员写好一个新程序时,都需要上机进行调试。由于新编程序难免有些错误或不当之处需要修改,因而希望能像早期使用计算机时一样对它进行直接控制,并能以边运行边修改的方式,对程序中的错误进行修改,亦即,希望能进行人-机交互。,(2) 共享主机。在20世纪60年代计算机非常昂贵,不可能像现在这样每人独占一台微机,而只能是由多个用户共享一台计算机,但用户在使用机器时应能够像自己独占计算机一样,不仅可以随时与计算机交互,

30、而且应感觉不到其他用户也在使用该计算机。 (3) 便于用户上机。在多道批处理系统中,用户上机前必须把自己的作业邮寄或亲自送到机房。这对于用户尤其是远地用户来说是十分不便的。用户希望能通过自己的终端直接将作业传送到机器上进行处理,并能对自己的作业进行控制。,2分时系统实现中的关键问题 (1) 及时接收。要及时接收用户键入的命令或数据并不困难,为此,只需在系统中配置一个多路卡。例如,当要在主机上连接8个终端时,须配置一个8用户的多路卡。多路卡的作用是使主机能同时接收各用户从终端上输入的数据。此外,还须为每个终端配置一个缓冲区,用来暂存用户键入的命令(或数据)。,(2) 及时处理。人机交互的关键,是

31、使用户键入命令后能及时地控制自己作业的运行,或修改自己的作业。为此,各个用户的作业都必须在内存中,且应能频繁地获得处理机而运行;否则,用户键入的命令将无法作用到自己的作业上。前面介绍的批处理系统是无法实现人机交互的。因为通常大多数作业都还驻留在外存上,即使是已调入内存的作业,也经常要经过较长时间的等待后方能运行,因而使用户键入的命令很难及时作用到自己的作业上。,由此可见,为实现人机交互,必须彻底地改变原来批处理系统的运行方式。首先,用户作业不能先进入磁盘,然后再调入内存。因为作业在磁盘上不能运行,当然用户也无法与机器交互,因此,作业应直接进入内存。其次,不允许一个作业长期占用处理机,直至它运行

32、结束或出现I/O请求后,方才调度其它作业运行。为此,应该规定每个作业只运行一个很短的时间(例如0.1秒钟,通常把这段时间称为时间片),然后便暂停该作业的运行,并立即调度下一个程序运行。如果在不长的时间(如3秒)内能使所有的用户作业都执行一次 (一个时间片的时间),便可使每个用户都能及时地与自己的作业交互,从而可使用户的请求得到及时响应。,3分时系统的特征 分时系统与多道批处理系统相比,具有非常明显的不同特征,由上所述可以归纳成以下四个特点: (1) 多路性。允许在一台主机上同时联接多台联机终端,系统按分时原则为每个用户服务。宏观上,是多个用户同时工作,共享系统资源;而微观上,则是每个用户作业轮

33、流运行一个时间片。多路性即同时性,它提高了资源利用率,降低了使用费用,从而促进了计算机更广泛的应用。,(2) 独立性。每个用户各占一个终端,彼此独立操作,互不干扰。因此,用户所感觉到的,就像是他一人独占主机。 (3) 及时性。用户的请求能在很短的时间内获得响应。此时间间隔是以人们所能接受的等待时间来确定的,通常仅为13秒钟。 (4) 交互性。用户可通过终端与系统进行广泛的人机对话。其广泛性表现在:用户可以请求系统提供多方面的服务,如文件编辑、数据处理和资源共享等。,1.2 操作系统的发展过程,1.2.1 无操作系统的计算机系统 1.2.2 单道批处理系统 1.2.3 多道批处理系统 1.2.4

34、 分时系统 1.2.5 实时系统 1.2.6 微机操作系统的发展,1.2.5 实时系统 所谓“实时”,是表示“及时”,而实时系统(Real Time System)是指系统能及时(或即时)响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致地运行。 1应用需求 虽然多道批处理系统和分时系统已能获得较为令人满意的资源利用率和响应时间,从而使计算机的应用范围日益扩大,但它们仍然不能满足以下某些应用领域的需要。,(1) 实时控制。当把计算机用于生产过程的控制,以形成以计算机为中心的控制系统时,系统要求能实时采集现场数据,并对所采集的数据进行及时处理,进而自动地控制相应的执

35、行机构,使某些(个)参数(如温度、压力、方位等)能按预定的规律变化,以保证产品的质量和提高产量。类似地,也可将计算机用于对武器的控制,如火炮的自动控制系统、飞机的自动驾驶系统,以及导弹的制导系统等。此外,随着大规模集成电路的发展,已制作出各种类型的芯片,并可将这些芯片嵌入到各种仪器和设备中,用来对设备的工作进行实时控制,这就构成了所谓的智能仪器和设备。在这些设备中也需要配置某种类型的、能进行实时控制的系统。通常把用于进行实时控制的系统称为实时系统。,(2) 实时信息处理。通常,人们把用于对信息进行实时处理的系统称为实时信息处理系统。该系统由一台或多台主机通过通信线路连接到成百上千个远程终端上,

36、计算机接收从远程终端上发来的服务请求,根据用户提出的请求对信息进行检索和处理,并在很短的时间内为用户做出正确的响应。典型的实时信息处理系统有早期的飞机或火车的订票系统、情报检索系统等。,2实时任务 1) 按任务执行时是否呈现周期性来划分 (1) 周期性实时任务。外部设备周期性地发出激励信号给计算机,要求它按指定周期循环执行,以便周期性地控制某外部设备。 (2) 非周期性实时任务。外部设备所发出的激励信号并无明显的周期性,但都必须联系着一个截止时间(Deadline)。它又可分为开始截止时间(某任务在某时间以前必须开始执行)和完成截止时间(某任务在某时间以前必须完成)两部分。,2) 根据对截止时

37、间的要求来划分 (1) 硬实时任务(Hard real-time Task)。系统必须满足任务对截止时间的要求,否则可能出现难以预测的结果。 (2) 软实时任务(Soft real-time Task)。它也联系着一个截止时间,但并不严格,若偶尔错过了任务的截止时间,对系统产生的影响也不会太大。,3实时系统与分时系统特征的比较 (1) 多路性。实时信息处理系统也按分时原则为多个终端用户服务。实时控制系统的多路性则主要表现在系统周期性地对多路现场信息进行采集,以及对多个对象或多个执行机构进行控制。而分时系统中的多路性则与用户情况有关,时多时少。 (2) 独立性。实时信息处理系统中的每个终端用户在

38、向实时系统提出服务请求时,是彼此独立地操作,互不干扰;而实时控制系统中,对信息的采集和对对象的控制也都是彼此互不干扰。,(3) 及时性。实时信息处理系统对实时性的要求与分时系统类似,都是以人所能接受的等待时间来确定的;而实时控制系统的及时性,则是以控制对象所要求的开始截止时间或完成截止时间来确定的,一般为秒级到毫秒级,甚至有的要低于100微秒。 (4) 交互性。实时信息处理系统虽然也具有交互性,但这里人与系统的交互仅限于访问系统中某些特定的专用服务程序。它不像分时系统那样能向终端用户提供数据处理和资源共享等服务。,(5) 可靠性。分时系统虽然也要求系统可靠,但相比之下,实时系统则要求系统具有高

39、度的可靠性。因为任何差错都可能带来巨大的经济损失,甚至是无法预料的灾难性后果,所以在实时系统中,往往都采取了多级容错措施来保障系统的安全性及数据的安全性。,1.2 操作系统的发展过程,1.2.1 无操作系统的计算机系统 1.2.2 单道批处理系统 1.2.3 多道批处理系统 1.2.4 分时系统 1.2.5 实时系统 1.2.6 微机操作系统的发展,1.2.6 微机操作系统的发展 1单用户单任务操作系统 单用户单任务操作系统的含义是,只允许一个用户上机,且只允许用户程序作为一个任务运行。这是最简单的微机操作系统,主要配置在8位和16位微机上。最有代表性的单用户单任务微机操作系统是CP/M和MS

40、-DOS。,1) 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位微机中占据了统治地位。,2) MS-DOS 1981年IBM公司首次推出了IBM-PC个人计算机(16位微机),在微机中采用了微软

41、公司开发的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为止的DOS版本都属于单用户单任务操作系统,内存被限制在640 KB。从1989年到1993年又先后推出了多个MS-DOS版本,它们都可以配置在Intel 80386、80486等32位微机上。从20世纪80

42、年代到90年代初,由于MS-DOS性能优越而受到当时用户的广泛欢迎,成为事实上的16位单用户单任务操作系统标准。,2单用户多任务操作系统 单用户多任务操作系统的含义是,只允许一个用户上机,但允许用户把程序分为若干个任务,使它们并发执行,从而有效地改善了系统的性能。目前在32位微机上配置的操作系统基本上都是单用户多任务操作系统,其中最有代表性的是由微软公司推出的Windows。1985年和1987年微软公司先后推出了Windows 1.0和Windows 2.0版本操作系统,由于当时的硬件平台还只是16位微机,对1.0和2.0版本不能很好的支持。1990年微软公司又发布了Windows 3.0版

43、本,随后又宣布了Windows 3.1版本,它们主要是针对386和486等32位微机开发的,较之以前的操作系统有着重大的改进,引入了友善的图形用户界面,支持多任务和扩展内存的功能,使计算机更好使用,从而成为386和486等微机的主流操作系统。,1995年微软公司推出了Windows 95,它较之以前的Windows 3.1有许多重大改进,采用了全32位的处理技术,并兼容以前的16位应用程序,在该系统中还集成了支持Internet的网络功能。1998年微软公司又推出了Windows 95的改进版Windows 98,它已是最后一个仍然兼容以前的16位应用程序的Windows,其最主要的改进是把微

44、软公司自己开发的Internet浏览器整合到系统中,大大方便了用户上网浏览,另一个特点是增加了对多媒体的支持。2001年微软又发布了32位版本的Windows XP,同时提供了家用和商业工作站两种版本,它是当前使用最广泛的个人操作系统。2001年还发布了64位版本的Windows XP。,微机操作系统Windows系列,Windows 2.0,Windows 3.0,Windows 3.1,Windows NT 3.1,Windows 3.2,Windows 1.0,Windows 95,Windows 98,Windows ME,Windows 2000,Windows XP,Windows

45、 2003,Windows NT 4.0,Windows Vista,1985,1987,1990,1992,1993,1994,1995,1996,1998,2000,2000,2001,2003,2005,http:/ 多用户多任务操作系统的含义是,允许多个用户通过各自的终端使用同一台机器,共享主机系统中的各种资源,而每个用户程序又可进一步分为几个任务,使它们能并发执行,从而可进一步提高资源利用率和系统吞吐量。在大、中和小型机中所配置的大多是多用户多任务操作系统,而在32位微机上也有不少是配置的多用户多任务操作系统,其中最有代表性的是UNIX OS。,UNIX OS是美国电报电话公司的Be

46、ll实验室在19691970年期间开发的,1979年推出来的UNIX V.7已被广泛应用于多种中、小型机上。随着微机性能的提高,人们又将UNIX移植到微机上。在1980年前后,将UNIX第7版本移植到Motorola公司的MC 680xx微机上,后来又将UNIX V7.0版本进行简化后移植到Intel 8080上,把它称为Xenix。现在最有影响的两个能运行在微机上的UNIX操作系统的变型是Solaris OS和Linux OS。,微机操作系统Unix系列,设计目标,向大的用户团体提供对计算机的同时访问。 支持强大的计算能力与数据存储。 在需要时,用户能够容易地共享他们的数据。,Ken Tho

47、mpson,AT&T 贝尔实验室 1983年的Turing奖,Dennis M. Ritchie,(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,这几款操作系统在网络特性、互操作性、兼容性以及易于配置和管理方面均有很大

48、的提高。,(2) Linux OS:Linux 是UNIX的一个重要变种,最初是由芬兰学生Linus Torvalds针对Intel 80386开发的。1991年在Internet网上发布第一个Linux版本,由于源代码公开,因此有很多人通过Internet与之合作,使Linux的性能迅速提高,其应用范围也日益扩大。相应地,源代码也急剧膨胀,此时它已是具有全面功能的UNIX系统,大量在UNIX上运行的软件(包括1000多种实用工具软件和大量的网络软件)被移植到Linux上,而且可以在主要的微机上运行,如Intel 80x86 Pentium等。,微机操作系统Linux系列,Linux与Unix

49、,Linux与UNIX操作系统类似; 不是UNIX操作系统的变种,在开发初期其内核代码是仿效UNIX的; 几乎所有UNIX的工具与外壳都可以运行在Linux上。,Linus Torvalds,1991年开始,1994年Linux1.0,1.3 操作系统的基本特性,1.3.1 并发性 1.3.2 共享性 1.3.3 虚拟技术 1.3.4 异步性,1.3.1 并发性 1并行与并发 并行性和并发性(Concurrence)是既相似又有区别的两个概念: 并行性:是指两个或多个事件在同一时刻发生; 并发性:是指两个或多个事件在同一时间间隔内发生。 在多道程序环境下,并发性是指在一段时间内宏观上有多个程序在同时运行,但在单处理机系统中,每一时刻却仅能有一道程序执行,故微观上这些程序只能是分时地交替执行。倘若在计算机系统中有多个处理机,则这些可以并发执行的程序便可被分配到多个处理机上,实现并行执行,即利用每个处理机来处理一个可并发执行的程序,这样,多个程序便可同时执行。,2引入进程 应当指

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1