Underdog Linux

Provide Options, Don't Make Lame Excuses.

处理qvm终止

您可以注册以在 qvm 进程实例终止时收到通知,以便您可以采取适当的操作来响应终止。 更多关闭guest的信息,参考Booting and Shutting Down章节的Shutting down guests。 受控终止 您可以编写一个极简的 vdev,当其 qvm 进程实例即将终止时,它可以启动适当的操作; 例如,因为其guest已关闭或变得无响应。 下面的示例来自虚构的 vde...

看门狗

QNX hypervisors 提供虚拟看门狗设备,您可以在虚拟机中使用,就像在非hypervisors 系统中使用主板上的硬件看门狗一样。 您有责任确定如何最好地为hypervisor 主机和guest使用硬件和软件看门狗。这在安全相关系统中尤为重要。 请参阅 《QNX Hypervisor for Safety 2.2》 和 《QNX OS for Safety 2.2.1 Sa...

DMA device containment (smmuman)

hypervisor 使用 IOMMU/SMMU 管理器 smmuman,确保任何pass-through DMA 设备都无法访问尚未明确授予其访问权限的主机物理内存。 smmuman 服务是 QNX 操作系统的一个组件。此处介绍它是为了方便hypervisor 用户。有关更完整的信息,请参阅 SMMUMAN 用户指南。 DMA devices and IOMMUs/SMMUs ...

Design Safe States

原文:Design Safe States QNX Hypervisor 支持两种设计安全状态 (DSSs)。 在运行非安全 QNX Hypervisor 变体且不遵守安全手册的情况下,无法保证hypervisor 在虚拟机或hypervisor 本身出现未定义条件后会进入其 DSSs 之一。 如果内部或外部检测机制向hypervisor 发出警报,告知其无法以任何其他...

检查guest环境

hypervisor 提供了一种机制,允许guest 确定它是否在虚拟化环境中运行,特别是 QNX hypervisor 环境。 ARM platforms 在 ARM 平台上,检查Flattened Device Tree (FDT) 中描述guest 系统的模型属性。 如果使用 QVM-v8A 设置此属性,则系统托管在 QNX hypervisor 虚拟机中。 x86 platfor...

保护策略

QNX Hypervisor 实施多种策略来保护自己及其guest操作系统,并减轻故障的不良影响。 QNX Hypervisor包括QNX Neutrino微内核和libmod_qvm虚拟化扩展。因此,hypervisor可以依赖其微内核所采用的安全相关技术。 干扰类型 干扰有多种类型,根据系统的组件是主动协作还是完全独立而有所不同。以下是不完整的列表。 一个组件可能: 抢夺系统资源...

Interprocess Communication (IPC)

原文: ipc 进程间通信在微内核从嵌入式实时内核向全面POSIX操作系统的转变中起着重要作用。随着各种服务提供过程被添加到微内核中,IPC是将这些组件连接成一个有凝聚力的整体的“粘合剂”。 虽然 message passing 是 QNX Neutrino RTOS中 IPC 的主要形式,但也有其他几种形式可供选择。 除非另有说明,否则这些其他形式的 IPC 是建立在我们的本机...

共享资源

在hypervisor中,除了少量的共享内存外,内存和设备仅由单个实体(guest 或hypervisor主机)拥有。 在不同VM中运行的多个guests 可以使用相同的系统资源,例如物理CPU。 这些资源的管理完全属于hypervisor的领域。系统集成商的职责仅限于为每个VM配置适当数量的vCPU、设置其优先级以及将vCPU线程绑定(固定)到特定物理CPU的(very importan...

时间

在QNX hypervisor上运行的guest中的时间总是滞后于主机中的时间,但hypervisor会采取纠正措施以最小化这种滞后(或drift)。 Drift hypervisor系统中guest的时间是虚拟化的。 也就是说,托管guest 的VM(qvm进程实例)提供了虚拟计时器滴答声(timer tick),以及guest希望在其环境中找到的虚拟硬件计时器。 因此,hypervis...

中断

在QNX hypervisor系统中,guests配置其虚拟可编程中断控制器(PICs virtual Progammable Interrupt Controllers),hypervisor 根据这些配置管理中断。 hypervisor 主机必须进行干预,以管理硬件断言的任何中断,无论是谁的操作触发了中断,还是谁拥有断言中断的设备,或者中断的最终目的地。这意味着需要一个guest 出口...