顶部
收藏

嵌入式操作系统


作者:
廖勇 杨霞
定价:
38.20元
ISBN:
978-7-04-046607-2
版面字数:
460千字
开本:
16开
全书页数:
328页
装帧形式:
平装
重点项目:
暂无
出版时间:
2017-01-16
读者对象:
高等教育
一级分类:
计算机/教育技术类
二级分类:
计算机科学与技术专业课程

本书主要介绍嵌入式操作系统内核的工作原理和设计思路。以开源嵌入式操作系统μC/OS II 为例,深入剖析其在嵌入式平台ARM9 Mini2440(处理器为三星S3C2440A)上的实现,重点描述内核基本调度机制、调度策略、任务协调机制(通信、同步、互斥等)、事务处理机制(中断、时钟等)、内存管理机制的设计和实现,并对嵌入式操作系统在不同嵌入式硬件平台上的移植等进行介绍。在此基础上,介绍实时调度理论、可信保障理论以及基于嵌入式操作系统的应用程序开发方法等内容。

本书可作为计算机及相关专业嵌入式系统方向高年级本科生的必修课教材,也可作为相关专业的选修课教材,同时可作为对嵌入式操作系统有浓厚兴趣的读者的参考资料。

  • 前辅文
  • 第1章 嵌入式操作系统概述
    • 1.1 什么是嵌入式操作系统
    • 1.2 嵌入式操作系统的特点
    • 1.3 嵌入式操作系统的主要功能
    • 1.4 嵌入式操作系统的体系结构
      • 1.4.1 单块结构
      • 1.4.2 层次结构
      • 1.4.3 微内核结构
      • 1.4.4 构件化结构
      • 1.4.5 其他体系结构
    • 1.5 嵌入式操作系统的应用领域
    • 1.6 典型嵌入式操作系统
      • 1.6.1 VxWorks
      • 1.6.2 QNX
      • 1.6.3 Windows CE
      • 1.6.4 Embedded Linux
      • 1.6.5 Android
      • 1.6.6 iOS
      • 1.6.7 Symbian OS
      • 1.6.8 TinyOS
      • 1.6.9 μC/OS
    • 1.7 嵌入式操作系统的发展趋势
    • 习题
  • 第2章 任务调度机制
    • 2.1 任务相关基本概念
    • 2.2 任务描述
    • 2.3 创建任务
      • 2.3.1 临界段代码保护
      • 2.3.2 堆栈初始化
      • 2.3.3 TCB 初始化
      • 2.3.4 将新创建的任务挂载到就绪队列
      • 2.3.5 调用OS_Sched()
      • 2.3.6 创建任务扩展
      • 2.3.7 编写任务函数
    • 2.4 调度任务
      • 2.4.1 调度前的准备
      • 2.4.2 找到最高优先级任务
      • 2.4.3 任务切换
    • 2.5 其他基本调度机制
      • 2.5.1 挂起任务
      • 2.5.2 恢复任务
      • 2.5.3 删除任务
      • 2.5.4 改变任务优先级
      • 2.5.5 堆栈检查
      • 2.5.6 请求删除任务
      • 2.5.7 获取任务信息
    • 2.6 协调机制
    • 2.7 内存管理机制
    • 2.8 事务处理机制
    • 习题
  • 第3章 任务调度策略
    • 3.1 任务调度策略的基本概念
    • 3.2 任务调度策略
      • 3.2.1 典型实时调度策略
      • 3.2.2 基于公平策略的时间片轮转调度
      • 3.2.3 基于优先级的抢占式调度
      • 3.2.4 RM 调度算法
      • 3.2.5 EDF 调度算法
    • 3.3 优先级反转及解决办法
      • 3.3.1 优先级继承
      • 3.3.2 优先级天花板
    • 3.4 提高系统实时性的其他措施
      • 3.4.1 评价RTOS 的性能指标
      • 3.4.2 提高实时任务响应性的措施
    • 3.5 多核/处理器调度
      • 3.5.1 多核/处理器技术
      • 3.5.2 多核/处理器调度策略
    • 习题
  • 第4章 任务的同步与通信
    • 4.1 任务之间的同步与互斥关系
      • 4.1.1 任务之间同步的概念
      • 4.1.2 任务之间互斥的概念
    • 4.2 任务之间的通信
      • 4.2.1 ECB 数据结构
      • 4.2.2 ECB 初始化
      • 4.2.3 将一个任务挂载到就绪队列
      • 4.2.4 将一个任务加入事件的等待队列
      • 4.2.5 使等待超时的任务进入就绪状态
    • 4.3 信号量机制
      • 4.3.1 信号量的类型
      • 4.3.2 创建信号量
      • 4.3.3 删除信号量
      • 4.3.4 获取信号量
      • 4.3.5 释放信号量
      • 4.3.6 无等待地请求一个信号量
      • 4.3.7 查询信号量的当前状态
      • 4.3.8 重置信号量的值
      • 4.3.9 使用互斥信号量可能出现的问题
    • 4.4 互斥锁
      • 4.4.1 创建互斥锁
      • 4.4.2 删除互斥锁
      • 4.4.3 等待获取互斥锁
      • 4.4.4 释放互斥锁
      • 4.4.5 查询互斥锁的状态
      • 4.4.6 无等待地获取互斥锁
    • 4.5 邮箱机制
      • 4.5.1 邮箱机制概述
      • 4.5.2 建立一个邮箱
      • 4.5.3 删除邮箱
      • 4.5.4 从邮箱中获取一条消息
      • 4.5.5 发送一个消息到邮箱
      • 4.5.6 无等待地从邮箱中得到一个消息
      • 4.5.7 查询一个邮箱的状态
    • 4.6 消息队列
      • 4.6.1 消息队列概述
      • 4.6.2 消息队列初始化
      • 4.6.3 建立消息队列
      • 4.6.4 删除消息队列
      • 4.6.5 从消息队列中获取一条消息
      • 4.6.6 以FIFO 方式向消息队列发送一条消息
      • 4.6.7 以LIFO 方式向消息队列发送一条消息
    • 习题
  • 第5章 中断和时间管理
    • 5.1 中断的概念
      • 5.1.1 中断作为任务切换
      • 5.1.2 中断作为系统调用
      • 5.1.3 中断作为前台任务
    • 5.2 ARM 的中断机制
    • 5.3 一个简单的S3C2440 中断服务程序的实现
      • 5.3.1 中断返回
      • 5.3.2 中断注册
      • 5.3.3 状态保存和现场恢复
    • 5.4 一个前后台系统的实现
      • 5.4.1 启动S3C2440
      • 5.4.2 后台主循环
      • 5.4.3 前台中断处理
    • 5.5 μC/OS II 的中断管理机制
      • 5.5.1 中断的发生及响应
      • 5.5.2 中断返回
      • 5.5.3 中断初始化
    • 5.6 一个开源RTOS 的中断管理机制
      • 5.6.1 中断的发生及响应
      • 5.6.2 中断返回
      • 5.6.3 中断子系统结构
      • 5.6.4 中断初始化
    • 5.7 时间管理
      • 5.7.1 时钟中断
      • 5.7.2 时钟服务
    • 习题
  • 第6章 内存管理、I/O 管理和文件系统
    • 6.1 内存管理
      • 6.1.1 RTOS 中内存管理的概念
      • 6.1.2 RTOS 中内存管理的机制与方法
      • 6.1.3 RTOS 中内存管理的实现
    • 6.2 设备管理
      • 6.2.1 通用操作系统的设备管理框架
      • 6.2.2 RTOS 的I/O 管理框架
      • 6.2.3 VxWorks 的I/O 管理
    • 6.3 嵌入式文件系统
      • 6.3.1 嵌入式文件系统概述
      • 6.3.2 嵌入式Linux 的文件系统
    • 习题
  • 第7章 嵌入式操作系统移植
    • 7.1 移植的软硬件环境
      • 7.1.1 开发板UT-S5PV210
      • 7.1.2 开发环境RVDS 4.0
    • 7.2 RVDS 4.0 开发环境的使用
      • 7.2.1 启动RVDS 4.0 开发环境
      • 7.2.2 新建项目
      • 7.2.3 配置RVDS 4.0
      • 7.2.4 start.s、main.c 的生成与编译
      • 7.2.5 编译、下载uart
    • 7.3 将μC/OSⅡ移植到UT-S5PV210开发板
      • 7.3.1 移植步骤
      • 7.3.2 获取μC/OSⅡ源代码
      • 7.3.3 μC/OSⅡ源代码目录结构
      • 7.3.4 μC/OSⅡ硬件/软件体系结构
      • 7.3.5 os_cpu.h
      • 7.3.6 os_cpu_c.c
      • 7.3.7 os_cpu_a.s
      • 7.3.8 时钟中断
      • 7.3.9 应用配置
      • 7.3.10 其他硬件相关功能的移植
    • 7.4 移植成功的验证
      • 7.4.1 编写验证程序
      • 7.4.2 编译μC/OSⅡ
      • 7.4.3 执行μC/OS II
    • 7.5 移植中需要注意的问题
      • 7.5.1 验证移植的正确性
      • 7.5.2 移植过程建议
    • 习题
  • 第8章 嵌入式软件开发
    • 8.1 嵌入式软件开发概述
    • 8.2 嵌入式应用软件开发过程
    • 8.3 交叉开发环境
      • 8.3.1 交叉开发环境概述
      • 8.3.2 交叉编译
      • 8.3.3 交叉调试
      • 8.3.4 常用的嵌入式软件集成开发环境
    • 习题
  • 第9章 高可信的嵌入式操作系统
    • 9.1 可信计算概述
      • 9.1.1 可信计算的定义
      • 9.1.2 国外流行的可信计算标准
      • 9.1.3 国内的可信计算标准
      • 9.1.4 可信计算的发展历史和现状
    • 9.2 嵌入式可信操作系统
      • 9.2.1 嵌入式可信操作系统的概念
      • 9.2.2 安全操作系统的发展历史和现状
      • 9.2.3 嵌入式可信操作系统研究现状及急需解决的问题
    • 9.3 嵌入式可信操作系统的实现技术和方法
      • 9.3.1 基于时空隔离思想的可信操作系统实现方法
      • 9.3.2 强制访问控制技术
    • 习题
  • 参考文献

相关图书