操作系统学习笔记:进程与进程管理

目录:

一、进程的引入:

程序顺序执行:

程序并发执行:

多道程序设计:

为何引入进程?

二、进程 :

进程的相关概念:

进程的基本状态及其转换:

进程控制块PCB:

进程控制:

三、进程调度: 

进程调度的基本概念:

进程调度算法:

进程调度的时机和过程:

四、线程的基本概念:

线程的引入:

线程的定义和属性:

线程与进程的比较 :

线程的实现机制:


一、进程的引入:

程序顺序执行:

举例:

  • S1:  a=x+y;
  • S2:  b=a-1;
  • S3:  c=b+8;

定义:程序在执行时,必须按照某种先后次序逐个执行,仅当前一操作执行完后,才能执行后继操作     为了能够直观地描述程序执行的顺序性,需要借助前趋图

 

那么什么是前趋图呢?

 

前趋图(Procedence Graph):前趋图是一个有向无循环图(DAG)。图中的每个结点可用于表示一条语句、一个程序段或进程;结点间的有向边则表示在两结点之间存在的偏序或前趋关系“→”,→={(Pi,Pj)| Pi必须在Pj开始前完成 }。

操作系统学习笔记:进程与进程管理_第1张图片

 

前趋图在程序运行顺序表达上的运行!

 

假设有两个程序段:S1,S2

S1:I1—>C1—>P1

S2:I2—>C2—>P2

借助前趋图,二个程序段的执行流程可以描述为:

 

程序顺序执行的特征 :

  • 程序执行的顺序性——处理机的操作严格按程序规定的顺序执行,即只有前一操作结束后才能执行后继操作 。
  • 程序执行的封闭性——程序一旦开始运行,其执行结果不受外界因素的影响。
  • 程序执行结果的确定性——程序执行的结果与它的执行速度、时间无关。
  • 程序结果的可再现性——程序执行时的环境和初始条件相同,当程序多次重复执行时,都将获得相同的结果。

程序并发执行:

定义:在输入程序 I 、计算程序 C 和打印程序 P 三者之间,存在着Ii→Ci→Pi这样的前趋关系,以致对一个作业的输入、计算和打印三个操作必须顺序执行,但并不存在Pi→Ii+1关系。因而在对一批程序进行处理时,可使它们并发执行。

操作系统学习笔记:进程与进程管理_第2张图片

 

程序的并发执行有效的提高了系统的吞吐量,但是也产生了和顺序执行不同的新特征!

你可能感兴趣的:(#,操作系统学习笔记,操作系统)