zoukankan      html  css  js  c++  java
  • 进程识别号(PID)的理解

    PID(Process Identification)操作系统里指进程识别号,也就是进程标识符。操作系统里每打开一个程序都会创建一个进程ID,即PID。

    PID(进程控制符)英文全称为Process Identifier,它也属于电工电子类技术术语。
    PID是各进程的代号,每个进程有唯一的PID编号。它是进程运行时系统随机分配的,并不代表专门的进程。在运行时PID是不会改变标识符的,但是你终止程序后再运行PID标识符就会被系统回收,就可能会被继续分配给新运行的程序。
    含义
    只要运行一程序,系统会自动分配一个标识。
    是暂时唯一:进程中止后,这个号码就会被回收,并可能被分配给另一个新进程。
    只要没有成功运行其他程序,这个PID会继续分配给当前要运行的程序。
    如果成功运行一个程序,然后再运行别的程序时,系统会自动分配另一个PID。
    是暂时唯一:进程中止后,这个号码就会被回收,并可能被分配给另一个新进程。
    只要没有成功运行其他程序,这个PID会继续分配给当前要运行的程序。
    如果成功运行一个程序,然后再运行别的程序时,系统会自动分配另一个PID。
    操作系统中进程管理的基本原理 
     
    - 2 - 
    进程的三种基本状态 
     我们已经知道了进程实际是一个动态的概念,我们再回到分时系统的原理上。分时系统是给一个进程分配一个时间片,让这个进程执行,当进程时间片用完以后,为下一个进程分配时间片。当进程执行过程中发生阻塞,则主动让出CPU控制权,给其它进程执行的机会。   分析上面的过程,每一时刻只有一个进程处于执行的状态。而有多个进程处于等待分配时间片的状态,这多个进程应该遵循一定的顺序。事实上是存在于一个队列中。这种等待分配时间片的状态我们称为就绪状态,存放就绪进程的队列就称为就绪队列。当CPU处于空闲状态时,调度程序就会从就绪队列中取出一个进程并执行。当进程时间片用完后,调度信息就会把这个进程放入到就绪队列中。   除了时间片用完,当进程IO请求时,进程会在IO请求完毕之前无法继续执行,这类情况我们称为进程的阻塞(可能出现进程阻塞的有IO请求,申请缓冲空间等)。当出现进程阻塞后,调度程序应该怎么处理呢?首先进程肯定不能放入就绪态,因为放入就绪态就有可能被分配时间片,而此时进程不能继续执行,这就浪费了CPU资源。调度程序对其进行的处理是将其放到一个阻塞队列中,当IO完成时,再把它放回就绪队列等待分配时间片。   图1画出了进程就绪态,执行态和阻塞态的关系   
    使用Toyix查看进程的三种状态 
    Toyix是一个专门为操作系统的基础理论教学而编写的系统,通过这个系统可以很方便的模拟进程的创建执行过程。 
    从Toyix网站(http://www.toyix.net/)下载系统并安装(具体安装方式请参考网站教程)  
    启动toyix系统,如图 
     
     
    就绪 阻塞 执行 进程调度 时间片用完 事件发生 等待某事件 图1 进程就绪态、执行态和阻塞态的关系
  • 相关阅读:
    js之数组的方法
    js之选项卡
    js之数据类型的比较
    Android sharedUserId研究记录
    直接拿来用!最火的Android开源项目(一)
    [转]简约而不简单——Android SimpleAdapter
    [转]Android GC机制及一些调试信息
    sendToTarget 和 sendMessage 区别
    Android中内容观察者的使用---- ContentObserver类详解 (转)
    Inflate()
  • 原文地址:https://www.cnblogs.com/wangshuai6707/p/4430586.html
Copyright © 2011-2022 走看看