第5章 内核简介 (2学时).ppt

第5章 内核简介 (2学时).ppt

ID:48754621

大小:563.00 KB

页数:57页

时间:2020-01-21

第5章 内核简介 (2学时).ppt_第1页
第5章 内核简介 (2学时).ppt_第2页
第5章 内核简介 (2学时).ppt_第3页
第5章 内核简介 (2学时).ppt_第4页
第5章 内核简介 (2学时).ppt_第5页
资源描述:

《第5章 内核简介 (2学时).ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第5章Linux内核简介主要内容Linux核心的一般结构进程的概念、进程的调度和进程通信文件系统的构成和管理内存管理设备驱动及中断处理5.1概述Linux系统大致可分为三层:靠近硬件的底层是内核,即Linux操作系统常驻内存部分。中间层是shell层,即操作系统的系统程序部分。最高层是应用层,即用户程序部分内核是Linux操作系统的主要部分,实现进程管理、内存管理、文件系统、设备驱动和网络系统等功能。5.2.1进程和线程的概念5.2.2进程的结构5.2.3对进程的操作5.2.4进程调度5.2.5shell基本工作原理5.2进程管理5.2.1进程和线程的

2、概念1.进程及其状态简单说来,进程就是程序的一次执行过程。进程至少要有三种基本状态:运行态、就绪态和封锁态(或等待态)。进程的状态可依据一定的条件和原因而变化条件满足进程的模式和类型在Linux系统中,进程的模式划分为用户模式和内核模式;按照进程的功能和运行的程序来分,进程划分为两大类:系统进程、用户进程若无其事当前运行的是用户程序、应用程序或者内核之外的系统程序,则在用户模式下运行。在用户程序执行过程中,如果使用了系统调用,或者发生了中断,就要运行操作系统程序,进程模式变为内核模式。系统进程只运行在内核模式用户进程可以在用户模式和内核模式下运行4.L

3、inux线程线程和进程是紧密相关的概念,一般来说,Linux系统中的进程应具有一段可执行的程序、专用的系统堆栈空间、私有的“进程控制块”、独立的存储空间。而Linux系统中,线程只具有前3个组成部分,缺少自己的存储空间。5.2.2进程的结构包含下列几方面的信息:·进程状态·调度信息·标志符·内部进程通讯·链接信息·时间和计时器·文件系统·虚拟内存·处理器信息1、task_struct结构Linux系统中的每个进程都有一个名为task_struct的数据结构,它相当于“进程控制块”;在进程被创建时,系统从内存中分配一个task_struct的数据结构。2

4、.进程系统堆栈每个进程都有一个系统堆栈,用来保存中断现场信息,以及进程进入内核模式后的返回现场信息;系统堆栈和task_struct数据结构之间存在紧密联系,二者物理存储空间也连在一起系统堆栈的大小静态确定。5.2.3对进程的操作1.进程的创建各个进程构成了树形的进程族系;内核在完成了基本的初始化以后,就有了系统的第一个进程(即初始化进程);所有其他的进程和内核线程都由这个原始进程或其子孙进程所创建。进程是有“生命期”的动态过程,包括创建、撤销、挂起、恢复等等。2.进程的等待父进程创建子进程,往往是让子进程替自己完成某项工作,因此,创建之后,父进程通常

5、需要等待子进程运行结束;父进程可用系统调用wait()等待它的子进程终止;3.进程的终止进程可使用系统调用exit()终止自己;其实现算法如下:(1)撤消所有的信号量。(2)释放其所有的资源,包括存储空间、已打开的文件、工作目录、信号处理表等。(3)置进程状态为“终止态”(TASK_ZOMBIE)。(4)向它的父进程发送子进程终止的信号。(5)执行进程调度。4.进程映像的更换由于创建子进程的过程,是把父进程的映象复制给子进程,子进程开始执行的入口地址,也是执行完毕后的返回地址;如果子进程不改变自己的映象文件,则会重复父进程的过程,为此,要改变子进程的映

6、象,使其执行另外的特定程序;改换进程映像的工作很复杂,是由系统调用execve()实现的,它用一个可执行文件的副本来覆盖该进程的内存空间。5.2.4进程调度任何程序要占用CPU,真正处于执行状态,就必须经由进程调度;进程调度机制要兼顾以下三种不同进程的需要:交互进程:需要经常响应用户操作,着重于系统的响应速度,使得共有一个系统的各个用户,都感到自己在独占系统,典型的交互程序有shell,文本编辑器;批处理进程:也称作“后台作业”,在后台运行,对响应速度无要求,只考虑“平均速度”,如:编译程序、科学计算等;实时进程:对时间有很高要求,不仅考虑平均速度,还

7、对完成任务的时间限制有要求。进程调度机制主要涉及到调度方式、调度时机和调度策略1.调度方式Linux内核的调度方式,基本上采用“抢占式优先级”,即:当进程在用户模式下运行时,在一定条件下(如:时间片用完),内核调度其他进程进入运行;在选择其他进程时以优先级为基础,即:系统中的每个进程都有个优先权,反映了该进程可以获得CPU使用权的资格;从进程就绪队列中选择一个优先权最高的进程,为其分配一个CPU时间片;运行过程中,当前进程的优先级随时间递减,从而经过一段时间后,以前优先级较低的进程就相对“提升”了优先级,有机会运行;当所有进程优先级都变为0时,就重新计

8、算一次优先级。2.调度策略——三种不同的调度策略SCHED_FIFO适合于短实时进程,对时间性

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

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

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