大学软件开发与应用课程PPt-01.操作系统.ppt
1 操作系统,操作系统课程的特点:,实践性强(从实践总结出原理),涉及面广(并行程序,性能问题,结构问题,程序方法论,软件工程,等等),类型多样(兼顾各种类型的操作系统),结构复杂、难于理解:,系统较规模庞大,往往数千人年 结构太复杂,无法整体调试 行为难以预测,常通过猜测进行微调 经常是不可靠的微软,SUN,Borland,Natscape,注意:在本章你将学到操作系统最精髓的两句话,计算机操作系统是方便用户、管理和控制计算机软硬件资源的系统软件。操作系统目前有五大类型(批处理、分时、实时、网络和分布式)和五大功能(作业管理、文件管理、存储管理、设备管理和进程管理),本章讲解内容,1:什么是操作系统 2:操作系统在软件中的地位 3:操作系统的形成 4:操作系统的类型 5:操作系统的用户接口 6:常见的几种操作系统 7:操作系统的管理功能,1:什么是操作系统?,通俗地讲:操作系统就是计算机系统的“管家”。专业地讲:计算机操作系统是方便用户、管理和控制计算机软硬件资源的系统软件(或程序集合)(下面通过几个不同的角度来认识操作系统。),从为用户服务的角度看:,假如没有操作系统,人们不得不像最早期使用计算机的用户那样,用一大堆“0”和“1”的数据来和计算机进行交流。而有了操作系统,对于一个普通的计算机用户而言,就不一定要知道计算机内部的二进制工作原理,人们只要利用操作系统在显示器屏幕上给出的某种界面即可进行各种操作。所以操作系统是用户和计算机之间的接口,普通用户必须通过它才能与计算机进行操作。,从资源管理的角度看:,操作系统是计算机中各种软硬件资源的管理者,根据计算机的软件和硬件资源可分成文件管理、存储管理、设备管理和处理机管理。这几个部分的管理功能相对独立又互相关联,它们协调配合工作,共同完成软硬件资源的管理。操作系统所做的工作就是分门别类的进行管理,并详细记录资源的使用情况,再按一定策略对资源进行调度分配,为用户服务。不同的操作系统管理的策略和方法是不同的。,从管理者角度看:,管理工作的含义是管理者按一定的时间和一定的空间调度所管辖下的人力、物力和财力进行协调工作。同样计算机操作系统也有时间与空间管理的概念,如进程(处理机)管理属于时间管理,存储管理属于空间管理。实际上操作系统是一个人为设计的自动管理者,作为计算机系统的自动管理者,它需要做到在方便上机用户的前提下,监督和控制计算机软件和硬件资源的协同工作,并有效地提高资源的利用率。,总结一下:,操作系统是:软件(程序集合)计算机与用户之间的友好使者(用户接口)管理者(管理软件和硬件资源),2:操作系统在软件中的地位,操作系统是计算机硬件上的第一层扩充。,3:操作系统的形成,到现今比较成熟的五类操作系统都是逐步形成的,它们各有各的看家本领,各有各的应用领域。所以我们有必要介绍操作系统的形成过程。总的来说,操作系统是由早期的监控程序发展而来。逐渐发展形成了三类最基本的操作系统:批处理、分时和实时操作系统。而后,由于超大规模集成电路芯片和网络的出现,网络操作系统和分布式操作系统也应运而生。,3:操作系统的形成,计算机初创期:全人工操作方式。人们用机器语言编程后,将程序纸带装上输入机,启动输入机把程序和数据送入计算机,通过控制台开关使程序运行。计算完毕,用户拿走打印结果。50年代:随着计算机速度的提高,在整个计算中人工操作所占的比例越来越大。为了尽量摆脱人工的干预,解决人机矛盾,提高自动化程度,人们研制了监控程序,由监控程序自动依次处理一系列任务,于是进入了“单道批处理阶段”。即在监控程序的帮助下一个程序独享计算机资源。,3:操作系统的形成,60年代到80年代:随着中断技术和多道程序技术的出现,监控程序发展成为一个重要的软件分支操作系统。在批处理操作系统的帮助下,多个程序可以同时运行,共享资源。早期的批处理操作系统不适合交互式操作,为了提供交互式操作环境,出现了分时操作系统。随后又出现了实时操作系统,实时系统能及时响应外部事件的请求,并在规定的时间内完成对该事件的处理。3类最基本的操作系统:批处理、分时、实时操作系统,在这一时期逐步形成并得到完善。,3:操作系统的形成,80年代中期:数据通信技术得到了极大的发展。人们通过数据通信系统把地理上分散的计算机连接起来,为了达到数据通信和资源的共享,发展形成了网络操作系统。随着计算机和网络技术的进一步发展,出现了分布式操作系统。其运行的基础是一群联网的计算机,但在用户眼里却像是一台计算机,用户不必关心计算机的资源在什么地方、什么时间工作以及资源如何调配工作等。,4:操作系统的类型,批处理操作系统:分时操作系统 实时操作系统 网络操作系统 分布式操作系统,批处理操作系统,批处理是指用户作业可以成批输入并处理,即将作业一批一批地输入系统并暂存在外存中,组成一个后备作业队列,每次按一定的调度原则从后备作业中挑选一个或多个装入主机处理,作业完成后退出主机,作业的装入和退出均由系统自动实现。,批处理操作系统的特点:,批处理操作系统的优点是系统的吞吐量大,资源利用率高。其缺点是用户在其作业运行期间不能在控制台或终端上请求系统的服务以直接干预其作业的运行过程,所以不适合做交互性强的工作。批处理系统主要配置在较大的计算机系统上,由于这些机器的硬件设置齐全,价格昂贵,希望有作业的大吞吐量,以便充分利用系统资源。,分时操作系统,“分时”是指多个用户对系统资源进行时间上的分享。安装有分时操作系统的计算机能为多个终端用户服务,同时可保证每个用户都能经常与计算机进行交互。在分时操作系统中把CPU的时间分成很短的时间片,在每一个时间片内,CPU专为一个用户工作,时间一到,无论工作结束与否CPU都会暂停服务,转而为下一个用户工作。,分时操作系统的特点:,多路性:宏观上,多个用户通过终端同时工作,共享资源;微观上,各终端作业轮流在自己的时间片内进行处理。交互性:分时系统中用户的操作方式是联机方式。即用户通过终端采用人机会话的方式直接控制程序运行,所以在程序运行中,系统与用户可以及时进行广泛的人机对话。,分时操作系统的特点:,独占性:由于CPU处理的速度大大高于用户操作的速度,所以尽管CPU按时间分片为多个用户轮流服务,每个用户的感觉仍然认为自己好像独占着计算机系统。及时性:由于时间片很短,每个作业等待运行的时间不会很长,所以系统对每一个用户的输入请求能作出较快的响应。,使用时注意最多用户数目:,分时操作系统中工作的主动权掌握在计算机手里,其分时时间片的大小在一定程度上取决于时间片的切换速度,即随着时间片时间的减少,切换时间所占的比例随之增大,随着用户数目的不断增加,这种矛盾会越来越突出。所以在使用多用户分时系统时要注意操作系统厂商提供的最多用户数目。,实时操作系统,“实时”二字的含义是表示“立即工作”,是指计算机对于外来信息能够以足够快的速度进行处理,并在被控对象允许的时间范围内作出快速反应。所以,实时操作系统具有瞬时响应的本领,使它在实时控制和实时信息处理领域中备受欢迎。如工业自动控制、导弹发射控制;火车、飞机票定票系统、情报检索系统、银行系统等等。,实时与分时操作系统的区别:,实时系统一般是专用的,其交互能力比较差,只允许用户访问数量有限的专用程序,系统响应时间要求极高。分时系统具有很强的通用性,有很强的交互功能,响应时间可以稍长,以不超过用户的忍耐范围为限。,注意:,总的来说,批处理系统、分时系统和实时系统是操作系统的三种基本类型。而一个实用的操作系统可以是独立的一种系统,也可以是两两结合或三者兼而有之的通用操作系统。,网络操作系统,网络操作系统是在原来各自计算机操作系统的基础上,按照网络体系结构提供计算机网络管理、通信、资源共享、系统安全和多种网络应用服务。,网络操作系统的特点:,当计算机系统进入网络后,就必然要与网络中其它系统和用户交往,实现系统之间的协调与联系。为了适应这种情况,网络操作系统除了具有基本类型操作系统中所应具备的管理功能和服务功能外,还应具有网络管理和服务功能,主要包括:网络资源共享、网络通信、作业迁移等。,分布式操作系统:,真正的分布式操作系统,其定义应为运行在不具有共享主存的多台计算机上,而在用户眼里却像是一台计算机。其运行的基础是一群联网的计算机,其行为像是一台虚拟的单处理计算机,用户不必关心计算机的资源在什么地方、什么时间工作以及资源如何调配工作等。,分布式操作系统的特点:,需要一个全局的文件系统;所有CPU上运行同样的内核,统一的管理和控制机构,进行优化的协调工作;要有一个单一的、全局的进程通信机制,提供选择和优化本地和远地的资源利用;有全局的保护机制等。注意:目前还不存在完全满足该定义的分布式操作系统,有些系统也只能称作半分布式系统,分布式操作系统是当今操作系统发展的一个重要方向。,网络与分布式操作系统的区别:,网络操作系统与分布式操作系统虽然都属于管理分布在不同地理位置的计算机,但最大的差别是:在网络操作系统中工作,用户必须知道网址;在分布式操作系统中,用户可以不知道计算机的确切地址,尤其是全分布式操作系统,即应该由系统自动寻找地址,并合理分配各种资源。,五类操作系统为用户服务的方式类比,批处理操作系统:对用户的服务有点像批发商店,顾客购置一大批商品,当然不能着急,允许等一段时间办完。分时操作系统:有点像零售商店,交互性很强,交易时间不能太长,以顾客能忍受的时间为限。实时操作系统:有点像24小时“全天候服务”的饭店或商店,顾客随时想吃饭或购物都能及时得到满足。,五类操作系统为用户服务方式的类比(续),网络操作系统:像“电视购物”或网上“电子商务”购物,只要知道电话号码或“网址”,就能得到服务。分布式操作系统的管理有点像新兴的社区服务公司或咨询公司,客户只要提出服务要求。例如,顾客要购买某一商品,而不必知道在哪里能买到,而由社区服务公司去安排查询后告诉顾客或帮顾客办到。,5:操作系统的用户接口,用户在使用计算机时看到的是操作系统的用户界面,也称为用户接口。用户在这个界面下与计算机进行交互和沟通,提交用户的作业。在实际操作中,用户通过输入设备(如键盘、鼠标器、触摸屏等)将要求“告诉”计算机,计算机收到这些请求后再来为用户服务。操作系统的作业管理为用户提供了两种接口:命令接口和程序接口。,(1)操作系统的命令接口,操作系统的命令接口有两个基本任务:其一是判别和解释用户输入的操作命令,并将相应的命令操作转向对应的命令处理程序;其二是接收从操作系统传来的信息,然后通过屏幕提示等方式提供给用户。,(1)操作系统的命令接口(续),命令接口,除了直接用命令外,还有其它方式,用户可不必事先记住命令及其选择项参数,就可以和计算机进行交互。特别是Windows操作系统广泛应用以来,窗口技术得到了极大的发展,它提供了更友好的“图形用户接口”。,(2)操作系统的程序接口,操作系统的另一类接口是为编程人员提供的在程序模式下的系统调用接口,用它们来请求操作系统服务,简称程序接口。用户通过在程序中使用这些系统调用命令来请求系统提供的服务。,(2)操作系统的程序接口,系统调用命令可查阅相应操作系统的高级程序员手册,具体格式因系统而异。对于每种操作系统而言,所提供的系统调用命令条数、格式以及所执行的功能等都不尽相同。即使是同一种操作系统,其不同版本所提供的系统调用命令条数也会有所增减。,6:常见的几种操作系统,(1)DOS操作系统(2)Windows操作系统(3)UNIX操作系统(4)Linux操作系统,(1)DOS操作系统,DOS操作系统是一个单用户、单任务操作系统,曾经是个人计算机上被广泛使用的一种操作系统。目前它为用户提供了许多高质量的编程工具、丰富的系统资源和较完备的文件管理,有较多的外部和内部命令,功能强大的系统调用等。,(2)Windows操作系统,Windows操作系统是一个单用户多任务的操作系统,是20世纪90年代初计算机操作系统技术进步的重要标志,也是DOS的换代产品。Windows操作系统在用户界面设计方面成功地使用了窗口技术,使其很快在全世界普及应用。(微软80以上的工作量化在界面上),(2)Windows操作系统(续),随着Windows版本地不断更新,目前已经面世的Windows Server 2003、Windows Vista操作系统添加了许多全新的特性。随着微软Windows Vista个人消费版操作系统的上市,个人计算机将迈向一个全新的时代。,(3)UNIX操作系统,UNIX是一个交互式分时多用户多任务操作系统。它具有短小精悍的系统内核和功能强大的核外程序,典型的树型结构的文件系统,良好的可移植性,友好的用户界面,被广泛地配置在大、中、小型计算机上,并逐渐下移配置到个人计算机和微机工作站上。,(4)Linux操作系统,Linux是由UNIX演变而来,是一个免费的、源代码开放的操作系统。Linux集中了大量前人的智慧,它的效率和精简性相当优秀;运行速度非常快;稳定性也非常高;对系统的硬件配置要求却很低。且Linux是完全开放的,如果想要对该操作系统做改动,则你可以直接去做。,7:操作系统的管理功能,操作系统的用户接口起到了沟通用户和计算机系统的“桥梁”作用,但从操作系统是管理者的角度来说,其职能还必须管理计算机系统的软硬件资源。这里将介绍操作系统这个“管家”的管理功能,即作业管理、进程管理、存储管理、设备管理和文件管理。,5:操作系统的功能,(1)作业管理功能(2)文件管理功能(3)存储管理功能(4)设备管理功能(5)进程管理功能 这里主要讲管理什么,怎样管理我们将在下一讲介绍。,作业、进程的名词解释:,作业:是指用户在一次计算过程或在一次事务处理过程中,要求计算机系统所做工作的集合(一次任务)。进程:是操作系统进行资源分配、调度和管理的最小单位。实质上进程是一个具有独立功能的程序关于某个数据集合的一次运行。但进程与程序并不一一对应,一个程序可以对应一个进程,也可以对应几个进程;反之,一个进程可以对应一个程序,也可以对应一段程序。,作业、进程的名词解释(续),作业调度:确定系统中哪些作业将获得CPU。进程调度:确定系统中哪个作业中的哪个进程将获得CPU。,(1)作业管理,作业管理的功能是提供用户与操作系统的接口,并对用户作业进行合理调度,以提高系统的吞吐量和缩短作业的周转时间。具体的说:用户是通过命令或者程序(系统调用)向计算机发出请求,当计算机收到用户请求后,利用操作系统提供的命令解释来调用相应的处理程序,有序有效地使用各种系统资源,完成用户作业的处理。,(2)文件管理,文件管理是对计算机软件资源的管理。其主要功能涉及数据存储空间的分配、回收,文件目录的结构和管理,实现文件的存储和检索等。为用户提供方便灵活的文件操作以及实现文件的共享,并提供文件的安全、保密等措施。,(3)存储管理,存储管理主要指对内存的管理,其主要任务是为多道程序的运行提供良好环境。存储管理为每个进程分配内存,同时应保证各进程只能在属于自己的内存空间中运行,彼此互不冲突且不被其他进程破坏。使有限的内存能装入尽可能多的作业,提高计算机的利用率。,(4)设备管理,设备管理实质是对I/O设备的管理,其中包括对输入输出设备的分配、启动、完成和回收等。设备管理根据一定的分配原则把设备有效地分配给请求输入、输出的进程,并协调处理机与设备操作间因速度不同而引起的时间差异,还必须屏蔽各种设备的物理特性,提高系统总体性能。,(5)进程管理,进程管理一般又称处理机管理。处理机是计算机系统中最主要的资源,在多道程序系统中,处理机为多道程序共享,这就必然引起各程序对处理机的争夺。因此,处理机管理主要解决在多道程序并发执行时如何将处理机时间合理地分配给各个进程。处理机管理涉及处理机的分配策略、实施方法及资源的分配、回收等问题。,等待的事件已发生,等待某事件发生,时间片用完,进程被调度程序选中,就绪状态,等待状态,运行状态,图1.2 进程状态转换图,总结:,五大功能中的前两种,即作业管理和文件管理属于软件管理,后三种存储管理、设备管理和进程(处理机)管理属于对硬件管理。五大功能中文件管理和存储管理属于空间管理,进程(处理机)管理属于时间管理。,回顾:两句最精髓的话,计算机操作系统是方便用户、管理和控制计算机软硬件资源的系统软件(或程序集合)操作系统目前有五大类型(批处理、分时、实时、网络和分布式)和五大功能(作业管理、文件管理、存储管理、设备管理和进程管理),8:Windows XP的实验,实验目的:学习Windows XP操作系统的安装;学习Windows XP任务管理器的使用;学习Windows XP系统性能监视器的使用;学习虚拟内存大小的调整;学习Windows XP设备管理器的使用;学习NTFS文件压缩的方法。,