商家名称 | 信用等级 | 购买信息 | 订购本书 |
轻松自编小型嵌入式操作系统(陈旭武著) | |||
轻松自编小型嵌入式操作系统(陈旭武著) |
《轻松自编小型嵌入式操作系统》由北京航空航天大学出版社出版。
第1篇 小型嵌入式操作系统基础
第0章 概 述
第1章 实现一个简单的3任务调度系统
1.1 硬件和软件的准备
1.1.1 实验开发板
1.1.2 集成环境开发工具软件
1.2 构建简单的3任务调度操作系统
1.2.1 用KEIL C51建立一个工程
1.2.2 定义系统需要的变量
1.2.3 系统初始化及建立任务函数
1.2.4 建立一个简单的任务调度器
1.2.5 在实验板上运行
总结
第2章 嵌入式操作系统的程序文件
2.1 RW/CZXT-1.0嵌入式操作系统的功能和特点
2.2 RW/CZXT-1.0嵌入式操作系统的程序文件
2.2.1 系统的宏定义文件:XT-HDY.H
2.2.2 系统的配置文件:XT-PZ.H
2.2.3 系统的头文件XT.H
2.2.4 系统的初始化文件XT-INT.C
2.2.5 系统的调度文件XT- TD.C
2.2.6 系统任务管理文件XT-RWGL.C
2.2.7 系统时间管理文件XT-SHIJ.C
2.2.8 信号量、邮箱文件XT-XHL.C,XT-XXYX.C
2.2.9 消息队列功能文件XT-XXDL.C
2.2.10 内存管理功能文件XT-NCGL C
2.2.11 系统服务功能文件XT-FUWU C
2.2.12 系统MAIN文件XT-MAIN.C
总结
第3章 系统变量定义及初始化
3.1 系统的宏定义
3.1.1 系统状态模式的宏标志
3.1.2 任务状态宏标志
3.1.3 其他宏标志
3.2 系统变量的定义及其作用
3.2.1 定义系统管理控制块
3.3.2 定义任务的任务栈
3.2.3 定义任务的运行队列
3.3 任务控制块的定义及其作用
3.3.1 定义一个类型结构体:RWK
3.3.2 用类型结构体为每个任务定义任务控制块
3.4 系统的初始化操作
3.4.1 系统变量初始化
3.4.2 系统总初始化函数的结构
3.5 静态创建应用任务
3.5.1 在系统的头文件XT.H中,声明任务函数
3.5.2 定义任务栈
3.5.3 把任务函数的人口地址存放在任务栈中
3.5.4 初始化任务控制块
3.3.5 任务在运行队列中进行登记
3.5.6 在MAIN文件中编写任务函数模型
3.6 系统基础模型的编译和调试
3.6.1 在MAIN文件中加入各个程序文件
3.6.2 为系统建立MAIN函数
3.6.3 编译和调试
3.6.4 采用简单的方式启动任务运行
总结
第4章 任务调度器设计
4.1 时间片轮转调度方法
4.1.1 时间片轮转调度工作原理
4.1.2 时间片轮转调度工作模式
4.1.3 基于“优先和普通结合”的时间片轮转调度算法
4.1.4 提高系统实时性的其他方法
4.2 任务运行队列
4.2.1 运行队列的结构
4.2.2 运行队列的操作
4.3 堆栈原理、堆栈操作
4.3.1 任务栈设计
4.3.2 堆栈操作
4.4 任务调度器设计与实现
……
第2篇 内核功能扩展
第3篇 操作系统的应用实战
版权页:
插图:
①运行-延时:当前运行任务自身工作完成后,任务自动放弃运行时间片,放弃CPU的使用权,任务进入延时等待,任务延肘的时间被保存在任务控制块中,该延时时间由用户设定。
②延时-就绪:延时任务等待的延时时间完成后,在系统定时器中断服务中会控制任务退出延时状态,同时把任务登记在运行队列中。
任务进入延时状态,等待延时时间,是任务自动放弃运行时间片,放弃CPU的使用权的一种常用的方法,在实际应用时,该方法是运用最多的一种。RW/CZXT-1.0小型嵌入式操作系统中,时间延时函数的功能就是控制任务进行延时。
2.停止状态
①就绪-停止:登记在运行队列中的就绪任务,如果被其他正在运行的任务挂起时,其状态会从就绪状态改变为停止状态,处于就绪状态的任务因未进入运行,不能自己挂起自己。
②运行-停止:正在运行的任务,如果任务自己挂起自己的时候,任务的状态会从运行态改变为停止状态。
③停止-就绪:处于停止状态的任务,当其他正在运行的任务发出恢复信号时,任务会重新进入就绪状态,并在运行队列中登记,任务开始等待调度。
操作系统中,只有正在运行的任务才能发出挂起信号和发出恢复信号。RW/CZXT-1.0小型嵌入式操作系统中,任务被挂起之前,都会把任务当前所处的状态保存在任务控制块中,任务被恢复之后,任务会恢复到挂起前的状态。如某个任务被挂起时,任务刚好处于等待延时状态,任务被挂起后,任务处于停止状态,暂停等待延时时间,任务被恢复后,任务会继续等待未完成的延时时间。
相关阅读:
更多图书资讯可访问读书人图书频道:http://www.reAder8.cn/book/