1.1存储程序式计算机1.2操作系统的发展历史1.3操作系统的基本概念1.4操作系统的逻辑模型1.5微机操作系统操作系统的作用操作系统的发展操作系统的特征与功能多道程序设计的概念操作系统的模型返回首页1.1.1存储程序式计算机的结构与特点1.1.2作为扩展计算机功能的操作系统1.1.3作为资源管理的操作系统返回首页存储程序式计算机模型的基本方案是,如要使计算机能够自动地计算,必须有一个存储器用来存储程序和数据;同时要有一个运算器,用以执行指定的操作;有一个控制器,以便实现自动操作;另外,辅以输入/输出部件,以便输入原始数据和输出计算结果。于是形成了现代计算机的基本组成形式。如图1.1所示。存储器运算器数据数据指令控制器控制信号输出器输入器程序和数据图1.1存储程序计算机的组成返回本节一台完全无软件的计算机系统称为裸机,即便其性能再强,相对于用户来讲,如果要面对计算机的指令集、存储组织、I/O总线结构的编程则是十分困难的。对于一般程序员也并不想涉足硬件编程的种种具体细节,而希望针对数据结构抽象地使用硬件。如果我们在裸机上覆盖一层I/O设备管理软件,用户便可以利用这层I/O设备管理软件提供给用户的接口来进行数据的输入和输出,那么用户此时看到的计算机是一台功能强大、使用方便的计算机,但实际上,计算机的硬件丝毫没有变化,这样的计算机称为软件扩充的机器,或称软件虚拟机。OS作为硬件系统和应用程序间的界面具有如下功能:①程序创建。②程序执行。③I/O设备的访问。④控制对文件的访问。⑤系统访问。⑥查错和纠错。⑦簿记。10返回本节从作为机器功能扩充的观点看,操作系统是为用户提供基本的方便的接口,这是一种自顶向下的观点或是自内向外的观点。但是从用户向机器的观点或自底向上的观点来看,操作系统则用来管理一个复杂计算机系统的各个部分。现代计算机包含处理器、存储器、时钟、磁盘、终端、网络接口、打印机以及许多其他设备。从这个角度来看,操作系统的任务是在相互竞争的程序之间有序地控制对处理器、存储器以及其他I/O接口设备的分配。作为资源管理器的操作系统:12I/O设备内存处理器处理器I/O控制器I/O控制器I/O控制器操作系统软件程序和数据数据程序OS返回本节1.2.1无操作系统的计算机1.2.2单道批处理系统与多道批处理系统及执行系统1.2.3分时系统1.2.4实时系统1.2.5网络操作系统与分布式操作系统返回首页操作系统发展至今已有四十多年。设计操作系统主要有两个目的:第一,为程序的开发和执行提供一个方便的环境;第二,为保证计算机系统顺利执行,操作系统对各个计算活动进行调度。14人工操作方式有以下两个缺点:(1)用户独占全部计算机系统资源。(2)CPU等待人工操作。用户进行装带(卡)、卸带(卡)等人工操作时,CPU这个系统最重要的资源空闲。用户纸带、卡片计算机图1.2手工操作计算机16运算速度:5000次/每秒,18000个真空管,占地182平方米,重量130吨,功耗140kW最早的计算机,从20世纪40年代末到50年代中期,程序员直接与硬件接触,根本没有OS。计算机运行在一个集成了指示器、各种开关、一些输入设备以及一个打印机的控制台之上。早期的这种系统存在两个问题:(1)上机安排(2)启动时间返回本节所谓批处理系统是指加载在计算机上的一个系统软件,在它的控制下,计算机能够自动地成批地处理一个或多个用户的作业。首先出现的是监督程序控制的联机批处理系统。如图1.3所示。脱机批处理系统控制作业的输入/输出过程是:利用一台或多台卫星机或微机进行输入输出程序和数据,把用户程序集中到一起,让它们从输入机上读取用户程序,并输出到磁带上;主机空闲时从输入磁带机上取作业运行,并把结果输出到高速输出磁带机上;当微机或卫星机空闲时,再控制向慢速外设上输出。用户输入机磁带主机输出设备图1.3联机处理系统(监督程序控制减少人工操作)20卡片早期批处理系统IBM1401IBM7094IBM1401输入磁带磁带机卡片阅读机输出磁带打印机OperatingSystem高速磁带高速磁带输入机输出设备主机微机图1.4脱机批处理系统批处理系统虽然实现了作业的自动选择、作业的缓输入与缓输出,但也有很多缺点。例如,为了实现主机与外设的并行操作,引入了卫星机或微机专门负责I/O操作;当主机与高速外存通讯时,其过程仍由主机控制。所谓中断是指当主机接到外界硬件发来的中断信号时,停止原来的工作,转去处理中断的事件。在处理中断完成以后,主机又回到原来的工作点继续工作。这样可以使用户程序的I/O申请完成后,主机能自动在原中断点之后继续运行,同时为多道程序并发执行打下了基础。用户将作业交到机房,操作员将一批作业输入到辅存(如磁盘)上,形成一个作业队列。当需要调入作业时,管理程序从这一批中选几道作业调入内存,让它们进入内存运行。当一些作业完成时,管理程序调入另一些程序,直到这一批作业全部完成。批处理系统的工作流程在单道批处理系统中,内存中仅有一道作业,中断和通道技术出现以后,虽然可以实现输入/输出设备与中央处理机并行操作,但由于属于同一道作业的可并发执行的进程不多,大多数进程是有同步关系的,这使系统中仍有较多的空闲资源,致使系统的性能较差。为了进一步提高资源的利用率和系统对作业的吞吐量,在20世纪60年代中期,引入了多道程序设计技术,由此而形成了多道批处理系统。单道程序与多道程序的执行过程如图1.5和图1.6所示。图1.5单道程序工作过程示意图1.6多道程序执行过程示意设在内存中有三道程序A、B和C,并按A、B、C的优先次序执行。其内部计算和I/O操作的时间如下表所示:操作ABC计算306020I/O403040计算101020程序要求:(1)试画出按多道程序运行的时间关系图(调度程序的执行时间忽略不计)。完成这三道程序共花多少时间?比单道程序运行节省多少时间?(2)若处理调度程序每次进行程序状态转换的时间为1ms,试画出在处理机调度程序管理下各程序状态转换的时间关系图。304010603010204020t260ms计算I/O3040t190msAB40C通道10202030104020(a)(b)3040t180msAB40C通道110202030104020(c)通道23040t186msAB40C通道110202030104020(d)通道2111111若采用多道方式运行(多个通道)这三道程序,其程序运行时间关系如图1.3(c)所示,总运行时间为:30+40+10+20+20+40+20=180ms,比单道可节省260-180=80ms。(2)若处理调度程序每次进行程序状态转换的时间为1ms,其程序运行时间关系如图1.3(d)所示,这三道程序的总运行时间为:30+1+40+1+10+1+20+1+20+1+40+1+20=186ms。存储保护与程序重定位处理机管理和调度系统资源的管理和调度•多道。•宏观上并行。•微观上串行。在操作系统中引入多道程序设计技术以后,会使系统具有以下特征。(1)多道性(2)无序性(3)宏观上并行、微观上串行(4)调度性返回本节分时技术是把处理机的时间分成很短的时间片,这些时间片轮流地分配给各个联机的各作业使用。如果某作业在分配给它的时间片用完时仍未完成,则该作业就暂时中断,等待下一轮运行,并把处理机的控制权让给另一个作业使用。这样在一个相对较短的时间间隔内,每个用户作业都能得到快速响应,以实现人机交互。分时系统图示主机终端是指终端用户发出一条命令到系统处理完这条命令并作出回答所需的时间.T=NQ分时系统与多道批处理系统相比,具有完全不同的特征,由上所述可以归纳成以下几点:(1)多路性:允许在一台主机上同时联接多台联机终端,系统按分时原则为每个用户服务。(2)独立性:每个用户各占一个终端,彼此独立操作,互不干扰。(3)及时性:用户的请求能在很短时间内获得响应。(4)交互性:用户可通过终端与系统进行广泛的人机对话。操作系统的形成标志是多道程序和分时系统。多道程序设计:是指同时把若干个作业存放在内存中,并且同时处于执行过程中.分时系统:在一台计算机上,连接若干个终端,用户通过这些联机终端设备采用交互方式把他的程序和数据输入到计算机中,并控制程序的执行.操作系统的形成阶段返回本节1.实时操作系统的分类2.实时操作系统的主要目标实时控制实时控制系统的主要特点是:与被控制过程的变化速度相比,其反应速度要足够快;工作安全可靠,即使系统硬件发生故障,系统也能安全运行;操作人员使用系统也简单、方便。实时信息处理典型的实时信息处理系统有:飞机订票系统、情报检索系统等。专用性实时性在线性高可靠性系统的设计目标不同交互性的强弱不同响应时间长短不同(1)实时时钟管理。(2)连续人机对话。(3)过载防护。(4)高可靠性。返回本节到20世纪80年代,随着超大规模集成电路的发展产生了微型计算机,配置在微机上的操作系统称为微机操作系统。最早出现的微机操作系统是8位微机上的CP/M,它是一个单用户单任务操作系统,即只允许一个用户上机,且只允许用户程序作为一个任务运行。1981年IBM公司推出16位的IBM-PC个人计算机,并在其上采用了微软公司开发的MS-DOS操作系统。1987年4月,IBM公司推出了OS/2,其最初的版本OS/21.X是针对80286开发的,仍属16位操作系统,但已能实现真正的多任务处理。1990年微软公司推出Windows3.0,其友好的图形用户界面及易学易用的特点使其很快占领了个人计算机操作系统的市场。1995年推出的Windows95及1998年推出的Windows98成为32位多任务操作系统的主流。WindowsXP\Vista\Windows7计算机网络操作系统的模式:客户/服务器模式(Client/Server)网络中的各个站点可以分为两大类:服务器:为客户提供服务如文件服务、打印服务、数据库服务等客户机:用户通过客户机访问服务器对等模式(Peer-to-Peer)各个站点是对等的,它既可作为客户也可作为服务在以往的系统中,其处理和控制功能都高度集中在一台主机上,所有的任务都由主机处理,这样的系统称为集中式处理系统。所谓分布式系统,是指由多个分散的处理单元经网络的连接而形成的系统。在分布式处理系统中,系统的处理和控制功能都分散在系统的各个处理单元上。系统中的所有任务可以动态地分配到各个处理单元中去。如果允许多个用户通过各自的终端,使用同一台主机共享主机系统中的各类资源,而每个用户程序又可进一步分为几个任务,使它们并发执行,从而进一步提高资源利用率和系统吞吐量,则这种操作系统称多为用户多任务操作系统。在大、中、小型计算机上都可以配置多用户多任务操作系统,在32位微机上也有很多配置多用户多任务操作系统,最有代表性的是UNIX操作系统。计算机技术和通讯技术的结合使得微机用户资源共享及相互通信的愿望成为可能,即在一台计算机上可以使用其他机器上的资源或进行通信。这样计算机网络的概念得以产生。一些独立自治的计算机利用通信线路相互连接形成的计算机的集合,称为计算机网络。大量的实际应用要求一个一体化的系统,用户希望以统一的界面,标准的接口去使用系统的各种资源,实现所需的各种操作。这就导致了分布式系统的出现。一个分布式系统是若干计算机的集合,它们都有自己的局部存储器和外部设备,但分布式系统是一个一体化的系统,在系统中有一个全局操作系统,即分布式操作系统,它负责整个系统的资源分配和调度、任务划分、信息传输、控制协调等工作,为用户提供一个统一的界面,标准的接口,用户通过这一界面实现所需的操作和使用系统的资源,但操作和计算是在哪一台计算机上执行或使用哪个计算机的资源则由操作系统自动完成,用户不用知道,即分布式操作系统是透明的。返回本节1.3.1操作系统的定义1.3.2操作系统的基本功能1.3.3操作系统的特征返回首页用户程