(4)8 P160:(4)代表该道题属于第4章的内容,8是题号(第8题),P160是该习题在书中的大体页码。
35说明虚拟化的含义,为了实现虚拟化,计算机系统通常提供四种类型的接口,说明这四种接口,并说明两种实现方式。P55
答:计算机系统通常在4个不同层次提供4种不同界面:
(1) 由机器指令组成,可由任何程序激起的硬件软件界面。
(2) 由机器指令组成,只有特权程序(像操作系统)才可激起的硬件软件界面。
(3) 由操作系统提供的系统调用(system call)组成的界面。
(4) 由库调用组成的界面,通常形成了所谓的应用程序编程接口(API)。很多情况下前述的系统调用由API隐藏。
虚拟化的两种实现方式:
(1) 可以构建一个运行时(runtime)系统,实质上提供一套抽象指令集来执行程序。指令可以被翻译执行(像Java运行环境),也可以仿真执行,就像在Unix平台上运行Windows系统。后者的这种虚拟化被称为进程虚拟机,用以强调虚拟化实质上作用在进程上。
(2) 提供一种系统。把它做成一层完全屏蔽硬件但提供一种同样指令集(或其他硬件)的界面。关键是这个界面可以同时提供给不同的程序。结果,可以有多个不同的操作系统独立并发的运行在