参考答案:
【问题1】 图3-2 虚拟化技术特性归属关系
【问题2】
表3-2 四种共享资源和四种潜在的安全隐患
全虚拟化技术能够在硬件辅助虚拟化的支持下,运行任何不需要修改的客户操作系统;半虚拟化技术不需要硬件辅助虚拟化的支持,通过精心修改客户操作系统内核,在只改动有限量内核代码、替换为相应Hypercall的基础上实现虚拟化的。
虚拟化操作系统目前仅仅支持单核处理器,不支持多核的主要原因是:由于多核存在共享资源访问,虚拟化后会影响分区化的安全性。
详细解析:
本题主要考查嵌入式软件系统虚拟化的知识,考查内容较新,需要考生对虚拟化知识的基本概念及其在嵌入式软件系统中的应用具有一定的理解和认识。
【问题1】
本题第一问主要考查半虚拟化技术和全虚拟化技术的差异,考生需要明确全虚拟化技术能够在硬件辅助虚拟化的支持下,运行任何不需要修改的客户操作系统;半虚拟化技术不需要硬件辅助虚拟化的支持,通过精心修改客户操作系统内核,在只改动有限量内核代码、替换为相应Hypercall的基础上实现虚拟化的。
本题第二问主要考查全虚拟化和半虚拟化的特点。全虚拟化需要硬件结构支持,通用性高、过程简洁,虚拟化性能低,不需要修改客户操作系统。半虚拟化技术虚拟化性能高,需要修改客户操作系统,使用范围受到一定制约,但不受CPU硬件限制。
【问题2】
本题第一问主要考查嵌入式实时操作系统不支持多核处理器的原因,其主要原因是由于多核存在共享资源访问,虚拟化后会影响分区化的安全性。
本题第二问主要考查采用虚拟化技术支持多核时,在共享引导逻辑、共享CACHE、共享I/O逻辑、结构的复杂性四个方面可能出现的问题。其中共享引导逻辑的情况下,执行影像的安全性受到潜在威胁;共享CACHE的情况下,潜在的旁路通道遭数据泄漏攻击;共享I/O逻辑的情况下,潜在的隐蔽通道攻击和服务拒绝攻击;结构的复杂性情况下,会存在潜在的故障注入攻击。