- 1、本文档共29页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
嵌入式Linux操作系统第5章 操作系统进程 第1章 嵌入式Linux操作系统简介 第2章 Linux操作系统使用与系统配置 第3章 嵌入式Linux编程环境 第4章 存储管理 第5章 操作系统进程 第6章 进程间通信 第7章 中断与系统调用 第8章 文件管理 第9章 设备管理 第10章 嵌入式Linux的构建 第5章 操作系统进程 5.1 进程的基本概念 5.2 Linux系统进程 5.3 Linux进程的创建 5.4 Linux进程相关的系统调用 5.5 Linux的进程调度 5.6 实时Linux 思考题 5.1 进程的基本概念 在传统的操作系统中,程序并不能独立运行,作为资源分配和独立运行的基本单元都是进程。程序是一个普通文件,是机器代码指令和数据的集合,这些指令和数据存储在磁盘上的一个可执行映象(Executable Image)中。进程是由正文段(Text)、用户数据段(User Segment)以及系统数据段(System Segment)共同组成的一个执行环境,它是一个动态实体。相对的,程序是硬盘上存放的一个文件(代码)。当程序被运行,它也就成为了进程。 程序和进程的区别: 5.1 进程的基本概念 进程的组成部分如下: 正文段:存放被执行的机器指令。这个段是只读的,它允许系统中正在运行的两个或多个进程之间能够共享这一代码,但是不能对其内容进行更改。 用户数据段:存放进程在执行时直接进行操作的所有数据,包括进程使用的全部变量在内。显然,这里包含的信息可以被改变。虽然进程之间可以共享正文段,但是每个进程需要有它自己的专用用户数据段。 系统数据段:该段有效地存放程序运行的环境。如上图所示,这也是进程和程序的不同的一个原因之一。 5.1 进程的基本概念 Windows和Linux操作系统都属于多任务系统,可以同时运行多个进程。我们经常使用的Windows任务管理器可以清楚的列出当前系统运行的进程 线程是系统分配处理器时间资源的基本单元,或者说进程之内独立执行的一个单元。对于操作系统来说,其调度单元是线程。一个进程至少包括一个线程,通常将该线程称为主线程。一个进程从主线程的执行开始进而创建一个或多个附加线程,就是所谓基于多线程的多任务。 在Linux 2.6内核中,Linux采用了更为先进的线程模型:NPTL(Native POSIX Thread Library)。与传统的LinuxThreads线程模型比,NPTL与POSIX标准兼容,并且性能提升明显,也具备更好的可伸缩性。对Linux内核而言,线程和进程没有本质的区别,它们都是调度的基本单位(实际上,Linux内核基于进程机制实现线程),本书重点介绍进程的内容。 5.2 Linux系统进程 5.2.1 Linux进程基础 Linux进程一般分为交互进程、批处理进程和守护进程三类。与Windows任务管理器一样,我们在Linux中可以通过ps命令查看系统当前的进程,例如下面的命令列出系统所有的进程: [root@localhost ~]# ps -aux 如果进程太多,可以把ps命令的输出保存到一个文件中: [root@localhost ~]# ps -aux? mypsout ps是Linux进程管理中最重要的一个命令,它提供了很多的选项参数 ps命令的选项参数 5.2 Linux系统进程 5.2.1 Linux进程基础 ps的输出列说明: Linux进程状态: 5.2 Linux系统进程 5.2.2 进程描述符 Linux系统的每一个可调度实体都有一个进程描述符。进程描述符可以表示进程的各种状态信息,是内核操作进程的手段。进程描述符用task_struct数据结构表示,该结构包含了一个进程所拥有的各种信息,非常庞大,在内核文件的sched.h中定义。 每一个进程都有自己的进程号,该数字在系统中是唯一的,它存放在进程描述符的成员变量pid中: pid_t pid; 同样的,线程组号存放在成员变量tgid中: pid_t tpid; 这个结构大致可以分为以下几类: 进程状态。将纪录进程在等待、运行、或死锁; 调度信息。由哪个调度函数调度,怎样调度等; 进程的通讯状况; 因为要插入进程树,必须有联系父子兄弟的指针; 时间信息。比如计算好执行的时间,以便cpu 分配; 标号。决定改进程归属; 可以读写打开的一些文件信息; 进程上下文和内核上下文; 处理器上下文; 内存信息。 5.2 Linux系统进程 5.2.3 进程的状态与转换 进程对系统资源的竞争和进程之间的并发执行,使得一个进程在从创建到销毁的这个生命周期内要经历各种不同的状态的变化。一个进程的各种状态在task_struct结构中通过成员变量state、exit_state
您可能关注的文档
- 汽车总线控制技术与检修 教学课件 作者 骆孟波 主编 郝金魁 副主编 舒适系统CAN.ppt
- 汽车总线控制技术与检修 教学课件 作者 骆孟波 主编 郝金魁 副主编 诊断策略.ppt
- 汽车总装技术 教学课件 作者 海争平.ppt
- 汽油发动机电控系统检测与修复 教学课件 作者 杨洪庆 目录.ppt
- 汽油发动机电控系统检测与修复 教学课件 作者 杨洪庆 情境1.ppt
- 汽油发动机电控系统检测与修复 教学课件 作者 杨洪庆 情境2.ppt
- 汽油发动机电控系统检测与修复 教学课件 作者 杨洪庆 情境3.ppt
- 汽油发动机电控系统检测与修复 教学课件 作者 杨洪庆 情境4.ppt
- 汽油发动机电控系统检测与修复 教学课件 作者 杨洪庆 情境5.ppt
- 汽油发动机电控系统检测与修复 教学课件 作者 杨洪庆 情境6.ppt
- 场地脚手架工程施工方案(3篇).docx
- 2024年浙江省丽水市松阳县玉岩镇招聘社区工作者真题及参考答案详解一套.docx
- 2024年河南省郑州市惠济区古荥镇招聘社区工作者真题及答案详解一套.docx
- 2024年浙江省杭州市淳安县文昌镇招聘社区工作者真题及完整答案详解1套.docx
- 2024年浙江省台州市三门县小雄镇招聘社区工作者真题带答案详解.docx
- 2024年浙江省宁波市余姚市河姆渡镇招聘社区工作者真题及完整答案详解1套.docx
- 2024年浙江省丽水市景宁畲族自治县雁溪乡招聘社区工作者真题及答案详解一套.docx
- 2024年浙江省杭州市临安市板桥乡招聘社区工作者真题及答案详解一套.docx
- 2024年湖北省宜昌市点军区土城乡招聘社区工作者真题及答案详解一套.docx
- 2024年浙江省台州市路桥区桐屿街道招聘社区工作者真题附答案详解.docx
最近下载
- 《七律·长征》公开课教学PPT课件【部编人教版六年级语文上册】.ppt VIP
- 《基于深度学习的电商用户行为预测与精准营销策略优化》教学研究课题报告.docx
- 塔吊法福克M1280D说明书.pdf
- 管理者角色转身:从业务能手到团队领导者的蜕变.pptx
- 2025年上海市中考英语试卷(含听力文稿及参考答案)(2).pdf VIP
- GB 14784-2013 带式输送机 安全规范.docx VIP
- 弱电智能化工程质量管理.pdf VIP
- 铁路专业部分常用词汇中英文对照表.docx VIP
- 常见化疗药物及运用PPT课件.pptx VIP
- 2025年汽车驾驶员高级技师基本理论知识考试题附含答案.docx VIP
文档评论(0)