操作系统复习参考

选择

  1. 系统功能调用是(D
    A.用户编写的一个子程序
    B.高级语言中的库程序
    C.操作系统中的一条命令
    D.操作系统向用户程序提供的接口

  2. 实时操作系统对可靠性和安全性的要求极高,它(A
    A.十分注意系统资源的利用率
    B.不强调响应速度
    C.不强求系统资源的利用率
    D.不必向用户反馈信息。

  3. 一个进程的读磁区操作完成后,操作系统针对该进程必做的是(A
    A.修改进程状态为就绪态
    B.降低进程优先级
    C.进程分配用户内存空间
    D.增加进程的时间片大小

  4. 设与某资源相关联的信号里初值为3,当前值为1,若M表示该资源的可用个数,N表示等待该资源的进程数,则M,N分别是(B
    A.0,1
    B.1,0
    C.1,2
    D.2,0

  5. 下列调度算法中,不可能导致饥饿现象的是(A
    A.时间轮转
    B.静态优先数调度
    C.非抢占式短作业优先
    D.抢占式短作业优先

  6. 下列选项中,属于多级页表优点的是(D
    A.加快地址变换速度
    B.减少缺页中断次数
    C.减少页表项所占字节数
    D减少页表所占的连续内存空间

  7. 在缺页处理过程中,操作系统执行的操作可能是(D
    I修改页表 II 磁盘I/O III分配页框
    A.仅I、II
    B.仅I
    C.仅III
    D.I、II、III

  8. 在采用SPOOLmng技术的系统中,用户的打印数据首先被送到(B
    A.磁盘固定区域
    B.内存固定区域
    C.终端
    D.打印机

  9. 为了减少移动臂进行移动花费时间,文件是按(A)依次存放的
    A.柱面顺序,磁道顺序,扇区顺序
    B.扇区顺序,磁道顺序,盘面顺序
    C.盘面顺序,磁道顺序,扇区顺序
    D.扇区顺序,磁道顺序,柱面顺序

  10. B)是文件系统实现按名存取的重要手段
    A.堆栈
    B.文件目录
    C.指针
    D.页表

填空

1.实时操作系统与分时操作系统的主要区别是( 及时性和高可靠性)。
2.在一个单处理机系统中,若有5个用户进程,且假设当前时刻为用户态,则处于就绪状态的用户进程最多有(4 )个,最少有(0)个。
3.操作系统中,对信号量S的P原语操作定义中,使进程进入相应等待队列等待的条件是( s<0)。
4.不让死锁发生的策略可以分为(动态)和(静态 )两种,死锁避免属于(动态)策略。
5.预先静态分配法破坏了死锁产生必要条件中的(请求和保持)条件。
6.磁盘空间的地址是由(磁头号)、(柱面号)和扇区号组成的。

简答

  1. 叙述进程控制块PCB由哪几方面内容组成。
  • 程序ID(PID、进程句柄):它是唯一的,一个进程都必须对应一个PID。PID一般是整形数字
  • 特征信息:一般分系统进程、用户进程、或者内核进程等
  • 进程状态:运行、就绪、阻塞,表示进程现的运行情况
  • 优先级:表示获得CPU控制权的优先级大小
  • 通信信息:进程之间的通信关系的反映,由于操作系统会提供通信信道
  • 现场保护区:保护阻塞的进程用
  • 资源需求、分配控制信息
  • 进程实体信息,指明程序路径和名称,进程数据在物理内存还是在交换分区(分页)中
  • 其他信息:工作单位,工作区,文件信息等
  1. 文件系统必须完成哪些工作?
  • 文件系统的主要任务之一就是在文件的逻辑结构与相应的物理结构之间建立起一种映射关系,并实现两者之间的转换。
  • 文件系统的任务之一是掌握文件存储器的空闲空间情况,即要记住哪些已经分配,哪些仍然空闲,以便及时分配给用户文件的申请者
  • 文件系统的基本任务之一就是负责编排、维护和检索文件目录。
  1. 请说明页式虚拟存储器的地址变换过程,并指出哪些操作是由操作系统完成的?在上述地址变换过程中,进程状态有无可能发生变化?如可能,则指出在哪些点上可能发生变化?

页式虚拟存储器的地址变换过程如下。

  1. 由分页地址变换机构将访问的逻辑地址分为页号和页内位移两部分。
  2. 将页号与页表长度比较,若大于或等于页表长度,则表明本次访问地址已超越了进程的地址空间,此时天折该进程并给出越界错误信息;否则转3。
  3. 查找页表,看该页是否在内存。若在内存则转6,否则挂起该进程并产生缺页中断转4。
  4. 执行缺页中断程序,查找空闲块,若内存中无空闲块则按置换算法淘汰内存中的一-页,请求I/O将该页装入空闲块。
  5. 更新页表中的有关信息。
  6. 分页地址变换机构形成访问该页的内存物理地址(即将该页对应的块号与页内位移拼接)。
  7. 重新启动挂起进程,执行刚才因缺页而中断的指令。

页式虚拟存储器的地址变换过程对用户是透明的,整个变换过程都是由操作系统完成的。

在上述地址变换过程中,进程的状态可能发生变化,发生变化的情况如下。

  1. 当本次访问地址超越进程的地址空间时,该进程被夭折(撤消)。
  2. 在产生缺页中断及处理过程中,该进程处于挂起状态。
  3. 为了提高系统利用率,某些算法在内存空闲块紧张时将当前运行进程整个交换到辅存上,这时该进程变为阻塞态。
  1. I/O控制可用那几种方式实现?各有何优缺点?

一般把 I/O 控制方式分为程序直接控制方式、程序查询方式、程序中断控制方式、直接存储访问( DMA )控制方式、独立通道方式

  • 程序直接控制方式最为简单,但只能应用于外设已经准备的状态下。
  • 程序查询方式要花费大量时间去查询外设状态,浪费CPU。
  • 程序中断控制方式优点是大大提高了 CPU 的利用率。但中设备每传输一个单位的数据, CPU 都要对其进行一次中断处理, 仍占用 CPU 时间。若系统支持的 I/O设备很多, CPU 仍将陷入繁忙的 I/O 事务处理中。
  • 直接存储访问 I/O 控制方式它比中断驱动方式,减少了 CPU 对 I/O 的干预,进一步提高了 CPU 和 I/O 设备的并行能力。只能完成简单的数据传输,不能满足更复杂的 I/O 操作要求。
  • 独立通道控制方式可以做到一个通道控制多台设备与内存交换数据,从而进一步减轻CPU 的工作负担,增加了计算机系统的并行工作程度,使现代计算机系统功能不断完善、性能不断提高。增加额外进程开销和硬件开销。

应用分析

  1. 假设有四个作业,它们的提交、执行时间如下表所示。若采用响应比高者优先调度算法,试问平均周转时间和平均带权周转时间为多少?
作业号 到达时间 运行时间
1 8.0 2.0
2 8.3 0.5
3 8.5 0.1
4 9.0 0.4

根据响应比的定义每次调度前计算出各作业的响应比:
(1)开始时只有作业 J1,作业J1被选中,执行时间 120分钟;
(2)作业 J1执行完毕后,作业 J2、J3和 J4都到达,响应比分别为(120-30)/30=3,(120-50)/6=11.67,(120-60)/24=2.5,作业 J3被选中,执行时间 6分钟;
(3)作业 J3执行完毕后,计算 J2和 J4的响应比分别为(126-30)/30=3.2,(126-60)/24=2.75,作业 J2被选中,执行时间 30分钟;
(4)作业 J2 执行完毕后,作业 J4被选中,执行时间 24分钟,所以执行顺序为 J1,J3,J2,J4。

作业号 J1 J2 J3 J4
执行时间(分钟) 120 30 6 24
到达时间(分钟) 0 30 50 60
完成时间(分钟) 120 156 126 180
周转时间(分钟) 120 126 76 120
带权周转时间(分钟) 1.0 4.2 12.67 5

平均周转时间为 T=(120+126+76+120)/4=110.5
平均带权周转时间W=(1.0+4.2+12.67+5)/4=5.72

  1. 在银行家算法中,若出现下述资源分配情况:
Allocation Need Available
P0 0032 0012 1622
P1 1000 1750
P2 1354 2356
P3 0332 0652
P4 0014 0656

试问:

①该状态是否安全?

安全序列(不要看作四位数):

第一轮循环

  • Work_0=Available(1,6,2,2)=(1,6,2,2)

  • Need_0(0,0,1,2)\le{Work_0(1,6,2,2)}->

    Work_1=

    Aollocation_0(0,0,3,2)+Work_0(1,6,2,2)

    =(1,6,5,4)

  • Need_1(1,7,5,0)\ge{Work_1(1,6,5,4)}->跳过

  • Need_2(2,3,5,6)\ge{Work_1(1,6,5,4)}->跳过

  • Need_3(0,6,5,2)\le{Work_1(1,6,5,4)}->

    Work_2=

    Aollocation_3(0,3,3,2)+Work_1(1,6,5,4)

    =(1,9,8,6)

  • Need_4(0,6,5,6)\le{Work_2(1,9,8,6)}->

    Work_3=

    Aollocation_4(0,0,1,4)+Work_2(1,9,8,6)

    =(1,9,9,10)

第二轮循环

  • Need_1(1,7,5,0)\le{Work_3(1,9,9,10)}->

    Work_4=

    Aollocation_1(1,0,0,0)+Work_3(1,9,9,10)

    =(2,9,9,10)

  • Need_2(2,3,5,6)\le{Work_4(2,9,9,10)}->

    Work_5=

    Aollocation_2(1,3,5,4)+Work_3(2,9,9,10)

    =(3,12,14,14)

因此找到了一个安全序列{P_0,P_3,P_4,P_1,P_2},故系统是安全的。

②如果进程P2提出请求Reques2(1,2,2,2)后,系统能否将资源分配给它?

Request_2(1,2,2,2)\leq{Need(2,3,5,6)}

Request_2(1,2,2,2)\leq{Available(1,6,2,2)}

③系统先假定可为P_2分配资源并修改Available,Allocation_2Need_2向量;

Available=Available(1,6,2,2)-Request_2(1,2,2,2)=(0,4,0,0)

Allocation_2=Allocation(1,3,5,4)+Request_2(1,2,2,2)=(2,5,7,6)

Need_2=Need(2,3,5,6)-Request_2(1,2,2,2)=(1,1,3,4)

而Available(0,4,0,0)满足不了任意一进程,因此进入不安全状态,即不能分配给P_2相应的Request(1,2,2,2)

  1. 在一个请求分页系统中,假定系统分配给一个作业的物理块数为3,并且此作业的页面走向为2,3,2,1,5,2,4,5,3,2,5,2。试用FIFO和LRU两种算法分别计算出程序访问过程中所发生的缺页次数。
    参考链接:https://blog.csdn.net/gl620321/article/details/106144536

分析思路:

  • 先进先出(FIFO)更新算法:

也称为最早出现的页面更新算法。该算法总是淘汰最先进入内存的页面,即选择在内存中停留时间最长的一页予以淘汰。如果同时有多个页面符合淘汰的条件,则任意选择一个予以淘汰即可。

技巧:谁先连成和题目所给物理块总数,谁先被置换掉

  • 最近最久未使用(LRU)更新算法:

以“最近的过去”作为“不久的将来”的近似,选择最近一段时间内最久没有使用的页面淘汰。
它的实质是:当需要更新一页时,选择在最近一段时间内最久没有被使用的页面予以淘汰

技巧:在内存中没有的页面开始往前看,置换“最前面的“,但不是从一开始的,那样这个算法就没有意义了

缺页率=缺页次数/总页数

置换率=置换次数/总页数

置换次数=缺页次数-物理块数

答案:

页面访问 2 3 2 1 5 2 4 5 3 2 5 2
FIFO 物理块1 2 2 2 5 5 5 3 3 3
物理块2 3 3 3 2 2 2 5 5
物理块3 1 1 1 4 4 4 2
是否缺页 × × × × × × × × ×
LRU 物理块1 2 2 2 2 2 3 3
物理块2 3 3 5 5 5 5
物理块3 1 1 4 4 2
是否缺页 × × × × × × ×

先进先出(FIFO)更新算法:缺页次数9次,置换次数6次
缺页率=缺页次数/总页数=9/12=75%
置换率=置换次数/总页数=6/12=50%

最近最久未使用(LRU)更新算法:缺页次数7次,置换次数4次
缺页率=缺页次数/总页数=7/12=58.3%(约等于)
置换率=置换次数/总页数=4/12=33.3%(约等于)

  1. 某计算机系统中的磁盘有300个柱面,每个柱面有10个磁道,每个磁道有200个扇区,扇区大小为512B。文件系统的每个簇包含2个扇区。请回答下列问题:

①磁盘的容量是多少?

300\times10\times200\times512KB=3\times10^5KB

②假设磁头在85号柱面上,此时有4个磁盘访问请求,簇号分别为:100260、60005、101660和110560,若采用最短寻道时间优先(SSTF)调度算法,则系统访问簇的先后次序是什么?

依次访问的簇是100260、101660、110560、60005

③第100530簇在磁盘上的物理地址是什么?将簇号转换成磁盘物理地址的过程是由I\0系统的什么程序完成的?

第100530簇在磁盘上的物理地址由其所在的柱面号、磁头号、扇区号构成,其所在的柱面号为

\lfloor\frac{100530}{10\times\frac{200}{2}}\rfloor=100\\ 100530\div(100\times\frac{200}{2})=530
磁头号为:

\lfloor\frac{530}{frac{200}{2}}\rfloor=5
扇区号为:

(530\times2)\div200=60
将簇号转换成磁盘物理地址的过程由磁盘驱动程序完成。

PV操作题

  1. 有一个仓库存放两种零件A和B,最大库容为各为m个。有一一个车间不断地取A和B进行装配,每次各取一个。为避免零件锈蚀,遵循先入库者先出库的原则。有两组供应商分别不断地供应A和B(每次一个)。为保证齐套和合理库存,当某种零件的数量比另一种的数量超过n(n<m)个时,暂停对数量大的零件的进货,集中补充数量少的零件。试用wait和signal正确实现之。
    该题的控制关系有4个:
    A的数量-B的数量<=n
    B的数量-A的数量<=n
    A的数量<=m
    B的数量<=m

注意:下面的答案不能保证“遵循先入库者先出库的原则”,若要满足该要求,可以分别为产品A及产品B设置相应的缓冲区,设置两个指针跟踪入库的过程。取货物时可以用同一个指针跟踪出库过程,因为A与B必须配对出现。

Var mutex, availa,fulla,sa,availb,fullb,sb :semorphore; 
Begin
    Mutex:=1; 
    Availa:=m; 
    Fulla=0; 
    Sa:=n; 
    Availb:=m; 
    Fullb:=0; 
    Sb:=n; 
    
    Parbegin 
        Input_ A:begin 
            Repeat 
                begin 
                    wait(availa); 
                    wait(sa); 
                    wait(mutext); 
                    put product A into the depository; 
                    signal(mutext); 
                    signal(fulla); 
                    signal(sb); 
                end 
            until false 
        end 
        Input_ B:begin 
            Repeat 
                begin 
                    wait(availb); 
                    wait(sb); 
                    wait( mutex); 
                    put product B into the depository; 
                    signal(mutex);
                    signal(fullb); 
                    signal(sa); 
                end 
            until false 
        end 
        get product:begin
            Repeat 
                begin 
                    wait(fulla);
                    wait(fullb); 
                    wait(mutex); 
                    get product A and B from the depository; 
                    signal(mutex); 
                    signal(availa);
                    signal(availb); 
                end 
            until false 
        end 
    Parend
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,117评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,328评论 1 293
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,839评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,007评论 0 206
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,384评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,629评论 1 219
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,880评论 2 313
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,593评论 0 198
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,313评论 1 243
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,575评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,066评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,392评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,052评论 3 236
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,082评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,844评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,662评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,575评论 2 270