汤小丹操作系统 第二章 进程的描述和控制 课后习题详解|操作系统

1.什么是前驱图?为什么要引入前驱图

  • 前驱图
    前驱图是一个有向,不循环图。用于描述进程之间执行的先后关系。
    图中每个点可以表示一个程序段、进程,乃至一条语句;结点间的有向边则用来表示两个结点之间存在的偏序或前趋关系。

  • 原因
    引入前趋图可以形象地表示进程之间的前后关系和顺序,可以更好的描述进程的顺序和并发执行。

3.为什么程序并发执行会产生间断性特征?

相互制约
程序在并发执行时,由于他们共享系统资源,以及为完成某一项任务相互合作,致使这些并发执行的程序之间,形成了相互制约的关系,从而产生间断性特征。
相互制约导致并发程序有“执行-暂停-执行”这种间断性的活动规律。

4.程序并发执行为什么会失去封闭性和可再现性?

程序在并发执行时,是多个程序共享系统中的各种资源,因而这些资源的状态将由多个程序来改变,致使程序的运行失去了封闭性。这样,在某个程序执行时,必然会受到其他程序的影响,而这也导致其失去可再现性。
即程序经过多次执行后,虽然他们执行时的环境和初始条件相同,得到的结果却不相同。

5.操作系统为什么要引入进程的概念?会产生什么影响。

  • 原因
    在多道程序环境下,程序的执行属于并发执行,此时他们将失去封闭性,并具有间断性和结果不可再现性的特征,这也决定了通常的程序是不能参加并发执行的,因为程序的执行结果是不可再现的,这样,程序的运行也就失去了意义。这样,为了对并发的程序加以控制和描述,引入了“进程”的概念。

  • 影响
    进程是进程实体的运行过程,进程是系统进行资源分配和处理机调度的独立单位,进程的引入使得程序的并发执行得以实现。

6.试从动态性,并发性,独立性上比较进程和程序

进程程序
动态性静态
能并发执行不能并发执行
高度独立性没有独立性
  • 动态性
    进程是进程实体的一个执行过程,动态性是进程最基本的特征。动态性表现在“由创建而产生,由调度而执行,由撤销而消亡”。可见,进程实体具有一定的生命周期。
    程序知识一组有序指令的集合,存放于某种介质上,其本身并不具有动态的含义,因而是静态的。

  • 并发性
    并发性是指多个进程实体同时存在于内存中,在一段时间内同时运行,并发性是进程最重要的特征,同时也成为OS最重要的特征,引入进程的目的就在于为了使进程实体和其他进程实体能并发执行。
    而程序并发执行会失去封闭性,而且具有间断性和结果不可再现性的特征,这使得程序不能参加并发执行,因为程序的执行结果是不可再现的,这样,程序的运行也就失去了意义。

  • 独立性
    进程实体是一个能独立运行、独立分配资源和处理机调度的基本单位。具有高度的独立性。
    但凡未建立PCB的程序都不能作为一个独立的单位参与运行。

7.试说明PCB的作用具体表现在那几个方面,为什么说PCB是进程存在的唯一标志

  • 作用

    1. 进程控制块是进程实体中的一部分,是操作系统中最重要的记录型数据结构。
    2. PCB记录了操作系统所需要的进程控制和进程调度的全部信息。
    3. 进程控制块(PCB)使得在一个多道程序环境下不能独立运行的程序(含数据)成为一个独立运行的基本单位,并且能和其他进程并发执行。
  • PCB是进程存在的唯一标志

    1. 在进程的整个生命周期,操作系统是通过PCB控制进程。
    2. 系统是通过PCB而感知到进程的存在的。

8.PCB提供了进程管理和调度的哪些信息?

  • 进程标识符
    1. 外部标识符
    2. 内部标识符
    3. 进程标识符唯一地标识一个进程,一个进程通常有外部标识符和内部标识符两种,分别用来方便用户对进程的访问和系统对进程的访问。
  • 进程控制信息
    进程控制所必须的信息
    1. 资源清单
    2. 程序地址
    3. 进程同步通信机制
    4. 链接指针
  • 进程调度信息
    1. 进程状态
    2. 优先级
    3. 进程调度所需其他信息
    4. 事件
  • 处理机状态
    1. 处理机状态信息也称处理机的上下文,用来处理处理机各种寄存器的状态。

9.进程控制块的组织方式

  • 线性
  • 索引
  • 链式

10.什么是操作系统内核?内核的主要功能

  • 定义
    操作系统内核是指大多数操作系统的核心部分,由操作系统用于存储器管理、文件、外设、和系统资源的那些部分组成。操作系统内核通常运行进程,并提供进程间的通信。

  • 功能

支撑功能
1. 中断处理
2. 时钟管理
3. 原语操作

资源管理功能
1. 进程管理
2. 设备管理
3. 存储器管理

12.为什么要引入挂起状态

  • 用户需要
  • 父进程需要
  • 调节负荷需要
  • 操作系统需要

13.在进程切换时,要保存CPU那些信息

处理机的状态主要由处理机的各种寄存器中的内容组成,处理机在运行时许多信息都存放在寄存器中,当处理机被中断时,这些信息都必须保存在PCB中,进程重新执行时,能从断点继续执行。

  • 通用寄存器,用户进程可以访问,用于暂存信息
  • 指令寄存器,存放要访问的下一条指令的地址
  • 进程状态字PSW,含有状态信息,状态码…
  • 用户栈指针

14.进程创建的主要事件

  • 用户登录
  • 作业调度
  • 提供服务
  • 应用请求

15.进程被撤销的主要事件

  • 正常结束
  • 异常结束
  • 外界干预

16.创建一个进程所要完成的工作

  • 申请空白PCB
  • 为新进程分配资源
  • 初始化进程控制块
  • 将新进程插入就绪队列

17.撤销一个进程所要完成的工作

如果系统中发生了要求终止进程的某事件,OS便调用进程终止原语:

  1. 根据被终止的进程标识符,从PCB检索出进程状态
  2. 如果处于执行状态,立即终止该进程的执行,并且置调度标志为真,指示该进程被终止后可以被重新调度
  3. 若进程还有子进程,应该将所有的子孙进程全部终止,防止他们成为不可控进程
  4. 将被终止进程所拥有的全部资源,或者归还给父进程或者归还给系统
  5. 将被终止进程PCB从所在队列或者链表移除,等待其他程序搜集信息

18.试说明引起进程阻塞或者被唤醒的主要事件

  • 阻塞
    1. 请求服务
      正在执行的进程请求操作系统提供服务时,由于某种原因,操作系统并不能立即满足该进程的要求时,进程就会变为阻塞状态来等待。
    2. 启动某种操作
      进程启动某种操作以后,若进程必须在该操作完成后才能继续执行,则必须先使该进程阻塞,等待该操作的完成。
    3. 新数据尚未到达
      对于相互合作的进程,如果其中的一个进程需要先获得另一(合作)进程提供的数据才能对数据进行处理,只要新数据尚未到达,进程只能阻塞(等待)。
    4. 无新工作可以做
      系统往往会设置一些具有某种特定功能的系统进程,每当这种进程完成任务后,便把自己阻塞起来等待新任务的到达。

-唤醒
相应的请求得到了满足,便会被唤醒。

19.为什么要引入线程

引入进程引入线程
使多个程序能并发执行,提高资源利用率和系统吞吐量减少程序在并发执行时的时空开销,使OS具有更好的并发性

20.线程属性

  • 轻型实体
  • 独立调度和分派的基本单位
  • 可并发执行
  • 共享进程资源
    同一进程中的线程可以共享进程所拥有的资源,表现在所有线程都拥有相同的地址空间。

21.试从调度性、并发性、拥有资源、时空开销比较进程和线程

进程线程
资源拥有的基本单位OS调度和分派的基本单位
进程的切换会引起线程的切换同一进程线程的切换不会引起进程的切换
进行间并发执行同一进程的线程也可以并发执行,具有更好的并发性
系统中拥有资源的基本单位线程自己不拥有资源,只拥有一点必不可少的资源,可以共享其隶属进程的资源,即进程的数据段、代码段、和所拥有的系统资源

22.线程控制块包含那些内容

  • 线程标识符
  • 一组寄存器,包括程序计数器、状态计数器、通用寄存器
  • 线程运行状态
  • 优先级
  • 线程专有存储区
  • 信号屏蔽
  • 堆栈指针

23.何谓用户级线程和内核支持线程

  • 用户级线程
    线程的创建、撤销、线程之间的同步通信功能,都无需利用系统调用来实现。对于用户级线程的切换,通常发生在一个应用程序的诸多线程之间,不需要内核的支持,由于切换的规则比线程切换简单,线程的切换速度特别快。这种线程与内核无关

  • 内核支持线程
    在内核的支持下运行,无论是用户进程中的 线程,还是系统中的线程,他们的创建、撤销、切换都是依靠内核,在内核空间实现。内核空间为每一个内核线程设置一个线程控制块,内核根据线程控制块来感知某线程的存在,并对其加以控制。

24.试说明用户线程的实现方法

用户线程是在用户空间实现的,他们都运行在一个中间系统的运行时系统上面,有两种方式实现中间系统,即运行时系统和内核控制线程。

  • 运行时系统
    运行时系统实质上是用于管理和控制线程的函数(过程)的集合,其中包括用于创建和撤销线程的函数,线程同步和通信的函数,以及实现线程调度的函数。正因为有这些函数才能使用户级线程和内核无关,运行时系统的所有函数都驻留在用户空间。

  • 内核控制线程
    内核控制线程可以通过系统调用来获得内核的服务,当一个用户级线程运行时,只要连接到一个内核控制线程(LWP),它便具有了内核支持线程的全部属性。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值