从云计算到物联网:虚拟化技术的演变与嵌入式系统的融合

2.2 云虚拟化和嵌入式虚拟化对比 / 22

2.3 嵌入式虚拟化的场景 / 23

2.4 嵌入式虚拟化技术的特征 / 23

2.5 本章小结 / 25

第3章 开源虚拟化技术—KVM / 26

3.1 KVM的历史 / 26

3.2 KVM的原理 / 27

3.2.1 KVM的架构 / 27

3.2.2 KVM API及示例 / 28

3.3 KVM虚拟化实现 / 32

3.3.1 KVM的初始化 / 33

3.3.2 KVM虚拟机的创建 / 35

3.3.3 CPU虚拟化 / 36

3.3.4 内存虚拟化 / 43

3.3.5 中断虚拟化 / 56

3.4 设备虚拟化 / 61

3.4.1 仿真设备 / 61

3.4.2 半虚拟化设备 / 62

3.4.3 直通设备 / 63

3.4.4 KVM设备虚拟化实现 / 64

3.5 本章小结 / 68

第4章 嵌入式虚拟化技术—

ACRN实现 / 69

4.1 ACRN简介 / 69

4.1.1 ACRN的由来 / 69

4.1.2 ACRN的关键技术特点 / 70

4.1.3 许可证和社区 / 71

4.2 ACRN应用场景 / 71

4.3 ACRN架构设计 / 73

4.3.1 ACRN 1.0整体架构 / 73

4.3.2 ACRN 2.0/3.0 整体架构 / 74

4.3.3 ACRN的关键组成 / 75

4.3.4 ACRN Hypervisor的架构 / 76

4.4 CPU虚拟化与实现 / 77

4.4.1 处理器管理 / 79

4.4.2 vCPU 生命周期 / 80

4.4.3 vCPU调度 / 80

4.4.4 VMX 初始化 / 85

4.4.5 CPUID 虚拟化 / 85

4.4.6 MSR虚拟化 / 86

4.4.7 CR虚拟化 / 86

4.4.8 IO/MMIO模拟 / 86

4.4.9 指令模拟 / 87

4.4.10 TSC 模拟 / 88

4.4.11 ART虚拟化 / 88

4.4.12 XSAVE虚拟化 / 89

4.5 内存虚拟化及实现 / 90

4.5.1 概述 / 90

4.5.2 Hypervisor物理内存管理 / 91

4.5.3 Hypervisor内存虚拟化 / 93

4.5.4 与EPT相关的VM Exit / 96

4.5.5 服务虚拟机内存管理 / 96

4.5.6 可信 / 97

4.6 中断虚拟化及实现 / 98

4.6.1 概述 / 98

4.6.2 物理中断 / 100

4.6.3 虚拟中断 / 105

4.6.4 中断重映射 / 107

4.7 I/O虚拟化及实现 / 110

4.7.1 I/O访问捕获路径 / 111

4.7.2 Hypervisor中的I/O模拟 / 112

4.7.3 I/O请求 / 112

4.8 本章小结 / 115

第5章 嵌入式虚拟化技术—

ACRN设备虚拟化 / 116

5.1 ACRN设备模型介绍 / 116

5.2 ACRN全虚拟化设备 / 119

5.2.1 PS/2控制器 / 119

5.2.2 UART串口 / 121

5.2.3 USB设备 / 122

5.2.4 AHCI控制器 / 125

5.2.5 系统时钟 / 126

5.2.6 看门狗设备 / 131

5.2.7 Ivshmem / 132

5.2.8 显卡设备 / 134

5.3 ACRN的virtio设备 / 135

5.3.1 ACRN的virtio框架实现 / 135

5.3.2 virtio-net / 139

5.3.3 virtio-blk / 141

5.3.4 virtio-input / 143

5.3.5 virtio-console / 144

5.3.6 virtio-i2c / 146

5.3.7 virtio-gpio / 148

5.3.8 virtio-rnd / 150

5.3.9 virtio-gpu / 151

5.4 本章小结 / 152

第6章 嵌入式虚拟化技术—

ACRN安装使用 / 153

6.1 系统环境硬件配置 / 153

6.1.1 开发环境搭建 / 153

6.1.2 目标机硬件配置要求 / 154

6.2 ACRN支持三种模式的场景 / 154

6.2.1 共享模式的场景 / 155

6.2.2 分区模式的场景 / 156

6.2.3 混合模式的场景 / 156

6.3 安装部署流程 / 157

6.4 安装部署入门指南 / 159

6.4.1 选择硬件和场景 / 160

6.4.2 准备开发机环境 / 160

6.4.3 准备目标机并生成目标

平台配置文件 / 162

6.4.4 编译ACRN / 169

6.4.5 在目标机上安装ACRN / 170

6.4.6 启动ACRN和服务

虚拟机 / 171

6.4.7 启动用户虚拟机 / 171

6.5 本章小结 / 172

第7章 嵌入式虚拟化技术——实时

性能优化 / 173

7.1 整体架构设计 / 173

7.1.1 实时性的分类 / 175

7.1.2 实时性的优化准则 / 175

7.2 ACRN虚拟机优化 / 177

7.3 CPU优化 / 179

7.4 中断优化 / 180

7.5 内存优化 / 181

7.5.1 缓存分配技术 / 182

7.5.2 软件SRAM / 185

7.6 I/O虚拟化 / 186

7.6.1 GPU直通 / 187

7.6.2 其他设备虚拟化 / 188

7.7 客户机优化—实时操作系统 / 188

7.8 工具辅助优化 / 189

7.8.1 ACRNTrace介绍 / 189

7.8.2 vmexit命令 / 191

7.8.3 PMU的数据分析 / 192

7.8.4 RTOS的实时性基准测试工具 / 192

7.8.5 Intel TCC的介绍 / 194

7.9 虚拟机间通信 / 197

7.10 本章小结 / 198

第8章 嵌入式实时操作系统 / 199

8.1 RTOS介绍 / 199

8.1.1 常见的RTOS / 199

8.1.2 从GPOS到RTOS的转换 / 200

8.1.3 RTOS运行在虚拟机上的

注意事项 / 200

8.2 Xenomai / 201

8.2.1 Xenomai的起源 / 201

8.2.2 Xenomai的特性 / 202

8.2.3 Xenomai 3.1系统架构 / 204

8.3 PREEMPT_RT Linux / 205

8.3.1 PREEMPT_RT Linux的起源 / 206

8.3.2 PREEMPT_RT Linux的发展 / 206

8.3.3 PREEMPT_RT的特性 / 207

8.4 Zephyr / 213

8.4.1 Zephyr的起源 / 213

8.4.2 Zephyr的特点 / 213

8.4.3 Zephyr的系统架构 / 214

8.4.4 Zephyr的实现 / 219

8.5 本章小结 / 224

第9章 嵌入式虚拟化技术赋能功能安全 / 226

9.1 功能安全背景 / 226

9.2 功能安全概述 / 227

9.2.1 风险概念 / 229

9.2.2 功能安全标准的基本

术语与定义 / 230

9.2.3 风险和安全完整性 / 232

9.2.4 系统功能安全 / 234

9.2.5 软件功能安全 / 236

9.3 典型软件安全设计 / 236

9.4 混合关键性系统 / 239

9.4.1 混合关键性系统典型应用场景 / 239

9.4.2 QNX Hypervisor / 241

9.5 ACRN赋能混合关键性系统 / 243

9.5.1 安全目标 / 245

9.5.2 系统级安全措施 / 246

9.5.3 独立性相关安全措施 / 247

9.5.4 安全分析 / 248

9.5.5 系统化开发流程 / 249

9.5.6 安全状态设计 / 253

9.5.7 安全架构设计 / 254

9.5.8 安全需求概述 / 256

9.5.9 使用限制 / 261

9.6 嵌入式虚拟化技术的功能

安全价值 / 265

9.7 本章小结 / 265

第10章 应用案例—智能数控

系统和数字孪生 / 266

10.1 行业概述 / 266

10.2 行业挑战与需求 / 266

10.3 解决方案 / 267

10.4 具体实现 / 268

10.4.1 架构设计 / 268

10.4.2 虚拟机与云端应用的

协同机制 / 270

10.4.3 编译及安装 / 271

10.5 方案优势 / 272

10.6 本章小结 / 273

第11章 应用案例—基于机器视觉和机器

控制的工作负载整合 / 274

11.1 行业概述 / 274

11.1.1 迈向工业4.0 / 274

11.1.2 物联网中的工作负载整合 / 275

11.1.3 现代工业物联网模型 / 275

11.2 行业挑战与需求 / 276

11.2.1 工业自动化需要数字化转型 / 276

11.2.2 软件定义的基础设施帮助

工业数字化转型 / 277

11.2.3 将软件定义的基础设施应用于

工业自动化 / 277

11.2.4 在工业领域进行工作负载整合

的需求 / 279

11.2.5 工业控制领域的工作负载

整合案例—机器视觉和

机器控制 / 280

11.3 解决方案 / 281

11.3.1 负载整合技术方案—虚拟化

和容器化 / 281

11.3.2 通过虚拟化技术实现工作

负载整合 / 282

11.4 具体实现 / 284

11.4.1 机器视觉—运行在人机交互

虚拟机里 / 284

11.4.2 机器控制—运行在实时

虚拟机里 / 285

11.4.3 服务虚拟机—为整机系统

提供后台服务 / 285

11.4.4 嵌入式虚拟机管理程序—

ACRN Hypervisor / 286

11.4.5 硬件资源和I/O设备的分配 / 286

11.4.6 虚拟机间通信 / 287

11.4.7 物理硬件平台—基于x86的

工控机 / 287

11.4.8 性能调优 / 287

最后

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。

因此收集整理了一份《2024年嵌入式&物联网开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

img

img

img

img

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上嵌入式&物联网开发知识点,真正体系化!

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新!!

6576682)]

[外链图片转存中…(img-pccEbpqx-1715676576683)]

[外链图片转存中…(img-YUbvDNr9-1715676576684)]

[外链图片转存中…(img-ic5dbBm6-1715676576685)]

[外链图片转存中…(img-UflEB4MM-1715676576686)]

[外链图片转存中…(img-HXeFnpBx-1715676576687)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上嵌入式&物联网开发知识点,真正体系化!

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值