为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

操作系统课件(汤小丹)

2022-03-13 30页 ppt 888KB 8阅读

用户头像 个人认证

心想事成2022

暂无简介

举报
操作系统课件(汤小丹)*计算机操作系统汤小丹主编西安电子科技大学出版社*1.1操作系统的概念1.2操作系统的发展过程1.3操作系统的类型1.4操作系统的特征1.5操作系统的功能1.6操作系统结构设计*1.1操作系统的概念一、操作系统的地位裸机(BareMachine):没有任何的软机支持的计算机。它仅仅构成了计算机系统的物质基础。一个完整的计算机系统由两大部分组成:计算机硬件和计算机软件。*(一)计算机的硬件1.硬件的概念指计算机系统中由电子、机械和光电元件等组成的各种计算机部件和计算机设备。2.计算机硬件系统的基本组成①运算器②控制器③存储器中央...
操作系统课件(汤小丹)
*计算机操作系统汤小丹主编西安电子科技大学出版社*1.1操作系统的概念1.2操作系统的发展过程1.3操作系统的类型1.4操作系统的特征1.5操作系统的功能1.6操作系统结构*1.1操作系统的概念一、操作系统的地位裸机(BareMachine):没有任何的软机支持的计算机。它仅仅构成了计算机系统的物质基础。一个完整的计算机系统由两大部分组成:计算机硬件和计算机软件。*(一)计算机的硬件1.硬件的概念指计算机系统中由电子、机械和光电元件等组成的各种计算机部件和计算机设备。2.计算机硬件系统的基本组成①运算器②控制器③存储器中央处理器④输入设备⑤输出设备*(二)计算机的软件1.软件的概念软件是由计算机硬件执行以完成一定任务的所有程序及其数据。2.软件的分类分为系统软件和应用软件其中,系统软件由操作系统、程序设计语言、语言处理程序、数据库管理系统、网络系统和常用服务系统等组成。应用软件是指专门为某一应用目的而用系统软件编制的软件系统。*操作系统的目标1.方便性(用户的观点)提供良好的、一致的用户接口,弥补硬件系统的类型和数量差别。2.有效性(系统管理员的观点)管理和分配硬件、软件资源,合理地组织计算机的工作流程。3.可扩充性适应计算机技术的迅速发展,对OS提出了更高的功能和性能要求(OS层次化)。4.开放性:出自不同厂家的计算机硬件系统,要能在网络环境下协调工作,要求具有统一的开放环境。*操作系统的功能:处理机管理、存储器管理、设备管理、文件管理、用户接口。系统需要为word处理程序进行存储资源的分配=》进程的管理=》将结果输出到外部设备例如:打开一个word处理程序,OS需要作什么?系统还需要有极强的容错性和稳定性,能够避免由于某个程序的不稳定,而影响整个应用程序的不稳定。OS的五大管理功能:*操作系统的定义操作系统是合理组织计算机的工作流程,有效控制和管理计算机系统的各类资源,并方便用户使用计算机的程序集合。补充:OS是用户和计算机的接口OS是最重要的系统软件*1.2操作系统的发展过程“需求推动发展”(1)提高资源的利用率和系统性能;(2)方便用户:用户上机、调试程序;(3) 分散计算时的事务处理和非专业用户;(4)器件的发展。*=》1946年到50年代第一代电子管计算机工作方式:用户既是程序员,又是操作员;编程语言:为机器语言;输入输出:纸带或卡片;工作特点:用户独占全机,资源不共享CPU利用率低主要矛盾:计算机处理能力的提高,手工操作的低效率(造成浪费);提高效率的途径:专门的操作员,批处理*=》50年代末~60年代中单道批处理系统(晶体管计算机)利用磁带把若干个作业分类编成作业执行序列,每个批作业由一个专门的监督程序(Monitor)自动依次处理。可使用汇编语言开发。存在问题:CPU和I/O设备使用忙闲不均(取决于当前作业的特性)。对计算为主的作业,外设空闲;对I/O为主的作业,CPU空闲。人机矛盾仍然存在。*=》操作系统的完善通道技术和中断技术的出现使监督程序在负责作业运行的同时提供I/O控制功能。通道:专用的I/O处理器,可与CPU并行工作,使I/O联机处理。中断:是指CPU在收到外部中断信号后,停止原来工作,转去处理该中断事件,完毕后回到原来断点继续工作。*60年代中多道程序批处理系统为进一步提高资源的利用率和系统的吞吐量,引入多道程序批处理系统操作系统终于代替人工成了计算机系统的“管家”,其发展进入了成熟期,UNIX是这个时期的典型代。*=》操作系统的发展从1980年至今建立在大规模集成电路基础上的第四代计算机蓬勃发展。从个人计算机到并行机,再到网络,计算机体系结构也不断发展变化。微机操作系统、并行操作系统、分布式操作系统、网络操作系统和嵌入式操作系统等相继产生。操作系统的使用界面也从字符界面变成了图形界面。操作系统的结构除了有序分层的模块化结构外,还出现了客户/服务器加微内核结构等。DOS、OS/2、Windows和Linux等是这一时期的典型代表。*1.3操作系统的基本类型*批处理操作系统(BatchProcessingOperatingSystem)分时操作系统(Time-sharingOperatingSystem)实时操作系统(Real-TimeOperatingSystem)*一、批处理操作系统单道批处理(simpleBatch)系统多道批处理(multiprogrammedBatch)系统1.运行方式:宏观上并行运行:都处于运行状态,但都未运行完;微观上串行运行:各作业交替使用CPU;多道:内存中同时存放几个作业*2.多道批处理系统的特征优点:(1)资源利用率高(2)作业吞吐量大(3)系统开销小缺点:(1)用户交互性差(2)作业平均周转时间长*二、分时操作系统主机终端终端终端………分时系统示意图*1.分时的概念与实现分时:指若干并发程序对CPU时间的共享,通过系统软件实现。指多个用户分享使用同一台计算机。两个或多个事件按时间划分轮流使用计算机系统中的某一资源。实现分时的基本方法是设立一个时间分享单位——时间片(timeslice)。它是系统规定进程一次使用处理机的最长时间。时间片的长短可以因不同系统而异,通常100ms左右。*实现思想如下:每个用户在各自的终端上以问答方式控制程序运行,系统把中央处理器的时间划分成时间片,轮流分配给各个联机终端用户,每个用户只能在极短时间内执行,若时间片用完,而程序还未做完,则挂起等待下次分得时间片。*2.分时系统的引入分时系统的产生则是为了满足用户的需求在批处理系统中,用户不能干预自己程序的运行,无法得知程序运行情况,对程序的调试和排错不利。CTSS是最早的分时操作系统,Unix是目前广泛使用的一个分时操作系统*3.分时系统的特征(1)交互性有人把分时系统称为交互系统。(2)及时性终端用户的请求能在很短的时间内获得响应,通常为2~3秒钟。(3)独占性每个用户各占一个终端,彼此独立操作,互不干扰,感觉好象自己独占主机一样。(4)同时性(也叫多路性)提高了系统资源利用率,节省了开支。*三、实时操作系统实时系统则是指系统对特定输入做出反应的速度足以控制发出实时信号的对象,或者说计算机能够实时地响应外部事件的请求,在规定的短时间内完成对该事件的处理,并控制所有实时设备和实时任务协调一致地运行。*1.实时系统的类型实时控制系统和实时信息处理系统(信息查询系统和事务处理系统)。导弹制导系统,飞机自动驾驶系统,火炮自动控制系统???气象预报系统、飞机订票系统和股票交易系统情报检索系统??*2.实时系统的特征除了多路性,独占性外,还有下面的特征(1)稍弱的交互性它仅允许操作人员访问系统中某些特定的专用服务程序,一般不许写入或修改现有程序,不象分时系统那样能向终端用户提供数据处理和资源共享等服务。(2)实时性对及时性的要求高,常以控制对象所能接受的延迟时间来确定,可以是秒级、毫秒级,甚至是微秒级。(3)可靠性常采用多级容错措施,以保证系统的安全可靠。*四、单用户操作系统单用户单任务操作系统:单用户多任务操作系统:只允许一个用户上机,但允许将一个用户程序分为若干任务,使他们并发执行。Windows9x就是图形用户界面的单用户多任务操作系统的典型代表。在同一段时间内仅为一个用户提供服务。由于一个用户独占整个计算机系统,操作系统资源管理的任务变得不重要,为用户提供良好的工作环境成了这类操作系统最主要的目标。如MS-DOS、CP/M等。*五、网络操作系统将地理上分散的自主计算机通过通信系统的线路互连而成计算机网络。网络操作系统是在通常操作系统功能的基础上提供网络通信和网络服务功能的操作系统。网络操作系统为网上计算机进行方便而有效的网络资源共享,提供网络用户所需各种服务的软件和相关规程的集合。三大阵营:UNIX、WindowsNT、Netware等*六、分布式操作系统*分布式计算机系统指由多台分散的计算机,经互连网络连接而成的系统。每台计算机高度自治,又相互协同,能在系统范围内实现资源管理,任务分配、能并行地运行分布式程序。集中式计算机系统以往的计算机系统中,其处理和控制功能都高度地集中在一台计算机上,所有的任务都由它完成*分布式系统的主要优缺点优点:性价比高、可靠性高、可扩展性强、适合分布式的应用等。缺点:需要复杂的软件、存在潜在的通信瓶颈、数据安全性较弱等。真正实用的分布式操作系统:荷兰Virije大学研制的Amoeba和美国CarnegieMello研制的Mach、X树系统、Plan9等*1.4操作系统的特征一、并发性二、共享性三、虚拟性四、异步性*一、并发与并行并发:Concurrence是指两个或多个事件在同一时间间隔内发生。并行:Parallel是指两个或多个事件在同一时刻发生。单处理机系统中采用多道程序技术后,可以实现硬件之间的并行操作和程序之间的并发执行。*程序A请求I/O程序B请求I/O程序C请求I/OC完成I/OB完成I/OA完成I/OC再次被调度A再次被调度A完成程序A程序C程序B调度程序时间轴t多道程序并发执行示意图单线表示程序占用cpu,双线表示外设在执行相应程序的I/O请求*小注:两道程序分别在两个处理机(多CPU)或两套处理部件中独立运行,可以实现并行。并发程序要达到“在同一时间间隔内进行”,也需要相应的硬件或软件支持。例如,两道程序分别在一个处理机或一套处理部件上运行,由于每一时刻仅能执行一道程序,所以微机上这两道程序是交替和顺序执行的,但从宏观上看,在一段时间间隔内这两道程序同时运行。所以,并发和并行都需要多道程序技术的支持。*二、共享性共享:是指计算机系统中的各种硬、软件资源都可以为多个用户同时使用。共享可分互斥共享和同时共享两种方式。互斥共享也叫顺序共享:是指多个进程(进程的定义在第二章)互斥地或者排他性地使用某个资源。同时共享又叫并发共享:是指在一段时间内,多个程序可以同时使用系统中的某个资源。这里的“同时”是个宏观概念,微观上,这多个进程是交替使用该资源*小注:并发与共享是现代操作系统的两个最基本特征,它们之间是相辅相成、互为依存的。一方面,资源共享是以程序(进程)并发执行为条件的,如果系统不允许并发执行,自然不存在资源共享问题;另一方面,程序并发执行以资源共享为基础,如果系统不能对资源共享实施有效管理,则也必将影响到程序的并发执行,甚至根本无法并发执行。只有系统能够高度并发,资源才能充分共享;也只有资源被充分共享,系统才能更好地并发。*三、虚拟性在操作系统中所谓的虚拟:是通过某种技术物理上的一个实体映射为逻辑上的多个对应物。前者是实际存在的,后者是虚的,是感觉性的存在。如WINDOWS操作系统使用了虚拟存储技术,它把外部存储器映射为用户自由使用的“无限大”的内存空间,即虚拟内存,这样保证了需要内存空间比实际内存空间大的程序能正常运行。*四、异步性所谓异步是指内存中的多个进程都按照各自独立的、不可预知的速度向前推进。这是由于它们共享资源、并发执行的缘故。内存中的每个进程什么时候执行,向前推进速度快慢,共需多少时间都是由执行的现场所决定。很有可能先进入内存的作业后完成,后进入内存的作业先完成。但同一程序在相同的初始数据下,无论何时运行都应获得同样的结果。*操作系统是一个十分复杂的大型软件。为了控制该软件的复杂性,在开发OS时,先后引入了分解、模块化、抽象和隐蔽等软件工程方法方法。开发方法的不断发展,促进了OS结构的更新换代。一般地,传统的OS结构:第一代至第三代的OS结构现代OS结构:微内核的OS结构。1.6操作系统结构设计1.6.1传统的操作系统结构*在早期开发操作系统时,设计者是基于过程的方法设计,各过程之间可以相互调用,在操作系统内部不存在任何结构,因此,这种OS是无结构(整体系统结构)的。基于过程的设计方法,只注重如何编制紧凑的程序,以便于有效地利用内存、对GOTO语句的使用不加任何限制,所设计出的操作系统既庞大又杂乱,缺乏清晰的程序结构。这一方面会使所编制出的程序错误很多,给调试工作带来很多困难;另一方面也使程序难以阅读和理解,增加了维护人员的负担。1.无结构操作系统*1)模块化结构模块化程序设计技术是基于“分解”和“模块化”原则来控制大型软件的复杂度的。为使OS具有较清晰的结构,将OS按其功能划分为若干个具有一定独立性和大小的模块。每个模块具有某方面的管理功能,如进程管理模块、存储器管理模块……等,并规定好各模块间的接口,使各模块之间能通过该接口实现交互,然后再进一步将各模块细分为若干个具有一定管理功能的子模块。2.模块化OS结构*图1-5模块化操作系统结构*(1)提高了OS设计的正确性、可理解性和可维护性。(2)增强了OS的可适应性。(3)加速了OS的开发过程。模块化结构设计的缺点有二。首先,在开始设计OS时,对模块的划分及对接口的规定并不精确,而且还可能存在错误,因而很难保证按此规定所设计出的模块会完全正确,这将使在把这些模块装配成OS时发生困难;其次,从功能观点来划分模块时,未能将共享资源和独占资源加以区别;由于管理上的差异,又会使模块间存在着复杂的依赖关系使OS结构变得不清晰。2)模块化OS的优缺点*3.分层式OS结构1)有序分层的基本概念从改进设计方式上说,应使我们的每一步设计都是建立在可靠的基础上。我们可以从物理机器开始,在其上面先添加一层具有一定功能的软件A1,由于A1是建立在完全确定的物理机器上的,在经过精心设计和几乎是穷尽无遗的测试后,可以认为A1是正确的;然后再在A1上添加一层新软件A2,……,如此一层一层地自底向上增添软件层,每一层都实现若干功能,最后总能构成一个能满足需要的OS。*分层式结构设计的基本原则是:每一层都仅使用其底层所提供的功能和服务,这样可使系统的调试和验证都变得容易,例如,在调试第一层软件A1时,由于它只使用了物理机器提供的功能,因此它将与其所有的高层软件A2,……,An无关;同样在调试A2时,它也只使用了A1和物理机器所提供的功能,而与其高层软件A3,……,An无关,这样,一旦发现Ai出现错误时,通常该错误只会局限于Ai,因为它与所有其高层的软件无关,而Ai层以下的各层软件,又都经过仔细的调试。*2)层次的设置(1)程序嵌套。通常OS的每个功能的实现,并非是只用一个程序便能完成的,而是要经由若干个软件层才有可能完成。因此在划分OS层次时,首先要考虑在实现OS的每个功能时所形成的程序嵌套。例如,作业调度模块须调用进程控制模块;在为某作业创建一进程时,进程控制模块又须调用内存管理模块为新进程分配内存空间,可见,进程控制模块应在内存管理模块之上;而作业调度模块又应在更高层。*(2)运行频率。在分层结构中,各层次软件的运行速度是不同的,因为A1层软件能直接在物理机器上运行,故它有最高的运行速度。随着层次的增高,其相应软件的运行速度就随之下降,因而An层软件的运行速度最低。为了提高OS的运行效率,应该将那些经常活跃的模块放在最接近硬件的A1层,如时钟管理、进程调度,通常都放在A1层。*(3)公用模块。应把供多种资源管程程序调用的公用模块,设置在最低层,不然,会使比它低的层次模块由于无法调用它而须另外配置相应功能的模块。例如,用于对信号量进行操作的原语Signal和Wait。(4)用户接口。为方便用户(程序),OS向用户提供了“用户与OS的接口”,如命令接口、程序接口以及图形用户接口。这些接口应设置在OS的最高层,直接提供给用户使用。*1.6.2微内核OS结构1)基本概念为了提高OS的灵活性和可扩充性而将OS划分为两部分.一部分是用于提供各种服务的一组服务器(进程),所有这些服务器(进程)都运行在用户态。当有一客户进程要求读文件的一个盘块时,该进程便向文件服务器(进程)发出一个请求;当服务器完成了该客户的请求后,便给该客户回送一个响应。另一部分是内核,用来处理客户和服务器之间的通信,即由内核来接收客户的请求,再将该请求送至相应的服务器;同时它也接收服务器的应答,并将此应答回送给请求客户。此外,在内核中还应具有其它一些机构,用于实现与硬件紧密相关的和一些较基本的功能。1.客户/服务器模式(Client-ServerModel)*图1-6单机环境下的客户/服务器模式(1)提高了系统的灵活性和可扩充性。(2)提高了OS的可靠性。(3)可运行于分布式系统中。2)客户/服务器模式的优点*微内核技术的引入所谓微内核技术,是指精心设计的、能实现现代OS核心功能的小型内核,它与一般的OS(程序)不同,它更小更精炼,它不仅运行在核心态,而且开机后常驻内存,它不会因内存紧张而被换出内存。微内核并非是一个完整的OS,而只是为构建通用OS提供一个重要基础。由于在微内核OS结构中,通常都采用了客户/服务器模式,因此OS的大部分功能和服务,都是由若干服务器来提供的,如文件服务器、作业服务器和网络服务器等。3.微内核技术*微内核所提供的功能,通常都是一些最基本的功能,如进程管理、存储器管理、进程间通信、低级I/O功能。(1)进程管理。(2)存储器管理。(3)进程通信管理。(4)I/O设备管理。2)微内核的基本功能*1.7流行操作系统简介 7.1 DOS操作系统7.2Windows操作系统7.3UNIX操作系统(*)7.4自由软件和Linux操作系统(*)*1974年,“TheUNIXTime-SharingSystem”一文在美国权威杂志CACM上发表,引起广泛注意。最早外界可获得的UNIX是1975年的UNIX第6版;1978年的UNIX第7版,可以看作当今UNIX的先驱,该版为今天UNIX的繁荣奠定了基础,UNIX也步入了成型阶段。UNIX操作系统70年代中后期UNIX源代码的免费扩散引起了大学和公司的兴趣,大众的参与为UNIX的改进、完善、传播和普及起到了重要的作用。*1977年AT&T公司开始为计算机软硬件厂商提供UNIX操作系统的初始设备制造商(OEM)证,商家开始了商业运营,许多商品化UNIX版本出现。比较著名的有:SUN公司的SUNOS和Solaris,•Microsoft公司的XENIX,•Interactive公司的UNIX386/ix,•DEC公司的ULTRIX,•IBM公司的AIX,•HP公司的的HP/UX和•SCO公司的UNIX等。UNIX操作系统----商业化阶段*SUNMicrosystem开发的Solaris是具有完全SMP和多线程支持的32位分布式计算环境的UNIX操作系统变种。Solaris2.x基于SPARC和Intel平台,可移植到任何新的主流平台上。1998年10月,SUN公司推出64位操作系统Solaris7.0,在网络特性、可靠性、兼容性、互操作性、易于配置和管理方面均有很好改进。Solaris*UNIX的主要特点•结构简练、功能强大、易移植性好、可申缩性和互操作性强、完善的安全机制、容纳新技术能力强。•具有分层可装卸卷文件系统,提供文件保护功能 •提供I/O缓冲技术,系统效率高•剥夺式动态优先CPU调度,支持分时操作•命令语言丰富齐全•具有强大的网络与通信功能•支持多用户、多任务•请求分页式虚拟存储管理*自由软件和Linux操作系统商业软件共享软件自由软件自由软件是指遵循通用公共许可证GPL(GeneralpublicLicense)规则,保证您有使用上的自由、获得源程序的自由,可以自己修改的自由,可以复制和推广的自由,也可以有收费的自由的一种软件。自由软件出现的意义。*Linux操作系统Linux是由芬兰藉科学家LinusTorvalds于1991年编写完成的操作系统内核。许多人对Linux进行改进、扩充、完善,做出了关键性贡献。Linux由最初一个人写的原型变成在Internet上由无数志同道合的程序高手们参与的一场运动。
/
本文档为【操作系统课件(汤小丹)】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索