《操作系统》学习笔记汤承林第1章概述本章介绍了操作系统的基本概念。主要包括:计算机系统由硬件和软件两大部分组成,操作系统是计算机系统中的一种系统软件,它管理计算机系统的资源和控制程序的执行,改善人机界面和为其他软件提供支持。它的设计目标是使用户方便地使用计算机系统和使得计算机系统能高效地工作。计算机配置操作系统的目的是提高资源利用率。操作系统的形成和发展与计算机硬件和其他软件的发展密切相关。随着计算机应用的日益广泛,操作系统的功能也日趋完善,根据计算机系统的功能和应用,操作系统可分成几类:批处理操作系统、分时操作系统、实时操作系统、网络操作系统和分布式操作系统。批处理操作系统按照用户预先规定好的步骤控制作业的执行,实现计算机操作的自动化,无须人工干预。批处理多道系统还可以充分利用计算机系统的资源,缩短作业执行时间,提高系统的吞吐率。分时操作系统支持多个终端用户同时以交互方式使用计算机系统,为用户在测试、修改和控制程序执行方面提供了灵活性。实时操作系统是实现实时控制的系统,它由外部信号触发而工作,并在特定的时间内完成处理,且给出反馈信号。实时系统对可靠性和安全性的要求极高,不强求系统资源的利用率。个人计算机系统都是使用微行计算机。比起大型机来,微行机既小又便宜。但是,个人计算机系统的资源和功能相对有限。为了满足较大规模的应用,可把若干台个人计算机系统构成计算机网络。根据计算机网络的结构、通信方式和资源管理方法,分别配置网络操作系统或分布式操作系统。操作系统的资源管理功能可以分为四大部分:处理器管理、存储管理、文件管理、设备管理。重点内容(一)操作系统的定义操作系统是一种管理计算机系统资源、控制程序执行、改善人机界面和为其他软件提供支持的系统软件。(二)操作系统的类型批处理操作系统、分时操作系统、实时操作系统、网络操作系统、分布式操作系统、多机操作系统和嵌入式操作系统。其中前三种是基本的操作系统。(四)操作系统的功能操作系统负责管理计算机系统的所有资源,并调度这些资源的使用。具体来说,其主要功能有:处理器管理、存储管理、设备管理、文件管理。考情分析1.1计算机系统概述一、计算机系统1、计算机系统定义:是按用户的要求接收和存储信息、自动进行数据处理并输出结果信息的系统。2、计算机系统构成:硬件系统和软件系统。软件系统:系统软件(操作系统、编译系统)、支撑软件、应用软件。3、硬件系统组成:中央处理器(CPU)、主存储器、辅助存储器、各种输入/输出设备。计算机之父:冯.诺依曼冯.诺依曼的贡献:(1)提出用二进制表示数;(2)提出五大部件组成计算机;(3)提出“存储程序”思想,即把程序和数据都存放在存储器,早期的程序是由开关控制实现的,数据是存放在存储器中。二、操作系统1、操作系统定义:是一种管理计算机系统资源、控制程序执行、改善人机界面和为其他软件提供支持的系统软件。从用户观点理解,操作系统是人机交互接口;从资源管理角度,操作系统是管理计算机的软、硬件资源;从程序控制观点,操作系统控制计算机程序的执行。总结为:操作系统是:(1)管理计算机的软件、硬件资源;(2)合理组织计算机工作流程;(3)提供方便用户操作的接口和软件的集合。计算机配置操作系统的目的是提高资源的利用率。操作使用者认为操作系统认为操作是一组命令的集合,它接收输入的命令,程序设计人员认为操作系统是一组功能调用程序(系统调用)的集合。2、操作系统两个主要设计原则:(1)能使得计算机系统使用方便。即方便(2)提高计算机工作效率。即效率1.2操作系统的发展1、控制台:早期,程序的装入、调试以及控制程序的运行都是程序员通过控制台上的开关来实现。(第一阶段,人工阶段)2、原始汇编系统:用汇编语言编写的程序称为源程序,它不能直接在机器上执行,只有通过汇编语言解释程序把源程序转换成用机器指令序列表示的目标程序后才能在计算机上运行。3、设备驱动程序:是最原始的操作系统。是一种控制设备工作的程序。4、管理程序:是初级的操作系统。是一种能对计算机硬件和软件进行管理和调度的程序。(第二阶段)5、操作系统:采用了SPOOLING的处理形式。SPOOLING又称“斯普林”(翻译为联机的同时外围设备操作)。从本质上说,SPOOLING是把磁盘作为一个巨大的缓冲器。在一个计算问题开始之前,把计算所需要的程序和数据从读卡机或其他输入设备上预先输入到磁盘上存放。这样,在进行计算时不再需要访问读卡机等慢速的输入设备,而可以从速度快得多的磁盘上读取程序和数据。同样,对于计算的结果也是先在磁盘上缓冲存放,待计算完成后,再从打印机上打印出该计算问题的所有计算结果。(第三阶段)操作系统发展的历史:(1)无操作系统阶段(第一代)这个阶段有卡片、磁带机和打印机。通过各种开关操作计算机。特点:①用户独占计算机②CPU等待人工操作缺点:资源利用率低,CPU利用不充分(人机矛盾,随着计算机速度的提高日益显著)。(2)管理程序阶段(第二代)出现了编程语言:FORTRAN、COBOL。第一个完整操作系统在IBM360上。特点:①半自动方式②管理部分资源③资源可实现简单共享这个阶段提供了一套控制命令——控制卡,以此来成批地处理用户程序,使其能自动有序执行。缺点:CPU与I/O设备速度不匹配,系统效率较低。(3)初级操作系统阶段(第三阶段)出现大容量的磁盘,主存容量增大,CPU速度加快。软件有了较大的发展。联机输入输出:在主机控制之下的输入输出操作。只有一台主机。脱机输入输出:一台主机,两台外围机,分开的输入输出操作。采用多种典型技术:①多道批处理技术:不完善,解决了人机矛盾及CPU与I/O设备速度不匹配,提高了资源利用率。多道程序设计技术利用并发挥了计算机硬件资源的并行能力。②SPOOLING技术:预输入和缓输出(脱机输入输出)。(作业调度各程序调用井管理程序,井管理读程序(从输入井读)和井管理写程序(向输出井写))③多道程序设计技术:内存若只有一道程序,若该程序请求I/O操作,则CPU处于等待I/O完成状态,即空闲。为改善CPU和利用率,同时把若干作业放入主存,允许其交替执行,共享系统的软、硬件资源。(4)现代操作系统阶段(第四代)代表性的UNIX(多用户分时操作系统)。(5)智能计算和网络计算阶段。1.3操作系统的分类按照操作系统所提供的服务进行分类,可分为批处理操作系统、分时操作系统、实时操作系统、网络操作系统、分布式操作系统、多机操作系统和嵌入式操作系统等。其中批处理操作系统、分时操作系统、实时操作系统是基本的操作系统。一、批处理操作系统1、定义:用户为作业准备好程序和数据后,再写一份控制作业执行的说明书(作业说明书)。然后把作业说明书连同相应的程序和数据一起交给操作员。操作员将收到的一批作业的有关信息输入到计算机系统中等待处理,由操作系统选择作业,并按其操作说明书的要求自动控制作业的执行。采用这种批量化处理作业的操作系统称为批处理操作系统。2、分类:(1)批处理单道系统:一次只选择一个作业装入计算机系统的主存储器运行。(2)批处理多道系统:允许多个作业同时装入主存储器,使中央处理器轮流地执行各个作业,各个作业可以同时使用各自所需要的外围设备。09年7月填空题中考了本知识点。3、批处理多道系统优点:(1)多道作业并行工作减少了处理器的空闲时间,即提高了处理器的利用率。(2)作业调度可以按一定的组合选择装入主存储器的作业,只要搭配合理。(3)作业执行过程中,不再访问低速的设备,而是直接从高速的磁盘上存取信息,从而缩短了作业执行时间,使单位时间内的处理能力得到提高。(4)作业成批输入、自动选择和控制作业执行,减少了人工操作时间和作业交接时间,有利于提高系统的吞吐率。4、缺点(1)平均周转时间长(从进入系统到完成所经历的时间)一个作业一旦运行便运行到完成,使许多短作业的周转时间显著增长。(2)不提供交互能力:用户将作业交给系统后,无法再与之交互作用,因此必须提供一份详细的作业说明书。二、分时操作系统1、定义:能使用户通过与计算机相连的终端来使用计算机系统,允许多个用户同时与计算机系统进行一系列的交互,并使得每个用户感到好像自己独占一台支持自己请求服务的计算机系统。具有这种功能的操作系统称为分时操作系统,简称分时系统。2、分时技术:即把CPU时间划分成许多时间片,每个终端用户每次可以使用一个由时间片规定的CPU时间。这样,多个终端用户就轮流地使用CPU时间。如果某个用户在规定的一个时间片内还没有完成它的全部工作,这时也要把CPU让给其他用户,等待下一轮再使用一个时间片的时间,循环轮转,直至结束。3、分时系统主要特点:(1)同时性。允许多个终端用户同时使用一个计算机系统。(2)独立性。用户在各自的终端上请求系统服务,彼此独立,互不干扰。(3)及时性。对用户的请求能在较短时间内给出应答。响应时间与用户数目和时间片长度有关。(4)交互性。采用人机对话的方式工作。4.前台与后台由分时系统控制的作业称为前台作业(终端作业),而那些由批处理系统控制的作业称为后台作业(批处理作业)。具体前台和后台的OS提高了系统的效率。5、分时OS与多道批处理区别(1)目标不同:批处理OS是提高系统效率,分时OSJ对应用请求的快速响应。(2)作业性质:批OS适用于需长时间的大型作业,分OS适用于时间较短的小作业。(3)批OS可同时接收经合理安排的各种不同功能的作业,分时OS适合于运行执行相同功能的作业。三、实时操作系统1、定义:能使计算机系统接收到外部信号后及时进行处理,并且在严格的规定时间内处理结束,再给出反馈信号的操作系统称为实时操作系统,简称为实时系统。2、实时操作系统的应用十分广泛,如控制科学实验、控制生产流水,监督病人的临床功能、监督和控制飞机的飞行状态,进行工业过程控制等。3、设计实时系统注意点:(1)要及时响应、快速处理。(2)实时系统要求高可靠性和安全性,不强求系统资源的利用率。4、实时OS特点①及时性:首先必须考虑,其次才是资源的利用率,确保任何时候都能及时响应。②可靠性:常用双工体制,两台计算机同时运行,一台为主机,另一台为备用机。四、操作系统的发展1、单用户微机操作系统:是指早期的微型计算机上运行的操作系统每次只允许一个用户使用计算机。2、网络操作系统:为计算机网络配置的操作系统称为网络操作系统。网络操作系统把计算机网络中各台计算机系统有机地联合起来,为用户提供一种统一、经济而有效地使用各台计算机系统的方法,可使各台计算机系统相互间传送数据,实现各台计算机系统之间的通信以及网络中各种资源的共享。3、分布式操作系统:为分布式计算机系统配置的操作系统称为分布式操作系统。分布式操作系统能使系统中若干台计算机相互协作完成一个共同的任务,或者说把一个计算问题可以分成若干个子计算,每个子计算可以在计算机系统中的各计算机上并行执行。网络OS与分布式OS区别:网络OS采用集中式,着重于信息共享,有专门的共享服务器(集中式),而分布式OS可把一个大作业分解成多个小任务运行于网络的多台计算机上,着重于并行处理(分布式)。4、多机操作系统:为多处理器系统配置的操作系统称为多机操作系统。5、嵌入式操作系统:是指运行在嵌入式系统中对各种部件、装置等资源进行统一协调、处理和控制的系统软件。(主要特点是微型化和实时性)1.4操作系统的特征1、共享性2、并发性3、移植性4、不确定性1.6操作系统的功能1、操作系统的功能:(从资源管理的角度来分)(1)处理器管理:对CPU进行管理。(2)存储管理:对主存储器进行管理。(3)文件管理:通过对磁盘进行管理,实现对软件资源进行管理。(4)设备管理:对各类输入/输出设备进行管理。(5)接口管理2、操作系统为用户提供的使用接口:(1)程序员接口:通过“系统调用”使用操作系统功能。(开发者,系统级,程序接口)(2)操作员接口:通过操作控制命令提出控制要求。(应用者,用户级,命令接口)第三章处理器管理内容概要本章介绍了处理器管理的基本概念和方法。主要包括:多道程序设计系统必须做好存储保护、程序浮动及资源分配与调度工