요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.
1. 요약·해설
원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.
2. 영어 원문 전체
번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.
원문 전체 펼치기
.. SPDX-License-Identifier: GPL-2.0
ACRN Hypervisor Introduction
============================
The ACRN Hypervisor is a Type 1 hypervisor, running directly on bare-metal
hardware. It has a privileged management VM, called Service VM, to manage User
VMs and do I/O emulation.
ACRN userspace is an application running in the Service VM that emulates
devices for a User VM based on command line configurations. ACRN Hypervisor
Service Module (HSM) is a kernel module in the Service VM which provides
hypervisor services to the ACRN userspace.
Below figure shows the architecture.
::
Service VM User VM
+----------------------------+ | +------------------+
| +--------------+ | | | |
| |ACRN userspace| | | | |
| +--------------+ | | | |
|-----------------ioctl------| | | | ...
|kernel space +----------+ | | | |
| | HSM | | | | Drivers |
| +----------+ | | | |
+--------------------|-------+ | +------------------+
+---------------------hypercall----------------------------------------+
| ACRN Hypervisor |
+----------------------------------------------------------------------+
| Hardware |
+----------------------------------------------------------------------+
ACRN userspace allocates memory for the User VM, configures and initializes the
devices used by the User VM, loads the virtual bootloader, initializes the
virtual CPU state and handles I/O request accesses from the User VM. It uses
ioctls to communicate with the HSM. HSM implements hypervisor services by
interacting with the ACRN Hypervisor via hypercalls. HSM exports a char device
interface (/dev/acrn_hsm) to userspace.
The ACRN hypervisor is open for contribution from anyone. The source repo is
available at https://github.com/projectacrn/acrn-hypervisor.
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.
Type 1 하이퍼바이저와 Service VM
1-15ACRN 하이퍼바이저는 bare-metal 하드웨어에서 직접 실행되는 Type 1 하이퍼바이저입니다. privileged 관리 VM인 Service VM이 User VM을 관리하고 I/O 에뮬레이션을 수행합니다.
ACRN userspace는 Service VM에서 실행되는 애플리케이션으로, 명령줄 구성에 따라 User VM의 장치를 에뮬레이션합니다. ACRN Hypervisor Service Module(HSM)은 같은 Service VM의 커널 모듈이며 ACRN userspace에 하이퍼바이저 서비스를 제공합니다.
.. SPDX-License-Identifier: GPL-2.0
ACRN Hypervisor Introduction
============================
The ACRN Hypervisor is a Type 1 hypervisor, running directly on bare-metal
hardware. It has a privileged management VM, called Service VM, to manage User
VMs and do I/O emulation.
ACRN userspace is an application running in the Service VM that emulates
devices for a User VM based on command line configurations. ACRN Hypervisor
Service Module (HSM) is a kernel module in the Service VM which provides
hypervisor services to the ACRN userspace.
Below figure shows the architecture.
ACRN 아키텍처
16-34Service VM의 사용자 공간에는 ACRN userspace가 있고 커널 공간에는 HSM이 있습니다. ACRN userspace는 `ioctl`로 HSM을 호출하고, HSM은 `hypercall`로 ACRN 하이퍼바이저와 통신합니다. User VM의 드라이버는 가상 하드웨어 인터페이스를 사용하며, 하이퍼바이저는 모든 VM과 물리 하드웨어 사이에 위치합니다.
원문의 ASCII 아키텍처 그림을 동일한 호출 관계로 구조화했습니다.
각 계층의 위치와 역할입니다.
::
Service VM User VM
+----------------------------+ | +------------------+
| +--------------+ | | | |
| |ACRN userspace| | | | |
| +--------------+ | | | |
|-----------------ioctl------| | | | ...
|kernel space +----------+ | | | |
| | HSM | | | | Drivers |
| +----------+ | | | |
+--------------------|-------+ | +------------------+
+---------------------hypercall----------------------------------------+
| ACRN Hypervisor |
+----------------------------------------------------------------------+
| Hardware |
+----------------------------------------------------------------------+
ACRN userspace와 HSM의 책임
35-43ACRN userspace는 User VM용 메모리를 할당하고, 사용할 장치를 구성·초기화하며, 가상 부트로더를 적재하고, 가상 CPU 상태를 초기화하고, User VM의 I/O 요청 접근을 처리합니다. HSM과의 통신에는 ioctl을 사용합니다.
HSM은 hypercall을 통해 ACRN 하이퍼바이저와 상호 작용하여 서비스를 구현하고, 사용자 공간에는 문자 장치 인터페이스 `/dev/acrn_hsm`을 제공합니다.
ACRN 하이퍼바이저는 누구나 기여할 수 있는 공개 프로젝트이며 원문에 명시된 소스 저장소는 `https://github.com/projectacrn/acrn-hypervisor`입니다.
ACRN userspace allocates memory for the User VM, configures and initializes the
devices used by the User VM, loads the virtual bootloader, initializes the
virtual CPU state and handles I/O request accesses from the User VM. It uses
ioctls to communicate with the HSM. HSM implements hypervisor services by
interacting with the ACRN Hypervisor via hypercalls. HSM exports a char device
interface (/dev/acrn_hsm) to userspace.
The ACRN hypervisor is open for contribution from anyone. The source repo is
available at https://github.com/projectacrn/acrn-hypervisor.
요약·해설
introduction.rst:1-43ACRN의 핵심 경계는 정책과 에뮬레이션을 맡는 Service VM userspace, 커널 인터페이스를 제공하는 HSM, VM 실행을 맡는 Hypervisor입니다. ioctl과 hypercall을 단계별로 분리해 사용자 공간 장치 모델이 하이퍼바이저와 직접 결합되지 않게 합니다.