操作系统实例二:Linux.ppt

操作系统实例二:Linux.ppt

ID:62803730

大小:1.08 MB

页数:56页

时间:2021-05-23

操作系统实例二:Linux.ppt_第1页
操作系统实例二:Linux.ppt_第2页
操作系统实例二:Linux.ppt_第3页
操作系统实例二:Linux.ppt_第4页
操作系统实例二:Linux.ppt_第5页
资源描述:

《操作系统实例二:Linux.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第8章操作系统实例二:Linux2021/8/18目录8.1Linux的进程管理8.2Linux的存储管理8.3Linux的文件管理8.4Linux的设备管理18八月2021教学目标熟练掌握:Linux进程的组成,Linux的进程调度,Linux的虚拟存储空间,内存分配和页面淘汰策略,Linux文件系统的构成,EXT2对磁盘的组织,Linux设备管理概述,Linux对字符设备的管理,Linux对块设备的管理。掌握:Linux进程间的通信——消息队列,EXT2文件的物理结构,虚拟文件系统VFS。了解:管理虚拟存储空间的数据结

2、构,管理内存空间的数据结构。18八月20218.1Linux的进程管理8.1.1Linux的进程Linux系统的进程分为两大类:一类是系统进程,它运行在内核模式下,执行操作系统代码,完成一些管理性的工作;另一类是用户进程,通常在用户模式下运行,并通过系统调用或在中断、异常情况发生时进入内核模式。当考虑到响应的及时性时,Linux系统中的进程也可分为实时进程和普通进程。18八月2021Linux利用一个数据结构task_struct来表示一个进程。task_struct结构包含在文件include/linux/sched.h

3、中,主要包含以下信息:(1)进程标志:task_struct结构中定义了进程标志号PID、组标志号GID、用户标志号UID等。(2)进程状态:TASK_RUNNING、TASK_INTERRUPTIBLE、TASK_UNINTERRUPTIBLE、TASK_STOPPED、TASK_ZOMBIE。(3)进程调度信息:Linux进程调度程序利用这部分信息在就绪队列(run_queue)中选出一个就绪进程在CPU上运行。18八月2021(4)进程通信信息:用于消息队列、管道、信号量等进程通信。(5)进程的家族关系:每个进程的t

4、ask_struct结构中有许多进程指针,分别指向祖先进程即初始化进程、父进程、子进程等的task_struct结构,使系统中task_struct结构形成了一棵进程树。(6)时间和定时器:用于记录进程执行的总时间及进行软件定时。(7)文件系统信息:记录进程访问文件系统中相关文件的信息。(8)存储管理信息:task_struct结构中保存了进程虚拟内存空间信息及其与物理存储有关的信息。(9)处理机现场保留信息18八月20218.1.2Linux的进程调度在Linux系统中系统调度的基本单位是进程,当进程调度时机成熟时,进程

5、调度程序在多个进程间进行合理选择,为条件最佳的进程分配处理机并使之投入运行。Linux使用进程调度统一处理进程和内核线程,所以通过进程调度就可以得知线程调度的具体情况。Linux中进程调度涉及了3方面:调度方式、调度时机和调度策略。18八月20211.调度方式Linux采用“有条件的可剥夺”调度方式。对于普通进程,当其时间片用完时,调度程序挑选出下一个处于task_running状态的进程作为当前进程(自愿调度)。对于实时进程,若其优先级足够高,则会从当前的运行进程中抢占CPU成为新的当前进程(强制调度)。发生强制调度时,

6、若进程在用户空间中运行,就会被直接剥夺CPU;若进程在内核空间中运行,即使迫切需要其放弃CPU,也仍要等到它从系统空间返回之前才被剥夺CPU。18八月2021原因处理机执行的进程发生状态转换。直接执行调度程序。就绪队列中增加了新进程。正在执行的进程所分配的时间片用完。系统内核结束中断处理返回到用户态。执行系统调用的进程返回到用户态。2.调度时机调度时机是指重新进行进程调度,即重新分配处理机的时机。Linux中设置的进程调度标志为need_resched,当该标志为1时,可以执行进程调度程序。通常引起Linux系统中进程调度

7、的原因有以下几种:18八月20213.调度策略1)数据结构在task_struct中有4个与进程调度密切相关的参数:policy进程的调度策略。priority进程的调度优先级。普通进程的可用的时间片的初值即为该值。Rt-priority实时进程专用的调度优先级。实时进程的可用时间片的初值即为该值。counter进程可用的时间片记数。18八月2021抢占式调度。Vision01用优先级的设定,区分两类进程,实现多级调度。Vision03进程的分类和调度策略。Vision02依据优先级weight来选择可运行进程。Visio

8、n04特点2)调度策略的特点18八月20218.1.3Linux进程间的通信-消息队列Linux为进程间的通信提供了多种机制,常见的有信号、信号量、管道、消息队列和共享内存储区等。信号用于一个进程向另一个进程发出通知;而信号量则用于进程间取得同步;管道、消息队列和共享存储区都用于在进程间传递数据。消息队

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。