进程管理

339阅读 0评论2009-11-05 welld_djj
分类:

一,进程与线程

 

 

1,  进程的概念

进程可以被简单的理解为一个正在执行的程序。

进程是参与调度,进行资源分配的最基本单元。

进程的特征:动态性,独立性,并发性,结构化。

进程与程序的区别与联系。

1)  进程是动态的,程序是静态的

2)  进程是暂时的,程序是永久的

3)  进程与程序的组成不同

4)  进程与程序是密切相关的

 

2,  进程的状态与转换(原理)

随着进程的推进,它会不断的改变状态。

创建:进程正被创建

运行:进程的指令正被执行

等待:进程正在等待发生一些事情

就绪:进程正在等待分配处理机

终止:进程结束运行

 

3,进程控制(对应原理图允许,退出,IO操作或事件等待,IO操作或事件的完成)

父进程创建子进程,形成进程组织的树形结构

进程的控制主要是指进程的创建,进程的撤销,进程状态间的转换控制。

1)  进程的创建:通过创建进程系统调用,创建新进程,新进程是它的子进程。其主要操作是创建一个进程控制块(PCB),从系统的PCB表中获得一个pcb表,获得其内部标识,调用进程提供参数。入外部名,数据段的首地址,优先级等填入pcb表。设置为就绪状态,把该pcb插入到就绪队列中

2)  进程的撤销,由父进程发出,撤销他的子进程和该子进程的所有子进程。撤销后进程调度程序把处理器分给其他进程。

3)  进程的阻塞:当前进程请求某时间而不能执行,进程调用阻塞系统阻塞自己,暂时放弃处理机。设置为阻塞态,放入阻塞队列,即等待队列。

4)  进程的唤醒:被阻塞的进程所期待的事情发生时,有关进程调用唤醒系统调用,将阻塞进程唤醒。从阻塞队列移除,插入到就绪队列,将pcb中的等待状态改为就绪状态

 

1,  进程组织(进程实现的数据结构)

操作系统在管理进程过程中需要负责以下工作:进程的创建与删除,进程的调度,进程的同步,进程的通信,进程的死锁。通过PCB而实现。

PCB中存储某一具体进程信息包括:

进程状态:

程序计数器

CPU寄存器(就是后面说的上下文)

CPU调度信息

内存管理信息

记账信息

IO状态信息

 

2,  进程通信

1)共享存储机制

2)消息传递机制

3)管道通信机制

 

3,  线程的概念与多线程模型

线程是进程内的控制流

 

一,处理机调度()

1,  调度的基本概念

处理机调度,也称为cpu调度或进程调度。

处理器的调度可以分为高级调度,中级调度,低级调度。

 

2,  调度的时机,切换与过程

 

以上图保证cpu得到最大的利用率,schedule()函数是系统调度程序,该程序被执行,才会发生一次cpu调度

运行进程依赖的CPU资源,如:通用寄存器,栈指针,状态寄存器等,统称为上下文信息。他们被包含在PCB中,当发生调度算法的时候,把旧的上下文信息保存起来,调入新进程中的上下文信息。

Cpu调度算法的选择指标有:CPU利用率,吞吐率,响应时间,周转时间,等待时间。

 

1,  调度的基本准则

1)  面向用户的准则与评价

周转时间短

响应时间快

截止时间的保证

优先权准则

2)  面向系统的准则与评价

达到系统设计目标

系统吞吐量大

处理机利用率高

2,  调度方式

1)非抢占方式

2)抢占方式

时间片原则

优先权原则

3,  典型调度算法

1)  FCFS先来先服务调度算法

2)  SJF最短作业优先调度算法

3)  HRN高响应比优先调度算法

 

4RR时间片轮转调度算法

一,进程同步

 

 

1,  进程同步的基本概念

为了避免不却定性,在任何时候最多只能有一个进程执行这些访问共享数据的代码。这就是临界区的互斥问题。

同步机制的准则:

互斥

空闲让进

有限等待

 

2,  实现临界区互斥的基本方法

1)  软件方法

2)  硬件实现方法

3)  信号量

4)  管程

5)  经典同步问题

1))生产者-消费者问题

2))读者写者问题

3))哲学家进餐问题

二,死锁

 

 

1,  死锁的概念

死锁的四个必要条件

互斥

占用并等待

非抢占

循环等待

 

2,  死锁处理策略

 

 

3,  死锁预防

 

 

4,  死锁避免

 

 

5,  死锁的检测和解除

 

 

上一篇:困难终于过去,我得到了些东西
下一篇:教育法则四