操作系统-复习-考题预测及解析-期中考试

考题预测及解析首先声明一点:从长远角度看,前面博客中讲的研究思路更重要从考试角度看,这篇博客就足够了,因为考点几乎是固定的重点声明首先声明重点多道程序设计技术!进程状态转移,什么会导致状态的转移?进程同步:PV操作(重点),这里多做几个题目吧!进程通信:论述消息传递和共享内存的区别线程:论述多进程、多线程的优劣CPU调度算法(大概五分左右),算(带权)周转时间死锁部分...
摘要由CSDN通过智能技术生成

考题预测及解析

首先声明一点:

  • 从长远角度看,前面博客中讲的研究思路更重要
  • 从考试角度看,这篇博客就足够了,因为考点几乎是固定的
  • 另外,这篇博客写于期中考试前,后面再确定期末考试的考点是否与此一致

重点声明

  1. 多道程序设计技术,多道程序的优缺点分析;
  2. 进程状态转移,状态转移的原因(三状态模型);
  3. 进程同步:PV操作(重点),这里多做几个题目吧;
  4. 进程通信:论述消息传递和共享内存的区别;
  5. 线程:论述多进程、多线程的优劣;
  6. CPU调度算法(大概五分左右),算(带权)周转时间(多种算法);
  7. 死锁部分(重点):银行家算法、安全状态的判定;
  8. 程序的装入、链接,仔细对比各种方式的区别;
  9. 内存管理:空闲内存分配方法,给一个内存映像,写出四种分配方法的结果;
  10. 内存管理:分页是一定考的;
  11. 虚拟存储器的思想,以及页面置换算法;
  12. IO:不考2333;
  13. 磁盘调度算法;
  14. 文件系统,计算题;

这些题目和之前博客讲的很多内容都大不相同,这里考的十分具体,大多数都是算法题,当然会有一些理解性的题目。

例题讲解

1.多道程序设计技术

基本思想:将多个程序同时放入内存,使他们共享系统中的资源。
特点:

  • 内存中存放了多个程序,而不是一个;
  • 宏观上并行,给我们的假象是多个程序同时在执行,其实某一时刻只有一个程序在执行;
  • 微观上串行:某一时刻只有一个程序在执行,即多个程序轮流占用CPU,交替执行;

多道程序设计带来的优点:

  • 首先解释三个利用率的提高:CPU, IO, Memory,然后是吞吐量;
  • 将等待IO的时间拿出来执行其他程序,提高了CPU利用率;
  • 可能将多个程序的IO操作集中起来,也提高了IO设备的利用率;
  • 内存中装入多道程序轮流执行,提高了内存的利用率;
  • 将等待IO的时间利用后,提高了系统的吞吐量,降低了程序运行所需要的费用;

多道程序设计带来的缺点:

  • 增加了系统的不确定性,很难确定某一个程序的终止时间;

2.进程同步

先提一个很有意思的问题:解释程序和进程的区别

  • 程序保存在磁盘中,是静态的,而进程在内存中,是动态的概念
  • 程序保存在磁盘中的形式是文件,如exe文件,而进程在内存中的形式是PCB+代码段+数据段+堆区+栈区
  • loader将程序从磁盘中加载到内存中,并分配PCB以及代码段、数据段、堆、栈后进程才可执行,进程有其生命周期,且进程与程序不是一一对应的。
  • 进程是系统进行资源分配的基本单位,而程序仅仅是静态的指令代码。

此问题能区分科班出身程序员和培训机构出来的程序员,当然这是建立在对操作系统的理解之上的,如果理解了进程的概念自然能明白这个问题。

关于进程的状态转移:
就绪态–>运行态:

  • CPU有空闲、进程处于就绪状态,此时调度算法将就绪队列中的一个进程调度到CPU上运行

运行态–>就绪态:

  • 时间片用完,被迫暂停执行
  • 也可能因为优先级低被抢占:进程A执行时,某优先级更高的B为就绪态,则进程A会被抢占,强行进入就绪态,优先执行进程B。
  • 此时收回CPU资源,再次执行调度程序。

运行态–>阻塞

  • 37
    点赞
  • 125
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值