操作系统复习

2020-05-29 Views 操作系统9589字33 min read
featureimg

名词解释、简答题、计算题

名词解释

1.操作系统(ppt5)

操作系统:一组控制和管理计算机硬件和软件资源、合理地对各类作业进行调度,以及方便用户使用的程序的集合。

2.分时系统(book9)

分时系统:在一台主机上连接了多个配有显示器和键盘的终端并由此所组成的系统,该系统允许多个用户同时通过自己的终端,以交互方式使用计算机,共享主机中的资源。

3.实时系统(ppt44,book11)

实时系统:系统能及时(或即时)响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致地运行。

4.进程(ppt19,book39)

进程:进程实体的运行过程,是系统进行资源分配和调度的一个独立单位。

5.原语(ppt46,book47)

原语:由若干条指令组成的,用于完成一定功能的一个过程。

6.临界资源(ppt68,book53)

临界资源:一段时间内只允许一个进程访问的资源,如打印机,扫描仪等,诸进程间应采取互斥方式,实现对这种资源的共享。

7.临界区(ppt68,book55)

临界区:在每个进程中访问临界资源的那段代码。

8.管程(ppt89,book63)

管程:一个管程定义了一个数据结构和能为并发进程所执行(在该数据结构上)的一组操作,这组操作能同步进程和改变管程中的数据。

9.管道(ppt124,book74)

管道:用于连接一个读进程和一个写进程以实现它们之间通信的一个共享文件,又名pipe文件。

10.周转时间(ppt30,book93)

周转时间:是指从作业被提交给系统开始,到作业完成为止的这段时间间隔。

11.响应时间(ppt33,book94)

响应时间:是从用户通过键盘提交一个请求开始,直至系统首次产生响应为止的时间,或者说,直到屏幕上显示出结果为止的一段时间间隔。

12.死锁(ppt88)

死锁:是指多个进程在运行过程中因争夺资源而造成的一种僵局,当进程出于这种僵持状态时,若无外力作用,它们将无法再向前推进。

13.安全状态(ppt109,book119)

安全状态:是指系统能按某种进程顺序(P1,P2,…,Pn)(称〈P1,P2,…,Pn〉序列为安全序列),来为每个进程Pi分配其所需资源,直至满足每个进程对资源的最大需求,使每个进程都可顺利地完成。如果系统无法找到这样一个安全序列,则称系统处于不安全状态。

14.拼接/紧凑(ppt57,book143)

拼接/紧凑:通过移动内存中作业的位置,以把原来多个分散的小分区拼接成一个大分区的方法。

15.对换(ppt61,book145)

对换:是指把内存中暂时不能运行的进程或者暂时不用的程序和数据调出到外存上,以便腾出足够的内存空间,再把已具备运行条件的进程或进程所需要的程序和数据调入内存。

16.页面/页(ppt66,book148)

页面/页:一个进程的逻辑地址空间分成若干个大小相等的片。

17.快表/联想寄存器(ppt77,book151)

快表/联想寄存器:为了提高地址变换速度,可在地址变换机构中增设一个具有并行查寻能力的特殊高速缓冲寄存器。

18.虚拟存储器(new)

虚拟存储器 :具有请求调入功能和置换功能,从逻辑上对内存容量加以扩充的一种存储器系统。

19.最小物理块数(ppt25,book171)

最小物理块数:是指能保证进程正常运行所需的最小物理块数。当系统为进程分配的物理块数少于此值时,进程将无法运行。

20.设备独立性(ppt102,book213)

设备独立性/设备无关性: 应用程序独立于具体使用的物理设备。

21.设备的安全分配方式和不安全分配方式(ppt121-122,book217)

  1. 安全分配方式
    在这种分配方式中,每当进程发出I/O请求后,便进入阻塞状态,直到其I/O操作完成时才被唤醒。在采用这种分配策略时,一旦进程已经获得某种设备(资源)后便阻塞,使该进程不可能再请求任何资源,而在它运行时又不保持任何资源。
  2. 不安全分配方式
    在这种分配方式中,进程在发出I/O请求后仍继续运行,需要时又发出第二个I/O请求、 第三个I/O请求等。仅当进程所请求的设备已被另一进程占用时,请求进程才进入阻塞状态。

22.SPOOLing(ppt127,book220)

SPOOLING/假脱机操作:为了缓和CPU的高速性与I/O设备的低速性间的矛盾引入的脱机输入、脱机输出技术。该技术利用专门的外围控制机,实现数据在低速I/O设备和高速磁盘之间的数据传送,此时外围操作可以与CPU对数据的处理同时进行,这种联机情况下的同时外围操作称作SPOOLING,或称为假脱机操作。

23.记录(ppt7,book238)

记录:是一组相关数据项的集合,用于描述一个对象在某方面的属性。

24.文件(ppt9,book238)

文件:是指由创建者所定义的、具有文件名的一组相关元素的集合,可分为有结构文件和无结构文件两种。

25.索引结点/i结点(ppt52,book251)

在有的系统中,如UNIX系统,便采用了把文件名与文件描述信息分开的办法,亦即,使文件描述信息单独形成一个称为索引结点的数据结构,简称为i结点。

26.位示图(ppt13,book280)

位示图:利用二进制的一位来表示磁盘中一个盘块的使用情况,“0”表示对应的盘块空闲,“1”表示已分配。

27.事务(ppt31,book292)

事务:是用于访问和修改各种数据项的一个程序单位,它可以被看做是一系列相关的读和写操作。

28.磁盘高速缓存(book283)

磁盘高速缓存:是指在内存中为磁盘盘块设置的一个缓冲区,在缓冲区中保存了某些盘块的副本。


简答题

1.实时系统和分时系统的比较(ppt50-51,book12)

  1. 多路性
    • 实时信息处理系统也按分时原则为多个终端用户服务。
    • 实时控制系统的多路性则主要表现在系统周期性地对多路现场信息进行采集,以及对多个对象或多个执行机构进行控制。
    • 分时系统中的多路性则与用户情况有关,时多时少。
  2. 独立性
    • 实时信息处理系统中的每个终端用户在向实时系统提出服务请求时,是彼此独立地操作,互不干扰;
    • 而实时控制系统中,对信息的采集和对对象的控制也都是彼此互不干扰。
  3. 及时性
    • 实时信息处理系统对实时性的要求与分时系统类似,都是以人所能接受的等待时间来确定的;
    • 实时控制系统的及时性,则是以控制对象所要求的开始截止时间或完成截止时间来确定的,一般为秒级到毫秒级,甚至有的要低于100微秒。
  4. 交互性
    • 实时信息处理系统虽然也具有交互性,但这里人与系统的交互仅限于访问系统中某些特定的专用服务程序。
    • 分时系统能向终端用户提供数据处理和资源共享等服务。

2.操作系统的基本特征(ppt72-80,book14-17)

  1. 并发性
    • 并行与并发
    • 引入进程
    • 引入线程
  2. 共享性
    • 互斥共享方式
    • 同时访问方式
  3. 虚拟性
    • 时分复用技术
    • 空分复用技术
  4. 异步性

3.操作系统的主要功能(ppt81-105,book17-22)

  1. 处理机管理
    • 进程控制
    • 进程同步
    • 进程通信
    • 调度
  2. 存储器管理
    • 内存分配
    • 内存保护
    • 地址映射
    • 内存扩充
  3. 设备管理
    • 缓冲管理
    • 设备分配
    • 设备处理
  4. 文件管理
    • 文件存储空间的管理
    • 目录管理
    • 文件读/写管理与保护
  5. 操作系统与用户的接口
    • 用户接口
    • 程序接口

4.进程的特征(ppt17-20,book39)

  1. 结构特征
    • 通常的程序是不能并发执行的。为使程序(含数据)能独立运行,应为之配置一进程控制块,即PCB(Process Control Block);而由程序段、相关的数据段和PCB三部分便构成了进程实体。
  2. 动态性
    • 进程的实质是进程实体的一次执行过程,因此,动态性是进程的最基本的特征。
    • 动态性还表现在:“它由创建而产生,由调度而执行,由撤消而消亡”。
  3. 并发性
    • 这是指多个进程实体同存于内存中,且能在一段时间内同时运行。并发性是进程的重要特征,同时也成为OS的重要特征。引入进程的目的也正是为了使其进程实体能和其它进程实体并发执行;而程序(没有建立PCB)是不能并发执行的。
  4. 独立性
    • 在传统的OS中,独立性是指进程实体是一个能独立运行、独立分配资源和独立接受调度的基本单位。
  5. 异步性
    • 这是指进程按各自独立的、 不可预知的速度向前推进,或说进程实体按异步方式运行。

5.进程三种状态的转化关系(book40,ppt23)

  1. 进程的三种基本状态
    • 就绪状态
      当进程已分配到除CPU以外的所有必要资源后,只要再获得CPU,便可立即执行,进程这时的状态称为就绪状态。
    • 执行状态
      进程已获得CPU,其程序正在执行。在单处理机系统中,只有一个进程处于执行状态; 在多处理机系统中,则有多个进程处于执行状态。
    • 阻塞状态
      正在执行的进程由于发生某事件而暂时无法继续执行时,便放弃处理机而处于暂停状态,亦即进程的执行受到阻塞,把这种暂停状态称为阻塞状态,有时也称为等待状态或封锁状态。
  2. 进程状态的转换
    • 就绪→执行
      处于就绪状态的进程,在调度程序为之分配了处理机之后便可执行,其状态由就绪状态转变为执行状态。
    • 执行→就绪
      正在执行的进程(当前进程)如果因分配给它的时间片已完而被剥夺处理机暂停执行时,其状态由执行状态转变为就绪状态。
    • 执行→阻塞
      如果因发生某事件,致使当前进程的执行受阻(例如进程访问某临界资源,而该资源正被其它进程访问时),使之无法继续执行,则该进程状态将由执行转变为阻塞。

6.引起进程终止的事件(ppt54-57,book50)

  1. 正常结束
    在任何计算机系统中,都应有一个用于表示进程已经运行完成的指示。

  2. 异常结束
    在进程运行期间,由于出现某些错误和故障而迫使进程终止。

    • 越界错误
    • 保护错
    • 非法指令
    • 特权指令错
    • 运行超时
    • 等待超时
    • 算术运算错
    • I/O故障
  3. 外界干预
    外界干预并非指在本进程运行中出现了异常事件,而是指进程应外界的请求而终止运行。

    • 操作员或操作系统干预
    • 父进程请求
    • 父进程终止

7.进程同步应遵循的规则(ppt70,book55)

  1. 空闲让进
    当无进程处于临界区时,表明临界资源处于空闲状态,应允许一个请求进入临界区的进程立即进入自己的临界区,以有效地利用临界资源。
  2. 忙则等待
    当已有进程进入临界区时,表明临界资源正在被访问,因而其它试图进入临界区的进程必须等待,以保证对临界资源的互斥访问。
  3. 有限等待
    对要求访问临界资源的进程,应保证在有限时间内能进入自己的临界区,以免陷入“死等”状态。
  4. 让权等待
    当进程不能进入自己的临界区时,应立即释放处理机,以免进程陷入“忙等”状态。

8.管程和进程的区别(6点,ppt94-95,book64)

  1. 虽然二者都定义了数据结构,但进程定义的是私有数据结构PCB,管程定义的是公共数据结构,如消息队列等;
  2. 二者都存在对各自数据结构上的操作,但进程是由顺序程序执行有关的操作,而管程主要是进行同步操作和初始化操作;
  3. 设置进程的目的在于实现系统的并发性,而管程的设置则是解决共享资源的互斥使用问题;
  4. 进程通过调用管程中的过程对共享数据结构实行操作,该过程就如通常的子程序一样被调用,因而管程为被动工作方式,进程则为主动工作方式;
  5. 进程之间能并发执行,而管程则不能与其调用者并发;
  6. 进程具有动态性,由“创建”而诞生,由“撤销”而消亡,而管程则是操作系统中的一个资源管理模块,供进程调用。

9.线程和进程的比较(ppt145-148,book82-84)

线程 进程
调度 1.在引入线程OS中,线程是作为调度和分派的基本单位,进程是作为资源拥有的基本单位。2.在同一进程中,线程的切换不会引起进程的切换,但从一个进程中的线程切换到另一个进程中的线程时,将会引起进程的切换。 进程在传统OS中是作为拥有资源的基本单位和独立调度、分派的基本单位。
并发性 在引入线程OS中,不仅进程之间可以并发执行,而且在一个进程中的多个线程之间亦可并发执行,使得操作系统具有更好的并发性,从而能更加有效地提高系统资源的利用率和系统的吞吐量。 在传统OS中进程可以并发执行。
拥有资源 线程自己不拥有系统资源(也有一点必不可少的资源),但它可以访问其隶属进程的资源。 进程在OS中拥有资源,是系统中拥有资源的一个基本单位。
系统开销 线程的系统开销远远小于进程的系统开销,线程之间的同步和通信也比进程简单。 在创建或撤消进程时,系统都要为之创建和回收进程控制块,分配或回收资源,OS所付出的开销明显大于线程创建或撤消时的开销。

10.处理及调度的层次(ppt7-19,book92-93)

  1. 高级调度/作业调度(接纳调度)的主要功能
    根据作业控制块中的信息,审查系统能否满足用户作业的资源需求,以及按照一定的算法,从外存的后备队列中选取某些作业调入内存,并为它们创建进程、分配必要的资源。然后再将新创建的进程插入就绪队列,准备执行。
  2. 中级调度/中程调度的功能
    引入中级调度的主要目的是为了提高内存利用率和系统吞吐量。为此,应使那些暂时不能运行的进程不再占用宝贵的内存资源,而将它们调至外存上去等待,把此时的进程状态称为就绪驻外存状态或挂起状态。
  3. 低级调度/进程调度/短程调度的主要功能
    用于决定就绪队列中的哪个进程(或内核级线程,为叙述方便,以后只写进程)应获得处理机,然后再由分派程序执行把处理机分配给该进程的具体操作。
    • 保存处理机的现场信息
    • 按某种算法选取进程
    • 把处理器分配给进程

11.选择调度方式和调度算法的若干准则(两级标题两大点,ppt30-36)

  1. 面向用户的准则
    • 周转时间短
    • 响应时间快
    • 截止时间的保证
    • 优先权准则
  2. 面向系统的准则
    • 系统吞吐量高
    • 处理机利用率好
    • 各类资源的平衡利用

12.实时调度的基本条件(ppt64-69,book105-106)

  1. 提供必要的信息
    • 就绪时间
    • 开始截止时间和完成截止时间
    • 处理时间
    • 资源要求
    • 优先级
  2. 系统处理能力强
  3. 采用抢占式调度机制
  4. 具有快速切换机制
    • 对外部中断的快速响应能力
    • 快速的任务分派能力

13.产生死锁的必要条件(ppt99-100,book116)

  1. 互斥条件
    指进程对所分配到的资源进行排它性使用,即在一段时间内某资源只由一个进程占用。如果此时还有其它进程请求该资源,则请求者只能等待,直至占有该资源的进程用毕释放。
  2. 请求和保持条件
    指进程已经保持了至少一个资源,但又提出了新的资源请求,而该资源又已被其它进程占有,此时请求进程阻塞,但又对自己已获得的其它资源保持不放。
  3. 不剥夺条件
    指进程已获得的资源,在未使用完之前,不能被剥夺,只能在使用完时由自己释放。
  4. 环路等待条件
    指在发生死锁时,必然存在一个进程——资源的环形链,即进程集合{P0,P1,P2,…,Pn}中的P0正在等待一个P1占用的资源; P1正在等待P2占用的资源,……,Pn正在等待已被P0占用的资源。

14.处理死锁的基本方法(ppt101-102,book116)

  1. 预防死锁
    这是一种较简单和直观的事先预防的方法。该方法是通过设置某些限制条件,去破坏产生死锁的四个必要条件中的一个或几个条件,来预防发生死锁。
  2. 避免死锁
    该方法同样是属于事先预防的策略,但它并不须事先采取各种限制措施去破坏产生死锁的四个必要条件,而是在资源的动态分配过程中,用某种方法去防止系统进入不安全状态,从而避免发生死锁。
  3. 检测死锁
    这种方法并不须事先采取任何限制性措施,也不必检查系统是否已经进入不安全区,而是允许系统在运行过程中发生死锁。
  4. 解除死锁
    这是与检测死锁相配套的一种措施。当检测到系统中已发生死锁时,须将进程从死锁状态中解脱出来。

15.程序的装入和链接(ppt11-17,book132-135)

  1. 程序的装入
    • 绝对装入方式
    • 可重定位装入方式
    • 动态运行时装入方式
  2. 程序的链接
    • 静态链接
    • 装入时动态链接
    • 运行时动态链接

16.动态分区分配算法和原理(ppt36-40,book140)

要求:会做作业,用自己的话描述原理。

  1. 首次适应算法(First Fit)
    FF算法要求空闲分区链以地址递增的次序链接。
    在分配内存时,从链首开始顺序查找,直至找到一个大小能满足要求的空闲分区为止;然后再按照作业的大小,从该分区中划出一块内存空间分配给请求者,余下的空闲分区仍留在空闲链中。若从链首直至链尾都不能找到一个能满足要求的分区,则此次内存分配失败,返回。
  2. 循环首次适应算法(Next Fit)
    在为进程分配内存空间时,不再是每次都从链首开始查找,而是从上次找到的空闲分区的下一个空闲分区开始查找,直至找到一个能满足要求的空闲分区,从中划出一块与请求大小相等的内存空间分配给作业。
  3. 最佳适应算法(Best Fit)
    该每次为作业分配内存时,总是把能满足要求、又是最小的空闲分区分配给作业,避免“大材小用”。算法要求将所有的空闲分区按其容量以从小到大的顺序形成一空闲分区链。
  4. 最坏适应算法(Worst Fit)
    扫描整个空闲分区表或链表,总是挑选一个最大的空闲区分割给作业使用,要求将所有的空闲分区按其容量以从大到小的顺序形成一空闲分区链,查找时只要看第一个分区能否满足作业要求。

17.基本的地址变换机构(ppt73-74,book150)

在执行检索之前,先将页号与页表长度进行比较,如果页号大于或等于页表长度,则表示本次所访问的地址已超越进程的地址空间。于是,这一错误将被系统发现并产生一地址越界中断。
若未出现越界错误,则将页表始址与页号和页表项长度的乘积相加,便得到该表项在页表中的位置,于是可从中得到该页的物理块号,将之装入物理地址寄存器中。与此同时,再将有效地址寄存器中的页内地址送入物理地址寄存器的块内地址字段中。这样便完成了从逻辑地址到物理地址的变换。图4-13示出了分页系统的地址变换机构。

18.具有快表的地址变化过程(ppt77,book151)

在CPU给出有效地址后,由地址变换机构自动地将页号P送入高速缓冲寄存器,并将此页号与高速缓存中的所有页号进行比较,若其中有与此相匹配的页号,便表示所要访问的页表项在快表中。于是,可直接从快表中读出该页所对应的物理块号,并送到物理地址寄存器中。

如在块表中未找到对应的页表项,则还须再访问内存中的页表,找到后,把从页表项中读出的物理块号送地址寄存器;同时,再将此页表项存入快表的一个寄存器单元中,亦即,重新修改快表。但如果联想寄存器已满,则OS必须找到一个老的且已被认为不再需要的页表项,将它换出。

19.为什么要引入分段存储管理方式(ppt87-90,book155-156)

  1. 方便编程
    通常,用户把自己的作业按照逻辑关系划分为若干个段,每个段都是从0开始编址,并有自己的名字和长度。因此,希望要访问的逻辑地址是由段名(段号)和段内偏移量(段内地址)决定的。
  2. 信息共享
    在实现对程序和数据的共享时,是以信息的逻辑单位为基础的。比如,共享某个例程和函数。
  3. 信息保护
    信息保护同样是对信息的逻辑单位进行保护,因此,分段管理方式能更有效和方便地实现信息保护功能。
  4. 动态增长
    在实际应用中,往往有些段,特别是数据段,在使用过程中会不断地增长,而事先又无法确切地知道数据段会增长到多大。
  5. 动态链接
    动态链接是指在作业运行之前,并不把几个目标程序段链接起来。要运行时,先将主程序所对应的目标程序装入内存并启动运行,当运行过程中又需要调用某段时,才将该段(目标程序)调入内存并进行链接。

20.分段存储管理方式的地址变换过程(ppt96,book158)

在进行地址变换时,系统将逻辑地址中的段号S与段表长度TL进行比较。若S>TL,表示段号太大,是访问越界,于是产生越界中断信号;若未越界,则根据段表的始址和该段的段号,计算出该段对应段表项的位置,从中读出该段在内存的起始地址,然后,再检查段内地址d是否超过该段的段长SL。若超过,即d>SL,同样发出越界中断信号;若未越界,则将该段的基址d与段内地址相加,即可得到要访问的内存物理地址。

21.分段和分页的区别(ppt98-99,book158)

  1. 页是信息的物理单位,分页是为实现离散分配方式,以消减内存的外零头,提高内存的利用率。或者说,分页仅仅是由于系统管理的需要而不是用户的需要。
    段则是信息的逻辑单位,它含有一组其意义相对完整的信息。分段的目的是为了能更好地满足用户的需要。
  2. 页的大小固定且由系统决定,由系统把逻辑地址划分为页号和页内地址两部分,是由机器硬件实现的,因而在系统中只能有一种大小的页面;而段的长度却不固定,决定于用户所编写的程序,通常由编译程序在对源程序进行编译时,根据信息的性质来划分。
  3. 分页的作业地址空间是一维的,即单一的线性地址空间,程序员只需利用一个记忆符,即可表示一个地址;而分段的作业地址空间则是二维的,程序员在标识一个地址时,既需给出段名,又需给出段内地址。

22.局部性原理及其论点(ppt6-7,book165)

  • 局部性原理

    • 程序在执行时将呈现出局部性规律,即在一较短的时间内,程序的执行仅局限于某个部分;相应地,它所访问的存储空间也局限于某个区域。
  • 论点:

    1. 程序执行时,除了少部分的转移和过程调用指令外,在大多数情况下仍是顺序执行的。该论点也在后来的许多学者对高级程序设计语言(如FORTRAN语言、PASCAL语言)及C语言规律的研究中被证实。
    2. 过程调用将会使程序的执行轨迹由一部分区域转至另一部分区域,但经研究看出,过程调用的深度在大多数情况下都不超过5。这就是说,程序将会在一段时间内都局限在这些过程的范围内运行。
    3. 程序中存在许多循环结构,这些虽然只由少数指令构成,但是它们将多次执行。
    4. 程序中还包括许多对数据结构的处理,如对数组进行操作,它们往往都局限于很小的范围内。

23.物理块的分配策略(3点,ppt27-29)

  1. 固定分配局部置换
    这是指基于进程的类型(交互型或批处理型等),或根据程序员、程序管理员的建议,为每个进程分配一定数目的物理块,在整个运行期间都不再改变。
  2. 可变分配全局置换
    这可能是最易于实现的一种物理块分配和置换策略,已用于若干个OS中。在采用这种策略时,先为系统中的每个进程分配一定数目的物理块,而OS自身也保持一个空闲物理块队列。当某进程发现缺页时,由系统从空闲物理块队列中取出一个物理块分配给该进程,并将欲调入的(缺)页装入其中。
  3. 可变分配局部置换
    这同样是基于进程的类型或根据程序员的要求,为每个进程分配一定数目的物理块,但当某进程发现缺页时,只允许从该进程在内存的页面中选出一页换出,这样就不会影响其它进程的运行。
    如果进程在运行中频繁地发生缺页中断,则系统须再为该进程分配若干附加的物理块,直至该进程的缺页率减少到适当程度为止。

24.物理块的分配算法(ppt30-32,book172)

  1. 平均分配算法
    这是将系统中所有可供分配的物理块平均分配给各个进程。
  2. 按比例分配算法
    这是根据进程的大小按比例分配物理块的算法。
  3. 考虑优先权的分配算法
    在实际应用中,为了照顾到重要的、紧迫的作业能尽快地完成,应为它分配较多的内存空间。通常采取的方法是把内存中可供分配的所有物理块分成两部分:
    一部分按比例地分配给各进程;另一部分则根据各进程的优先权,适当地增加其相应份额后,分配给各进程。

25.设备与控制器间的三种信号线(ppt11-12,book197)

  1. 数据信号线
    这类信号线用于在设备和设备控制器之间传送数据信号。
    对输入设备而言,由外界输入的信号经转换器转换后所形成的数据,通常先送入缓冲器中,当数据量达到一定的比特(字符)数后,再从缓冲器通过一组数据信号线传送给设备控制器。
  2. 控制信号线
    这是作为由设备控制器向I/O设备发送控制信号时的通路。
    该信号规定了设备将要执行的操作,如读操作(指由设备向控制器传送数据)或写操作(从控制器接收数据),或执行磁头移动等操作。
  3. 状态信号线
    这类信号线用于传送指示设备当前状态的信号。
    设备的当前状态有正在读(或写);设备已读(写)完成,并准备好新的数据传送。

26.设备控制器的基本功能(ppt13-16,ppt197-198)

  1. 接收和识别命令
    CPU可以向控制器发送多种不同的命令,设备控制器应能接收并识别这些命令。为此,在控制器中应具有相应的控制寄存器,用来存放接收的命令和参数,并对所接收的命令进行译码。
  2. 数据交换
    这是指实现CPU与控制器之间、控制器与设备之间的数据交换。
  3. 标识和报告设备的状态
    控制器应记下设备的状态供CPU了解。例如,仅当该设备处于发送就绪状态时,CPU才能启动控制器从设备中读出数据。
  4. 地址识别
    就像内存中的每一个单元都有一个地址一样,系统中的每一个设备也都有一个地址,而设备控制器又必须能够识别它所控制的每个设备的地址。
  5. 数据缓冲
    由于I/O设备的速率较低而CPU和内存的速率却很高,故在控制器中必须设置一缓冲器。
  6. 差错控制
    设备控制器还兼管对由I/O设备传送来的数据进行差错检测。

27.为什么要引入缓冲区(ppt50-52,book224)

  1. 缓和CPU与I/O设备间速度不匹配的矛盾
    事实上,凡在数据到达速率与其离去速率不同的地方,都可设置缓冲区,以缓和它们之间速率不匹配的矛盾。
  2. 减少对CPU的中断频率,放宽对CPU中断响应时间的限制
  3. 提高CPU和I/O设备之间的并行性
    缓冲的引入可显著地提高CPU和I/O设备间的并行操作程度,提高系统的吞吐量和设备的利用率。

28.中断处理程序的处理过程(ppt82-85,book204-205)

  1. 唤醒被阻塞的驱动(程序)进程
  2. 保护被中断进程的CPU环境
  3. 转入相应的设备处理程序
  4. 中断处理
  5. 恢复被中断进程的现场

29.SPOOLing系统特点(ppt133,book222)

  1. 提高了I/O的速度。
    这里,对数据所进行的I/O操作,已从对低速I/O设备进行的I/O操作,演变为对输入井或输出井中数据的存取,如同脱机输入输出一样,提高了I/O速度,缓和了CPU与低速I/O设备之间速度不匹配的矛盾。
  2. 将独占设备改造为共享设备。
    因为在SPOOLing系统中,实际上并没为任何进程分配设备,而只是在输入井或输出井中为进程分配一个存储区和建立一张I/O请求表。这样,便把独占设备改造为共享设备。
  3. 实现了虚拟设备功能。
    宏观上,虽然是多个进程在同时使用一台独占设备,而对于每一个进程而言,他们都会认为自己是独占了一个设备。当然,该设备只是逻辑上的设备。SPOOLing系统实现了将独占设备变换为若干台对应的逻辑设备的功能。

30.最基本的文件操作(ppt21,book241)

  1. 创建文件。在创建一个新文件时,系统首先要为新文件分配必要的外存空间,并在文件系统的目录中,为之建立一个目录项。
  2. 删除文件。当已不再需要某文件时,可将它从文件系统中删除,清空要删除文件的目录项,并回收存储空间。
  3. 读文件。在读一个文件时,须在相应系统调用中给出文件名和应读入的内存目标地址。
  4. 写文件。在写一个文件时,须先查找目录,找到指定文件的目录项,再利用目录中的写指针进行写操作。
  5. 截断文件。但如果文件名及其属性均无改变时,则可采取另一种所谓的截断文件的方法,此即将原有文件的长度设置为0,或者说是放弃原有的文件内容。
  6. 设置文件的读/写位置。设置文件读/写位置的操作,用于设置文件读/写指针的位置,以便每次读/写文件时,不是从其始端而是从所设置的位置开始操作。

31.文件系统对目录管理的要求(ppt46-47,book249)

  1. 实现“按名存取”,即用户只须向系统提供所需访问文件的名字,便能快速准确地找到指定文件在外存上的存储位置。这是目录管理中最基本的功能,也是文件系统向用户提供的最基本的服务。
  2. 提高对目录的检索速度。通过合理地组织目录结构的方法,可加快对目录的检索速度,从而提高对文件的存取速度。这是在设计一个大、中型文件系统时所追求的主要目标。
  3. 文件共享。在多用户系统中,应允许多个用户共享一个文件。这样就须在外存中只保留一份该文件的副本,供不同用户使用,以节省大量的存储空间,并方便用户和提高文件利用率。
  4. 允许文件重名。系统应允许不同用户对不同文件采用相同的名字,以便于用户按照自己的习惯给文件命名和使用文件。

32.影响文件安全性的主要因素(ppt88,book261)

  1. 人为因素,即由于人们有意或无意的行为,而使文件系统中的数据遭到破坏或丢失。
  2. 系统因素,即由于系统的某部分出现异常情况,而造成对数据的破坏或丢失。特别是作为数据存储介质的磁盘,在出现故障或损坏时,会对文件系统的安全性造成影响;
  3. 自然因素,即存放在磁盘上的数据,随着时间的推移将可能发生溢出或逐渐消失。

33.三级容错技术(ppt16-30,book287-290)

  1. 第一级容错技术SFT-Ⅰ
    • 双份目录和双份文件分配表
    • 热修复重定向和写后读校验
  2. 第二级容错技术SFT-II
    • 磁盘镜像
    • 磁盘双工
  3. 基于集群技术的容错功能
    • 双机热备份模式
    • 双机互为备份模式
    • 公用磁盘模式

下载地址

EOF