
一个64位操作系统的设计与实现
¥54.99
加载中,请稍候……
作品简介
本书讲述了一个64位多核操作系统的自制过程。此操作系统自制过程是先从虚拟平台构筑起一个基础框架,随后再将基础框架移植到物理平台中进行升级、完善与优化。为了凸显64位多核操作系统的特点,物理平台选用搭载着Intel Core-i7处理器的笔记本电脑。与此同时,本书还将Linux内核的源码精髓、诸多官方白皮书以及多款常用协议浓缩于其中,可使读者在读完本书后能够学以致用,进而达到理论联系实际的目的。
全书共分为16章。第1~2章讲述了操作系统的基础概念和开发操作系统需要掌握的知识;第3~5章在虚拟平台下快速构建起一个操作系统模型;第6~16章将在物理平台下对操作系统模型做进一步升级、优化和完善。
本书既适合在校学习理论知识的初学者,又适合在职工作的软件工程师或有一定基础的业余爱好者。
田宇
Linux内核爱好者,曾在多家大中型软件公司从事软件开发工作,参与过多款高端嵌入式产品的开发研制,主要负责Linux内核和驱动的研发,以及开源操作系统环境的深度定制。
作品目录
前言
阅读指导
保留英文缩写
鸣谢
第一部分 操作系统相关知识介绍及环境搭建
第 1 章 操作系统概述
1.1 什么是操作系统
1.2 操作系统的组成结构
1.3 编写操作系统需要的知识
1.4 本书操作系统简介
第 2 章 环境搭建及基础知识
2.1 虚拟机及开发系统平台介绍
2.2 汇编语言
2.3 C语言
第二部分 初级篇
第 3 章 BootLoader引导启动程序
3.1 Boot引导程序
3.2 Loader引导加载程序
第 4 章 内核层
4.1 内核执行头程序
4.2 内核主程序
4.3 屏幕显示
4.4 系统异常
4.5 初级内存管理单元
4.6 中断处理
4.7 键盘驱动
4.8 进程管理
第 5 章 应用层
5.1 跳转到应用层
5.2 实现系统调用API
5.3 实现一个系统调用处理函数
第三部分 高级篇
第 6 章 处理器体系结构
6.1 基础功能与新特性
6.2 地址空间
6.3 实模式
6.4 保护模式
6.5 IA-32e模式
第 7 章 完善BootLoader功能
7.1 实模式的寻址瓶颈
7.2 获取物理地址空间信息
7.3 操作系统引导加载阶段的内存空间划分
7.4 U盘启动
7.5 在物理平台上启动操作系统
7.6 细说VBE功能的实现
第 8 章 内核主程序
8.1 内核主程序功能概述
8.2 操作系统的Makefile编译脚本
8.3 操作系统的kernel.lds链接脚本
8.4 操作系统的线性地址空间划分
8.5 获得处理器的固件信息
第 9 章 高级内存管理单元
9.1 SLAB内存池
9.2 基于SLAB内存池技术的通用内存管理单元
9.3 调整物理页管理功能
9.4 页表初始化
第 10 章 高级中断处理单元
10.1 APIC概述
10.2 Local APIC
10.3 I/O APIC
10.4 中断控制器的模式选择与初始化
10.5 高级中断处理功能
第 11 章 设备驱动程序
11.1 键盘和鼠标驱动程序
11.2 硬盘驱动程序
第 12 章 进程管理
12.1 进程管理单元功能概述
12.2 多核处理器
12.3 进程调度器
12.4 内核同步方法
12.5 完善进程管理单元
第 13 章 文件系统
13.1 文件系统概述
13.2 解析FAT32文件系统
13.3 虚拟文件系统
第 14 章 系统调用API库
14.1 系统调用API结构
14.2 基于POSIX规范实现系统调用API库
第 15 章 Shell命令解析器及命令
15.1 Shell命令解析器
15.2 基础命令
第 16 章 一个彩蛋
术语表
参考资料
Intel技术文档
其他技术文档
参考图书
看完了
载入中