《x86汇编语言:编写64位多处理器多线程操作系统》-李忠
编写一个简单的、简易的操作系统雏形,用来演示64位环境下的多处理器管理、动态内存分配、多处理器多任务的调度和切换、多处理器多线程的调度和切换、数据竞争和锁,但它不包括文件管理、设备管理等内容。本书主要聚焦以下问题: 1,与IA-32架构进行对比,介绍64位处理器的基本架构,包括寄存器的变化、指令集和工作模式的变化、系统表的变化、内存组织和内存访问模式的变化; 2,IA-32e模式的特点及如何进入IA-32e模式,重点介绍其64位子模式; 3,IA-32e模式的4级和5级分页; 4,IA-32e模式下的中断和异常处理; 5,64位模式下的单处理器多任务和任务切换; 6,64位模式下的多处理器管理和初始化,包括高级可编程中断控制器APIC; 7,64位模式下的多处理器多任务和任务切换; 8,64位模式下的多处理器多线程和线程切换; 9,高速缓存及与多线程有关的原子操作、锁、线程同步,等等。