大学计算机基础知识点总结(3)

2019-03-22 20:52

(4) 等待时间。让进程在就绪队列中等待所花时间之和尽可能短。

(5) 响应时间。让进程从提交请求到产生第一响应之间的时间尽可能短。 主要的CPU调度算法 1、先到先服务 2、最短作业优先 3、优先权 4、轮转 5、多级队列 6、多级反馈队列

4.3.7 进程的同步与互斥

进程的同步就是指相互协作的进程不断调整它们之间的相对速度,以实现共同有序地推进。

换句话说,在操作系统中,允许多个进程并发运行。然而,有些进程之间本身存在某种联系,它们在系统中需要一种协作,以保证进程能正确有序地执行并维护数据的一致性。 在操作系统中,可能存在着多个进程。而系统中一些资源一次只允许一个进程使用,这类资源被称为临界资源。在进程中访问临界资源的那段程序称为临界区。当一个进程进入临界区执行时,其它进程就不允许进入临界区执行,否则就会导致错误结果。由此得出:

多个进程并发执行时,只允许一个进程进入临界区运行,这就是进程的互斥。 例如:多个进程在竞争使用打印机时表现为互斥。

一个文件可供多个进程共享,其中有一个进程在写操作时,其它进程则不允许同时写或读,表现为互斥。 4.3.8 进程的死锁及处理方法

在多道程序设计中,多个进程可能竞争一定数量的资源。一个进程在申请资源时,如果所申请资源不足,该进程就必须处于等待状态。如果所申请的资源被其它进程占有,那么进程的等待状态就可能无法改变,从而形成进程之间相互一直等待的局面,这就是死锁。 竞争资源引起死锁

引起死锁的四个必要条件:

? 互斥:任一时刻只能有一个进程独占某一资源,若另一进程申请该资源则需延迟到该资源释放为止。

? 占有并等待:即该进程占有部分资源后还在等待其它资源,而该资源被其它进程占有。

? 非抢占:某进程已占用资源且不主动放弃它所占有的资源时,其它进程不能强占该资源,只有等其完成任务并释放资源。

? 循环等待:在出现死锁的系统中,一定存在这样一个进程链,其中每个进程至少占有其它进程所必需的资源,从而形成一个等待链。 处理死锁问题的三种方式:

? 可使用协议预防和避免死锁,确保系统从不会进入死锁状态。 ? 可允许系统进入死锁状态,然后检测出死锁状态,并加以恢复。

? 可忽略进程死锁问题,并假装系统中死锁从来不会发生。即没有必要把精力花在小概率事件上。

处理死锁优先考虑的顺序:先预防和避免 再检测和恢复

4.4 内存管理

内存是现代操作系统的核心。内存用于容纳操作系统和各种用户进程,是可以被CPU和I/O设备所共同访问的数据仓库。计算机的所有程序运行时都要调入内存。

内存管理的主要工作是:为每个用户进程合理地分配内存,以保证各个进程之间在存储区不发生冲突;当内存不足时,如何把内存和外存结合起来,给用户提供一个比实际内存大得多的虚拟内存,使得程序能顺利执行。内存管理包括内存分配、地址映射、内存保护和扩充。 4.4.1 用户程序执行与地址映射 用户编写程序在执行前,需要多个处理步骤,这些步骤可将源程序转变为二进制机器代码,然后在内存中等待执行。当然有时并非每个步骤都是必需的。

通常,将指令和数据的地址映射成内存地址可以发生在以下三个执行阶段。(了解)

1.编译阶段:如果在编译时就知道进程将在内存中的什么位置驻留,那么编译器就可以直接以生成绝对地址代码。

2.加载阶段: 不知道进程将驻留在什么位置,那么编译器就必须生成程序的逻辑地址,在加载阶段再转变成内存的绝对地址。

3.执行阶段:如果进程在执行时可以从一个内存段移动到另一个内存段,那么进程的绝对地址映射工作只能延迟到执行时进行。 4.4.2 物理地址空间与逻辑地址空间

物理地址:是计算机内存单元的真实地址。

物理地址空间:由物理地址所构成的地址范围。 逻辑地址:用户程序地址,从0开始编址。

逻辑地址空间:由逻辑地址所构成的地址范围。

地址映射:用户程序在运行时要装入内存,这就需要将逻辑地址变换成物理地址,这个过程称为地址映射,也称重定位。

用户编写的源程序是不考虑地址的,源程序经CPU编译后产生逻辑地址。从CPU产生的逻辑地址转换为内存中的物理地址的映射是由计算机中被称为内存管理单元的硬件设备来实现的,将逻辑地址与内存管理单元中存放的内存基址相加就得到了物理地址。 4.4.3 进程使用内存的交换技术 为了更加有效地使用内存,进程在不运行时,可以暂时从内存移至外存上,直到需要再运行时再重新调回到内存中。也就是说内存管理程序可将刚刚运行过的进程从内存中换出以释放出占用的内存空间,然后将另一个要运行的进程占据前者释放的内存空间。 计算机工作时,为了将多个进程放入到内存就必须考虑在内存中如何放置这些进程。

4.4.4 内存分配方案-连续

对于连续内存分配方案,开始时所有内存是一个大的孔,随着内存分配的进行就会形成位置上不连续的大小不一的孔。在连续内存分配方案中,当新进程需要内存时,为其寻找合适的孔,实现内存分配 。该方案为每个进程所分配的内存物理地址空间在位置上是连续的。 4.4.5 内存分配方案-分页式 分页管理基本思想:

o 内存物理地址空间划分为若干个大小相等的块(页框) o 进程的逻辑地址空间也划分为同样大小的块(页面) o 内存分配时每个页面对应地分配一个页框,而一个进程所分得页框在位置上不必是连续的。 页表:操作系统为每个用户程序建立一张页表,该表记录用户程序的每个逻辑页面存放在哪一个内存物理页框。 4.5 虚拟内存方案

虚拟内存是一个容量很大的存储器的逻辑模型,它不是任何实际的物理存储器,它一般是借助硬盘来扩大主存的容量。 虚拟内存:对于一个进程来讲,如果仅将当前要运行的几个页面装入内存便可以开始运行,而其余页面可暂时留在磁盘上,待需要时再调入内存,并且调入时也不占用新的内存空间,而是对原来运行过的页面进行置换。这样,就可以在计算机有限的内存中同时驻留多个进程并运行。而对用户来讲感觉到系统提供了足够大的物理内存,而实际上并非真实的,这就是虚拟内存。 4.5.2 页面请求与页面置换算法

页面请求:在虚拟内存技术中,进程运行时并没有将所有页面装入到内存,在运行过程中进程会不断地请求页面,如果访问的页面已在内存,就继续执行下去;但如果要访问的页面尚未调入到内存,便请求操作系统将所缺页面调入内存,以便进程能继续运行下去。

页面置换:如果请求页面调入内存时,分配给该进程的页框已用完,就无法立即装入所请求页面。此时,必须将进程中的某个页面从内存的页框调出到磁盘上,再从磁盘上将所请求的页面调入到内存的该页框中。这个过程叫做页面置换。 4.6 文件管理

文件管理是操作系统最常见的组成部分。文件管理主要提供目录及其文件的管理。

4.6.1 文件的概念

文件:保存在外部存储设备上的相关信息的集合。 文件命名:文件主名+扩展名 文件存取属性:

? 只读:只允许授权用户进行读操作。

? 读写:只允许授权用户进行读和写的操作。 ? 文档:允许任何用户进行读写操作。 ? 隐藏:不允许用户直接看到文件名。

文件系统:是对文件进行操作和管理的软件,是用户与外存之间的接口。这个系统将所有文件组织成目录结构保存在外存,一个文件对应其中的一个目录条。目录条记录有文件名、文件位置等信息。 操作系统对文件的基本操作包括:

创建文件、文件写、文件读、文件重定位、文件删除、文件截短。 对文件的其它操作包括:文件复制、重命名、更改属性等。 4.6.2 文件的物理结构和逻辑结构

文件结构分物理和逻辑结构。其中物理结构是文件在外存上的存储组织形式,它与具体的存储设备有关。文件逻辑结构是指用户能直接感受到的文件组织结构,它与具体的存储设备无关。

无结构文件

文件的逻辑结构 有结构文件

流式文件 顺序文件 索引文件 索引顺序文件

无结构的流式文件:是一维的、连续的、无结构的字符序列,可以看成是由一条无结构的记录组成的文件。

有结构的记录式文件:是带有结构的、性质相同的记录的集合。 顺序文件:文件所包含的一系列记录按照某种顺序依次连续存储。 索引文件:由主文件和索引表构成。可以实现快速访问。 (1) 按输入记录的先后次序建立数据区和索引表。

(2) 待全部记录输入完毕后对索引表进行排序,排序后的索引表和主文件一起就形成了索引文件。 索引顺序文件:顺序文件和索引文件特点的结合。顺序文件是按主关键字有序排列的,将顺序文件的所有记录分组,索引表中为每组的首记录建立一索引项,组与组之间按关键字大小有序排列,组内记录顺序查找。 4.6.3 文件的访问方式 1. 顺序访问方式

顺序访问方式主要适合于对顺序文件的访问。其访问的位置是由指针定位的。读操作是读取指针所指示位置的内容,并自动将指针向后移动,以指示下一次读的位置。而对写操作,所写的内容总是添加到文件的尾部。

顺序访问方式是基于磁带的模型,不仅适合顺序存储设备(如磁盘),对直接存储设备(如磁盘)也适合。 2. 直接访问方式

直接访问也称随机访问,它指的是允许跳跃式地随意存取文件中的任何记录,而不需要任何顺序限制。直接访问是最为常见和高效的文件访问方式。直接访问方式是基于磁盘的模型。 3.索引访问方式

在进行文件访问时,首先对索引文件按关键字进行检索,查找到指向数据记录的指针,根据该指针实现对具体数据记录的访问。 4.6.4 文件的目录结构

通常,一个磁盘至少应包含一个分区,每个分区用来保存文件和目录结构 。 文件目录的组成:每个文件有一个文件控制块FCB,它是文件存在的标志,存放了为管理文件所需的所有有关信息。把所有的文件控制块组织在一起,就构成了文件目录,每个文件控制块就是其中的一个目录项。

文件的目录系统可以组织成单层目录结构、双层目录结构、树型目录结构、无环路目录结构和通用图目录结构。

树型目录结构是目前使用最为广泛的一种目录结构。这种目录结构在逻辑上的构成是一棵树,子目录是树枝,而文件是树叶。一个用户所拥有的子目录位置不需要统一,在一个子目录下可以再创建子目录。

4.7 输入/输出系统管理

每台计算机都配备了许多外部设备,它们的性能和操作方式都不一样。操作系统对设备(即输入/输出系统)管理的主要目标是:方便用户使用外部设备,提高CPU和设备的利用率。 4.7.1 基本概念 1.端口(port):I/O设备与计算机通信的连接点被称为端口。

2.控制器(controller):用于操作端口、总线和设备的一组电子器件,是设备与总线的连接装置。

4.7.2 输入/输出控制方式

CPU通过端口对外设进行控制的方式有以下几种: (1) 程序控制方式

早期计算机采用的方式。CPU向设备控制器发出一条I/O指令启动设备进行一个字节的输入或输出,然后CPU就等待I/O设备进行数据传送,直到一个字节传送完毕。接下来,CPU按以上方式处理下一个字节的输入或输出。 CPU绝大部分时间都用于循环等待及测试I/O是否完成,造成CPU资源的极大浪费。CPU和外围设备只能串行工作。 (2) 中断驱动方式

当某进程要启动某个I/O设备工作时,首先由CPU向相应设备的控制器发出一条I/O命令,然后CPU立即返回继续执行原来的任务,设备控制器则按照命令的要求去控制I/O设备工作。这时,CPU与I/O设备并行工作。 这种方式CPU的利用率较高。但这种方式的缺点是在一次数据传送过程中,发生中断次数较多(每次只传送一个字节),这将耗去大量CPU处理时间。 (3) 直接存储器访问方式

引入设备DMA控制器,在其控制下,以数据块为单位,将数据从设备直接送入内存或相反,当一个或多个数据块传送完毕时才需要CPU干预。该方式CPU的利用率高。 (4) 通道控制方式

通道控制方式是DMA的发展,它把对每一块数据的读写变成对一组数据块的读写,可以进一步减少CPU的干预。更大程度地提高了系统资源的利用率。 4.7.3 I/O缓冲管理

现代操作系统中,I/O设备与CPU(实际指内存)交换数据时,需要使用缓冲技术。也就是为I/O设备设置缓冲区暂存数据,等到数据积累到一定程度时,再做批量处理。

引入缓冲:

(1) 缓和CPU与I/O设备间速度不匹配的矛盾; (2) 减少对CPU中断频率;

(3) 提高CPU与I/O设备间的并行性。 4.7.4 设备驱动程序

设备驱动程序与具体设备有关,用户安装好硬件后还要再安装驱动程序,计算机才能识别和使用该设备。每个外部设备都有相应的设备驱动程序,它也是硬件的身份识别标志,负责完成设备具体的各种动作(输入/输出操作)。

一旦为I/O设备安装了驱动程序,那么应用程序在使用I/O设备时,就

不必关心设备的特性、I/O控制方式,这样就实现了应用程序与设备的无关性。 4.8 典型操作系统


大学计算机基础知识点总结(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:典型c++源代码

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: