网站建设绩效考核表,淄博云天网站建设推广,微信开放文档官网,嘚嘚笔记 wordpress主推1、基本概念 cpu资源分配的先后顺序#xff0c;就是指进程的优先权#xff08;priority#xff09;。 优先权高的进程有优先执行权利。配置进程优先权对多任务环境的linux很有用#xff0c;可以改善系统性能。 还可以把进程运行到指定的CPU上#xff0c;这样一来就是指进程的优先权priority。 优先权高的进程有优先执行权利。配置进程优先权对多任务环境的linux很有用可以改善系统性能。 还可以把进程运行到指定的CPU上这样一来把不重要的进程安排到某个CPU可以大大改善系统整 体性能 什么是优先级优先级进程获取cpu资源分配的先后顺序就是指进程的优先权。优先权高的进程有优先执行权利。
为什么有优先级优先级存在的主要原因就是CPU资源是有限的一个CPU一次只能运行一个进程。如果进程太多需要通过优先级来竞争资源。所以需要存在进程的优先级来确定进程获取CPU资源的先后顺序。
2、LINUX中的优先级 在 linux 或者 unix 系统中用 ps –l 命令则会类似输出以下几个内容 UID : 代表执行者的身份。 PRI 代表这个进程可被执行的优先级其值越小越早被执行。 NI 代表这个进程的nice值 。 1、PRI和NI ~ PRI即进程的优先级通俗点说就是程序被CPU执行的先后顺序此值越小进程的优先级别越高。 ~ NI就是我们所要说的nice值了其表示进程可被执行的优先级的修正数值。 ~ PRI值越小越快被执行那么加入nice值后将会使得PRI变为PRI(new)PRI(old)nice这样当nice值为负值的时候那么该程序将会优先级值将变小即其优先级会变高则其越快被执行。 ~ 调整进程优先级在Linux下就是调整进程nice值。 ~ nice其取值范围是-20至19一共40个级别。 从上面的图中我们可以知道PRI默认是80NInice值默认是0。 2、通过top命令更改进程NI值 top命令就相当于Windows操作系统中的任务管理器它能够动态实时的显示系统当中进程的资源占用情况。 然后按 r 键系统就会提示你输入需要修改NI值的进程的PID。 输入进程PID并回车后系统会提示你输入调整后的nice值。 修改完后我们查看一下新的优先级我们再用ps命令查看进程的优先级信息即可发现进程的NI变成了14PRI变成了94 若是想将NI值调为负值也就是将进程的优先级调高需要使用sudo命令提升权限。 3、四个特性 ~ 竞争性: 系统进程数目众多而CPU资源只有少量甚至1个所以进程之间是具有竞争属性的。为了高效完成任务更合理竞争相关资源便具有了优先级。 ~ 独立性: 多进程运行需要独享各种资源多进程运行期间互不干扰。 ~ 并行: 多个进程在多个CPU下分别同时进行运行这称之为并行。 ~ 并发: 多个进程在一个CPU下采用进程切换的方式在一段时间之内让多个进程都得以推进称之为并发。 3、进程切换
上面讲到并发多个进程在一个CPU下采用进程切换的方式在一段时间之内让多个进程都得以推进称之为并发。
如何切换
首先先了解一下时间片大部分电脑只有一个CPU所以一次只能运行一个进程。进程在运行的时候占有CPU但是却不是一直占有到进程结束因为进程都有自己的时间片有了时间片的存在进程会出现没有被执行完就被停止执行的情况。
简单来说时间片就是一个进程在一次占用CPU资源时所能占用的时间时间一到不管程序是否执行完都将切换到下一个进程来使用CPU。如果没有执行完只有等下次再使用了CPU资源了。
但是等下一次再次使用CPU资源时我们怎么才能继续从上次运行到的地方接着运行呢
如果一个进程正在运行CPU内的寄存器里面保存的是该进程的临时数据例如运行完一个函数该函数有一个返回值而这个返回值就存储在寄存器中。临时数据也叫做上下文数据。
当该进程因时间片到了要被切换时进程会带走自己的上下文数据数据保存至PCB里。下次回来的时候能够恢复上去能够按照之前的逻辑继续向后运行就像没有中断过一样。
注寄存器被所有进程共享上下文有多个分别对应不同的进程。