



全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
嵌入式实时操作系统复习提纲一、基本概念1.嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。2.嵌入式系统的组成部分是嵌入式系统硬件平台、嵌入式操作系统和嵌入式系统应用。其中,嵌入式系统硬件平台为各种嵌入式器件、设备(如ARM、PowerPC、Xscale、MIPS等);嵌入式操作系统是指在嵌入式硬件平台上运行的操作系统,目前主流的嵌入式操作系统有嵌入式Linux、mCLinux、WinCE、mC/OS-、VxWorks等。RTOS有QNX,pSOS,vxworks,RT-Linux等. Linux内核主要是由进程调度、内存管理、虚拟文件系统、网络接口和进程间通信等组成。3Linux用户进程:进程控制块、系统堆栈、用户堆栈、程序代码及数据段组成;Linux可以管理512个进程,进程调度的police域有:SCHED_OTHER; SCHED_FIFO; SCHED_RR。Linux的进程控制相关的系统调用函数有:fork,exit,vfork,wait,execve等。Linux系统定义了五种状态进程状态 就绪状态 TASK_RUNNING0 可中断等待状态 TASK_INTERRUPTIBLE1 不可中断等待状态 TASK_UNINTERRUPTIBLE2 停止状态、僵尸状态 TASK_ZOMBIE4 中止状态 TASK_STOPPED8从Linux的调度来看,支持非实时(普通)和实时两种进程。4Linux 虚拟文件系统维护描述整个虚拟文件系统以及实际已挂装的文件系统的数据结构。嵌入式Linux系统中常见的文件系统有:yaffs, jsffs, cramfs等。文件系统的安装必须调用mount命令,把其他子系统安装到已经存在于文件系统的空闲节点上。文件系统类型的注册函数为register filesystem,超级用户卸载文件系统使用umount命令。交换机制:将不用或暂不用的页框中的页移出,装上新的页面;linux三级分页结构5考虑到中断处理的效率,Linux的中断处理程序分为两个部分:上半部(top half)和下半部(bottom half)。由外部设备引发的中断叫外部中断,处理器响应中断请求而执行的程序模块叫中断服务例程7进程的通信与同步机制有管道、信号、消息队列、共享内存和信号量集等el 中。Linux的管道有:匿名管道和命名管道;从信号的可靠性方面,信号可以分为:可靠信号和不可靠信号。8.linux设备驱动注册的基本参数有设备名称,设备驱动的数据结构、设备号 和 次设备号。lsmod 把现在 kernel 中已经安装的modules 列出来;insmod 把某个 module 安装到 kernel.二、基本原理和方法1、嵌入式系统设备驱动程序的主要功能?2Linux系统的设备分为如下三类:3、基于虚拟内存技术的程序执行两次映射:4、Buddy算法-伙伴算法5、Slab分配器思想6、Linux 内核的主要组成部分7、RT-Linux的获得及配置安装步骤1下载RT-Linux完整的源代码tar包;2解压rtlinux源代码tar包至usrsrc目录,并patch内核;3配置RT-Linux系统的子内核;4建立依赖关系;5编译内核及内核模块,并进行安装;6安装新内核;7配置Grub,编辑bootgrubgrub conf加上RT Linux启动选项;8重新启动计算机,进入RT-Linux系统;9配置RT-Linux;10建立依赖关系(可选,如跳过则后面的make命令会自动建立依赖关系);#make dep11编译RT-Linux内核及实时模块,并进行安装;12最后,启动RT-Linux内核模块。8、Linux的中断处理程序9、Linux系统进程调度的总体思想。实时进程优先于普通进程,实时进程以进程的紧急程度为优先顺序,普通进程以进程平等占用CPU时间为基本调度原则。10Linux系统驱动程序框架的功能包括三、Linux内核程序理解1. Linux使用内核函数goodness()对进程进行加权处理:Static inline goodness (struct task_struct * pint this_cpu, struct mm_struct *this_mm)Int weight; Weight=-1;If (p-policy & SCHED_YIELD)/ /*判断如果任务的调度策略被置为SCHED_YIELD的话,则置权值为1,返回。goto out;If (p-policy=SCHED_OTHER) /*先对普通进程进行处理(由于多数是普通进程,这样做有利于提高系统效率)*/weight=p-counter; /*返回权值为进程的counter值*/If (! weight)Goto out;#Ifdef CONFIG_SMPIf (p-processor=this_cpu)Weight+=PROC_CHANGE_PENALTY;#EndifIf (p-mm=this_mm|! p-mm)Weight+=1; /*对进程权值进行微调,如果进程的内存空间使用当前正在运行的进程的内存空间,则权值额外加1*/Weight+=20-p-nice; /*将权值加上20与进程优先级nice的差。普通进程的权值主要由counter值和nice值组成*/Goto out;Weight=1000+p-rt_priority; /对实时进程进行处理,返回权值为rt_priority+1000,确保优先级高于普通进程*/Out:return weight;2.小任务是指对要推迟执行的函数进行组织的一种机制。其数据结构为tasklet_struct,每个结构代表一个独立的小任务,其定义如下:struct tasklet_struct struct tasklet_struct *next; /*指向链表中的下一个结构*/ unsigned long state; /* 小任务的状态 */ atomic_t count; /* 引用计数器 */ void (*func) (unsigned long); /* 要调用的函数 */ unsigned long data; /* 传递给函数的参数 */;3.#include #include #include void testirq_interrupt(int,void *,struct pt_regs *);static int testirq_init(void);/*/void testirq_interrupt(int irq,void *d,struct pt_regs *regs)/*clear interrupt register for EINT5*/ SRCPND &= (0x00000010); INTPND = INTPND; EINTPEND &= (0x00000020); printk(Entered an interrupt! Beginning interrupt service!n);/*/static int _init testirq_init(void)static int result;unsigned long gpfup; set_external_irq(IRQ_EINT5, EXT_FALLING_EDGE, GPIO_PULLUP_DIS); gpfup = ioremap(0x56000058,4);(*(volatile unsigned long *)gpfup) = 0; disable_irq(IRQ_EINT5); enable_irq(IRQ_EINT5);result=request_irq(IRQ_EINT5,&testirq_interrupt,SA_INTERRUPT,testirq,NULL);if (result)printk(Cant get assigned irq %d,result=%dn,IRQ_EINT5,result);return result;printk(Testirq interrupt registered ok
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 丁腈手套合同样本
- 临时劳务雇佣合同标准文本
- 仔猪养殖购销合同标准文本
- 买煤合同样本
- 会计员合同标准文本
- 信息工程销售合同样本
- 个人土方购买合同标准文本
- 乡墅销售合同样本
- 中外购物合同样本
- 保安短期合同标准文本
- 压裂施工安全操作规定(正式)
- 生理卫生教学【青春期男生性教育】走向成熟课件
- 人工呼吸的三种方式和操作方法课件
- 项目基坑坍塌事故专项应急预案桌面演练脚本
- 危险化学品MSDS(氮气)
- 无创通气常用模式与参数调节
- 清远市城市树木修剪技术指引(试行)
- GB∕T 8427-2019 纺织品 色牢度试验 耐人造光色牢度:氙弧
- 退休人员实行社区管理申请书
- 全国同等学力工商管理大纲重点整理
- 机耕道监理实施细则完整
评论
0/150
提交评论