Xen 4.11 学习总结

Xen 4.11 学习总结

疑惑点

  1. 既然已经删除了QEMU的模块,为什么项目中还有QEMU相关的代码?
  2. 一些关键词:livepatch; docker-containers; balloon; kconfig(感觉是对平台的检测)
  3. QEMU与Xen之间的关系
  4. 在Xen中PVH比PV和HVM性能都好一些;但是与KVM相比呢?

Xen4.11特点总结

  1. 更安全(抵御更多的攻击;meltdown;Spectre)

  2. 支持更多的平台架构

  3. 代码量更少;性能更好

  4. 移除了QEMU模块(更安全;性能更好–减少与hypervisor的交互;重启了DMOPs功能)

  5. 增加了PVH。结合了PV和HVM的优点。

    Hardware virtualization support for memory and privileged instructions
    PV drivers for I/O and native operating system interfaces for everything else
    

个人理解:

从总的文件目录来看,在每个模块中都有文件数量或者文件内容的增加。总的功能来说应该是增加了PVH和对一些框架的支持。

xen4.11/automation:Docker容器相关/
xen4.11/extras/mini-os/include:arm; mini-extrernal
Xen/arch/x86:/guest; /pv
xen/arch/arm:/acpi; /efi; /config; /vgic

其他名词

entry.S

entry.S的作用:

entry.S contains the system-call and fault low-level handling routines.
This code handles signal-recognition, which happens every time after an interrupt and after each system call.
Normal syscalls and interrupts don't save a full stack frame, this is only done for syscall tracing, signals or fork/exec et.al.

宏的使用;宏是在哪里定义的;include/linux/linkage.h

what’s the meaning of ENTRY statement in entry.S in Linux kernel for i386

#ifndef ENTRY
#define ENTRY(name) \
    .globl name ASM_NL \
    ALIGN ASM_NL \
    name:
#endif

我对entry.S中的ENTRY的理解是:当产生中断、系统调用、超级调用的时候,会进入到entry.S中,找到相应的系统调用表,根据表中的序号,选择对应的函数,此时运行权限会从用户态切换到内核态;根据调用表找到相应函数后,就会执行对应的代码了。其中需要注意的问题是:如何从entry.S中的调用表进入到函数体中。

Meltdown & Spectre

Meltdown & Spectre原理简要梳理:

https://blog.csdn.net/wlmnzf/article/details/79319509

- Variant 1: bounds check bypass (CVE-2017-5753)【绕过边界检查】 
- Variant 2: branch target injection (CVE-2017-5715)【分支目标注入】 
- Variant 3: rogue data cache load (CVE-2017-5754)【恶意数据缓存载入】 
Spectre 主要利用前两个漏洞进行攻击,而meltdown则主要利用第三个漏洞进行攻击。

处理器架构

https://blog.csdn.net/qq_41368963/article/details/79074513

arm:arm处理器;x86:CPU指令集类型;

RISC(reduced instruction set computer,精简指令集计算机)是一种执行较少类型计算机指令的微处理器;计算机指令集越大就会使微处理器更复杂,执行操作也会更慢。

ARM/MIPS/PowerPC均是基于精简指令集机器处理器的架构;
X86则是基于复杂指令集的架构,Atom是x86或者是x86指令集的精简版。

ARM架构,过去称作进阶精简指令集机器(Advanced RISC Machine,更早称作:Acorn RISC Machine),是一个32位精简指令集(RISC)处理器架构,其广泛地使用在许多嵌入式系统设计。由于节能的特点,ARM处理器非常适用于行动通讯领域,符合其主要设计目标为低耗电的特性。

xx86或80x86是英代尔Intel首先开发制造的一种微处理器体系结构的泛称。x86架构是重要地可变指令长度的CISC(复杂指令集电脑,Complex Instruction Set Computer)。

mk文件

mk文件用来向编译系统描述需要编译的源代码

你可能感兴趣的:(学习)