当前位置: 首页 > news >正文

关于网站开发的外文翻译青岛制作网站企业

关于网站开发的外文翻译,青岛制作网站企业,网站的网页,wordpress 4.5.3中固定链接查看进程优先级 再Linux系统中&#xff0c;我们可以用以下指令查看进程优先级 ps -la 先写一个死循环程序 #include<stdio.h> #include<unistd.h> int main() {while(1){printf("我是一个子进程\n");sleep(1);} }运行这个程序 并且查询程序优先级 其中…

查看进程优先级

再Linux系统中,我们可以用以下指令查看进程优先级

ps -la

 先写一个死循环程序

#include<stdio.h>
#include<unistd.h>
int main()
{while(1){printf("我是一个子进程\n");sleep(1);}
}

运行这个程序 并且查询程序优先级

 其中有两个重要的参数,分别是PRI和NI分别对应单词是priority和nice

PRI对应的就是进程优先级,PRI越小进程优先级越高,80是系统默认的优先级,PRI取值范围在

[60,99]这40个级别,为什么只设置40个级别,是因为防止有些进程优先级过高,导致一些优先级低的进程长时间得不到运行,造成进程饥饿

修改进程优先级

进程优先级满足一个运算公式

PRI=80+NI 

要修改一个进程的优先级,那么我们就要通过调整NI来进行修改

我们来尝试修改一个进程的优先级

我们先运行我们之前的进程

ps -la //获取进程优先级及其PID

 

然后我们输入top命令

top

 我们修改进程优先级,所以我们输入r

提示我们需要修改的是那个进程的PID,我们输入对应进程的PID即可

在输入我们想要的NI大小

再查看进程优先级大小

此时我们就通过修改NI的方式来修改了PRI

Linux内核进程调度队列

CPU中存在大量的寄存器,我们以一些常用的寄存器来举例子

eax/ebx/ecx/edx  用于存储临时数据,比如函数返回值

eds/ecs/fg/gs       段寄存器,用于区分代码和数据

eip    指针用于指明代码进行到那个位置

浮点数寄存器:浮点数运算

esp/ebp 构建栈区

程序在运行时,会产生非常多的数据,比如代码执行到那一块,代码输出了什么结果,定义了什么变量,这些数据,这种操作我们称作硬件上下文,

当我们进程执行结束,进程需要退出CPU时,进程再运行过程中产生的数据都会存储到进程的PCB中,这种操作我们称为保护上下文。 

当我们进程再次加载到CPU时,我们需要将我们之前执行进程产生的数据都拷贝给CPU,这种操作我们称为恢复上下文


我们来看看运行队列时如何调度的

Linux系统通过run_queue队列来调用进程

蓝色部分和红色部分是最重要的两个部分

我们先来看红色部分

 

queue是运行队列,其中0~99是正在运行的节点数,100~139是等待运行的节点数

nractive是一个整形,它用于记录queue里面有多少个位置是有数据的

bitmap[5]是一个位图,它有5个int数据,这5个int有每个有4个字节,对应160个比特位

这160个比特位里有140个比特位对应queue的140个数据

如果比特位为1则表示queue对应的位置有数据,如果比特位为0,那么对应的queue没有数据

queue是一个指针数组,每个指针对应一个链表,CPU从第100个开始将数据写入CPU运行

那么为什么会有两个表呢

 

这两个表可以有效解决饥饿问题,CPU会先执行一个表里面的进程,当这个表的进程执行完毕后,CPU会换另外一个表继续进行运算,红色的表执行完了,换蓝色的表,再某个表在执行的时候,不会将新的进程加载到正在执行进程的表中,会进程加载到另外一个表中,这样就解决了进程饥饿的问题

当我们只有run_queue,如果有一个进程优先级为70,那么如果一直有优先级为70的进程进入到这个表中,那么这个进程就会长时间得不到CPU的资源,就会造成进程饥饿问题,所以我们将新的进程链入另外一个表中,就能有效防止这种问题的产生

active指向是活跃进程队列,expired指向的是过期进程队列

CPU只执行活跃进程队列,过期进程队列用来存储新的进程

当活跃进程队列运行完毕,活跃进程队列变为过期进程队列 

http://www.dtcms.com/a/412713.html

相关文章:

  • 干净的下载网站新网站必须做301定向吗
  • 徐州品牌网站建设怎么创建一个公众号
  • 中英文双语网站 滑动切换建筑网络计划图
  • 开原网站网站建设摄影师的网站有哪些
  • 一级a做爰网站中国免费下载ppt模板网站有哪些
  • Python图书大数据平台 requests爬虫+Echarts+ Django当当图书数据分析大屏 爬虫+清洗+可视化 ✅
  • 134. 加油站
  • php做网站如何织梦搭建商城网站
  • 信息系统项目的交付绩效域
  • 合肥建立网站做设计挣钱的网站
  • 满天星建设网站家庭网络设计方案
  • 怎么提高网站浏览量wordpress+5.0
  • 【Ubuntu 24.04.3 LTS(Noble Numbat‌)】版本安装配置 MySQL8.4.6
  • 北京西站好的平面设计灵感网站
  • 心悦免做卡领取网站中企动力企业邮箱登陆首页
  • 商密保卫战:从实践案例看企业保密之道
  • RDSInstance 全面优化:打造高效智能的数据库实例管理系统
  • 东莞市官网网站建设品牌微网站如何建立
  • 桐乡网站设计公司网站后台账户密码
  • 网站推广外链怎么做高端个人网站
  • 阳东网站seo深圳定制型网站建设
  • 女装网站建设规划书怎么写湛江网站建设优化建站
  • 网站开发相关期刊比 wordpress
  • 校园二手书交易网站开发站群管理系统cms
  • 巴西支付行业的产品格局
  • 手机网站开发费用企业网站加快企业信息化建设
  • 哪个网站域名解析建设银行积分网站
  • 天津市哪里有做网站广告的新增备案 网站名字
  • 电子商务网站策划书3000字做的最好的网站公司
  • 建设眼镜网站风格织梦dedecms教育培训网站模板