第4章操作系统概述本章主要内容4.1操作系统的功能简介4.2操作系统的发展简介4.3操作系统的组成4.4系统引导4.5常见的操作系统介绍4.6中文WindowsXP操作系统4.7常用基本命令行命令4.1操作系统的功能操作系统作为虚拟机从用户的角度来看,操作系统为用户提供了简单和高度抽象的编程和操作界面操作系统作为资源管理器从系统角度看,操作系统有效管理着系统的各部分资源,起着资源管理器的作用,主要由5部分组成:操作系统是最基本的系统软件,它直接运行在裸机上,它在整个计算机系统中具有特殊重要的地位,它不仅是用户和硬件的接口,而且有效管理着系统资源,具体功能可以以下两个方面来理解:4.1操作系统的功能1、处理器管理(进程管理)2、存储器管理3、设备管理4、文件管理5、作业管理4.1操作系统的功能1、处理器管理(进程管理)进程管理主要是对处理器进行管理。CPU是计算机系统中最宝贵的硬件资源。为了提高CPU的利用率,操作系统采用了多道程序技术。当一个程序因等待某一条件而不能运行下去时,就把处理器占用权转交给另一个可运行程序。或者,当出现了一个比当前运行的程序更重要的可运行的程序时,后者应能抢占CPU。为了描述多道程序的并发执行,就要引入进程的概念。通过进程管理协调多道程序之间的关系,解决对处理器实施分配调度策略、进行分配和进行回收等问题,以使CPU资源得到最充分的利用。4.1操作系统的功能2、存储器管理存储管理主要管理内存资源。当多个程序共享有限的内存资源时,会有一些问题需要解决,比如,如何为它们分配内存空间,同时,使用户存放在内存中的程序和数据彼此隔离、互不侵扰,又能保证在一定条件下共享等问题,都是存储管理的范围。当内存不够用时,存储管理必须解决内存的扩充问题,即将内存和外存结合起来管理,为用户提供一个容量比实际内存大得多的虚拟存储器。4.1操作系统的功能3、设备管理操作系统应该向用户提供设备管理。设备管理是指对计算机系统中所有输入输出设备(外部设备)的管理。设备管理不仅涵盖了进行实际I/O操作的设备,还涵盖了诸如设备控制器、通道等输入输出支持设备。4.1操作系统的功能4、文件管理系统中的信息资源(如程序和数据)是以文件的形式存放在外存储器(如磁盘、光盘和磁带)上的,需要时再把它们装入内存。文件管理的任务是有效地支持文件的存储、检索和修改等操作,解决文件的共享、保密和保护问题,以使用户方便、安全地访问文件。操作系统一般都提供很强的文件系统。4.1操作系统的功能5、作业管理操作系统应该向用户提供使用它自己的手段,这就是操作系统的作业管理功能。按照用户观点,操作系统是用户与计算机系统之间的接口。因此,作业管理的任务是为用户提供一个使用系统的良好环境,使用户能有效地组织自己的工作流程,并使整个系统能高效地运行。4.2操作系统的发展(1)操作系统随着计算机的应用不断发展和完善,经过从简单到复杂的一个很长的发展过程。串行处理所谓的编程全部采用机器语言实现,一个程序要运行,要先制作穿孔卡片,从装配到运行整个过程计算机处于被独占状态,一个程序处理完毕才能开始处理另一个程序,这种操作模式成为串行处理。采用排队预约机时的方法调度准备时间远远大于程序的真正运行的时间批处理操作系统工作方式:用户将作业交给系统操作员系统操作员将许多用户的作业组成一批作业之后输入到计算机中,在系统中形成一个自动转接的连续的作业流启动操作系统系统自动、依次执行每个作业最后由操作员将作业结果交给用户卡片早期批处理系统IBM1401IBM7094IBM1401输入磁带磁带机卡片阅读机输出磁带打印机OperatingSystem$END$RUNDataforprogram$LOADFortranprogram$FORTRAN$JOB,10,429754CherryChen典型的FMSJOB结构操作系统的发展(3)多道批处理相对于处理器来说,计算机的I/O设备的速度太慢,简单批处理系统的CPU利用率依然很低硬件条件:主存容量大幅提高I/O设备DMA(DirectMemoryAccess)、通道可代替CPU管理大量数据交换中断驱动的I/O设备计算机体系结构也由以中央处理器为中心的结构改变为以主存为中心批处理操作系统特点多道:多道指某个作业占用CPU,若由于某种原因暂时不用CPU则系统让第二个作业占用CPU成批处理:用户自己不能干预自己作业的运行,一旦发现作业错误不能及时改正,并延长开发软件时间,所以适用于成熟的程序。-优点:作业流程自动化效率高,吞吐率高吞吐量:单位时间内处理作业的个数-缺点:无交互手段,调试程序困难批处理操作系统优缺点操作系统的发展(7)分时系统20世纪60年代,大多数的计算机非常庞大且昂贵,人们希望能使多个用户通过多个终端同时交互使用系统而开发了分时系统(TimeSharingSystem)批处理和分时系统都使用了多道程序设计,但两种系统的设计目标是不同的,多道批处理系统追求最有效的使用处理器,而分时系统追求的是给每个用户尽可能快的响应速度在分时系统中,多个用户通过终端同时访问系统,由操作系统控制每个用户的程序以很短的时间片为单位交替执行分时操作系统工作方式:一台主机连接了若干个终端每个终端有一个用户在使用交互式的向系统提出命令请求系统接受每个用户的命令采用时间片轮转方式处理服务请求并通过交互方式在终端上向用户显示结果用户根据上步结果发出下道命令主机终端分时操作系统时间片:操作系统将CPU的时间划分成若干个片段,称为时间片操作系统以时间片为单位,轮流为每个终端用户服务每次服务一个时间片(其特点是利用人的错觉,使人感觉不到)分时操作系统特点多路性交互性“独占”性及时性同时有多个用户使用一台计算机宏观上:是多个人同时使用一个CPU微观上:多个人在不同时刻轮流使用CPU用户根据系统响应结果进一步提出新请求(用户直接干预每一步)用户感觉不到计算机为其他人服务(OS提供虚机器,各个用户的虚机器互不干扰)系统对用户提出的请求及时响应分时操作系统追求目标:及时响应(根据指标是响应时间)响应时间:从终端发出命令到系统给予回答所经历的时间分时操作系统影响响应时间的因素:-机器处理能力-请求服务的时间长短-系统中连接的终端数目-服务请求的分布-调度算法(时间片的选取)操作系统的发展(8)实时系统(RealTimeOperatingSystem,RTOS)多道程序系统可能同时启动或多或少的程序,各个程序也可能千差万别,因此在系统中的每一道程序的运行过程实际是无法预测的RTOS设计目标:对外部请求能在严格的时限内作出响应,有高可靠性和完整性硬实时任务(HardReal-timeTask)软实时任务(SoftReal-timeTask)实时操作系统分类:第一类:实时过程控制工业控制,军事控制,...第二类:实时通信(信息)处理电讯(自动交换),银行,飞机订票股市行情实时操作系统主要追求目标:对外部请求在严格时间范围内作出反应高可靠性安全性完整性实时系统必须和先进的技术装备相结合操作系统的发展(9)网络操作系统计算机网络是用通信线路和通信设备,将分散在不同地点并具有独立功能的多个计算机系统互相连接,按照国际标准的网络协议进行数据通信,实现网络中的硬件、软件、数据库等资源共享的计算机集合。计算机网络是通过不同的网络操作系统(NetworkOperatingSystem,NOS)和网络协议的支持才得以运行。网络操作系统的任务就是支持网络的通信及资源共享,用户则通过网络操作系统请求网络服务。网络操作系统是计算机网络的心脏和灵魂,是向网络中的计算机提供服务的特殊的操作系统。它在计算机操作系统下工作,并增加了网络操作所需要的能力。网络操作系统基于计算机网络在各种计算机操作系统上按网络体系结构协议标准开发的软件包括网络管理,通信,安全,资源共享和各种网络应用目标:是相互通信及资源共享网络操作系统通常操作系统的功能:处理机管理、存储器管理、设备管理、文件管理等网络通信功能:通过网络协议进行高效、可靠的数据传输网络资源管理:协调各用户使用网络服务:文件和设备共享,信息发布网络管理:安全管理、故障管理、性能管理等互操作:直接控制对方比交换数据更为困难操作系统的发展(10)分布式操作系统计算机网络的目的是通信和资源共享,分布式系统是把多台计算机整合为一个整体以提高计算性能为目的。分布式系统的主要设计目标有四个:通信、资源共享、分布计算和可靠性。分布式系统的通信同网络系统相比,通信应该更加具有效率和透明性。资源共享是指用户在系统不同的位置都可以有效透明地使用分布式系统的资源,无论这以资源是属于本机的还是属于分布式系统中的其他计算机。分布式计算是分布式系统的关键特征之一。一个计算任务可以被分解成多个子计算任务并被合理地调度到分布式系统中的多个计算机上去并行执行。可靠性和健壮性是分布式系统另一个主要特征。一旦分布式系统的一个节点崩溃时,它不会影响到分布式系统中的其他节点,也不会影响到整个分布式系统的运行。分布式操作系统分布式系统:处理和控制的分散(相对于集中式系统)分布式系统是以计算机网络为基础的,它的基本特征是处理上的分布,即功能和任务的分布分布式操作系统的所有系统任务可在系统中任何处理机上运行,自动实现全系统范围内的任务分配并自动调度各处理机的工作负载分布式操作系统特征:1.是一个统一的操作系统2.资源进一步共享3.透明性:资源共享,分布。用户并不知道,对用来讲是透明的4.自治性:处于分布式系统的多个主机处于平等地位,无主从关系5.处理能力增强、速度更快、可靠性增强网络和分布式的区别(1)分布具有各个计算机间相互通讯,无主从关系;网络有主从关系(2)分布式系统资源为所有用户共享;而网络有限制地共享(3)分布式系统中若干个计算机可相互协作共同完成一项任务嵌入式操作系统什么是嵌入式系统?在各种设备、装置或系统中,完成特定功能的软硬件系统,它们是一个大设备、装置或系统中的一部分,这个大设备、装置或系统可以不是“计算机”由于它们被嵌入在各种设备、装置或系统中,因此称为嵌入式系统嵌入式操作系统的应用智能卡移动通信计算机外设机顶盒零售设备印刷机复印机互联网服务器电话交换设备嵌入式操作系统的应用5.3操作系统的组成外壳(Shell)GUI(GraphicsUserInterface)MS-DOS命令行方式UNIX:BorneShell、CShell和KornShell内核(Kernel)文件管理器(FileManager)设备驱动程序(DeviceDrivers)存储器管理器(MemoryManager)调度和分派程序(SchedulerandDispatcher)图4.3操作系统结构5.4系统的引导现代操作系统处理的难题(1)进程(Process)对正在运行的程序的抽象一个进程至少包括三部分内容:一段可执行的程序程序的相关数据:变量、工作空间和缓冲区等程序执行的上下文环境,即进程的状态程序是个静态的概念,仅仅包含描述算法的代码;而进程是个动态的概念,是一个运行程序的抽象,包含了程序代码、数据和程序运行的状态(第几步、暂停还是执行等)等信息现代操作系统处理的难题(2)进程(Process)进程切换需要一定的机制进程可以有几个不同的状态三状态模型:就绪、运行、阻塞现代操作系统处理的难题(3)进程(Process)五状态模型:新建、就绪、运行、阻塞和退出;六状态模型:增加挂起状态,将长时间阻塞的进程交换到外存上节约主存空间;七状态模型:增加阻塞/挂起和就绪/挂起两种挂起状态现代操作系统处理的难题(6)并发控制的难题并发(Concurrency)多道程序技术、多处理(Multiprocessing)技术和分布式处理(DistributedProcessing)技术的共同问题,并发控制是操作系统设计的基础,也是操作系统课程的核心内容临界资