60回答

0收藏

QEMU/KVM源码解析与应用 PDF 电子书 X0159

电子书 电子书 4351 人阅读 | 60 人回复 | 2024-02-16

Java电子书:QEMU/KVM源码解析与应用  PDF 电子书 Java吧 java8.com3 [+ b# O9 P" X+ t; B9 i! N
- O4 b! e3 A! Q( h
作者:李强出版社:机械工业出版社出版时间:2021年01月 + ^1 x  N7 }4 H% N! I  I" b
; ^; |) `: ^, }# E9 [
编号:166-Java吧资源免费-X0159【Java吧 java8.com】
' Z9 m; h; i' r& a1 \$ e# k5 W6 r/ p1 B( Y- M. n2 C. L
; p! d' f) D$ T# R8 U- \9 G" x* s# `9 }

+ q9 v7 r! ~+ u) b, m2 s目录:
; O+ Z' V+ D/ o" e( b+ [
第1章 QEMU与KVM概述1
5 {* D7 ^$ K( n, R* Y2 O: W1.1 虚拟化简介1
  O) g9 R) K) ]6 @/ T3 @1.1.1 虚拟化思想1
( y- P- z" E- w9 a1.1.2 虚拟机简介2
- ]3 w; b8 P, B" w' i) }$ K1.1.3 系统虚拟化的历史3
- L4 o$ R$ w1 [4 k1.2 QEMU与KVM架构介绍4, b7 G- S6 j. u* I# g" x- p& L
1.2.1 QEMU与KVM历史4
, ^7 G. R! S0 e$ f* u3 K1.2.2 QEMU与KVM架构5
4 c/ b9 q  p) v1.3 KVM API使用实例8
( n5 p: B' Z" R' W9 @- s/ I第2章 QEMU基本组件128 p, {7 r3 B: j( I! U8 T( @  ~
2.1 QEMU事件循环机制126 w( p4 m. D2 y) d7 w. w: t% g
2.1.1 glib事件循环机制12
) X# K- H# N: B" o6 h2.1.2 QEMU中的事件循环机制13
$ I8 R5 _8 {0 x; z0 K( K2.1.3 QEMU自定义事件源17
* `0 S% ?  }2 Y# O/ v. ]. Q2.1.4 QEMU事件处理过程21
8 D% u0 P- b$ ~! ]7 K; |0 x; K- F6 n2.1.5 QEMU主循环监听的fd解析23. D# f( S: [: S0 j0 e
2.2 QEMU线程模型25
' p8 i4 y+ f0 W1 k, B3 W2.2.1 QEMU线程模型简介254 {1 m6 y) A% p, ]
2.2.2 QEMU线程介绍26& K. M6 C) H4 g+ o
2.3 QEMU参数解析27
' x' }" W3 Z7 h8 S+ K% w2.4 QOM介绍32
' T& o; j+ Z5 V2 `7 T2.4.1 类型的注册33
; K2 O9 }+ t( x2.4.2 类型的初始化36* Z! Z. J) z( Q6 H. P
2.4.3 类型的层次结构39- L3 Q: p- c, U" h2 C% M
2.4.4 对象的构造与初始化42" p$ q% F: w" [# q* Y* _) u2 T
2.4.5 属性44+ K7 Z0 a* Q7 [9 F: d. J; O$ {5 \/ Z
2.5 hmp与qmp介绍529 d/ ]5 W: _+ ^1 |  q
2.5.1 hmp与qmp522 z8 V) x, O; c* J( J
2.5.2 qmp的使用53
+ s* I" M& G5 E! I2.5.3 qmp源码分析54
7 f. ^6 l$ y, R, ]) q: y. J# p2 }2.5.4 qmp命令添加56( l! x$ P/ e9 r( ?: P
第3章 主板与固件模拟58! }; ~" i; {+ i' T6 _6 q
3.1 Intel 440FX主板简介58
" e7 B3 @  m" J( [3.1.1 i440fx与piix3介绍58
0 l5 w6 s8 ^% u) I, ~/ k$ F3.1.2 QEMU模拟主板架构59$ `0 E/ i2 c7 Q" {: N/ j6 X1 h
3.2 QEMU的主板模拟与初始化61
( P- h- p: A' [) r8 g& N+ ]2 H3.2.1 虚拟机初始化61
" f% e$ X* z3 G/ ^2 w- B3.2.2 i440fx初始化64! s" o% L: n9 f/ n$ v' K/ X
3.2.3 中断和其他设备的初始化66* G5 {" d( ?. Q
3.3 fw_cfg设备介绍67
% E( w3 [  t- M9 c- a3.3.1 fw_cfg设备的初始化67
* e* N/ Z1 S/ @$ a: y3.3.2 向fw_cfg设备添加数据69
! U- D+ b3 ~, k0 N3.3.3 添加用户自定义数据74
2 ]$ N6 g$ n( U' \0 E3.3.4 数据的读取75
5 \0 _( W( l6 g% F3.4 SeaBIOS分析798 P7 i. N. @8 P/ J
3.4.1 SeaBIOS简介795 E+ f( \; h2 [8 R9 k! S
3.4.2 QEMU加载SeaBIOS80
2 r) C" t6 O) d3.4.3 SeaBIOS源码结构847 y: Y  ]  A! C( a- M1 u0 v
3.4.4 SeaBIOS的编译与调试91
1 E9 O* W6 c8 P7 D1 {: b第4章 CPU虚拟化93
3 c3 c# `: M4 S$ i! [/ P4.1 CPU虚拟化介绍933 ]8 b9 t( }& Y. P
4.1.1 CPU虚拟化简介93
+ d5 j0 q1 w( {  Q5 {. S4.1.2 VMX架构简介93
6 C! w! N3 \. c4 }; P9 G4.1.3 VMCS介绍94
# U; u2 b; [' T4.2 KVM模块初始化介绍97/ ~8 F0 k5 ?" @4 s( Q) m# g: Q
4.2.1 KVM源码组织97  ~6 \# S$ ]5 Y. _: c9 x$ m5 o- s
4.2.2 KVM模块初始化98) h5 Q, U* N8 U5 U
4.3 虚拟机的创建1059 Q) v% C; g9 n0 \
4.3.1 QEMU侧虚拟机的创建105$ Y8 E% m4 T$ p' y( a) z5 {
4.3.2 KVM侧虚拟机的创建107
: ]6 C" C- Y  u2 s7 e# e/ P4.4 QEMU CPU的创建1109 f+ U. l5 }% A( |# `1 ^* ^
4.4.1 CPU模型定义110
3 }* D3 ^3 m) }8 Y4 {4.4.2 CPU对象的初始化1131 g1 m* [: Z8 J+ J- v4 c
4.4.3 CPU的创建120
4 C  L! Y% E8 |- [' H# [4.5 KVM CPU的创建122
4 y. \% g, `( `. l- ?4.5.1 KVM创建VCPU流程122
- _2 J! n/ t( ^9 v4.5.2 QEMU与KVM之间的共享$ a. _# _, y' Y* e8 P) E' [
数据126
: W9 T2 R1 S% ~+ H" g4.5.3 VCPU CPUID构造128
  L. o6 P  c7 c0 P& X8 r% H4.6 VCPU的运行133
- J! F* B( F) j) ~) @$ n4.7 VCPU的调度144
5 x$ P* h7 X; T+ m+ ]4 y第5章 内存虚拟化149
" o: E1 _0 L/ n5.1 内存虚拟化简介149
# k0 e  \4 O2 S" S% \$ o; `9 V5.2 QEMU内存初始化150. f1 R  X" W3 s, }  h! z
5.2.1 基本结构150
# j; }$ I# p- ^( g/ [5.2.2 QEMU虚拟机内存初始化154
" D3 y% f  p) w2 K5.2.3 分配虚拟机RAM过程157' s& B% ]2 \2 o9 V: z; M- S; o
5.3 内存布局的提交161# e3 ~" e$ R0 j8 S2 O
5.3.1 内存更改通知161
+ R4 }6 O/ I+ O- {1 J5.3.2 虚拟机内存平坦化过程164# ~2 \- b  J# O* M" H6 o4 K4 H
5.3.3 向KVM注册内存169
) L' ?, r5 _2 P! I$ @% V6 L8 a  E0 G5.4 内存的分派174+ K& d6 l' r' x3 f4 u( x
5.4.1 内存分派表的构建1747 _: L" r& y; Z+ ]
5.4.2 页表简化182% C' t$ T# H/ Z8 F; n
5.4.3 地址分派184
. U' [+ [1 w  J# L' H$ Y) V5.5 KVM内存虚拟化186
+ e- v8 r* Z: ]; F* J$ z( O5 [5.5.1 虚拟机MMU初始化1862 A5 h& F9 p& Q4 D$ i% s
5.5.2 虚拟机物理地址的设置189: H( g& N6 ~! k( {' d0 h
5.5.3 EPT页表的构建1930 Z( t$ L6 M+ U: h7 U, G- e9 s
5.6 MMIO机制2008 S+ V4 r: D3 ^2 A
5.6.1 虚拟设备MMIO实现原理200% h1 v$ O$ K4 d& d6 L+ b* t
5.6.2 coalesced MMIO203# A; s0 U; n# D! r- ]; D
5.7 虚拟机脏页跟踪205- z; i3 ?; ?& _, z
第6章 中断虚拟化210
( v& S5 i; u% J, S6.1 中断机制简介210
- T% P6 W7 `; X0 Q5 i0 _6.1.1 中断分发方式210
( d9 s  c5 ~" \1 J% \+ `6.1.2 中断线与中断向量211
: i3 r* A, q0 e7 A0 \$ r6.2 中断模拟211. Q# e: r* s  k( d
6.2.1 虚拟化环境下的中断注入212; s2 P% w7 f4 a' z5 `0 x
6.2.2 PIC中断模拟214
$ n+ {9 K2 G1 g5 N) k# l9 `6.2.3 I/O APIC中断模拟2254 X8 ], B0 H, b1 V. J
6.2.4 MSI中断模拟234; G2 X2 ?' Y: S& I4 J0 b
6.3 APIC虚拟化236  ]9 f0 J: b1 u! ]/ j2 D  H
6.3.1 APICv简介236  f! _- ^% x9 I( V, X
6.3.2 APICv源码分析238
3 w; B' K- C  e: T6 t第7章 设备虚拟化245
1 H+ E% N$ H! a4 f* _7.1 设备虚拟化简介245
  \: `% H: h* y1 ^6 M7.1.1 总线数据类型245
& b. d( Y& M7 u) \, u$ ?. z7.1.2 总线的创建2482 Q2 Q2 C) n: x' K
7.1.3 设备数据类型249
/ T1 B4 r9 {$ E& n7.1.4 设备的创建251
# v* ?2 J3 {  R  @! l9 l4 T7.1.5 设备的树形结构252  }$ |- S( l1 n9 [
7.2 PCI设备模拟258
& y! R) p. O5 g1 ?7.2.1 PCI设备简介2585 {1 H% L. E- \9 e% p) w
7.2.2 PCI设备的模拟260
5 w& v! B/ ^& R0 r: R; j$ T3 D7 |- T7.2.3 PCI设备中断模拟270
: r  g5 P" c/ A7.3 设备模拟后端274
, P1 p9 Q% O4 k8 v% F7.3.1 网卡模拟介绍275
# m; f  n( t9 k5 l1 Q0 G7.3.2 网卡参数解析277$ M7 N: B$ c( F4 G! V. {% q! J
7.3.3 前端网卡设备的创建286
9 g$ e  b( J! @- H  x3 U7.3.4 虚拟机网卡发包流程294
! Q! X. M! {9 q7.3.5 虚拟机网卡接收数据包297* ^* F* s. W' X0 X) C
7.4 virtio设备模拟298) f6 M0 u, z, `+ T
7.4.1 virtio简介298
- z- _9 ?* B7 |: E7.4.2 virtio设备的初始化300
# _8 f0 N4 N6 z7.4.3 virtio驱动的加载314
* D+ q" C5 E  z7.4.4 virtio驱动的初始化320
, Q" \/ R3 L5 d! M3 H  {" U7.4.5 virtio设备与驱动的通信330: ^) K5 I5 ^* R4 y+ M
7.5 ioeventfd和irqfd347
/ o9 C7 K0 Y9 G4 B5 B" K/ j7.5.1 eventfd原理347
- y' X8 U1 s' H! T- ~% N( N: ]7.5.2 ioeventfd3513 o- d3 a# q! a6 F7 {
7.5.3 irqfd358
( h/ s7 ]$ @3 u" i7.6 vhost net简介362. t+ F) |  |/ W# E/ U
7.6.1 vhost net介绍3629 A! k4 E9 l# n$ v0 ]9 X
7.6.2 vhost的初始化363% G- S  [! k8 _  L% r$ }0 i
7.6.3 vhost net网络模块3670 }5 A" b  c8 D4 Z, ]1 Q, [
7.6.4 vhost net的启动376
+ i) h" S8 v$ v" N. T( H7.6.5 vhost net的收发包3783 v5 ~, o( m( x- W2 V
7.7 设备直通与VFIO380
- C- l$ E' O  F6 r; x7.7.1 VFIO简介380 java8.com
2 |/ G, e0 J/ F$ M2 ]7.7.2 VFIO相关内核模块分析387
$ o9 Q# p) @" q+ L7.7.3 VFIO与设备直通404
/ P8 L2 i) r% C+ ~( @2 F+ i第8章 虚拟化杂项425( N5 K; V4 a- x& {; }7 }
8.1 QEMU Guest Agent425
5 a" a+ G$ F1 k9 k' z8.1.1 QEMU Guest Agent的使用425; k) L% [* n6 |' c4 W
8.1.2 qga源码分析4264 v' N; }. G0 M) J' M
8.1.3 qga的QEMU侧源码解析431
1 Z* G: V. |' w: ]5 ]5 X/ }" p8.2 QEMU虚拟机热迁移439& B  {1 D) y) y9 @; P/ o
8.2.1 热迁移的用法与基本原理439/ t% x, r& ?: @& D2 ^) y# M
8.2.2 热迁移流程分析441# O1 Z2 I) ^/ e9 j- D
8.2.3 热迁移中的脏页同步454
$ X+ y+ n2 Y' g# _$ ~8.2.4 热迁移中的相关参数控制459
2 Q6 x2 a. N% \) ?6 Q9 m8.3 QEMU及虚拟化安全460
; v5 M+ e: W4 J  y3 P8.3.1 QEMU软件安全460$ t/ k7 D/ n+ l2 K5 f9 U1 C* r8 M& V6 ^
8.3.2 QEMU安全思考466
6 {* `* R! f! q% S/ W8 @1 j; Z8.4 容器与虚拟化466# D9 E: |3 D* \9 d" y7 {" d& F  v
8.4.1 Docker容器467
/ a3 X+ I* e8 U- W0 C/ _7 r! Z9 y) T8.4.2 gVisor467
! f  x0 W3 }( i9 w5 F" D! Z  W; m( H8.4.3 nemu468" |$ r$ i+ ~$ |+ Y
8.4.4 crosvm、Firecracker与
4 C  i- y" d7 v9 g! m0 S1 Scloud-hypervisor4685 z6 r" ?+ ]! H- a# t5 c0 f
附录 重要术语470
. o. e' O+ H1 a6 E* F
2 s9 |5 {# g. ^/ ~6 K; D7 j
百度云盘下载地址(完全免费-绝无套路):
游客,如果您要查看本帖隐藏内容请回复

: N; \: r% k9 p- f( I
; D/ O; H8 G2 o: X8 q0 _5 U
! `  b5 H1 c, {7 Q6 t( i% B
- h7 h/ E! E' v: a, T* h3 V% m8 @8 n
9 t  G, ]7 o8 N. x5 O7 V

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
分享到:

回答|共 60 个

天空星

发表于 2024-2-16 09:30:29 | 显示全部楼层

资源很新 好好好

富顺县美宜尔家具厂

发表于 2024-2-16 10:11:13 | 显示全部楼层

以后学java 就靠java吧了

古今悠谈

发表于 2024-2-16 10:52:44 | 显示全部楼层

良心网站,力挺

照片是妹妹维馨

发表于 2024-2-16 11:33:13 | 显示全部楼层

太爽了  干货很多!!!

当时没有稳起的月亮

发表于 2024-2-16 12:14:56 | 显示全部楼层

免费资源 真的无套路

佰财聚来

发表于 2024-2-16 12:56:07 | 显示全部楼层

学习java,就选java吧了

灥多多

发表于 2024-2-16 13:38:14 | 显示全部楼层

真心不错 收下下

上官键

发表于 2024-2-16 14:19:38 | 显示全部楼层

路过,收下了,不错的论坛

两袖兜风

发表于 2024-2-16 14:59:42 | 显示全部楼层

太爽了  干货很多!!!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则