第3章 操作系统基础知识_第1页
第3章 操作系统基础知识_第2页
第3章 操作系统基础知识_第3页
第3章 操作系统基础知识_第4页
第3章 操作系统基础知识_第5页
已阅读5页,还剩134页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第3章第3章操作系统基础知识操作系统OS(OperatingSystem)是计算机系统中重要系统软件,其功能是管理和控制计算机软件和硬件资源,使计算机各部分协调工作;合理组织计算机工作流程,为用户使用计算机提供友好的人机接口,方便用户使用计算机系统。计算机系统层次结构计算机系统层次结构可以分为四级:硬件、操作系统、系统程序和应用程序。应用程序操作系统系统程序硬件图3.1.1计算机系统层次结构虚拟机磁盘网络接口I/O物理设备CPU时钟机器语言(指令集)操作系统程序语言和编译、编辑器命令解释器(Shell)金融系统航空定票科学与工程游戏硬件系统程序应用程序用户用户用户电源,键盘等用户用户……操作系统3.1操作系统简介3.1.1操作系统发展历程1.手工操作阶段2.批处理阶段3.操作系统完善1.手工操作阶段从第一代计算机诞生到20世纪50年代中期还未出现操作系统,这时的计算机采用人工操作方式。其过程是:1.手工操作阶段使用计算机的步骤如下:①将程序和数据通过手工操作记录在穿孔纸带或卡片上;②将纸带装入纸带输入机,启动纸带输入机将程序和数据读入计算机;③计算机执行程序。一个独立的程序称为一个作业,一个作业处理完毕才能处理另一个作业。脱机输入输出技术

除主机外另设一台外围控制机,且只与输入输出设备连接,并不与主机连接,由它完成输入输出任务。程序或数据通过外围控制机输入到磁带上,等待主机使用。输出时主机负责将数据从内存输出到磁带,由外围控制机将磁带上的数据输出到设备上。在这种系统中,输入输出脱离主机,减少了CPU等待人工的时间,提高了CPU的利用率和输入输出速度。将这种工作方式称为脱机输入输出方式。2.批处理阶段所谓批处理系统是指加载在计算机上的一个系统软件,在它的控制下,计算机能够自动地成批地处理一个或多个用户的作业。①单道批处理系统②假脱机技术③多道批处理系统①单道批处理系统

将一批作业以脱机方式输入到磁带上,由驻留内存的监督程序将磁带上的作业装入内存交给CPU进行处理,当一个作业运行完毕或出现异常时,再装入后继程序。

系统对作业的处理成批进行,但在内存中仅有一道程序处于运行状态,这就是单道批处理系统。监督程序就是操作系统最初萌芽。单道批处理系统:任一时刻只允许一个程序在系统中执行。一个程序执行结束后才能执行下一个程序。

时间tCPU程序A程序B程序C

单道批处理系统提高了计算机系统吞吐量,减少了主机空闲时间,在一定程度上提高了系统资源利用率。但在内存中只有一道程序,所以仍然不能充分利用系统资源。例如:程序要求输入数据时,输出设备空闲。程序要求输出数据时,输入设备空闲。单道批处理系统

②假脱机技术

20世纪60年代初期,计算机硬件技术在两方面获得重要进展:一是通道的引入,二是中断的出现。

通道:也称为输入输出(I/O)处理机,它与CPU并行工作,专门用于控制输入输出设备。

中断:在程序执行过程中,出现某种紧急事件时,cpu暂停执行现行程序,转去执行事件处理程序,执行后再返回到被暂停的程序继续执行。I/O处理机输入输出结束时向CPU发出中断请求,CPU通过响应中断获取I/O处理机状态,提交输入/输出任务。由I/O处理机完成作业的输入/输出。

在CPU控制下,作业输入输出数据由I/O处理机完成,I/O处理机取代了外围控制机。这项技术被称为假脱机技术。

通道和中断技术的应用使CPU与I/O设备并行工作,解决了CPU和I/O设备速度匹配问题,同时为分时操作系统的诞生奠定了硬件基础。

③多道批处理系统

60年代中期引入多道程序设计(Multi_Programming)技术。作业预先在外存中排成一个队列,称为后备队列。由作业调度程序从后备队列中选择若干个作业装入内存,使它们交替运行。当正在运行的程序因输入输出操作而暂停执行时,系统运行另一道程序。这样多个程序共享CPU,使CPU始终处于忙碌状态。多道程序设计技术应用于批处理系统,形成了多道批处理系统。等待数据输出调度程序程序C程序B程序ACPU时间磁盘控制器多道程序运行情况示意图多道程序系统:多道程序同时在执行。程序A程序C程序A程序B程序C程序CCPU时间t为了使多道程序间能够协调工作,监督程序需要解决以下系列管理问题:作业调度:合理调度作业,使系统中硬件资源有效利用;CPU管理:多个作业交替运行,需要合理安排处理机时间;内存管理:为每道程序分配必要的内存空间;I/O设备管理:为多道程序分配输入输出设备。

在计算机系统中应该有一组专用软件,负责控制和管理软硬件资源,合理组织工作流程,方便用户使用计算机,这就是多道批处理操作系统。多道批处理系统的出现,标志着操作系统已经形成。3.操作系统的完善

分时系统的出现标志着操作系统进入完善阶段。

基本思想是:将CPU时间分成若干个时间片,在一个时间片运行一个作业,在下一个时间片运行另一个作业,在短时间内所有作业都能得到轮流执行。从整体上看每个作业都在运行,用户请求可以得到及时响应,这就是计算机分时操作系统。如:MS-DOS、Windows、Unix和Linux等。3.1.2常见操作系统简介DOS操作系统Windows操作系统多道批处理系统UNIX操作系统Linux操作系统1.DOS操作系统

DOS是磁盘操作系统(DiskOperatingSystem),是一种单用户、单任务的微型机操作系统,它由IBM公司委托Microsoft公司开发。DOS主要功能是命令处理、文件管理和设备管理。它采用汇编语言编写,系统开销小,运行效率高,但资源管理功能简单,字符型用户界面,操作不太方便。2.Windows操作系统WindowsXP有三个版本:

WindowsXPHomeEdition有良好的数字媒体平台,适合家庭用户和游戏爱好者;

WindowsXPProfessional为商业用户设计,有高级别的可扩展性和可靠性;

WindowsXP64-BitEdition可以满足电影特效制作、3D动画、工程设计和科学计算等对大内存、高浮点运算的专业技术需要。Windows的主要特点①面向对象图形界面:方便用户使用。②统一的用户界面:应用程序界面相似。③与设备无关的图形操作:支持即插即用技术。④多任务处理:同时运行多个程序。⑤先进的内存管理:根据程序大小适当的分配内存。⑥多种系统管理工具:资源管理器、系统工具等。⑦内置的网络通信功能:支持多种网络传输协议。

⑧出色的多媒体功能:对音频、视频编辑和播放。3.UNIX操作系统家族

UNIX操作系统是一个通用的、交互式分时网络操作系统。1969年美国贝尔实验室在DEC公司的小型机PDP-7上开发成功,1971年移植到PDP-11上。1973年用C语言重写UNIX,具有较高的易读性和可移植性,为UNIX迅速推广和普及应用奠定了基础。20世纪70年代中后期,UNIX源代码的免费扩散引起很多大学、研究机构和公司的兴趣,大众参与为UNIX的改进、完善、传播和普及起了重要作用。4.Linux操作系统

Linux是芬兰籍科学家LinusTorvalds于1991年编写的一种操作系统。Linux操作系统可用于386、486或奔腾处理器的更高档次个人计算机上,具有UNIX操作系统的全部功能。目前Linux软件包带有X-Windows图形界面管理器,通过窗口、图标和菜单对系统进行管理。软件包还包括文本编辑器,高级语言编辑器等许多软件。3.1.3操作系统分类

根据操作系统功能特征和使用环境可以分为三种基本类型:批处理系统、分时系统和实时系统。新类型的操作系统不断出现:网络操作系统;

分布式操作系统;个人计算机操作系统;多处理机操作系统;嵌入式操作系统。1.批处理系统

批处理操作系统的主要特征是多道性、成批性。

多道性是指在内存中可同时驻留多道程序,并允许它们并发执行,有效地提高系统资源利用率和吞吐量。

成批性是指作业成批进入系统,成批处理。作业完成顺序与进入内存顺序没有紧密联系,先进入内存的作业可能后完成。批处理系统缺点是缺乏人机交互性。2.分时操作系统

分时操作系统(Time-SharingOperatingSystem)的特征是多路性、交互性、独占性和及时性。

分时系统允许一台主机同时连接多台交互终端,每个用户独占一个终端,彼此独立操作,互不干扰。

分时系统将CPU时间划分成若干个片段,称为时间片。操作系统以时间片为单位轮流为每个终端用户服务,系统对每个用户提出的请求都能及时响应,用户感觉不到其他用户存在。用户以交互方式使用计算机,共享主机资源。3.实时系统

实时操作系统(Real-TimeOperatingSystem)的特征是实时性、高可靠性。

实时性是指计算机能及时响应外部事件请求,在规定时间内完成事件的处理任务。实时系统更加注重稳定性和可靠性。

实时操作系统可分为实时控制系统和实时信息处理系统两大类。实时控制系统用于工业控制和宇航控制等;实时信息处理用于情报查询、信息检索和航空订票系统等。4.网络操作系统

网络操作系统(NetworkOperatingSystem)基于计算机网络。除具备普通操作系统所具备的功能外,还具有网络管理模块、通信、安全和资源共享等模块。5.分布式操作系统

分布式操作系统(DistributedOperatingSystem)是网络操作系统的更高级形式,它建立在计算机网络基础之上,有效地解决了地域分布很广的若干台计算机之间资源共享、并行处理等问题。特征是统一性、共享性、可靠性和透明性。6.个人计算机操作系统个人计算机(PC)操作系统是一种单用户多任务操作系统。主要设计目标是易用性和响应性。

例如:MS-DOS,Windows,OS/2。7.多处理机操作系统具有公共内存和时钟的多CPU系统称为多处理机系统,它们共享计算机总线和外部设备。建立在多处理机系统上的操作系统称为多处理机操作系统,也称为并行操作系统或紧耦合系统。

8.嵌入式操作系统

嵌入式操作系统(EmbeddedOperatingSystem)是一种支持嵌入式计算机的软件,由一个体积很小的内核及一些可以根据需要定制的系统模块组成,能运行在各种不同硬件平台上,提供基本的程序运行环境和接口。著名嵌入式操作系统有Vxwork、PalmOS和WindowsCE等。3.2.1操作系统作用操作系统有两个重要作用:

1.管理系统资源

2.提供友好界面3.2操作系统作用及特征1.管理系统资源

计算机系统资源包括处理机、存储器、输入输出设备、程序和数据及各种信息。操作系统负责管理软硬件资源,使它们协调一致地工作;为应用程序分配所需资源,提供基本运行环境。2.提供友好界面操作系统是用户与计算机硬件之间的接口。操作系统为用户使用计算机提供了灵活方便的操作手段,即提供友好的用户界面(接口)。大多数操作系统提供两种操作接口,即命令接口和程序接口。(1)命令接口操作系统提供的人机交互界面,称为命令接口。两种命令接口:字符型命令接口,允许用户通过键盘输入命令操作计算机。图形命令接口:允许用户通过窗口或图标操纵计算机。字符命令接口(2)程序接口程序接口也称为系统调用,由一组系统调用命令组成。在编写的程序中通过系统调用命令获得操作系统服务。3.2.2操作系统功能从资源管理角度说,操作系统功能包括:

作业管理、进程管理、存储管理、设备管理和文件管理5个主要部分。1.作业管理

作业管理是为了合理组织工作流程,对作业进行控制和管理。

作业管理包括作业输入、作业调度和作业控制。2.进程管理进程管理也称为处理机管理。处理机(CPU)是计算机中最宝贵的硬件资源,程序只有获得处理机才能运行。主要对处理机(CPU)进行分配和管理。在计算机系统中,以进程为基本单位分配和使用处理机,因此对处理机管理最终归结为对进程管理。

进程管理主要功能是进程控制、进程调度、进程同步及进程通信。3.存储管理

存储管理是指对内存资源进行管理,主要任务是为多道程序运行提供良好环境,方便用户使用存储器,提高内存利用率。存储管理主要包括存储分配、存储保护、虚拟存储器和地址映射。4.文件管理

文件管理主要负责软件资源管理,包括文件存储空间管理、目录管理、文件存取控制、文件共享与保护。5.设备管理

设备管理是指对计算机外部设备(打印机、显示器等)进行分配、控制和管理,使用户不必过多了解接口技术而方便地使用外部设备。设备管理主要功能有缓冲区管理、设备分配和设备控制。3.2.3操作系统特征并发性(Concurrence)共享性(Sharing)虚拟性(Virtual)异步性(Asynchronism)1.并发性(Concurrence)

并发性:是指两个或两个以上事件在同一时间间隔内发生,从微观上看是交替进行,从宏观上看是同时发生。

并发性是指在计算机系统中同时存在多个程序,从宏观上看这些程序同时运行。用户程序之间可以并发执行,用户程序与操作系统程序也可以并发执行。2.共享性(Sharing)所谓共享,是指在操作系统控制下,系统资源可供多个并发执行的程序共同使用。在支持多道程序系统中,多个并发执行的程序必然会共享某些资源。并发性和共享性是所有操作系统具有的两个基本特征。它们互为依存条件,共享以程序的并发执行为前提条件,并发以资源共享为基础。3.虚拟性(Virtual)

虚拟是指操作系统通过某种技术将一个物理实体变成多个逻辑对应物,或将多个物理实体变成一个逻辑对应物。操作系统的这种特性称为虚拟性。

如:多道程序系统将一个物理CPU变成多个逻辑CPU;虚拟存储器管理将多种物理存储设备变成一个虚拟存储器。4.异步性(Asynchronism)

进程以人们不可预知的速度向前推进。内存中每个进程何时能获得处理机,何时因得不到所需资源而暂停,每道程序需要多少时间执行完成等,都是不可预知的。很可能先进入内存的作业后完成,而后进入内存的作业先完成。这就是操作系统的异步性。3.3作业管理

作业是用户提交给系统的独立任务,操作系统以作业为单位管理用户任务。3.3.1基本概念要求计算机系统为其完成计算任务的集合称为作业。

作业由程序、数据和作业说明书三部分组成。处理一个作业通常经过若干个相对独立又相互关联的加工步骤,如编辑、编译或汇编、连接和执行等,一个相对独立的处理步骤称为一个作业步(JobStep)。

一个作业步可以由一个进程来完成,作业的处理要经过多个进程执行。

用户作业可以分为两大类:批处理作业和交互式作业。1.批处理作业在批处理系统中,多个作业由输入设备依次输入到辅存中,形成作业流。

作业调度程序按一定策略选择多个作业投入运行。2.交互式作业

交互式作业又称为终端作业或会话式作业。在分时系统中,通常将分时用户的一次登录作为一个作业。用户一次登录可以完成很多工作。3.3.2作业调度

作业控制和作业调度是作业管理的主要任务。

作业控制包括控制作业输入、运行和计算结果的输出。

作业调度是根据作业控制块信息,按一定策略选取若干作业进入内存获得处理机运行。

操作系统为每个进入系统的作业建立一个作业控制块(JCB),记录作业调度的相关信息。JCB是作业存在的标志,作业退出系统时JCB随之撤销。

常见的作业调度算法1.先来先服务算法按作业进入系统作业后备队列先后次序挑选作业。这种算法容易实现,但效率低。2.最短作业优先算法系统选取估计计算时间最短的作业投入运行。这种算法使平均作业周转时间短,且易于实现,但效率不高。3.4进程管理从微型计算机到大型计算机,所有多道程序操作系统都建立在进程的概念之上,操作系统所有功能都与进程有关。3.4.1进程定义在多道程序系统中,多个程序同时进入系统,处理机交替执行每个程序,每个程序的执行都是走走停停,一个程序的活动规律是:

推进→暂停→推进→暂停→…

3.4.1进程定义当一个程序暂停时,需要将其现场信息作为断点保存起来,以便以后能从断点处继续执行。这样,在多道程序系统中需要一块特殊区域保存断点。因此程序的概念已不能如实地反映程序执行时的特征,需要一个更准确地描述程序执行状态的术语,这就是进程(process)。1.进程定义进程的定义:进程是具有一定独立功能的程序段关于一个数据集合的一次运行活动。不同角度对进程的解释:①进程是程序的一次执行。②进程是一个程序及其数据在处理机上执行时所发生的活动。③进程是程序在一个数据集合上的运行过程,是系统资源分配和调度的基本单位。2.进程组成三部分组成:①程序块:由指令代码组成,代码必须是纯代码,即在运行期间不修改自身。②数据块:进程执行时所需数据和工作单元以及开辟的工作区。③进程控制块(ProcessControlBlock,PCB):一个数据结构,其中包含描述和管理进程所需全部信息。如进程标识、进程所属用户标识、进程状态、调度参数、现场信息和程序地址等。

创建进程时建立PCB,撤消进程时收回PCB。PCB是进程存在的惟一标志。

程序、数据和进程控制块构成进程实体。程序和数据位于内存中用户空间,进程控制块位于系统空间。3.进程的基本特征①动态性:进程是程序的一次执行。进程因创建而产生、由调度而执行、由撤消而消亡。进程具有生命期。②并发性:进程可以并发执行。

③独立性:进程在系统中能独立运行,独立分配资源和独立接受调度。进程是系统资源分配的基本单位。④异步性:每个进程以不可预知的过程运行。⑤结构性:每个进程由程序块、数据块和进程控制块3部分组成。4.进程类型进程可以分为系统进程和用户进程两类。系统进程运行操作系统程序,完成操作系统功能,可以执行包括特权指令在内的所有机器指令,优先级高于用户进程。用户进程运行用户程序,只能执行非特权指令。5.进程与程序的关系

⑴程序是静态的,进程是动态的。⑵程序是指令及执行指令时所需数据的集合,可以长期保存在存储介质上;进程具有创建性、运行性和消亡性。

⑶进程和程序不是一一对应关系,一个程序可以对应多个进程,但一个进程只能对应一个程序。6.进程与作业的关系

1、作业是任务实体,进程是完成任务的执行实体;

2、没有作业任务就没有进程,反过来,没有进程,作业任务就不能完成。

3、作业的概念更多地用于批处理系统,进程的概念用于多道程序系统中。3.4.2进程的状态和转换

多个进程并发执行,共享系统资源,而系统资源是有限的。因此不可能每个进程都能及时得到所需要的资源。

CPU是执行进程的必要资源,操作系统不会让一个进程一直占用CPU。一个进程不会一直处于运行状态,进程可能有多种状态。任何操作系统都包括进程的3种基本状态。①运行态(run):得到CPU资源,正在运行进程中指令。②

就绪态(ready):进程本身具备运行条件,等待获得CPU资源。③等待态(wait):进程本身不具备运行条件,正等待某一事件发生或释放CPU以外的资源。这种状态也称挂起态(suspended)、封锁态(blocked)或睡眠态(sleep)。进程的三种基本状态创建进程

就绪运行等待调度选中

时间到

阻塞事件发生

进程的3个基本状态的相互转化

创建进程时,由于其他进程正占用CPU所以它只能处于就绪状态;当就绪进程获得处理机时就转换为运行状态;当进程的时间片耗尽或出现更高优先级别的进程,进程被迫退出处理机,其状态由运行变为就绪;

当运行进程因某事件受阻,如申请的资源被占用或I/O传输未完成,其状态由运行转为等待,或者说是进程阻塞或进程睡眠;如果其等待的事件完成,进程从等待状态转换为就绪状态,也称进程唤醒。一个进程在其生存期内可能多次发生状态转换,操作系统的进程管理模块负责进程的状态转换工作。当操作系统从就绪状态队列中调度进程时,从PCB中查出现行状态及优先级,以确定符合调度算法要求的进程。

当调度到某进程后,操作系统根据PCB中保存的现场信息,恢复进程运行现场,并根据程序地址找到其程序和数据。当进程因某种原因而暂停时,操作系统将断点现场信息保存在PCB中。在进程的整个生命期中,操作系统通过PCB控制进程。3.4.3进程调度

进程调度由操作系统的调度程序实施,按照一定调度算法,从就绪队列中选取一个进程使其获得处理机。所以进程调度也称为处理机调度。常见进程调度算法有:

先来先服务(FCFS)算法;高优先级优先调度算法;

时间片轮转法;1.先来先服务算法

先来先服务(FCFS)算法是最简单的调度算法,按照进程到达先后顺序分配处理机,每次调度总是选择就绪队列中首进程。一个进程占用处理机直到进程时间片耗尽、运行结束或运行受阻才释放处理机,操作系统不会强行抢占处理机。

这种算法比较有利于计算时间长的进程。2.高优先级优先调度算法这是广泛采用的一种调度算法。它的每次调度总是从就绪队列中选取优先级最高的进程运行,在相同优先级进程中采用先来先服务算法调度。这种算法也适用于作业调度。进程优先级的确定有两种方式:静态和动态。

静态优先级是进程创建时确定,进程运行期间保持不变。优先级与进程的估计执行时间有关,时间越短优先级越高;对系统资源的需求越少优先级越高;

动态优先级是指在进程的生命期内,随着进程的运行情况而不断变化。在就绪队列中随其等待时间的增长,优先级会调高;占用CPU的时间越长,优先级会调低。两种进程优先级3.时间片轮转法

系统将CPU时间分成固定大小的时间片,一个时间片大约几毫秒到几百毫秒。

所有就绪进程按先来先服务原则分配处理机,一次使用一个时间片。当时间片用完时,系统调度程序停止该进程,将它送到就绪队列末尾,等待下一次调度。

就绪队列中所有进程在一定时间段内均能获得一个时间片,使得系统能在较短时间内响应所有用户请求。3.5存储管理存储管理的内容

存储分配、存储保护、虚拟存储器和地址映射。存储管理的目的为多道程序运行提供良好环境,方便用户使用存储器,提高存储器利用率,从逻辑上扩充存储容量。3.5.1基本概念

存储器包括内存储器和外存储器,存储管理主要是指内存储器管理。内存空间一般分为两部分:

系统区:

存放操作系统核心程序以及一些标准子程序和例行程序;

用户区:

存放用户程序和数据。存储管理主要是对用户区进行管理。

1.物理地址⑴定义:计算机内存由许多单元组成,为了区分各个不同的内存单元,每个内存单元按顺序进行编号,这个编号称为物理地址。⑵寻址范围:物理地址的位数由系统地址总线的根数决定。物理地址反映的是CPU对内存空间的寻址能力。

例如:一台计算机的地址总线为32位,则CPU可寻址的内存空间为:232=4GB。

00010002……EFFFFFFF物理地址

2.逻辑地址⑴程序员在编写程序时所使用的地址称为逻辑地址,也叫相对地址或偏移地址。⑵逻辑地址通常从0开始,程序中的其他地址都相对于起始地址进行计算。⑶逻辑地址与物理地址不是一一对应。程序员在编程时不需要考虑物理地址。逻辑地址程序指令逻辑地址

3.地址映射

程序中使用的地址都是逻辑地址。操作系统在将程序装入内存时,将程序中指令和数据的逻辑地址转换为物理地址。这一转换过程称为地址映射或地址重定位。

⑴静态重定位:在程序装入时完成地址转换。

⑵动态重定位:将程序装入内存后并不立即进行地址转换,而是当程序要执行时才进行地址转换。程序物理地址地址重定位4.存储保护在多道程序系统中,内存中既有操作系统程序又有许多用户程序,为确保每道程序都只在自己的内存空间内运行,互不干扰,操作系统必须对程序和数据进行保护,绝不允许用户程序访问操作系统的程序和数据,也不允许一个用户程序转移到非共享的其他用户程序中去执行,这种对程序空间的保护称为存储保护。5.存储扩充

内存存取速度快,但容量小;外存容量大但速度慢。在操作系统管理下,从逻辑上扩充内存容量,部分外存空间作为逻辑内存使用,构成虚拟存储系统,称为存储扩充。真正内存虚拟内存内存空间最大容量与CPU的寻址能力有关32位CPU最大可达4GB。3.5.2存储器连续分配方式程序在装入内存之前,首先要为其分配存储区域,存储区域分配有多种方式。单一连续分配存储区固定分区分配可变分区分配可重定位分区分配

1.单一连续分配将内存分为系统区和用户区两部分

系统区:存放操作系统程序;用户区:存放用户程序。

程序只能分配到一个连续的存储区域中,并且在执行期间不能移动。程序在装入内存时逻辑地址到物理地址的转换多采用静态重定位方式,由装入程序完成逻辑地址到物理地址的转换。

这种分配方式适合于单用户、单任务操作系统。2.固定分区分配它将用户内存空间划分为若干个连续区域,每个区域位置固定,大小可以相同也可以不同,每个分区中只装入一道程序。程序装入时地址转换可以采用静态也可以采用动态重定位方式。

固定分区存储管理缺点:

同时在内存中运行的程序数量受到分区数目限制;分区大小固定,而程序对内存的要求不可能刚好等于某个分区的大小,因此小程序造成内存资源严重浪费,而大程序可能又无法装入。固定分区分配是多道程序系统中最简单的存储管理技术,3.可变分区分配

可变分区存储管理方式是在装入作业时按程序大小来划分分区,使分配的分区正好适应程序需求。这种管理方式下,分区个数是可变的。

在这种管理方式下,系统启动后整个用户区是一个空闲分区,当系统装入一个程序时,根据程序需要的存储容量划出一个分区分配给该程序,剩余部分作为一个较小的空闲区,继续装入其它程序。随着程序装入、撤销,用户区被分成许多个分区。说明以上三种分配方式都是为程序分配连续地址空间。连续分配方式的主要缺点:如果系统中只有若干个小分区空闲,而单个小分区不能满足新程序的需要,尽管它们容量的总和满足装入程序的需要,也不能将程序装入。这种不能被利用的小空闲分区称为碎片。4.可重定位分区分配

可重定位分区分配将内存中各个程序位置进行移动,将原来分散的小空闲分区拼接成一个大分区,用于新程序装入。程序装入方式采用静态重定位的方式,它的程序不能移动,只有采用动态重定位装入方式的系统才可以移动内存的程序。3.5.3存储器离散分配方式离散分配方式:

将一个用户程序离散地分配到内存中多个相邻或不相邻区域。离散分配方式包括:1.分页式存储管理方式2.分段式存储管理方式

3.

段页式存储管理方式1.分页式存储管理在离散分配方式中,分配的基本单位是页,则称为分页式存储管理。①页框:物理内存空间分成若干大小相等的区,每个区称为一个物理块或页框。②页面:逻辑地址空间分成若干大小相等的区,区的大小与物理块的大小相同,称为页面或虚拟页。分页式存储管理

程序员在编程时使用连续逻辑地址,不考虑如何分页。操作系统在装入程序时根据物理块的大小决定页面大小。只要程序总页数不大于内存中可用的物理总块数,程序就可以装入内存。装入时以页为单位分配内存,一个页面分配一个物理块,各个物理块可以不连续。2.分段式存储管理

在离散分配方式中,分配的基本单位是段,则称为分段式存储管理。它是现在所有存储管理方式的基础。

现代高级语言通常采用模块化程序设计。用户将程序按照逻辑关系分为若干个段(模块),如主程序段、子程序段、数据段、堆栈段,每个段都从0开始编址,都有模块名。在编译或汇编时源程序的每个段都被定义了一个段号,其编译或汇编后的逻辑地址由段号和段内地址组成。分段式存储管理

分段存储管理为程序中每个段分配一个连续分区,不同段可以使用不连续分区。每个进程有一张段表,每个段在表中占一个表项,表项的一部分是该段在内存中的起始地址,通常称为段基址,另一部分是段的长度。段表用于实现逻辑地址到物理地址的映射。3.段页式存储管理

段页式存储管理是分页存储和分段存储管理的综合。用户程序分为若干个段,每个段又分为若干个页,每个段赋于一个段名。程序的逻辑地址由段号、段内页号、页内地址组成。

段页式存储管理为程序的各个段离散地分配内存,易于实现、易于共享、易于保护和可动态链接,而且很好地解决了内存碎片的问题。

前面介绍的各种存储管理方式中,必须为程序分配足够的存储空间,程序才能运行。3.5.4虚拟存储器管理

程序在执行时并不是同时使用程序的全部。

程序在运行之前没有必要全部装入内存,只需将当前要运行的部分页面或段装入内存,其余部分可以暂时留在磁盘上。如果进程所要访问的页或段不在内存,操作系统就将需要的页或段调入内存。如果内存已满,无法再装入新的页,操作系统就将暂时不用的页调出到磁盘,再将需要的页调入内存。(1)虚拟存储

虚拟存储基于程序局部性原理,建立在离散存储管理方式基础之上,采用进程在运行过程中部分地装入内存的技术,为用户提供一个比实际物理空间大得多的逻辑地址空间,使用户在编程过程中不必顾虑内存容量的大小。(2)虚拟存储器的容量

虚拟存储器的容量与主存大小无关,只与计算机地址结构及外存容量有关。例如,计算机的地址线是32位,CPU的寻址空间为4GB,内存容量设为256MB,但是其上运行的Windows2000/XP为用户程序提供了一个4GB的编程空间。

两种虚拟存储器实现方法:

1.分页请求系统

2.分段请求系统1.分页请求系统

在分页系统基础上,增加了请求调页功能和页面置换功能。当作业被调度运行时,并不将程序和数据全部装入内存,而只装入立即使用的页面。当需要执行的某条指令或数据不在内存时,产生一个缺页中断,系统从外存储器中调入缺页。2.分段请求系统

在分段的基础上,增加了请求分段和分段置换功能。当作业被调度运行时,首先将当前需要的一段或几段装入主存,当访问的指令或数据不在主存的段时,硬件产生一个缺段中断,中断处理程序将需要的段装入内存。3.5.5Windows2000/XP的虚拟存储管理

Windows内存管理器是虚拟管理程序VMM(VirtualMemoryManager)的一个组件,位于Ntoskrnl.exe文件中,是Windows的基本存储管理系统。

Windows采用段页式虚拟存储技术,提供4GB虚拟地址空间,划分成4KB大小的若干页。

虚拟地址空间分为两部分:

系统存储区:高位地址空间有操作系统使用。

用户存储区:低地址空间。FFFFFFFFHC0000000H80000000H00000000H系统存储区用户存储区固定页面区页交换区操作系统驻留区页交换区系统区分成三部分:固定页面区:存放系统的关键代码,不可交换;

页交换区:存放非常驻的系统代码和数据;

操作系统驻留区:存放内核、执行体、引导驱动程序和硬件抽象层等。虚拟地址空间布局Windows的虚拟存储管理

程序运行时,一部分页装入内存,另一部分放在页面(页交换)文件中。页面文件位于硬盘上用于模拟物理内存。Windows的虚拟存储管理在Windows2000/XP中,可以改变页面文件的大小。在WindowsXP中设置页面文件大小方法为:单击“开始”菜单→“控制面板”,双击“系统”,单击“高级”选项卡→“性能”框内的“设置”,在“性能选项”对话框中的单击“高级”选项卡→“更改”按钮,进入“虚拟内存”对话框。Windows的虚拟存储管理

如果计算机物理内存容量为256M,操作系统设置的页面文件的大小为384M,则计算机拥有640M虚拟内存。

3.6文件管理

程序和数据是计算机软件资源,以文件形式存储在计算机外部存储器上。文件管理是对文件、目录和文件存储空间进行管理。3.6.1文件系统基础知识

文件与文件管理程序的集合称为文件系统。文件是具有符号名的相关信息集合。

1.文件命名

操作系统根据文件名对其进行控制和管理。按文件性质可分为系统文件、用户文件和库文件;按存取属性可分为只读文件、读/写文件和只执行文件;此外,文件还可以按信息流向分为输入文件、输出文件和输入/输出文件;按文件组织形式分为普通文件、目录文件和设备文件。普通文件包括ASCII文件和二进制文件;目录文件由文件目录组成;设备文件用于表示常用设备。2.文件分类

文件的扩展名表示文件的类型

文件类型扩展名说明

可执行程序EXE、COM可执行程序文件源程序文件C、CPP、BAS程序设计语言的源程序文件Office文档DOC、XLS、PPTWord、Excel、Powerpoint创建的文档流媒体文件WMV、RM、QT能通过Internet播放的流式媒体文件压缩文件ZIP、RAR压缩文件图像文件BMP、JPG、GIF不同格式的图像文件音频文件WAV、MP3、MID不同格式的声音文件网页文件HTM、ASP前者是静态的,后者是动态的文件基本属性:包括文件名、长度、创建时间、修改时间、所有者等。②文件类型属性:包括普通文件、目录文件、系统文件、隐含文件、设备文件等;③文件保护属性:包括可读、可写、可修改和可删除。3.文件属性

用户存取、检索和管理信息时文件的组织形式,称为文件逻辑结构。文件逻辑结构有两种形式:

①记录式文件:由一系列记录构成的文件称为记录式文件。记录是一个具有特定意义的信息单位。例如,Excel表格和数据库表属于记录式文件。

②流式文件:由字符流构成文件称为流式文件,它是有序字符集合。流式文件无结构且管理简单。源程序、目标代码等文件属于流式文件。Word文档、源程序、目标代码等文件属于流式文件。4.文件逻辑结构

文件物理结构是指文件在物理存储设备上的存放方法和组织形式。

①顺序结构:一个文件中的信息依次存放在若干个连续编号的物理块中。文件名开始块号长度文件1113文件21465.文件物理结构物理块号111213141516171819逻辑块号012012345文件1文件2②链式结构:逻辑上连续的文件信息依次存放在若干不连续的物理块中,各个物理块以指针相连。5.文件物理结构文件名开始块号长度文件1113文件215411151419122113③索引结构:逻辑上连续的文件信息依次存放在若干不连续的物理块中,文件系统为每个文件建立一张索引表。逻辑块号物理块号0111142195.文件物理结构逻辑块号物理块号015121213412文件1索引表文件2索引表

文件的存取方法是文件系统为使用文件提供的技术手段。文件存取方法由存储器物理特性和文件结构决定。

①顺序存取:按从前到后的次序依次访问文件。对记录式文件按记录排列顺序来存取;对流式文件则根据当前读写指针的指向存取。

②直接存取:又称随机存取。只有记录式文件可以随机存取,可以根据记录编号,存取文件中任一记录。③索引存取:又称按键存取,是基于索引文件的存取方法。6.文件存取方法3.6.3

文件目录

为了实现按名存取文件,需要为众多的文件建立目录,称为文件目录。它是一张记录所有文件的名字及其存放物理地址的映射表。文件目录也是一个文件,由目录项组成。

文件名文件扩展名文件属性保留时间日期文件首簇号…

一个文件信息构成一个目录项,目录项存于文件控制块(FCB)中。文件控制块是文件存在的标志,其中包含系统对文件进行管理和控制所需要的全部信息。3.6.3

文件目录

文件控制块包含一个文件的基本信息有:文件名、类型、物理地址、长度、记录大小、创建时间、修改时间、访问时间等属性。

文件目录项的组织结构关系到文件系统的存取速度,关系到文件共享性和安全性。组织文件目录是文件系统设计的关键。常见目录结构有单级目录、二级目录和多级目录。

1.单级目录结构整个文件系统只建立一张目录表,每个文件占一个目录项。这种目录结构可以实现文件系统基本功能“按名存取”,但是文件查找速度慢,不允许文件重名,而且很难实现文件共享。

2.二级目录结构建立一个主目录文件,再为每一个用户建立一个用户目录文件。二级目录提高了目录检索速度,在不同用户目录中可以使用相同文件名,还可以使用不同文件名访问共享文件。常见目录结构3.多级目录结构

多级目录结构又称为树型目录结构。

根目录我的电脑我的文档……流行歌曲图片收藏我的音乐我的视频下载歌曲甜歌文件1文件2文件3文件1文件1我的视频文件1文件2文件nWindows中的树型结构:桌面为根。编程时:根目录是指逻辑驱动器的根目录3.7设备管理

设备管理就是管理和控制各种输入输出设备,为用户使用设备提供简单方便统一的接口形式,完成用户输入输出请求,提高设备使用效率。计算机输入输出系统由设备、设备控制器、通道和设备管理软件构成。计算机主存和设备之间的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论