以下笔记来自阅读:https://www.kernel.org/doc/Documentation/virtual/kvm/api.txt
1. 基本描述
KVM API
本质上是为了控制虚拟机的方方面面而下发的一组ioctl,这些ioctl可以划分为四类:
- system ioctl:
对影响整个KVM系统的属性进行查询或设置。创建虚拟机就是其中的一个系统ioctl。
- vm ioctl...
阿里云在今年的网络顶会SIGCOMM上发表了一篇论文:"From Luna to Solar:
The Evolutions of the Compute-to-Storage Networks in Alibaba
Cloud"。
该文章介绍了阿里云在EBS存储的应用背景下,计算节点和存储节点间网络通信的演进过程。由于文中介绍的网络架构已经在阿里云内部大范围应用,对于同样提供EBS服务的云厂商来...
以下笔记来自阅读:x86 Instruction Set Architecture - MindShare
本文以Intel处理器作为阐述目标。AMD处理器差异点可以参考: Agner Fog
Microarchitecture
在“指令集架构
"一文中,我们粗略介绍了指令集架构的分类、寻址、操作、编码等7个方面的内容。下面我们对服务器及PC中使用最广泛的x86指令集架构做详细介绍...
以下笔记来自阅读:https://www.kernel.org/doc/html/latest/x86/boot.html
Linux/x86 引导协议
在x86平台上,Linux使用一个很复杂的引导协议。形成这种状况的原因有很多,包括:各种历史原因、早期期望内核本身就是一个可以启动的
image、复杂的PC内存模型、以及实模式消亡后PC工业界的变化等等。
目前,存在如下版本...
以下笔记 来自阅读:Hennessy J L, Patterson D A.
Computer Architecture: A Quantitative Approach 6th Edition. 2019.
指令集架构指代程序可见的指令集,也是软件和硬件的分界线。下面以实际的例子说明指令集架构的具体7个方面:
-
指令集架构的分类:几乎所有今天的ISA都被归类为通用寄存器架构,其操作数不是寄存器...
以下笔记来自阅读:Knuth D E , Morris J H , Pratt V R . Fast Pattern
Matching in Strings[J]. Siam Journal on Computing, 1977,
6(2):323-350.
文本编辑器软件经常需要在一串字符中查找以匹配特定的模式,这些模式也是一串字符,我们有时需要查找到所有匹配的位置,也有时候,仅仅需...
在“虚拟化技术概念及分类
”一文中,从应用程序的角度,将虚拟化技术分为:
硬件虚拟化、操作系统级虚拟化和程序库级虚拟化三类。本文将对硬件虚拟化的概念、发展历史做展开描述。
硬件虚拟化是对计算机硬件环境的虚拟,其上支持多种操作系统并发执行。在描述硬件虚拟化之前,先来了解一下计算机的硬件环境。
计算机硬件环境
当前服务器均基于Modified Harvard架构,其简化结构如下:
中央处理器:执行特...
虚拟化是一种让人着迷的技术,其知识背景贯穿底层硬件到上层应用,也是目前云计算服务的基础。本文及后续文章,期望通过“虚拟化简介”这一系列,管中窥豹,将虚拟化技术的魅力阐述一二,也算是对自己多年工作的一个总结。
在展开描述虚拟化之前,有必要对虚拟化的概念和技术分类做通盘的介绍:
什么是虚拟化?
虚拟化,即是创建真实事物的虚拟版本,在计算机世界里,这些真实事物可以是计算机硬件平台、存储设备和网络资源等...
提供虚拟机服务的过程中,遇到了如下问题:
现象1:在线迁移前,虚拟机运行正常,迁移之后,虚拟机内用户态程序CPU占用飙升,甚至打满整个虚拟机。
现象2:虚拟机内CPU占用集中在用户态,关闭程序后虚拟机CPU使用率下降,启动程序可复现问题。
现象3:冷启动虚拟后,启动程序,问题消失。
该问题多次出现,升级宿主机到高版本内核问题消失,最终通过缩小范围,发现打入如下内核Patch后问题解决。
1...