第1章 操作系统笔记

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

操作系统的定义:操作系统(OperatingSystem,OS)是配置在计算机硬件上的第一层软件,是对硬件系统的首次扩充1.1操作系统的目标和作用在计算机系统上配置操作系统主要目标与计算机系统的规模和应用环境有关。1.1.1操作系统的目标方便性硬件只能识别机器代码(0、1)OS提供命令,方便用户使用计算机有效性使CPU、I/O保持忙碌,充分利用使内存、外存数据存放有序,节省空间合理组织工作流程,改善资源利用率,提高吞吐量可扩充性计算机技术的发展:硬件/体系结构/网络/InternetOS应采用层次化结构,便于扩充和修改功能层次和模块开放性支持网络环境,兼容遵循OSI标准开发的硬件和软件1.1.2操作系统的作用1.用户与计算机硬件系统之间的接口命令方式用户通过键盘输入联机命令(语言)系统调用方式用户程序通过系统调用,操纵计算机图形、窗口方式用户通过窗口、图标等图形界面操纵计算机2.计算机系统资源管理者4大类资源:处理机;存储器;I/O设备;信息(文件:程序、数据)3.对计算机资源的抽象(扩充机器)裸机:只有硬件的计算机,难以使用虚机器:在裸机增加软件(OS等),功能增强,使用方便1.1.3推动操作系统发展的主要动力1.不断提高计算机资源利用率早期计算机很昂贵,为提高资源利用率,产生了批处理系统2.方便用户为改善用户上机、调试程序时的条件,产生了分时系统3.器件的不断更新换代OS随之更新换代,如:8位-16位-32位4.计算机体系结构的不断发展单处理机OS-多处理机OS-网络操作系统1.2操作系统的发展过程无操作系统时代OS尚未出现,人们如何使用计算机?人工操作方式人工操作方式的缺点用户独占全机CPU等待人工操作结果:资源利用率低下脱机输入输出系统低速设备纸带机/卡片机高速设备磁带/磁盘I/O速度提高,缓解了I/O设备与CPU的速度矛盾主机:用于计算的主计算机外围机:也是计算机,处理输入输出,使之不占用主机CPU时间外围机控制输入/输出输入:低速设备-高速设备输出:高速设备-低速设备输入和输出使用独立于主机的外围机,不占用主机的CPU时间,是脱机过程,因此叫做脱机输入/输出方式单道批处理系统计算机发展的早期,没有任何用于管理的软件,所有的运行管理和具体操作都由用户自己承担,任何操作出错都要重做作业,CPU的利用率甚低。解决的方法有两个:首先配备专门的计算机操作员,程序员不再直接操作机器,减少操作机器的错误。另一个是进行批处理,操作员把用户提交的作业分类,把一批中的作业编成一个作业执行序列。每一批作业将有专门编制的监督程序(monitor)自动依次处理。说明:监督程序的作用:用来装入用户作业,和用户作业交替地使用CPU。“批”的含义:供一次加载的磁带或磁盘,通常由若干个作业组装成,在处理中使用一组相同的系统软件(系统带)。关于“作业”的说明:通常,把计算机完成用户算题任务所需进行的各项工作称为一道作业。多道批处理系统早期的批处理可能出现两种情况:对于以计算为主的作业,输入输出量少,外围设备空闲;对于以输入输出为主的作业,主机空闲。问题的提出在早期的单道批处理系统中,内存中仅有单个作业在运行,致使系统中仍有许多资源空闲,设备利用率低,系统性能较差。多道程序设计技术若当前作业因等待I/O而暂停,CPU只能空闲直至该I/O完成对于科学计算问题,CPU操作密集,CPU浪费时间少对于商业数据处理,I/O操作密集,I/O等待时间常占80%-90%解决办法将内存分几个部分,每部分放不同的作业当一个作业等待I/O时,CPU可被另一作业使用在主存中同时驻留多个作业多道程序设计多道程序设计是指允许多个程序同时进入一个计算机系统的主存储器并启动进行计算的方法。合理搭配I/O为主和计算为主的程序交替运行,充分利用资源,提高系统效率。多道程序的运行特点:多道:计算机内存中同时存放多道相互独立的程序。宏观上并行运行:同时进入系统的几道程序都处于运行状态,但都未运行完。微观上串行运行:各作业轮流使用CPU,交替执行。实现技术:当正在运行的程序因I/O暂停执行时,系统可调度另一道程序运行,使CPU保持忙碌。例题:有两道程序A、B,按下图以多道程序方式运行,要求在右图画出它们的运行轨迹,并计算在60ms内,CPU的利用率,假设起始时首先运行B,并允许忽略监督程序切换A、B的时间(不考虑I/O的冲突)。分时系统概念:时间片、终端、响应时间分时(TimeSharing)是把计算机的系统资源(尤其是CPU时间)进行时间上的分割,每个时间段称为一个时间片(TimeSlice),每个用户依次轮流使用时间片。分时技术:把处理机的运行时间分为很短的时间片,按时间片轮流把处理机分配给各联机作业使用分时系统的定义分时操作系统:是一种联机的多用户交互式的操作系统。一般采用时间片轮转的方式,使一台计算机为多个终端服务。对每个用户能保证足够快的响应时间,并提供交互会话能力。分时系统的特点多路性系统支持单主机多个终端,按分时原则服务独立性各用户独立操作,互不干扰。及时性对用户请求的响应时间短(1~3s)交互性用户向系统提出服务请求更方便,也更广泛通过终端实时系统产生背景:虽然多道批处理操作系统和分时操作系统获得了较佳的资源利用率和快速的响应时间,从而使计算机的应用范围日益扩大但它们难以满足实时控制和实时信息处理领域的需要。于是,便产生了实时操作系统,目前典型的实时系统:实时控制系统、实时信息处理系统。什么是实时系统?有高可靠性和安全性,系统的效率则放在第二位典型的实时系统(1)实时控制系统:计算机用于生产过程控制时,要求系统能现场实时采集数据,并对采集的数据进行及时处理,进而能自动地发出控制信号控制相应执行机构,使某些参数(压力、温度、距离、湿度)能按予定规律变化,以保证产品质量。导弹制导系统,飞机自动驾驶系统,火炮自动控制系统都是实时过程控制系统。典型的实时系统(2)实时信息处理系统:计算机还可用于控制进行实时信息处理。计算机接收成干上百从各处终端发来的服务请求和提问,系统应在极快的时间内做出回答和响应。机票订购系统、情报检索系统是典型的实时信息处理系统微机操作系统1.单用户单任务OS只允许一个用户上机,且只允许用户程序作为一个任务运行。典型代表:CP/M8位机上的主流操作系统MS-DOS最早的PC操作系统16位机上的主流操作系统2.单用户多任务操作系统只允许一个用户上机,但允许用户把程序分为若干个任务,使它们并发执行。典型代表:微软公司推出的windows3.多用户多任务OS允许多个用户通过各自的终端使用同一台机器,共享主机系统中的各种资源,而每个用户程序又可进一步分为几个任务,使它们能并发执行。典型代表:UNIX1.3操作系统的基本特性以多道程序设计为基础的现代操作系统具有以下几个主要特征:并发性(Concurrence)共享性(Sharing)异步性(Asynchronism)或称不确定性(Nondeterministic)虚拟性(Virtual)1.3.1并发性概念:并发、并行、进程并发性(Concurrence)是指两个或两个以上的运行程序在同一时间间隔段内同时执行。操作系统是一个并发系统,并发性是它的重要特征,它应该具有:处理多个同时执行的程序的能力。并行与并发的不同:①并行性是指两个或多个事件在同一时刻发生②并发性是指两个或多个事件在同一时间间隔内发生引入进程在多道程序系统中,为了能够并发执行,系统必须为每个程序建立进程。程序是静态的,进程是动态的。进程能支持并发,程序不能。进程由一组机器指令、数据和堆栈组成,是一个能独立运行的活动实体。进程是资源分配的独立单位。多个进程能并发执行,进程运行时要占用一定的系统资源,如CPU、存储空间和I/O设备等。1.3.2共享性(sharing)概念:互斥访问、临界资源、同时访问共享指操作系统中的资源(包括硬件资源和信息资源)可被多个并发执行的进程所使用。发生条件多个进程并发执行多个进程需要同一资源资源共享的方式资源共享的方式可以分成两种:第一种是互斥共享。系统中的某些资源如打印机、磁带机、卡片机,虽然它们可提供给多个进程使用,但在同一时间内却只允许一个进程访问这些资源。这种同一时间内只允许一个进程访问的资源称临界资源,许多物理设备,以及某些数据和表格都是临界资源,它们只能互斥地被共享。第二种是同时访问。系统中的还有许多资源,允许同一时间内多个进程对它进行访问,这里“同时”是宏观上的说法。典型的可供多进程同时访问的资源是磁盘。共享与并发共享性和并发性是操作系统两个最基本的特征,它们互为依存:一方面,资源的共享是因为运行程序的并发执行而引起的,若系统不允许运行程序并发执行,自然也就不存在资源共享问题。另一方面,若系统不能对资源共享实施有效地管理,必然会影响到运行程序的并发执行,甚至运行程序无法并发执行,操作系统也就失去了并发性,导致整个系统效率低下。1.3.3虚拟技术虚拟是指操作系统中的一种管理技术,它是把物理上的一个实体变成逻辑上的多个对应物,显然,前者是实际存在的而后者是虚构假想的。时分复用虚拟处理机通过多道程序和分时使用CPU技术,物理上的一个CPU变成逻辑上的多个CPU虚拟设备打印机若某物理设备通过时分复用虚拟为N台,则虚拟设备速度是原设备的1/N空分复用虚拟磁盘1个硬盘实体-多个逻辑卷虚拟存储器虚拟存储器则是把物理上的多个存储器(主存和辅存)变成逻辑上的一个(虚存)的例子内存空分复用提高内存空间利用率结合时分复用,可实现在逻辑上扩大内存,使程序中远小于它的空间运行若某物理设备通过空分复用虚拟为N台,则虚拟设备占用空间是原设备的1/N1.3.4异步性异步性(Asynchronism)亦称不确定性,(Nondeterministic)进程以人们不可预知的速度向前推进,即进程的异步性。在多道程序环境中,允许多个进程并发执行,由于资源有限而进程众多,进程的执行往往不是一气呵成,而是“走走停停”,其运行、暂停和完成的时间都无法确定。a.系统中的进程何时执行?b.何时暂停?c.以什么样的速度向前推进?d.进程总共要多少时间执行才能完成?这些都是不可预知的,或者说该进程是以不确定的方式运行的,不确定性给系统带来了潜在的危险,有可能导致与时间有关的错误。但只要运行环境相同,操作系统必须保证多次运行作业,都会获得完全相同的结果。设计操作系统必修考虑异步性带来的问题。\1.4操作系统功能操作系统有如下几个基本功能:处理机管理存储器管理设备管理文件管理用户接口(一)处理机管理在传统的多道程序系统中,处理机的分配和运行都是以进程为基本单位,因而对处理机的管理可归结为对进程的管理:进程控制创建、撤销、状态转换进程同步访问临界资源、协调合作次序进程通信合作进程的消息交换调度作业调度、进程调度(二)存储器管理存储管理的主要任务是管理存储器资源,为多道程序运行提供有力支撑。存储管理的主要功能包括:内存分配存储管理将根据用户程序的需要给它分配存储器资源,并在其使用完毕后回收。内存保护存储管理要把各个用户程序相互隔离起来互不干扰,更不允许用户程序访问操作系统的程序和数据,从而保护用户程序存放在存储器中的信息不被破坏。地址映射进程逻辑地址到内存物理地址的映射。这样程序员无需知道自己的程序分配到内存的什么具体物理地址,仅仅知道自己的逻辑地址即可,体现了存储的无关性。内存扩充借助虚拟存储技术,从逻辑上扩充内存,使用户感觉到比实际大的多的内存,可是更多程序并发运行。功能:请求调入、置换(三)设备管理设备管理的主要任务:①管理各类外围设备,完成用户提出的I/O请求,加快I/O信息的传送速度,发挥I/O设备的并行性,提高I/O设备的利用率;以及提供每种设备的设备驱动程序和中断处理程序,向用户屏蔽硬件使用细节设备管理的主要功能:1.缓冲管理缓冲区,缓和CPU和I/O速度不匹配的矛盾单缓冲、双缓冲、公用缓冲2.设

1 / 22
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功