易截截图软件、单文件、免安装、纯绿色、仅160KB

Virtio:针对 Linux 的 I/O 虚拟化框架

概而言之,virtio
是半虚拟化 hypervisor 中位于设备之上的抽象层。virtio
由 Rusty Russell 开发,他当时的目的是支持自己的虚拟化解决方案 lguest
。本文在开篇时介绍半虚拟化和模拟设备,然后探索 virtio
的细节。本文的重点是来自 2.6.30 内核发行版的 virtio
框架。
Linux 是 hypervisor 展台。如我的 剖析 Linux hypervisor
所述,Linux 提供各种 hypervisor 解决方案,这些解决方案都有自己的特点和优点。这些解决方案包括 Kernel-based Virtual Machine (KVM)、lguest
和 User-mode Linux 等。在 Linux 上配备这些不同的 hypervisor 解决方案会给操作系统带来负担,负担的大小取决于各个解决方案的需求。其中的一项开销为设备的虚拟化。virtio
并没有提供多种设备模拟机制(针对网络、块和其他驱动程序),而是为这些设备模拟提供一个通用的前端,从而标准化接口和增加代码的跨平台重用。
完全虚拟化和半虚拟化
加入 My developerWorks 上的绿色小组
在 My developerWorks 上的 GReen IT Report 空间
和 绿色计算小组
上讨论关于能源、效率和环境的主题并共享资源。
让我们快速讨论一下两种类型完全不同的虚拟化模式:完全虚拟化和半虚拟化。在完全虚拟化
中,来宾操作系统运行在位于物理机器上的 hypervisor 之上。来宾操作系统并不知道它已被虚拟化,并且不需要任何更改就可以在该配置下工作。相反,在半虚拟化
中,来宾操作系统不仅知道它运行在 hypervisor 之上,还包含让来宾操作系统更高效地过渡到 hypervisor 的代码(见 图 1
)。

完全虚拟化模式中,hypervisor
必须模拟设备硬件,它是在会话的最低级别进行模拟的(例如,网络驱动程序)。尽管在该抽象中模拟很干净,但它同时也是最低效、最复杂的。在半虚拟化模式
中,来宾操作系统和 hypervisor 能够共同合作,让模拟更加高效。半虚拟化方法的缺点是操作系统知道它被虚拟化,并且需要修改才能工作。


图 1. 在完全虚拟化和半虚拟化环境下的设备模拟

硬件随着虚拟化技术而不断改变。新的处理器通过纳入高级指令来让来宾操作系统到 hypervisor 的过渡更加高效。此外,硬件也随着输入/输出(I/O)虚拟化而不断改变(参见 参考资料
了解 Peripheral Controller Interconnect [PCI] passthrough 和 single- and
multi-root I/O 虚拟化)。
virtio 的替换者
virtio
并不是该领域中的唯一霸主。Xen 提供半


相关文档:

Linux下创建与解压zip, tar, tar.gz和tar.bz2文件 转

在Linux下面去压缩文件或者目录。我们将学习zip, tar, tar.gz和tar.bz2等压缩格式的基本用法。
zip格式已成为压缩文件的标准选择,而且它在windows上也能使用。
经常用zip格式压缩那些需要共享给windows用户的文件。
如果只是共享给linux用户或者Mac用户,偏向于选择tar.gz格式。
ZIP
zip可能是目前使用得最多的文档压 ......

【linux】c++ 内存管理(二)

3. 指针与数组的比较
不同点:
      数组:要么在惊天存储区域被创建(如全局数组),要么在栈上被创建。数组名对应着(而不是指向)一块内存,其地址与容量在生命周期内保持不变,只有数组的内容可以改变。
指针:可以随时指向任意类型的内存块,它的特征是“可变”,所以我们常用 ......

Linux多线程编程

一:Linux多线程编程:
        线程(thread)技术早在60年代就被提出,但真正应用多线程到操作系统中去,是在80年代中期,solaris是这方面的佼佼者。传统的Unix也支持线程的概念,但是在一个进程(process)中只允许有一个线程,这样多线程就意味着多进程。现在,多线程技术已经被许 ......

Linux配置Apache服务器全攻略

  Linux配置Apache服务器全攻略 收藏
一,使用源代码安装
  (1) 获得源代码
  # lynx http://www.apache.org/dist/httpd/httpd-2_0_NN.tar.gz
  NN表示当前所用的版本号。
  (2) 解压缩
  # gzip -d httpd-2_0_NN.tar.gz
  # tar xvf httpd-2_0_NN.tar 
  (3) 配置.
  # ./configure --pre ......

Linux下DB2的安装手把手教学篇

 
今天安装了db2,忙了好一阵子,上网找资料等,终于装好了,下面就把我的步骤跟大家分享一下。
  第一步:检查程序包及其版本
   compat-libstdc++-7.3-2.96.118.i386.rpm
       在linux的安装盘上,找到后使用rpm -i compat-libstdc++-7.3-2.96.118.i386.rpm 安装即可
  第 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号