cpu资源分配的先后顺序,就是指进程的优先权(priority)。
如何查看系统进程
在 linux 或者 unix 系统中,用 ps –l 命令则会类似输出以下几个内容:
我们很容易注意到其中的几个重要信息,有下:
UID : 代表执行者的身份PID : 代表这个进程的代号PPID :代表这个进程是由哪个进程发展衍生而来的,亦即父进程的代号PRI :代表这个进程可被执行的优先级,其值越小越早被执行NI :代表这个进程的 nice 值
PRI and NI
PRI 即进程的优先级,或者通俗点说就是程序被 CPU 执行的先后顺序,此值越小,进程的优先级别越高NI 就是我们所要说的 nice 值,其表示进程可被执行的优先级的修正数值加入 nice 值后,将会使得 PRI 变为: PRI(new)=PRI(old)+nice这样,当 nice 值为负值的时候,那么该程序将会优先级值将变小,即其优先级会变高,则其越快被执行所以,调整进程优先级,在 Linux 下,就是调整进程 nice 值nice 其取值范围是 -20 至 19 ,一共 40 个级别
使用top命令来更改进程的nice:
进入top后按“r”–>输入进程PID–>输入nice值
更改myproc的nice值为-10:
注意:nice值的范围为[-20,19),当更改的nice>19时,还是按19来设定,当更改的nice<-20时,还是会按-20来设定。
其它概念
竞争性: 系统进程数目众多,而 CPU 资源只有少量,甚至 1 个,所以进程之间是具有竞争属性的。为了高效完成任务,更合理竞争相关资源,便具有了优先级独立性: 多进程运行,需要独享各种资源,多进程运行期间互不干扰并行: 多个进程在多个 CPU 下分别,同时进行运行,这称之为并行并发: 多个进程在一个 CPU 下采用进程切换的方式,在一段时间之内,让多个进程都得以推进,称之为并发