- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
操作系统第讲进程的实现
第2讲 进程的实现 逻辑地址空间和物理地址空间 CPU使用逻辑地址,MMU完成逻辑地址和物理地址的映射 每个进程有各自独立的逻辑地址空间,进程切换导致 CPU使用不同的逻辑地址空间,需要重新设置MMU的映射参数 现代计算机系统内存管理极为复杂,切换地址空间需要极大代价 内核空间和用户空间 内核:CPU处于核心态所执行的代码和访问的数据 操作系统的核心,操作系统通常还提供运行在用户空间的用户界面、库函数、编译器、文本编辑器等应用程序 一组功能模块,每个模块包括一组内核函数和数据结构,常用汇编语言和C语言编程实现 实验:Linux下ps命令的实现 读取/proc目录下的文件,显示进程的运行信息 每个进程在/proc下一个目录,存储该进程的内核数据; ps命令访问进程目录下的stat文件; 进程所使用的终端号 %d tty 进程的会话ID %d session 进程的进程组ID %d pgrp 父进程PID %d ppid 进程状态;R:正在运行;S:可中断的阻塞态;D:不可中断的阻塞态;Z:僵死态;T:被跟踪 %c state 可执行文件的文件名 %s comm 进程标识 %d pid 实验:Linux下ps命令的实现 pid %d 进程标识 comm %s 可执行文件的文件名,包括路径 state %c 进程状态,“RSDZT”中的一个,R 是可运行态,S 是在可中断阻塞态,D 是不可中断阻塞态或挂起态,Z是僵死态,T 是被跟踪态 ppid %d 父进程 PID. pgrp %d 进程的进程组 ID. session %d 进程的会话 ID. tty %d 进程所使用终端. tpgid %d 当前拥有该进程所连接终端的进程所在的进程组 ID. flags %u 进程标志,不再使用 crt0 %s 检查数学仿真,不再使用 minflt %u 进程小错误数目 cminflt %u 进程及其子进程所导致的小错误数目 majflt %u 进程大错误数目 cmajflt %u 进程及其子进程所导致的大错误数目 实验:Linux下ps命令的实现 utime %d 进程被调度进用户态的时间(以 jiffy 为单位, 1 jiffy=1/100 秒) stime %d 进程被调度进内核态的时间, 以 jiffy 为单位 cutime %d 进程及其子进程被调度进用户态的时间,以 jiffy 为单位. cstime %d 进程及其子进程被调度进内核态的时间,以 jiffy 为单位. counter %d 时间片长度;如果进程不是当前正在运行的进程,就是进程在下个时间片能拥有的最大时间, 以 jiffy 为单位;如果进程是当前正在运行的进程,就是当前时间片中所剩下 jiffy 数目. priority %d 标准优先数加上 15,在内核里该值总是正的 timeout %u 当前至进程的下一次间歇时间,以 jiffy 为单位. itrealvalue %u 由于计时间隔导致下一个SIGALRM发送进程的时延 starttime %d 进程自系统启动以来的开始时间,以 jiffy 为单位. vsize %u 虚拟内存大小. rss %u 驻留大小;进程所占用的真实内存大小,以页为单位 rlim %u 当前进程的 rss 限制, 以字节为单位, 通常为 2,147,483,647 实验:Linux下ps命令的实现 startcode %u 正文部分地址下限. endcode %u 正文部分地址上限. startstack %u 堆栈开始地址. kstkesp %u esp(32 位堆栈指针) 的当前值 kstkeip %u EIP(32 位指令指针)的当前值. signal %d 待处理信号的 bitmap(通常为 0). blocked %d 被阻塞信号的 bitmap(对 shell 通常是 0, 2). sigignore %d 被忽略信号的 bitmap. sigcatch %d 被俘获信号的 bitmap. wchan %u 进程在其中等待的通道 * 计算机专业核心课程 第2讲 进程的实现 操 作 系 统Operating Systems 逻辑地址空间 物理地址空间 0000 进程 1 段n …… 段2 段1 FFFF 0000 进程 2 段n …… 段2 段1 FFFF 进程1段1 进程1段n 进程2段2 进程2段1 进程2段n 进程1段2 其他进程空间 空白 空白 内核空间:CPU处于核心态使用的逻辑地址范围 用户空间:CPU处于用户态使用的逻辑地址范围 用户空间的组成 SP main main的活动记录 P的活动记录 Q的活动记录 代码区、数据区:执行时从可执行文件中加载
文档评论(0)