操作系统--课堂问答笔记06--习题答案

课堂笔记学习视频来自 操作系统
说明:其他”课堂问答笔记“也在”操作系统“专栏

【2-2、2-3】

  1. 回忆上一节课的一些重要概念:就绪,阻塞/唤醒,挂起/激活,就绪挂起,阻塞挂起,就绪队列,阻塞队列,就绪挂起队列,阻塞挂起队列 。
    就绪:进程处于万事俱备只欠东风(就差CPU的执行)的状态。已经为进程创建好了PCB,并放大就绪队列中排队,就等CPU的执行了。
    PCB:进程控制块
    阻塞:进程因为需要某个条件(如I/O)而暂时停止CPU的执行,唤醒:把进程由阻塞变为就绪(之前的条件已经得到满足)
    挂起:因内存空间不足而暂时把内存中的某个或某些进程调回外存(放到外存的对换区),激活:把暂时调出内存的处于挂起状态的进程重新调入内存(内存空间能够满足要求)
    就绪挂起:在外存就绪,经激活后到就绪队列等待CPU的执行
    阻塞挂起:在外存等待条件(或事件的发生),经激活后到阻塞队列等待事件发生
    队列:处于相同状态的进程按某种算法进行排队的队伍
  2. PCB是一个数据结构,对应C语言中的一个struct,通过查看定义在struct中的成员,可否总结一下PCB的主要功能?引申问题,所有PCB的大小(当前内存空间)一样吗?
    1)作为独立运行基本单位的标志,PCB中定义了一个进程标识符(进程唯一的身份证号码)
    2)能实现间断性运行方式,PCB中定义了描述处理机状态(处理机状态信息)的成员,以便在该进程中断完成后重新执行时,能从断点继续执行。
    3)提供进程管理所需要的信息
    4)提供进程调度所需要的信息
    5)实现与其他进程的同步与通信
    引申问题:同一个系统中PCB的大小是一样的。
    同一个系统中PCB占用的内存空间是一样的,用同一个struct定义。
  3. 如何理解原语?为什么创建/终止,阻塞/唤醒,挂起/激活要用到原语?
    原语是由若干条指令组成的,用于完成一定功能的一个过程。具有不可分割性:即原语的执行必须是连续的,在执行过程中不允许被中断。
    显然进程在创建/终止,阻塞/唤醒,挂起/激活的过程中,一旦开始就必须做完,不能半途而废,否则会造成系统问题。
    创建进程不能创建到一半不做了,如果创建不成功那么之前所做的事情要全部撤销。
  4. 请举例有哪些临界资源?现实世界中还有哪些相同的事例?
    表格中的某个单元格,CPU,打印机,键盘,程序中的共享变量这些是。
    一次仅允许一个进程使用的共享资源称为临界资源。
    现实世界的事例:买火车票时同一趟火车的剩余票数,同一个候选人的得票数…
    为了保证各个进程对临界资源的互斥访问,则要加入同步机制(下一节的内容)
发布了94 篇原创文章 · 获赞 40 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/weixin_46218781/article/details/105270411