进程模型
在进程模型中,计算机上所有可运行的软件,通常也包括操作系统,被组织成若干顺序进程,简称进程。一个进程就是一个正在执行程序的实例,包括程序计数器、寄存器、和变量的当前值。从概念上讲,每个进程都拥有自己的虚拟cpu,不过实际上cpu只是轮流处理这些进程而已,只不过由于线程之间切换速度比较快,不容易发现,这种快速的切换进程执行,我们将其称为多道程序设计。

如上图,这四道程序被抽象为各自拥有自己的控制流程(即每个程序有自己的逻辑程序计数器),并且每个程序都独立的运行,不过实际上只有一个物理程序计数器,所以在每个程序运行时,它的逻辑程序计数器被装入实际的程序计数器中。
进程和程序的区别:进程是程序的一次执行
二.进程的创建
4种主要事件会导致进程的创建:
1)系统初始化:启动操作系统时,通常会创建若干进程,有些是前台进程,有些是后台进程(守护进程)
2)正在运行的程序执行了创建进程的系统调用
3)用户请求创建一个进程
4)一个批处理作业的初始化
三.进程的终止
进制终止的几种情况如下:
1)正常退出(程序执行完毕,自愿退出)
2)出错退出(自愿)
3)严重错误(非自愿)
4)被其他进程杀死(非自愿)
多数进程是由于完成了他们的工作而终止,比如当编译器完成了所给定程序的编译后,编译器执行一个系统调用,通知操作系统它的工作已经完成。
四.进程的层次结构
某些系统中,当进程创建了另一个进程后,父进程和子进程就以某种形式继续保持关联。子进程自身可以创建更多的进程,组成一个进程的层次结构,不过进程只能有一个父进程(但是可以有多个子进程,其实就是一个树形结构)。
在UNIX中,进程和它的所有子进程以及后裔共同组成一个进

最低0.47元/天 解锁文章
4416

被折叠的 条评论
为什么被折叠?



