
自研操作系统
DIM-SUM设计与实现
¥90.30
作品简介
本书详细阐述了自研操作系统DIM-SUM的设计与实现,提供了在ARM 64虚拟机中动手实践DIM-SUM及参与DIM-SUM开发的方法。针对DIM-SUM操作系统的同步与互斥、调度、内存、中断与定时器、块设备、文件系统模块进行了详细的分析,包括这些模块的设计思路、数据结构定义、关键API说明。最重要的是,本书对各个模块的主要函数进行了逐行解释,有助于读者深刻理解如何实现一款实用的操作系统。最后,本书还展望了接下来10年DIM-SUM操作系统的发展目标,希望最终其能发展为可以在服务器系统、桌面系统中实用的自研操作系统。
本书适合于对操作系统研发有兴趣的大学生、研究生,以及从事操作系统相关工作的一线工程师。对于Linux操作系统工程师,本书也极具实用价值。
谢宝友
曾任中兴嵌入式实时操作系统技术总工,该系统获第四届中国工业大奖;中兴通讯2010年度金银奖获得者;阿里集团2019年度安全生产之星金奖获得者;2018、2019阿里集团“双11”卓越贡献奖获得者;《深入理解并行编程》译者;Linux ZTE架构维护者;DIM-SUM自研操作系统发起者和创始人。
作品目录
作者介绍
内容简介
推荐序1
推荐序2
推荐语
前言
第1章 准备工作
1.1 DIM-SUM简介
1.2 DIM-SUM是什么
1.3 获得源代码
1.4 搭建调试开发环境
1.5 向DIM-SUM操作系统提交补丁
1.6 获得帮助
1.7 提醒
第2章 算法基础
2.1 链表
2.2 散列表
2.3 红黑树
2.4 基树
第3章 计数与互斥同步
3.1 计数
3.2 内核互斥原语
3.3 内核同步原语
第4章 调度
4.1 基本概念
4.2 SMP CPU初始化
4.3 数据结构
4.4 调度子系统初始化
4.5 线程调度
4.6 高级调度API
第5章 中断及定时器
5.1 中断控制器初始化
5.2 中断控制器维护
5.3 中断处理
5.4 工作队列
5.5 定时器与时间管理
第6章 内存管理
6.1 内存初始化
6.2 BOOT内存分配器
6.3 页面编号
6.4 页面分配器
6.5 Beehive内存分配器
6.6 I/O内存映射
第7章 块设备
7.1 磁盘及其分区
7.2 块设备维护
7.3 I/O请求
7.4 I/O调度
第8章 虚拟文件系统
8.1 挂载、卸载文件系统
8.2 文件节点缓存
8.3 打开、关闭文件
8.4 读/写文件
8.5 其他功能
第9章 杂项文件系统
9.1 文件系统的挂载
9.2 内存文件系统
9.3 设备文件系统
第10章 LEXT3文件系统
10.1 简介
10.2 LEXT3
10.3 文件系统日志
第11章 杂项
11.1 klibc
11.2 网络子系统
11.3 SIMPLE-KSHELL