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

快速开发企业网站台州网站设计外包

快速开发企业网站,台州网站设计外包,石狮seo,wordpress 媒体库 ftp前言 本文将会向您进程的概念#xff0c;程序与进程的区别#xff0c;如何获取进程的标识符-pid 文章重点 1.描述进程——PCB 进程与程序的区别 CPU对进程列表的处理 2.获取进程PID 描述进程-PCB 进程概念 课本概念#xff1a;程序的一个执行实例或正在执行的程序 内核…前言 本文将会向您进程的概念程序与进程的区别如何获取进程的标识符-pid 文章重点 1.描述进程——PCB 进程与程序的区别 CPU对进程列表的处理 2.获取进程PID 描述进程-PCB 进程概念 课本概念程序的一个执行实例或正在执行的程序 内核概念担当分配系统资源CPU内存的实体 区分程序和进程 1.程序程序本质上就是一个文件是静态的存储在磁盘中 2.进程程序运行起来之后就叫做进程进程是动态的由操作系统进行管理 1 . 进程信息被放在一个叫做进程控制块的数据结构中可以理解为进程属性的集合。 2. 课本上称之为PCBprocess control block Linux操作系统下的PCB是: task_struct。 struct data { //id 标识符 //代码/函数地址 //状态(是否被CPU处理) //优先级 struct data* next }这个进程属性的结构体被称为PCB也叫做进程控制块 进程具体的属性如下 标示符: 描述本进程的唯一标示符用来区别其他进程。 状态: 任务状态退出代码退出信号等。 优先级: 相对于其他进程的优先级。 程序计数器: 程序中即将被执行的下一条指令的地址。 内存指针: 包括程序代码和进程相关数据的指针还有和其他进程共享的内存块的指针 上下文数据: 进程执行时处理器的寄存器中的数据[休学例子要加图CPU寄存器]。 IO状态信息: 包括显示的I/O请求,分配给进程的IO设备和被进程使用的文件列表。 记账信息: 可能包括处理器时间总和使用的时钟数总和时间限制记账号等。 其他信息 CPU对于进程列表的处理 进程被链接到链表中会等待CPU去PCB找数据做处理那么CPU怎么知道要处理哪些数据呢 进程排队把对应的PCB从链表中提取到队列中排队PCB中的数据不会一次性被CPU处理完它有时被处理有时在等待被处理 结论 进程 可执行程序内核数据结构PCB 进程标识符 每一个进程都有自己对应的pid查看当前进程的信息 什么是进程的pid呢 进程的pid是指进程的唯一标识符即进程IDProcessID。每个正在运行的进程都有一个唯一的pid用于操作系统在管理和跟踪进程时进行标识和区分。 ps ajx这种方式将全部的进程信息打印了出来不太好观察学习 可以利用死循环来观察 #includestdio.h #includeunistd.h int main() {while(1) //死循环{printf(我已经是一个进程了\n);sleep(1); //休眠一秒 } return 0; }我们可以使用以下命令来获取进程的标识符pid 在所有进程中搜索刚写的可执行程序并将进程的第一行打印 ps ajx | head -1 ps ajx | grep target | ps ajx | head -1getpid、getppid PPID父进程的标识符 观察到图中两个红色的target行处第一行是我们启动的进程第二行是grep这个命令的进程 我们也可以选择另外一种方式来获取进程的pid man手册中记录了getpidgetppid的使用 我们使用的getpid和getppid是系统调用函数 而在冯诺依曼体系中讲到,如何用户想要访问 底层的数据必须经过系统调用 #include stdio.h#include unistd.h#include stdlib.h#include sys/types.hint main(){pid_t id getpid();while(1){printf(我已经是一个进程了,我的pid是%d\n,id);sleep(1);}return 0;}获取父进程pid #include stdio.h#include unistd.h#include stdlib.h#include sys/types.hint main(){pid_t id getpid();pid_t parid getppid();while(1){printf(我已经是一个进程了,我的pid是%d...我的ppid是%d\n,id,parid);sleep(1);}return 0;}然后我们再运行程序 观察到每一次的运行子进程的pid都会发生改变而父进程的pid却不会变化 原因是每次运行时操作系统会为每个新的子进程分配一个唯一的进程标识符PID。这是因为PID是一个用于标识进程的数字它是在操作系统内部维护的一个计数器。当一个进程终止后其PID就会被释放并可以被其他新的进程重新使用。 在命令行中父进程一般是命令行解释器bash 小结 今日的分享就到这里啦本文仅仅是对进程的概念进行了描述后续将会持续更新fork、进程状态等相关知识点如果本文存在疏漏或错误的地方还请您能够指出
http://www.w-s-a.com/news/726208/

相关文章:

  • 音乐网站源码带手机版WordPress菜单调用不出
  • 昆明网站设计都需要设计什么网络推广岗位职责和任职要求
  • 国外公司网站模板网站建设公司选择意见书
  • 如何创建一个网站卖东西郑州 网站建设公司
  • 石景山郑州阳网站建设南京网站搜索引擎优化
  • 一个网站需要哪些备案书店网站建设策划书总结
  • 网站建设的重点是什么注册网站空间
  • 网站公司企业宗旨我的网站 dedecms
  • 沧州网站优化做详情图的网站
  • 中国建设银行公积金网站wordpress表单 post
  • 找权重高的网站方法wordpress视频网站上传视频
  • 营销型网站架构师迁移wordpress500错误
  • 做网站还是博客由()承担
  • wordpress 导购站模板中国最新军事新闻直播83军
  • 公众号h5网站开发wordpress文章主图
  • ps怎么艺术字字体设计网站我想自己做网站
  • 北京做机柜空调的网站模板网站和插件
  • 手机购物网站模板wordpress添加分类文档
  • 网站开发知识网上怎么申请个人营业执照
  • 音乐网站建设费用营销策略都有哪些4p
  • 深圳制作网站怎么样wordpress 学习视频
  • 新公司注册网站传奇手游大型网站
  • 无极网站网站涉案多少人被抓网站的按钮怎么做
  • ds216j做网站做购物网站那个好
  • 做淘宝门头的网站阿里巴巴官网app
  • 安踏网站建设策划方案如何通过域名访问网站
  • 建设网站破解版seo查询 站长之家
  • 太原模板建站平台旅游企业网站建设工作的通知
  • 网站国外建设超级简历模板官网
  • 上海网站建设市场医药网站怎么做