进程

作者: 陈继科 | 来源:发表于2016-10-21 00:06 被阅读17次

    什么是进程###

    一个程序可以看作是一个进程
    进程的概念是伴随着多任务系统而产生的
    每个进程都占用一定的系统硬件资源
    多个程序同时执行需要操作系统对这些进程进行合理的资源调度
    进程不仅仅是文本段,它还包括活动的一些东西,比如程序计数器、处理器寄存器、堆栈、数据段等等。
    对于一个完整的程序,在内存中分布情况如下图:

    内存中进程.gif
    两个进程可以与同一个程序(文本)有关,比如打开两个chrome,他们的文本相同,但数据段、堆、栈不同

    进程状态###

    进程可以分为5个状态:
    (1)开始:进程开始创建
    (2)就绪:等待进程调度算法分配就可以执行了
    (3)运行:正在执行代码
    (4)等待:等待IO等信号
    (5)结束:进程被杀死

    进程状态转换

    进程控制块###

    Process Control Block(PCB)
    包含与一个进程相关的各种信息

    PCB

    进程状态:运行、就绪、等待等等
    程序计数器:下一条要执行的指令地址
    CPU寄存器:各种程序运行过程中数据信息
    CPU调度信息:该进程的优先级等等
    内存管理信息:所处内存基址、页表等等
    记账信息:CPU时间、进程数量等信息
    IO状态信息:分配的IO设备、文件等等

    所以两个进程在CPU中切换时需要把被切换的进程PCB保存,同时把要执行的进程PCB加载,如下图所示:

    进程切换

    进程调度###

    多进程好处在于使CPU一直busy,她累了我们就舒服了。想象一下以前只有一个进程能执行的时候,当进程处于等待IO时CPU就完全不干事,我们就会觉得电脑卡顿;而现在当一个进程处于等待IO时我们可以先把其挂起(等待),让CPU先运行其他进程,而当IO就绪后我们再把这个进程PCB拿回来继续执行,这样可以大大提高CPU使用率。
    单处理器一次只能运行一个进程,进程调度即把一群处于就绪状态的进程选择出来一个放到CPU中执行的过程,其他要等CPU空闲下来后再被选中执行。

    进程操作###

    委婉

    相关文章

      网友评论

          本文标题:进程

          本文链接:https://www.haomeiwen.com/subject/aoytuttx.html