欢迎来到天天文库
浏览记录
ID:33592275
大小:320.27 KB
页数:15页
时间:2019-02-27
《嵌入式实时操作系统教程8》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、开源实时嵌入式操作系统原理和实践程序员篇(8)品质是价值和TM尊严的体现1课程目的¢介绍μTenux的基本原理¢掌握μTenux的主要系统调用¢学会基本的实时多任务设计方法悠龙软件版权所有©22面向对象¢有志于从事嵌入式软件设计人员¢有C语言基础¢掌握KEILMDK或IAREWARM或μT/Studio开发知识¢有一定操作系统原理基础知识悠龙软件版权所有©33课程设计思路¢理论和实践结合¢练习紧密结合μTenux套件¢讲解和练习囊括主要的系统调用悠龙软件版权所有©44议程¢1.Tenux的概要¢2.μT
2、/Kernel的任务管理¢3.μT/Kernel的任务间同步和通信¢4.μT/Kernel的任务间扩展同步和通信¢5.μT/Kernel的内存管理¢6.μT/Kernel的时间管理¢7.μT/Kernel的中断管理¢8.μT/Kernel的系统状态管理悠龙软件版权所有©55μT/OS的功能¢μT/Kernel:μTenux内核¢任务管理¢任务同步和通信功能¢任务扩展同步和通信功能¢内存池管理功能¢时间管理功能¢中断管理功能¢系统状态管理功能¢调试支持功能悠龙软件版权所有©66系统状态管理¢系统状态管理函
3、数是用来改变和查询系统状态的函数。这些函数所提供的功能为:翻转队列中的任务优先级,获取处于运行状态的任务ID,禁止或使能任务分派,查询上下文和系统,以及查询μT/Kernel版本。悠龙软件版权所有©77系统状态管理SVC¢翻转就绪队列:ERercd=tk_rot_rdq(PRItskpri);¢翻转优先级为tskpri的任务优先权¢PRItskpri任务优先级¢获取任务标识符:IDtskid=tk_get_tid();¢获取当前处于运行状态的任务ID号¢如果没有任何任务处于运行状态,则返回0悠龙软件版权
4、所有©88系统状态管理SVC¢禁止分派:ERercd=tk_dis_dsp();¢禁止任务分派,该状态将一直维持到tk_ena_dsp被调用为止。¢当分派被禁止时,调用任务不会由运行状态变成就绪状态或等待状态。但是外部中断仍然使能。¢允许分派;ERercd=tk_ena_dsp();¢允许任务分派,取消tk_dis_dsp系统调用对分派的禁止。¢如果调用tk_ena_dap的任务并不处于禁止分派状态,那么,允许分派的状态继续保持,而不反回错误编码悠龙软件版权所有©99系统状态管理SVC¢查询系统状态:E
5、Rercd=tk_ref_sys(T_RSYS*pk_rsys);¢T_RSYS*pk_rsys返回状态信息的数据包地址,包含的详细内容:¢sysstat值的含义¢UINTsysstat系统状态¢IDruntskid当前处于运行状态的任务ID¢IDschedtskid被调度下一个运行的任务ID¢sysstat值的含义¢TSS_TSK任务部分正在执行¢TSS_DDSP禁止分派¢TSS_DINT禁止中断¢TSS_INDP任务无关部分正在执行¢TSS_QTSK准任务部分正在执行悠龙软件版权所有©1010系统状
6、态管理SVC¢查询版本信息:ERercd=tk_ref_ver(T_RVER*pk_rver);¢T_RVER*pk_rever版本信息数据包的起始地址¢pk_rever包含的详细内容:¢UHmakerμT/kernel制造商代码¢UHpridμT/kernel的ID¢UHspver规范的版本号¢UHprverμT/kernel的版本号¢UHprono[4]μT/kernel产品管理信息悠龙软件版权所有©1111系统状态管理SVC¢maker是执行开发商的制造商代码。prid是由开发商指定的,是用来区分
7、产品类型的唯一编号。将制造商代码和prid结合在一起将构成一个独特的uT/Kernel的标识符。¢spver值是规范版本号。高4(MAGIC)位给出的是RTON规范系列,一个用来识别OS的编号。低12(specVerS)位指示的是uT-Kernel规范的执行版本,产品基于RTON的规范版本,将以3位的BCD码给出。¢prver是uT/Kernel的执行版本号,由实现开发商决定。pron是一个返回参数,其值的含义由实现开发商来决定。悠龙软件版权所有©1212思考题¢系统状态参数runtskid和sched
8、tskid为什么通常情况下是相等的?¢系统版本的版本信息在何处设置?查询出的编号代表什么含义?悠龙软件版权所有©1313参考资料¢网站¢Tenux开源社区:www.tenux.org¢T-ENGINE中国开源社区:¢www.tecoss.org¢T-Engine论坛:www.t-engine.org¢书籍:¢Tenux开源社区:¢μTenux内核规范¢T-ENGINE论坛:¢T-Kernel规范(中/日/英)¢北京航空航天大学出版社:¢源码
此文档下载收益归作者所有