中国科学技术大学:《嵌入式操作系统 Embedded Operating Systems》课程教学资源(PPT课件讲稿)进程

进程 xlanchen@2006.6.8
进程 xlanchen@2006.6.8

主要内容 ·进程描述符 ·进程切换 ·进程的创建和删除 ·进程调度 xlanchen@2006.6.8 Embedded Operating Systems
xlanchen@2006.6.8 Embedded Operating Systems 2 主要内容 ⚫ 进程描述符 ⚫ 进程切换 ⚫ 进程的创建和删除 ⚫ 进程调度

进程的概念 ·进程是执行程序的一个实例 ·进程和程序的区别 。几个进程可以并发的执行一个程序 ·一个进程可以顺序的执行几个程序 xlanchen@2006.6.8 Embedded Operating Systems 3
xlanchen@2006.6.8 Embedded Operating Systems 3 进程的概念 ⚫ 进程是执行程序的一个实例 ⚫ 进程和程序的区别 ⚫ 几个进程可以并发的执行一个程序 ⚫ 一个进程可以顺序的执行几个程序

进程描述符 为了管理进程,内核必须对每个进程进行清晰 的描述 。 ·进程描述符提供了内核所需了解的信息 include/linux/sched.h struct task struct xlanchen@2006.6.8 Embedded Operating Systems
xlanchen@2006.6.8 Embedded Operating Systems 4 进程描述符 ⚫ 为了管理进程,内核必须对每个进程进行清晰 的描述。 ⚫ 进程描述符提供了内核所需了解的信息 ⚫ include/linux/sched.h struct task_struct

state flags need resched counter nike next task prev task -…-- run_list 中中十中■中✉ ttystruct p_optr 4量44量■长4业 tty assocloted with the process P_pptr 作struct Corent directory m业。 tty ACLAASEI8 files struct ointers t加fe descnptors mmstruct thread Painters to memory wreds descnotors fs signal struct files mm Signais received sigmask_lock sig
xlanchen@2006.6.8 Embedded Operating Systems 5 进程描述符

进程状态 ·可运行状态(TASK RUNNING) ● 可中断的等待状态(TASK INTERRUPTIBLE) ·不可中断的等待状态 (TASK_UNINTERRUPTIBLE) ·暂停状态(TASK STOPPED) ·僵死状态(TASK ZOMBIE) xlanchen@2006.6.8 Embedded Operating Systems 6
xlanchen@2006.6.8 Embedded Operating Systems 6 进程状态 ⚫ 可运行状态(TASK_RUNNING) ⚫ 可中断的等待状态(TASK_INTERRUPTIBLE) ⚫ 不可中断的等待状态 (TASK_UNINTERRUPTIBLE) ⚫ 暂停状态(TASK_STOPPED) ⚫ 僵死状态(TASK_ZOMBIE)

进程状态转换图 ●●● ●●●● 一个既在的 TASK ZOMBIE 进程调用fork 〔进程被终 来创建一个 止) 新进程 调度器选择一个task: schedule()call Task context switch 进程调用do exit forks 终止执行 TASK RUNNING TASK RUNNING 〔就绪,但是没 〔正在运行) 有在运行) 进程被高优先级的 进程抢占 进程睡眠在等待特定事件 或是资源的等待队列上 TASK INTERRUP TIBLE 事件发生或资源可用,进 ox 程被唤醒并被放到运行 TASK UNINTERRUP TIBLE 队列上 (等待中)
xlanchen@2006.6.8 Embedded Operating Systems 7 进程状态转换图

标识一个进程 ●使用进程描述符地址 进程和进程描述符之间有非常严格的一一对应关系, 使得用32位进程描述符地址标识进程非常方便 ·使用PID(Process ID,PID) 。每个进程的PID都存放在进程描述符的pid域中 xlanchen@2006.6.8 Embedded Operating Systems 8
xlanchen@2006.6.8 Embedded Operating Systems 8 标识一个进程 ⚫ 使用进程描述符地址 ⚫ 进程和进程描述符之间有非常严格的一一对应关系, 使得用32位进程描述符地址标识进程非常方便 ⚫ 使用PID (Process ID,PID) ⚫ 每个进程的PID都存放在进程描述符的pid域中

进程描述符 ●Linux为每个进程分配一个8KB大小的内存区 域,用于存放该进程两个不同的数据结构: 。进程描述符 。进程的内核堆栈 0x015无f肝 进程处于内核态时使用 STACK 不同于用户态堆栈 内核控制路径所用的堆栈 0x015fb000 很少,因此对栈和描述符 来说,8KB足够了 0x015ha878 0x015h3b PROCESS DESCRIPTOR xlanchen@2006.6.8 Embedded Opera awrent- 0x015fa000
xlanchen@2006.6.8 Embedded Operating Systems 9 进程描述符 ⚫ Linux为每个进程分配一个8KB大小的内存区 域,用于存放该进程两个不同的数据结构: ⚫ 进程描述符 ⚫ 进程的内核堆栈 进程处于内核态时使用 不同于用户态堆栈 内核控制路径所用的堆栈 很少,因此对栈和描述符 来说,8KB足够了

Task union C语言允许用如下的一个union:结构来方便的表 示这样的一个混合体 union task_union{ struct task struct task; unsigned long stack[INIT_TASK_SIZE/sizeof(long)]; }; =2048 xlanchen@2006.6.8 Embedded Operating Systems 10
xlanchen@2006.6.8 Embedded Operating Systems 10 Task_union ⚫ C语言允许用如下的一个union结构来方便的表 示这样的一个混合体 =2048
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 山东大学:《化工制图》课程教学资源(PPT讲稿)第十二章 计算机绘图软件简介.pptx
- 成都东软学院:《嵌入式系统原理与接口技术》课程教学资源(PPT课件讲稿)第5章 ARM接口设计技术(杨宗德).ppt
- 《Autodesk AutoCAD 2004》课程教学资源:PPT课件讲稿(前11章).ppt
- 西安电子科技大学:神经网络与模糊系统(PPT讲稿)Neural Networks & Fuzzy System.ppt
- 高等学校计算机应用规划教材:《HTML5+CSS3 网页设计基础教程》教学资源(PDF电子书)第1章 Web开发新时代.pdf
- 高等学校计算机应用规划教材:《SQL Server 2019 数据库教程》教学资源(PDF电子书)第1章 数据库基础.pdf
- 北京大学:《数据分析工具和实践》课程教学资源(讲稿)10 课程复习(二).pdf
- 北京大学:《数据分析工具和实践》课程教学资源(讲稿)09 ggplot2画图(二).pdf
- 北京大学:《数据分析工具和实践》课程教学资源(讲稿)08 ggplot2画图(一).pdf
- 北京大学:《数据分析工具和实践》课程教学资源(讲稿)07 R基本图形(二).pdf
- 北京大学:《数据分析工具和实践》课程教学资源(讲稿)06 R基本图形(一).pdf
- 北京大学:《数据分析工具和实践》课程教学资源(讲稿)05 课程复习(一).pdf
- 北京大学:《数据分析工具和实践》课程教学资源(讲稿)04 R编程结构.pdf
- 北京大学:《数据分析工具和实践》课程教学资源(讲稿)03 R数据对象(二).pdf
- 北京大学:《数据分析工具和实践》课程教学资源(讲稿)02 R数据对象(一).pdf
- 北京大学:《数据分析工具和实践》课程教学资源(讲稿)01 R简介.pdf
- 北京大学:《数据分析工具和实践》课程教学资源(讲稿)00 课程简介 Data Analysis Tools and Practice(Using R)R语言(主讲:孙惠平).pdf
- 《电子商务设计师教程》教材PDF电子书(第3版,前两章)第1章 电子商务概述、第2章 电子商务信息安全(2.1-2.2.3).pdf
- 中国科学技术大学:Decentralized Jointly Sparse Optimization by Reweighted Lq Minimization.ppt
- 安顺学院:《大学计算机基础》课程电子教案(PPT课件讲稿,共十章,含实验教学,Windows 7版).pps
- 中国科技大学计算机系:《黑客反向工程》课程教学资源(作业习题)历年黑客反向工程作业题目选编.docx
- 中国科技大学计算机系:《黑客反向工程》课程教学资源(PPT课件讲稿)防黑客技术简介(基本的”防”黑客技术 Basic Hacker Technique).ppt
- 中国科技大学计算机系:《黑客反向工程》课程教学资源(PPT课件讲稿)黑客反向工程导论(陈凯明).ppt
- 中国科技大学计算机系:《黑客反向工程》课程教学资源(PPT课件讲稿)破解和混合编程实例 Hacker Reverse Engineering.ppt
- 中国科技大学计算机系:《黑客反向工程》课程教学资源(PPT课件讲稿)通过不同途径搜索密码比较算法和实际破解例.ppt
- 中国科技大学计算机系:《黑客反向工程》课程教学资源(PPT课件讲稿)区块链简介(区块链详解).ppt
- 中国科技大学计算机系:《黑客反向工程》课程教学资源(PPT课件讲稿)注入攻击与防御(SQL攻击与防御).ppt
- 清华大学出版社:安全技术经典译丛(美)Justin Clarke《SQL注入攻击与防御》PDF电子书(SQL Injection Attacks and Defense).pdf
- 电子工业出版社:“十一五”国家重点图书出版规划项目(安全技术大系)《黑客反汇编揭密》PDF电子书(【俄】Kris Kaspersky,第二版,共四篇二十一章).pdf
- 银川能源学院:数据科学与大数据技术专业剖析(曹骜).pdf
- 《嵌入式系统及应用》课程教学资源(参考资料)实验用开发板手册 APP009(manual)dsPIC30F4011/4012/2010 Motor Control Family Evaluation Board.pdf
- 《嵌入式系统及应用》课程教学资源(参考资料)Microchip dsPIC30F 系列参考手册(高性能数字信号控制器).pdf
- 《嵌入式系统及应用》课程教学资源(参考资料)Microchip dsPIC 语言工具入门.pdf
- 《嵌入式系统及应用》课程教学资源(参考资料)Microchip dsPIC30F 4011_4012 数据手册(高性能16位数字信号控制器).pdf
- 《嵌入式系统及应用》课程教学资源(参考资料)Microchip dsPIC30F 数字信号控制器入门用户指南.pdf
- 《嵌入式系统及应用》课程教学资源(参考资料)Microchip dsPIC30F33F 程序员参考手册(高性能数字信号控制器).pdf
- 中国科学技术大学:《多媒体技术基础》课程教学资源(实验参考内容)MCAI1.0 演示实验.pdf
- 中国科学技术大学:《多媒体技术基础》课程教学资源(实验参考内容)多媒体素材制作实验.pdf
- 中国科学技术大学:《多媒体技术基础》课程教学资源(实验参考内容)视频编辑实验.pdf
- 中国科学技术大学:《多媒体技术基础》课程教学资源(实验参考内容)MCI 接口编程实验.pdf