【问题标题】:type 1 hypervisor boot sequence类型 1 管理程序启动顺序
【发布时间】:2013-03-13 18:54:47
【问题描述】:
我有一个关于类型 1 虚拟化的非常基本的查询。我真的很想了解启动过程。
1 类管理程序基本上在裸机级别运行,直接与硬件通信。
我的问题是,当系统启动并加载引导代码时,下一个加载的组件是虚拟机管理程序,或者初始化本身是否最初需要管理操作系统??
谁能参考 1 类管理程序向我解释引导顺序?
我认为它应该像引导代码一样直接引用管理程序组件,该管理程序组件又负责加载其他虚拟 VM 实例的内核。
【问题讨论】:
标签:
boot
hypervisor
bare-metal
【解决方案1】:
引导顺序取决于管理程序。简单性通常是管理程序的目标。如果系统是静态配置的(预配置任务),那么整个流程表可以在映像中进行预编码。在这种情况下,初始引导是系统初始化和上下文切换到最高优先级任务。即,图像就像一个冻结系统图像。即使使用 dynamic 管理程序,root 或 init 任务也可以这样编码;而其他任务则根据需要spawned。
系统初始化包括,
- 刷新缓存、写入缓冲区、TLB。
- 设置内存控制器。
- 禁用中断并设置堆栈。
- 启用 MMU。
- 可能会将内核页面锁定在缓存中。
- 正在初始化中断控制器。
- 可能会安装管理程序计时器。
实际上,这主要取决于 管理程序 的设计。例如,如果它是非抢占式的且仅基于优先级,则可能不需要计时器。