文件目录:把所有的FCB组织在一起,就构成了文件目录,即文件控制块的有序集合 目录项:构成文件目录的项目(目录项就是FCB)
目录文件:为了实现对文件目录的管理,通常将文件目录以文件的形式保存在外存,这个文件就叫目录文件
磁带和磁盘(顺序结构、串联结构、索引结构)
文件共享:指一个文件可以让指定的某些用户共同使用。(方法:绕道法、链接法、基本文件目录表BFD)
文件保护:文件的保护是防止文件被破坏。
文件保密:指未经文件拥有者许可,任何用户不得访问该文件。
文件的操作和使用:“建立文件”操作、“打开文件”操作 、“读文件”操作、“写文件”操作、“关闭文件”操作、“删除文件”操作。 生产者消费者问题:
Begin procedure c s1,s2:sem; begin s1:=1; s2:=0; L2: 想取产品 Cobegin P(s2); procedure p 取产品; begin V(s1); L1:生产产品; goto L2; p(s1); end 放产品; Coend V(s2); End goto L1; end
设有三道作业,它们的提交时间及运行时间如下表,若采用短作业优先调度策略,试给出作业单道串行运行时的调度次序及平均周转时间。
作业 提交时间(单位:基本时间单位) 运行时间(单位:基本时间单位) Job0 Job1 Job2 答:
作业 提交时间 开始时间 完成时间 周转时间 Job0 0 0 7 7 Job2 3 7 10 7
Job1 2 10 14 12 平均周转时间=(7+7+12)/3=26/3=8.67
各作业的调度次序:Job0?Job2?Job1
生产者/消费者问题
0 2 3
7 4 3
a) 问题一:有一个生产者和一个消费者,共享一个缓冲区.两者要互斥访问缓冲区.
解:定义两个信号量:empty表示缓冲是否为空,初值为1,即初始时可以存入一件物品.full表示缓冲区中是否有物品,初值为0,即初始时缓冲区没有物品. 程序:
begin
buffer:integer
empty,full:semaphore=1,0; cobegin
process Producer begin L1:
生产一件物品
P(empty);
buffer = product; V(full); goto L1; end
process Consumer begin L2:
P(full);
从缓冲区取出一件物品; V(empty); 消费掉物品 goto L2; end coend end
注:
(1)进程互斥只需要一个信号量,而同步可能要两个信号量.
(2)p,v操作仍然要成对,但在进程进入临界区前后调用的是针对不同信号量的wait,signal操作,而进程互斥时是针对相同的信号量.
(3)至少有一个信号量的初值>=1,否则所有进程无法执行,一般是指管理是否允许访问共享资源的那个信号量.如这里的empty设为1,如果缓冲区容量为n,则可以设为n;
银行家算法是最著名的避免死锁算法。操作系统的资源分配问题就如同一个银行家利用其中一部分现金发放贷款。一方面他能安全地借款给若干个用户,满足用户对资金的要求,另一方面他也可以收回其全部贷款而不致于破产。把操作系统比喻做一个银行家,系统的各种资源为贷款资金,申请资源的进程喻为借款用户。
设系统中有4个进程P1,P2,P3和P4.在某一时刻系统状态如下:
最大需求量 已分配资源量 P1 6 2 P2 6 4 P3 3 2 P4 3 0 剩余资源量 1
(1) 系统是否处于安全状态?如是,则给出所有的进程安全序列.
(2) 如果进程P4申请1个资源,能否实施分配?为什么? 答:
一台计算机有5台打印机,它们由4个进程竞争使用,每个进程可能需要n台打印机,规定每个进程一次仅允许申请一台,请问n为多少时,系统没有死锁危险,请说明其原因。 (10分)
答:n为1,2时,系统没有死锁危险. (5分)
分析: 若要系统不死锁,则4个进程中,必有一个进程可
以获得n台打印机,此时,其他进程最多可获得2台打印机,于是有4*(n-1)+1<=5,从而有n<=2,取整数有n=2.(5分)
1、简述操作系统的定义。操作系统是计算机系统的一种系统软件,它统一管理计算机系统的资源和控制程序的执行。
2、在多道程序设计技术的系统中,操作系统怎样才会占领中央处理器?只有当中断装置发现有事件发生时,它才会中断当前占用中央处理器的程序执行,让操作系统的处理服务程序占用中央处理器并执行之。
3、简述“删除文件”操作的系统处理过程。用户用本操作向系统提出删除一个文件的要求,系统执行时把指定文件的名字从目录和索引表中除去,并收回它所占用的存储区域,