更新时间:2024-09-11 17:41:50
封面
版权信息
内容简介
前言
第1章 Hypervisor概述
1.1 虚拟化技术与实现
1.1.1 CPU虚拟化
1.1.2 I/O虚拟化
1.1.3 为什么需要虚拟化技术
1.1.4 虚拟化的实现
1.2 面向桌面和企业云的Hypervisor类型和产品
1.3 嵌入式Hypervisor
1.3.1 嵌入式Hypervisor概述
1.3.2 嵌入式Hypervisor的设计理念
1.4 主流的嵌入式Hypervisor产品
1.4.1 国外RTOS厂商的Hypervisor产品
1.4.2 开源嵌入式Hypervisor产品
1.4.3 国内RTOS厂商的Hypervisor产品
1.5 本章小结
第2章 基于分离内核的嵌入式Hypervisor
2.1 分区和分离内核
2.2 嵌入式Hypervisor的实现方式
2.2.1 基于分离内核的Hypervisor实现
2.2.2 基于RTOS扩展的Hypervisor实现
2.2.3 模块化开放软件解决方案
2.3 PRTOS Hypervisor
2.3.1 PRTOS Hypervisor的架构
2.3.2 PRTOS对处理器的功能需求
2.3.3 PRTOS Hypervisor的多核支持
2.3.4 PRTOS的安全性和可预测性
2.3.5 PRTOS系统的状态转换流程
2.4 本章小结
第3章 嵌入式Hypervisor组件设计
3.1 硬件依赖层
3.1.1 硬件资源虚拟化
3.1.2 处理器驱动
3.1.3 时钟驱动
3.1.4 定时器驱动
3.1.5 中断控制器驱动
3.1.6 页式内存管理驱动
3.1.7 控制台驱动
3.1.8 分区上下文切换
3.2 虚拟化服务层
3.2.1 虚拟中断服务
3.2.2 虚拟时钟和虚拟定时器服务
3.2.3 虚拟内存管理服务
3.2.4 虚拟设备管理服务
3.2.5 健康监控管理服务
3.2.6 虚拟处理器调度服务
3.2.7 分区管理服务
3.2.8 分区间通信服务
3.2.9 超级调用派发服务
3.2.10 跟踪管理服务
3.3 内部服务层
3.3.1 KLIBC
3.3.2 分区引导程序
3.3.3 队列操作数据结构
3.4 超级调用接口函数库
3.5 本章小结
第4章 中断隔离技术的设计与实现
4.1 中断模型
4.2 内核中断设计
4.3 分区中断设计
4.3.1 分区中断处理流程
4.3.2 分区陷阱表的初始化
4.3.3 分区中断描述符表的初始化
4.4 虚拟时钟和虚拟定时器
4.4.1 虚拟时钟
4.4.2 虚拟定时器
4.5 BAIL
4.5.1 BAIL概述
4.5.2 裸机应用示例
4.6 实验:虚拟时钟和虚拟定时器示例
4.6.1 分区0的裸机应用
4.6.2 分区1的裸机应用
4.7 本章小结
第5章 内存隔离技术的设计与实现
5.1 PRTOS内核的工作模式
5.1.1 X86处理器的特权模式
5.1.2 PRTOS内核和分区的实现方式
5.1.3 PRTOS内核空间的初始化
5.2 处理器的内存管理模型
5.2.1 PRTOS的虚拟地址空间分配
5.2.2 PRTOS分区内存的虚拟化
5.2.3 PRTOS分区内存的虚拟化实现
5.3 PRTOS内存管理的虚拟化
5.4 实验:分区内存隔离示例
5.4.1 分区0的裸机应用
5.4.2 分区1的裸机应用
5.4.3 分区2的裸机应用
5.5 本章小结
第6章 循环表调度器的设计与实现
6.1 PRTOS调度器概述
6.1.1 单处理器调度策略
6.1.2 多处理器调度策略
6.2 循环表调度器的数据结构与实现
6.2.1 内核线程数据结构
6.2.2 Per-CPU数据结构
6.2.3 调度器框架
6.2.4 循环表调度器的实现