- 简要阐述进程控制块(PCB)包含哪些信息?它的作用主要体现在哪些方面?
答:(1)进程标示符 (2)处理机状态 (3)进程调度信息 (4)进程控制信息; 其作用是使一个在多道程序环境下不能独立运行的程序(含数据),成为一个能独立运行的基本单位或与其它进程并发执行的进程。
- 在创建一个进程时候所需要完成的主要工作是什么?
答:(1)操作系统发现请求创建新进程事件后,调用进程创建原语Creat();
(2)申请空白PCB;
(3)为新进程分配资源;
(4)初始化进程控制块;
(5)将新进程插入就绪队列
- 在终止一个进程时候所需要完成的主要工作是什么?
- 答:(1)根据被终止进程的标志符,从PCB集合中检索出该进程的PCB,从中读出该进程的状态;
(2)若被终止进程正处于执行状态,应立即中止该进程的执行,并设置调度标志为真;
(3)若该进程还有子孙进程,还应将其所有子孙进程予以终止;;
(4)将该进程所拥有的全部资源,或者归还给其父进程,或者归还给系统;;
(5)将被终止进程(它的PCB)从所在队列(或链表)中移出,等待其它程序来搜集信息 . - 有了进程为什么还要提出线程?它的提出解决了哪些问题?
答:
(1)为了减少程序在并发执行时所付出的时空开销,使OS具有更好的并发性。
(2)OS中引入线程,以线程作为调度和分派的基本单位,则可以有效地改善多处理机系统的性能
- 试从调度性、并发性、拥有资源以及系统开销方面对进程和线程进行比较。
答:(1)调度性。在传统的操作系统中,拥有资源的基本单位和独立调度、分派的基本单位都是进程,在引入线程的OS中,则把线程作为调度和分派的基本单位,而把进程作为资源拥有的基本单位;
(2)并发性。在引入线程的OS中,不仅进程之间可以并发执行,而且在一个进程中的多个线程之间,亦可并发执行,因而使OS具有更好的并发性;
(3)拥有资源。无论是传统的操作系统,还是引入了线程的操作系统,进程始终是拥有资源的一个基本单位,而线程除了拥有一点在运行时必不可少的资源外,本身基本不拥有系统资源,但它可以访问其隶属进程的资源;
(4)系统开销。由于创建或撤销进程时,系统都要为之分配和回收资源,如内存空间等,进程切换时所要保存和设置的现场信息也要明显地多于线程,因此,操作系统在创建、撤消和切换进程时所付出的开销将显著地大于线程。
Q1:周转时间=完成时间-到达时间(提交时间);带权周转时间=周转时间/要求服务时间。
先来先服务FCFS
进程 |
到达时间 |
服务时间 |
开始时间 |
结束时间 |
A |
0 |
3 |
0 |
3 |
B |
2 |
6 |
3 |
9 |
C |
4 |
4 |
9 |
13 |
D |
6 |
5 |
13 |
18 |
E |
8 |
2 |
18 |
20 |
短作业优先SP(J)F(非抢占式)
进程 |
到达时间 |
服务时间 |
开始时间 |
结束时间 |
A |
0 |
3 |
0 |
3 |