嵌入式操作系统原理ppt教学课件

嵌入式操作系统原理ppt教学课件

ID:33711095

大小:1.21 MB

页数:39页

时间:2018-05-24

嵌入式操作系统原理ppt教学课件_第1页
嵌入式操作系统原理ppt教学课件_第2页
嵌入式操作系统原理ppt教学课件_第3页
嵌入式操作系统原理ppt教学课件_第4页
嵌入式操作系统原理ppt教学课件_第5页
资源描述:

《嵌入式操作系统原理ppt教学课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、嵌入式操作系统原理嵌入式LINUX操作系统开发体系结构概览进程与调度管理内存管理文件系统系统调用体系结构概览体系结构概览内核的功能进程控制(processmanagement)内存管理(Memorymanagement)文件系统管理(Filesystemmanagement)设备驱动程序(Devicecontrol)网络(Networking)内核层次内核在系统中的位置用户进程系统调用接口内核硬件什么是Linux内核?从程序员的角度从用户的角度系统调用内核提供的一套C语言函数库称为系统调用应用程序使用系统调用完成编程任务系统调用分类进程管理进程间通信(IPC)文件系统管理网络编程(Sock

2、et)Linux结构Linux进程管理Linux是一个多任务多用户操作系统一个任务(task)就是一个进程(process)每一个进程都具有一定的功能和权限,它们都运行在各自独立的虚拟地址空间。在Linux中,进程是系统资源分配的基本单位,也是使用CPU运行的基本调度单位。Linux进程概述程序映像存放在磁盘上的可执行文件的代码和数据的集合称为可执行映象(ExecutableImage),即程序当一个程序(可执行映象)装入系统中运行时,它就形成了一个进程进程映像进程是由正文段(text)、用户数据段(usersegment)和系统数据段(systemsegment)组成的一个动态实体。正文

3、段中存放着进程要执行的指令代码,具有只读的属性,用户数据段是进程在运行过程中处理数据的集合,它们是进程直接进行操作的所有数据,以及进程使用的进程堆栈。系统数据段存放着进程的控制信息。其中包括进程控制块PCB。进程控制块PCB进程控制块PCB是名字为task_struct的数据结构,称为任务结构体任务结构体中容纳了一个进程的所有信息,是系统对进程进行管理和控制的有效手段,是系统实现进程调度的主要依据当一个进程被创建时,系统就为该进程建立一个task_struct任务结构体。当进程运行结束时,系统撤消该进程的任务结构体Linux在内存空间中开辟了一个专门的区域存放所有进程的任务结构体,在操作系

4、统的内核空间设置了一个task数组,该数组的每一个元素是一个指向任务结构体的指针,所以task数组又称为task向量。进程的任务结构体是进程存在的唯一标志,调度程序维护current指针,它指向当前正在运行的进程。Linux调度分析Linux进程的状态变化进程状态运行态:进程正在使用CPU运行的状态。处于运行态的进程又称为当前进程(currentprocess)可运行态:进程已分配到除CPU外所需要的其它资源,等待系统把CPU分配给它之后即可投入运行等待态:又称睡眠态,它是进程正在等待某个事件或某个资源时所处的状态。等待态进一步分为可中断的等待态和不可中断的等待态。处于可中断等待态的进程可

5、以由信号(signal)解除其等待态。处于不可中断等待态的进程,一般是直接或间接等待硬件条件。它只能用特定的方式来解除,例如使用唤醒函数wake_up()等暂停态:进程需要接受某种特殊处理而暂时停止运行所处的状态。通常进程在接受到外部进程的某个信号进入暂停态,例如,正在接受调试的进程就处于这种状态。僵死态:进程的运行已经结束,但它的任务结构体仍在系统中。核心态和用户态Linux的进程处理机上运行时,处理机提供了两种不同的的执行状态,核心态(kernelmode)和用户态(usermode)。核心态又称系统态,它具有较高的特权,能执行所有的机器指令,包括由操作系统执行的特权指令,能访问所有的

6、寄存器和存储区域,能直接控制所有的系统资源。Linux在执行内核程序时是处于核心态下。用户态是进程的普通执行状态,在用户态下进程具有较低的特权,只能执行规定的机器指令,不能执行特权指令。进程在用户态下只能访问进程的存储空间。在用户态下进程不能与系统硬件相互作用,不能访问系统资源。Linux进程调度方式Linux系统采用抢占调度方式,又称可剥夺调度方式。采用这种调度方式时,对于当前运行的进程而言,当有更紧急的进程到来时,系统将剥夺当前进程使用处理机的权利,立即停止它在处理机上的运行,而把处理机分配给那个更紧急的进程。Linux采用时间片轮转法。对某个运行中的进程,当它的时间片用完时,系统将停

7、止它的运行并把处理机分配给其它进程。Linux进程调度方法Linux进程调度采用动态优先级法,调度对象是可运行队列,可运行队列中优先级大的进程首先得到CPU投入运行。进程在运行中,counter的代表进程的动态优先级。Linux采取了加权的方法来保证实时进程优先于普通进程。进程调度时机时机1.进程状态发生变化时。处于运行态下的进程要等待某种资源,运行态下的进程在程序执行完毕后,一般通过调用内核函数do_exit()终止运

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

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

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