进程知识点

2019-07-14 09:12发布

进程

进程基本特征:动态性、并发性、独立性、异步性和结构特征。
进程结构上包括:程序段、数据段、进程控制块PCB(Process Control Block)组成。PCB是进程存在的唯一标识。系统通过PCB对进程进行控制和管理。
为了方便进程的调度和管理,需将各进程的PCB以适当方法组织起来。常见的有链接方式和索引方式。
链接方式就是形成队列,如就绪队列、阻塞队列。
索引就是将同一状态的进程组织在一个索引表中,如就绪索引表、阻塞索引表。
进程基本状态:阻塞、就绪、运行。引起状态转化的事件有:见书P23,28
进程的阻塞与唤醒:
阻塞:执行转阻塞,唤醒:阻塞转就绪。阻塞是进程自己主动的,唤醒是被动由其他进程唤醒的。

线程

1、为什么操作系统要引入线程?
答:进程是为了使多个程序并发执行,而线程是为了减少程序并发执行所需的时空开销,提高程序执行的并发程度。
2、线程的实现:分为内核级线程和用户级线程。一个内核级线程由于IO操作阻塞时不会影响其他线程的运行。处理器时间片分配的对象是线程,多个线程的进程就拥有更多时间。
用户级线程,当某个线程阻塞时,整个进程必须等待。处理器时间片是分给进程的,该进程拥有的线程多,每个线程的时间就少了。
3、进程与线程的比较:
(1)调度:线程是独立调度的基本单位,进程是资源拥有的基本单位
(2)拥有资源:进程是资源拥有的基本单位,线程几乎不拥有系统资源(或很少)
(3)并发性:进程可以并发,同一进程内的多个线程也可以并发
(4)系统开销:线程切换时开销很少,同一进程内的多个线程同步与通信非常容易。
4、进程通信
高级通信方式分为3类:共享存储器系统、消息传递系统、管道通信系统 处理器调度
处理器的三级调度:
高级调度(作业调度):又称为宏观调度,任务是从外存上处于后备状态的作业中选择一个或多个。频率低。
中级调度(交换调度):将外存对换区与内存间的进程调换
低级调度(进程调度):从就绪队列选择一个进程。频率很高。 常见调度算法:先来先服务算法、短作业优先、时间片轮转、高响应比优先调度算法、
多级反馈队列调度算法(见P40) 同步与互斥
同步:某进程需要另一进程提供必要信息
互斥:同类进程争夺资源

死锁

死锁产生原因是:系统资源不足和进程推进顺序不当。
处理死锁4种方法:
鸵鸟算法:不理睬死锁;
预防死锁:对系统加严格限制条件,去破坏死锁产生的必要条件来预防死锁;
避免死锁:对系统的限制条件相对宽松,用某种方法防止系统进入不安全状态;银行家算法(见P67 p79)
检测及解除死锁:

热门文章