深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上鸿蒙开发知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
一、虚拟技术的发展历史
计算机的运行通常离不开合适的操作系统的,而传统操作系统必须运行在具有特定的指令集(实现它的处理器)、内存系统和I/O系统的物理计算机上。
1.1传统技术的局限性:
(1)随着计算机技术飞速发展,计算机系统结构、操作系统及应用程序变得越来越复杂。
(2)传统操作系统上由于应用程序之间无法真正相互隔离,因此一个应用程序的错误可能导致整个系统的奔溃。
这些推动了90年代末 —— 新一轮虚拟计算机(Virtual Machine)技术的发展。一些基于 X86 架构的商用虚拟机产品的推出,如VMware Workstation 、 Virtual PC 等,使得虚拟计算机技术发展到一个新阶段。
1.2云计算和万物互联技术的发展机遇:
进入21世纪,计算机领域出现两大新的虚拟化应用场景 ——
(1)云计算
云计算技术发展,使得作为标准化产品的虚拟机作为服务,成为各家IT企业的选择
降低企业自建服务器的IT服务成本和投入
(2)万物互联
万物互联技术把100亿数量级的嵌入式设备整合在一起,并通过云连接起来。
虚拟化技术也因此在嵌入式领域得到广泛应用,以此整合各种单一功能的设备,通过共同的接口接入互联网,构建高效、低成本的万物互联系统。
1.3虚拟化技术介绍
Hypervisor 将一个物理的ISA转换成一个虚拟机
左图:展示的是虚拟技术通过现有平台(机器)上添加一层**虚拟机监控器(Virtual Machine Monitor , VMM)**软件实现对系统的虚拟化,如:虚拟处理器,虚拟内存管理器(MMU)和 虚拟I/O系统等。
虚拟机监控器(VMM)也被称作 —— 超级管理者(Hypervisor)—> 主流叫法,它对应操作系统中的(普通)管理者(Supervisor),但Hypervisor 比 Supervisor 权力更大、更加基础。
如右图所示:从应用程序角度看,程序运行在虚拟机上与运行在其对应的实体计算机上一样,都运行在某一特定的指令体系(Instruction Set Architecture,ISA) 和 / 操作系统上。
1.4虚拟机分类
基于左图所示指令体系接口抽象的虚拟机称为系统虚拟机(System VM)
基于 右图所示应用程序二进制接口(Application Binary Interface, ABI)抽象的虚拟机称为进程虚拟机(Process VM)。
二、VMM
2.1什么是VMM
**虚拟机监控器(VMM,Virtual Machine Monitor)**是一种软件或固件层,它在计算机硬件和操作系统之间运行,并允许多个虚拟机共享计算机资源。
虚拟机监控器的作用主要包括以下几点:
- 提供虚拟化的环境:虚拟机监控器创建虚拟机并提供虚拟化的环境,使得多个虚拟机可以在同一台物理计算机上同时运行。
- 管理虚拟机的资源:虚拟机监控器负责管理虚拟机的硬件资源,例如CPU、内存和硬盘等,以确保多个虚拟机之间可以平稳共享计算机资源。
- 提供安全隔离:虚拟机监控器提供安全隔离机制,使得不同虚拟机之间的操作系统和应用程序可以独立运行,互不干扰,从而提高了系统的安全性和稳定性。
- 提供虚拟机的管理工具:虚拟机监控器提供一系列的工具和界面,用于管理和监控虚拟机的运行状态,以及对虚拟机进行配置和管理。这些工具可以帮助管理员轻松地管理多个虚拟机。
虚拟机监视器(Hypervisor)安装在物理硬件上的软件层,是实现虚拟化的核心组件。可以将物理机通过虚拟化分成许多虚拟机,它可以提供虚拟化的环境,管理虚拟机的资源,提供安全隔离和管理工具等功能,从而使得多个虚拟机可以在同一台物理计算机上高效地运行。。安装在虚拟机上的操作系统称为虚拟操作系统,也称为实例。有虚拟机监视器运行的硬件称为主机。虚拟机管理控制台(也称为虚拟机管理员(VMM))是一种计算机软件,可以轻松管理虚拟机。
2.2VMM的模型分类
有三种类型的虚拟机监视器:Type1虚拟机监视器(Hypervisor Model)模型和Type2虚拟机监视器 (Host-based Model) 模型 和 混合模型 (Hybrid Model)。
**监控模型(虚拟机监控器模型 - Type - 1 Hypervisor)**中:VMM直接运行在裸机上(无操作系统)。
采用该模型的VMM运行在处理器的最高特权级,而所有客户则运行在较低特权级,以便VMM可以截获所有客户机OS对系统资源的访问,从而实现对系统资源的虚拟化。
**宿主模型 (二型虚拟机监控器 - Type - 2 Hypervisor)**中: VMM运行在宿主机OS(Host OS)内,作为宿主机操作系统的扩充。
**优点:**VMM可以充分利用宿主机OS提供的设备驱动程序及底层服务,并且不需要去除原来机器上已经安装的操作系统,安装和部署较容易。
**缺点:**VMM的开发受限制于宿主机的OS接口,有些功能实现较困难或需要修改宿主机OS。
混合模型集两者的优点,既可以利用宿主机OS的现成设备驱动实现虚拟机的设备模型,又可以实现不同的安全模型,他的典型代表是微软公司的Hyper - V 和 Citrix 公司的 Xen 开源 Hypervisor。
深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上鸿蒙开发知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
提升的进阶课程,涵盖了95%以上鸿蒙开发知识点,真正体系化!**
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新