图书介绍
嵌入式操作系统 设计与实现【2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载】

- 蓝枫叶编著 著
- 出版社: 北京:电子工业出版社
- ISBN:7121060760
- 出版时间:2008
- 标注页数:535页
- 文件大小:39MB
- 文件页数:550页
- 主题词:实时操作系统-基本知识
PDF下载
下载说明
嵌入式操作系统 设计与实现PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1章 概述1
1.1 嵌入式系统概述1
1.2 嵌入式操作系统概述3
1.2.1 嵌入式操作系统的特点3
1.2.2 嵌入式操作系统与通用操作系统的区别4
1.2.3 嵌入式实时操作系统6
1.3 操作系统的基本概念6
1.3.1 微内核与大内核7
1.3.2 进程、线程与任务8
1.3.3 可抢占与不可抢占9
1.3.4 同步机制9
1.4 Hello China概述10
1.4.1 Hello China的功能特点11
1.4.2 Hello China的开发环境12
1.4.3 面向对象思想的模拟15
1.4.4 对象机制17
1.4.5 Hello China V1.0版本的源文件构成18
1.4.6 Hello China V1.5版本的源文件构成20
1.4.7 Hello China的使用21
1.5 实例:一个简单的IP路由器的实现22
1.5.1 概述22
1.5.2 路由器的硬件结构22
1.5.3 路由器的软件功能23
1.5.4 各任务的实现25
第2章 Hello China的加载和初始化28
2.1 常见嵌入式系统的启动28
2.1.1 典型嵌入式系统内存映射布局28
2.1.2 嵌入式系统的启动概述29
2.1.3 常见嵌入式操作系统的加载方式29
2.1.4 嵌入式系统软件的写入34
2.2 Hello China在PC上的启动36
2.2.1 PC启动过程概述36
2.2.2 Hello China的引导过程38
2.2.3 实地址模式下的初始化42
2.2.4 保护模式下的初始化46
2.2.5 操作系统核心功能的初始化49
第3章 Hello China的Shell57
3.1 Shell的启动和初始化57
3.2 Shell的消息处理过程58
3.3 内部命令的处理过程62
3.4 外部命令的处理过程64
第4章 Hello China的线程68
4.1 线程概述68
4.1.1 进程、线程和任务68
4.2 Hello China V1.0版本的线程实现69
4.2.1 核心线程管理对象69
4.2.2 线程的状态及其切换74
4.2.3 核心线程对象76
4.2.4 线程的上下文79
4.2.5 线程的优先级与调度84
4.2.6 线程的创建86
4.2.7 线程的结束92
4.2.8 线程的消息队列95
4.2.9 线程的切换——中断上下文98
4.2.10 线程的切换——系统调用上下文107
4.2.11 上下文保存和切换的底层函数113
4.2.12 线程的睡眠与唤醒116
4.3 V1.5版本中核心线程的实现117
4.3.1 概述117
4.3.2 核心线程调度时机117
4.4 V1.5核心线程管理器(KernelThreadManager)的实现118
4.4.1 V1.5核心线程队列的实现121
4.5 V1.5核心线程对象(KernelThreadObject)的实现123
4.5.1 V1.5版本中硬件上下文的保存125
4.5.2 线程的调度——中断上下文129
4.5.3 线程的调度——程序上下文132
4.5.4 核心线程的创建和初始化137
4.5.5 中断处理程序结束后的线程调度143
第5章 Hello China的内存管理机制146
5.1 内存管理机制概述146
5.2 IA32 CPU内存管理机制146
5.2.1 IA32 CPU内存管理机制概述146
5.2.2 几个重要的概念149
5.2.3 分段机制的应用150
5.2.4 分页机制的应用153
5.3 Power PC CPU的内存管理机制162
5.4 Hello China内存管理模型164
5.4.1 Hello China的内存管理模型164
5.4.2 Hello China的内存布局166
5.4.3 核心内存池的管理168
5.4.4 页框管理对象(PageFrameManager)171
5.4.5 页面索引对象(PageIndexManager)176
5.4.6 虚拟内存管理对象(VirtualMemoryManager)181
第6章 线程本地堆的实现203
6.1 Heap概述203
6.2 堆的功能需求定义203
6.3 堆的实现概要205
6.4 堆的详细实现210
6.4.1 堆的创建210
6.4.2 堆的销毁214
6.4.3 堆内存申请215
6.4.4 堆内存释放220
6.4.5 malloc函数和free函数的实现224
第7章 互斥和同步机制的实现227
7.1 互斥和同步概述227
7.2 关键区段概述227
7.3 关键区段产生的原因228
7.3.1 多个线程之间的竞争228
7.3.2 中断服务程序与线程之间的竞争229
7.3.3 多个CPU之间的竞争229
7.4 单CPU下关键区段的实现230
7.5 多CPU下关键区段的实现233
7.5.1 多CPU环境下的实现方式233
7.5.2 Hello China的未来实现234
7.6 Power PC下关键区段的实现235
7.6.1 Power PC提供的互斥访问机制235
7.6.2 多CPU环境下的互斥机制237
7.7 关键区段使用注意事项238
7.8 Semaphore概述238
7.9 Semaphore对象的定义239
7.10 Semaphore对象的实现240
7.10.1 Initialize和Uninitialize实现240
7.10.2 WaitForThisObject的实现242
7.10.3 WaitForThisObjectEx的实现243
7.10.4 ReleaseSemaphore的实现248
第8章 中断和定时处理机制的实现250
8.1 中断和异常概述250
8.2 硬件相关部分处理251
8.2.1 IA32中断处理过程251
8.2.2 IDT初始化252
8.3 硬件无关部分处理258
8.3.1 系统对象和中断对象258
8.3.2 中断调度过程260
8.3.3 默认中断处理函数262
8.4 对外服务接口263
8.5 几个注意事项264
8.6 Power PC的异常处理机制265
8.6.1 Power PC异常处理机制概述265
8.6.2 Power PC异常的分类266
8.6.3 异常的处理和返回266
8.7 定时器概述267
8.7.1 SetTimer函数的调用267
8.7.2 CancelTimer函数的调用269
8.7.3 ResetTimer函数的调用269
8.8 设置定时器操作269
8.9 定时器超时处理271
8.10 定时器取消处理274
8.11 定时器复位276
8.12 定时器注意事项276
第9章 系统总线管理278
9.1 系统总线概述278
9.1.1 系统总线278
9.1.2 总线管理模型278
9.1.3 设备标识符283
9.2 系统资源管理283
9.2.1 资源描述对象284
9.2.2 IO端口资源管理285
9.3 驱动程序接口286
9.3.1 GetResource286
9.3.2 GetDevice286
9.3.3 CheckPortRegion286
9.3.4 ReservePortRegion287
9.3.5 ReleasePortRegion287
9.3.6 AppendDevice288
9.3.7 DeleteDevice288
9.4 PCI总线驱动程序概述288
9.4.1 PCI总线概述288
9.4.2 PCI设备的配置空间289
9.4.3 配置空间关键字段的说明291
9.4.4 PCI配置空间的读取与设置299
9.5 PCI总线驱动程序的实现300
9.5.1 探测PCI总线是否存在301
9.5.2 对普通PCI设备进行枚举301
9.5.3 配置PCI桥接设备309
第10章 驱动程序管理框架311
10.1 设备驱动程序管理框架311
10.1.1 概述311
10.1.2 设备管理器和IO管理器312
10.1.3 Hello China的设备管理框架320
10.1.4 I/O管理器(IOManager)322
10.2 文件系统的实现342
10.2.1 文件系统与文件的命名342
10.2.2 文件系统驱动程序343
10.2.3 打开一个文件的操作流程344
10.3 设备驱动程序框架345
10.3.1 设备请求控制块(DRCB)345
10.3.2 设备驱动程序的文件组织结构349
10.3.3 设备驱动程序的功能实现349
10.3.4 设备驱动程序对象352
10.3.5 DriverEntry的实现354
10.3.6 UnloadEntry的实现355
10.4 设备对象355
10.4.1 设备对象的定义355
10.4.2 设备对象的命名356
10.4.3 设备对象的类型357
10.4.4 设备对象的设备扩展358
10.4.5 设备的打开操作359
10.4.6 设备命名策略360
10.5 设备的中断管理361
第11章 核心线程CPU占用率统计功能363
11.1 CPU占用率概述363
11.2 核心线程CPU占用率统计的实现364
11.2.1 统计周期和统计算法364
11.2.2 核心线程统计对象365
11.2.3 CPU统计对象372
11.2.4 CPU占用率统计线程378
11.3 进程和多CPU情况下的考虑381
11.3.1 进程的用户态和核心态执行时间统计381
11.3.2 多CPU环境下的考虑382
第12章 系统核心HOOK机制的实现384
12.1 Hook概述384
12.2 线程Hook的实现385
12.2.1 线程Hook的实现概述385
12.2.2 线程调度前后的回调机制387
12.2.3 线程创建和结束的回调机制393
12.2.4 CallThreadHook例程的实现394
12.3 线程Hook的应用396
第13章 串口交互程序及其实现397
13.1 串行通信接口概述397
13.2 串行通信编程方式400
13.2.1 串口初始化400
13.2.2 数据发送401
13.2.3 数据接收404
13.3 串口交互程序的实现406
13.3.1 串口交互程序的使用407
13.3.2 轮询模式的串口交互程序实现410
13.3.3 中断模式的串口交互程序实现419
13.4 串行通信编程总结429
13.4.1 轮询方式和中断方式编程的对比429
13.4.2 串口交互程序的其他实现方式430
第14章 应用编程接口与示例431
14.1 核心线程操作接口431
14.1.1 CreateKernelThread431
14.1.2 DestroyKernelThread432
14.1.3 SendMessage434
14.1.4 GetMessage434
14.1.5 SetKernelThreadPriority435
14.1.6 GetKernelThreadPriority435
14.1.7 GetKernelThreadID436
14.2 内存操作接口436
14.2.1 KMemAlloc436
14.2.2 KMemFree437
14.2.3 VirtualAlloc437
14.2.4 VirtualFree438
14.2.5 malloc438
14.2.6 free439
14.2.7 CreateHeap439
14.2.8 DestroyHeap440
14.2.9 HeapAlloc440
14.2.10 HeapFree440
14.3 定时器操作接口440
14.3.1 SetTimer441
14.3.2 CancelTimer441
14.4 核心线程同步操作接口443
14.4.1 Sleep443
14.4.2 CreateMutex444
14.4.3 ReleaseMutex444
14.4.4 DestroyMutex444
14.4.5 CreateEvent445
14.4.6 SetEvent445
14.4.7 ResetEvent445
14.4.8 DestroyEvent446
14.4.9 WaitForThisObject446
14.4.10 WaitForThisObjectEx447
14.5 系统中断操作接口449
14.5.1 ConnectInterrupt449
14.5.2 DisconnectInterrupt449
14.6 输入/输出(IO)接口450
14.6.1 CreateFile451
14.6.2 ReadFile451
14.6.3 WriteFile452
14.6.4 IoControl452
14.6.5 SetFilePointer453
14.6.6 FlushFile453
14.6.7 CloseFile454
14.7 设备驱动程序接口455
14.7.1 CreateDevice455
14.7.2 DestroyDevice456
14.8 相关辅助功能接口457
14.8.1 StrLen457
14.8.2 StrCpy458
14.8.3 MemZero458
14.8.4 MemCpy458
14.9 PC服务接口459
14.9.1 PrintLine459
14.9.2 PrintChar459
14.9.3 ChangeLine460
14.9.4 GotoHome460
第15章 Hello China的应用开发方法461
15.1 Hello China的开发方法概述461
15.2 在Hello China基础上开发一个简单应用程序461
附录A 如何搭建一个基于Windows的操作系统开发平台467
附录B 一种代码执行时间测量方法的实现488
附录C 64bit整型数据类型的实现494
附录D IOCTRL控制程序使用介绍及实例501
附录E 如何快速掌握汇编语言510
附录F 源代码使用说明515
附录G 优先队列(Priority Queue)和环形缓冲区(RING BUFFER)的实现518
热门推荐
- 1768213.html
- 613100.html
- 2739654.html
- 1360406.html
- 3289971.html
- 2792263.html
- 1690043.html
- 1796012.html
- 2835994.html
- 415420.html
- http://www.ickdjs.cc/book_2842429.html
- http://www.ickdjs.cc/book_2900279.html
- http://www.ickdjs.cc/book_164842.html
- http://www.ickdjs.cc/book_3393781.html
- http://www.ickdjs.cc/book_2048179.html
- http://www.ickdjs.cc/book_3806976.html
- http://www.ickdjs.cc/book_1690395.html
- http://www.ickdjs.cc/book_438199.html
- http://www.ickdjs.cc/book_1010975.html
- http://www.ickdjs.cc/book_3793673.html