操作系统(孟庆昌)课后答案——第二章 进程和线程

本文深入探讨了操作系统中进程的概念及其与程序的区别,解析了进程控制块(PCB)的作用,阐述了进程的基本状态、互斥与同步原理,临界区与资源管理,以及线程的引入和与进程的关系。同时,对比了用户级线程和内核级线程的实现方式。

1 在操作系统中为什么要引入进程概念?他与程序的关系与差别是什么?

进程概念:进程是一个可并发执行的具有独立功能的程序关于某个数据集合的一次执行过程,也是操作系统进行资源分配和调度的独立单位。
进程特征:动态性、并发性、调度性、异步性、结构性
引入原因:在多道程序环境下,程序的并发执行代替了程序的顺序执行,资源共享和竞争又导致并发程序之间的相互制约性, 使得系统中运行的程序是处于走走停停的状态之中,当一个程序获得处理机后向前推进,当它需要某种资源而未得到时只好停下来,以后得到所申请资源时再继续前进。由于用程序这个静态概念已经不能如实反映程序并发执行过程中的特征,所以引入进程这一概念来描述程序动态执行过程的性质。

1.1 进程与程序的联系

一个程序可以由多个进程共用,一个进程可以执行多个程序,进程存在的意义就是执行程序,进程可以看成程序在并发过程中的执行过程

1.2 进程与程序的差别

1.进程是动态的概念,程序是静态的概念;程序是指令代码的有序组合,进程是程序的执行过程,由程序、数据和进程控制块组成。
2.进程是暂时的,程序是永久的。
3.进程可以作为一个独立运行的单位,能与其他进程并发执行;程序不能在多道程序环境下独立运行。
4.一个程序可以由多个进程共用,一个进程可以执行多个程序

2 PCB的作用是什么?它是怎样描述进程的动态性质的?

概念及作用:PCB是进程控制快,它是进程组成中最关键的部分,包含进程的描述信息和控制信息,如进程名、进程状态信息、调度优先级、通信信息、资源需求等。是操作系统感知进程的存在,以及管理和控制进程执行的唯一依据。
如何描述:PCB中有表明进程状态的信息:该进程的状态是运行态、就绪态还是阻塞态,利用状态信息来描述进程的动态性质。

3 进程的基本状态有哪几种?

一个进程在它的生命期中至少应有如下三种基本状态:就绪、运行和阻塞。在这里插入图片描述

5 PCB表的组织方式有哪几种?

1.线性表方式:不论进程的状态如何,将所有的PCB连续地存放在内存的系统区。这种方式适用于系统中进程数目不多的情况。
2.索引表方式:该方式是线性表方式的改进,系统按照进程的状态分别建立就绪索引表、阻塞索引表等。
3.链接表方式:系统按照进程的状态将进程的PCB组成队列,从而形成就绪队列、阻塞队列、运行队列等

6 什么是进程的互斥和同步

互斥:逻辑上无关的两个或多个进程由于争用同一资源而发生的彼此制约的关系。
同步:逻辑上相关的两个或多个进程为了完成一项任务,通过协调活动来使用同一资源而产生的执行次序的约束关系。

7 什么是临界区和临界资源?进程进入临界区的调度原则是什么?

临界资源:一次仅允许一个进程使用的共享资源。
临界区:在每个进程中访问临界资源的那段程序。
调度原则:1.单个入区2.独自占用3.尽快退出4.落败让权

8 是否所有共享资源都是临界资源?

否,因为不是所有共享资源都一次只允许一个进程使用。

9 什么是原语操作?什么是计数信号量?PV操作原语定义

原语是由若干条机器指令构成的,为特定功能编制的程序段。原语和机器指令类似,它在执行过程中不允许被中断,是一个不可分割的基本单位,
原语操作又称原子操作,即一个操作中的所有动作要么全做要么全不做,不允许被中断。
计数信号量:计数信号量又称结构性信号量,其中一个成员是整形变量,表示该信号量的值;另一个是指向PCB的指针。当多个进程都在等待同一信号量时,他们就排成一个队列,由信号量指针作为该队列队首,队列间通过PCB本身的指针项进行连接。
P操作:若S>0,S-1,程序继续执行,否则等待;
V操作:S+1
一般是P操作、临界区、V操作;信号量代表允许剩余允许访问临界资源的进程数,P操作需要先判断是否有访问名额,若有则访问,信号量减一;若没有则等待;访问完通过V操作将信号量加一,释放临界区。

10 系统中只有一个打印机,三个人都要用,怎么办?

设信号量S初始值为1;三个人代表三个进程,是互斥关系。
进程(A/B/C)P操作 打印 V操作。

11 什么是线程 他与进程有什么关系

进程是资源分配和调度运行的单位,但是进程的切换代价太大,因此引入线程,进程只作为资源拥有者,线程作为调度拥有者。线程是进程中实施调度的基本单位。一个进程可以拥有多个线程,至少一个。一个线程只能在一个进程的地址空间活动;同一进程的所有线程共享该进程的所有资源。

12 实现线程主要有哪两种方式?

用户级线程只存在于用户层,它的管理都在一个进程的用户地址空间中进行,用户级线程的切换也仍在用户态下运行,不需要转换到核心态,这就节省了系统从核心态到用户态或从用户态到核心态转换的时间和空间的开销。同一进程中多个线程不能真正并行。
内核级线程管理的所有工作都是由内核来完成的,同一进程内多个线程可以并行执行,即如果进程中的一个线程被阻塞,内核可以调度同一个进程中的另一个就绪线程执行。在多处理机环境中,内核可以同时把同一个进程的多个线程分配到多个处理机上。在同一个进程中把控制权从一个线程切换给另一个线程需要内核的状态转换(即用户态到核心态的转换),所以内核级线程的创建和管理通常要慢于用户级线程的创建和
管理。

1.操作系统概述 操作系统的形成,操作系统的定义功能,操作系统的分类 2.处理机管理 多道程序设计技术,用户操作系统的两种接口,进程的定义、特征基本状态,进程控制块(PCB)控制块队列(运行、就绪、阻塞),进程的各种调度算法(先来先服务、时间片轮转、优先数、多级队列),进程管理的基本原语(创建、撤消、阻塞、唤醒),作业作业调度算法(先来先服务、短作业优先、响应比高者优先)。 3.存储管理 地址的静态重定位动态重定位,单一连续区存储管理,固定分区存储管理,可变分区存储管理,空闲区的合并,分区的管理组织方式(表格法、单链表法、双链表法),分页式存储管理,页表、快表及地址转换过程,内存块的分配回收(存储分块表、位示图、单链表),虚拟存储器的概念,请求分页式存储管理,缺页缺页中断位,缺页中断页面淘汰,页面淘汰算法(先进先出、最近最久未用、最近最少用、最优),页面走向,缺页中断率,抖动,异常现象。 4.设备管理 计算机设备的分类(基于从属关系、基于分配特性、基于工作特性),记录间隙,设备管理的目标功能,输入/输出的处理步骤,设备管理的数据结构(SDT、DCB、IVT),独享设备的分配,共享磁盘的调度算法(先来先服务、最短查找时间优先、电梯、单向扫描),设备控制器,数据传输的方式(循环测试、中断、直接存储器存取、通道),I/O的缓冲技术(单缓冲、双缓冲、多缓冲、缓冲池),虚拟设备,SPOOLing技术。 5.文件管理 文件,文件系统,文件的逻辑结构(流式文件、记录式文件),文件的物理结构(连续文件、串联文件、索引文件),文件的存取(顺序、随机),磁盘存储空间的管理(位示图、空闲区表、空闲块链),文件控制块(FCB),目录的层次结构(一级目录,二级目录、树型),主目录,根目录,绝对路径,相对路径,按名存取的实现,文件共享,文件保护,文件上的基本操作。 6.进程间的制约关系 时间有关的错误,资源竞争——互斥,协同工作——同步,信号量,信号量上的P、V操作,用P、V操作实现互斥,用P、V操作实现同步,用P、V操作实现资源分配,死锁,死锁产生的必要条件,死锁的预防,死锁的避免,死锁的检测恢复,银行家算法,进程间的高级通信。 7.操作系统实例分析 Windows操作系统,Linux操作系统,MS-DOS操作系统
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值