← Documents Documentation/virt/acrn/cpuid.rst GitHub 원문 ↗

Linux 6.18.37 · 가상화 / ACRN

ACRN CPUID 비트

ACRN 게스트가 하이퍼바이저 식별, privileged VM 기능 비트와 가상 TSC 주파수를 읽는 CPUID leaf를 설명합니다.

Source pathDocumentation/virt/acrn/cpuid.rst
Source versionLinux v6.18.37
TranslationDUJINLABS 전문 번역 + 해설

요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.

1. 요약·해설

원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.

요약·해설

cpuid.rst:1-46

ACRN 전용 leaf는 벤더 문자열 확인, 기능 탐색, 시간 기준 획득을 분리합니다. 게스트는 먼저 0x40000000의 최대 leaf를 확인한 뒤 제공 범위 안에서만 기능 leaf를 조회해야 향후 확장과 호환됩니다.

2. 영어 원문 전체

번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.

원문 전체 펼치기
1 .. SPDX-License-Identifier: GPL-2.0
2
3 ===============
4 ACRN CPUID bits
5 ===============
6
7 A guest VM running on an ACRN hypervisor can check some of its features using
8 CPUID.
9
10 ACRN cpuid functions are:
11
12 function: 0x40000000
13
14 returns::
15
16 eax = 0x40000010
17 ebx = 0x4e524341
18 ecx = 0x4e524341
19 edx = 0x4e524341
20
21 Note that this value in ebx, ecx and edx corresponds to the string
22 "ACRNACRNACRN". The value in eax corresponds to the maximum cpuid function
23 present in this leaf, and will be updated if more functions are added in the
24 future.
25
26 function: define ACRN_CPUID_FEATURES (0x40000001)
27
28 returns::
29
30 ebx, ecx, edx
31 eax = an OR'ed group of (1 << flag)
32
33 where ``flag`` is defined as below:
34
35 ================================= =========== ================================
36 flag value meaning
37 ================================= =========== ================================
38 ACRN_FEATURE_PRIVILEGED_VM 0 guest VM is a privileged VM
39 ================================= =========== ================================
40
41 function: 0x40000010
42
43 returns::
44
45 ebx, ecx, edx
46 eax = (Virtual) TSC frequency in kHz.
47

3. 한국어 전문 번역

영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.

ACRN CPUID 기능

1-10

ACRN 하이퍼바이저에서 실행되는 게스트 VM은 `CPUID`를 사용해 하이퍼바이저가 제공하는 일부 기능을 확인할 수 있습니다. 이 문서는 ACRN 전용 CPUID 함수와 각 레지스터의 반환값을 정의합니다.

.. SPDX-License-Identifier: GPL-2.0

===============
ACRN CPUID bits
===============

A guest VM running on an ACRN hypervisor can check some of its features using
CPUID.

ACRN cpuid functions are:

함수 0x40000000: 식별 문자열과 최대 leaf

11-24

함수 `0x40000000`은 `eax`에 현재 제공되는 최대 CPUID 함수 `0x40000010`을 반환하고, `ebx`, `ecx`, `edx`에는 각각 `0x4e524341`을 반환합니다. 세 레지스터를 이어 붙인 값은 문자열 `ACRNACRNACRN`에 해당합니다.

향후 ACRN CPUID 함수가 추가되면 이 leaf의 `eax` 값도 새 최대 함수 번호에 맞춰 갱신됩니다.

ACRN 식별 leaf 반환값
레지스터의미
`eax``0x40000010`현재 제공되는 최대 ACRN CPUID 함수
`ebx``0x4e524341`식별 문자열의 첫 번째 ACRN
`ecx``0x4e524341`식별 문자열의 두 번째 ACRN
`edx``0x4e524341`식별 문자열의 세 번째 ACRN

함수 0x40000000의 레지스터별 의미입니다.


function: 0x40000000

returns::

   eax = 0x40000010
   ebx = 0x4e524341
   ecx = 0x4e524341
   edx = 0x4e524341

Note that this value in ebx, ecx and edx corresponds to the string
"ACRNACRNACRN". The value in eax corresponds to the maximum cpuid function
present in this leaf, and will be updated if more functions are added in the
future.

함수 ACRN_CPUID_FEATURES: 기능 비트

25-40

`ACRN_CPUID_FEATURES`는 함수 `0x40000001`로 정의됩니다. `eax`는 지원되는 각 `flag`에 대해 `(1 << flag)`를 OR한 비트 집합이며, `ebx`, `ecx`, `edx`에는 이 문서에서 별도 의미를 정의하지 않습니다.

ACRN 기능 플래그
플래그의미
`ACRN_FEATURE_PRIVILEGED_VM``0`게스트 VM이 privileged VM임

현재 정의된 기능 플래그와 의미입니다.


function: define ACRN_CPUID_FEATURES (0x40000001)

returns::

          ebx, ecx, edx
          eax = an OR'ed group of (1 << flag)

where ``flag`` is defined as below:

================================= =========== ================================
flag                              value       meaning
================================= =========== ================================
ACRN_FEATURE_PRIVILEGED_VM        0           guest VM is a privileged VM
================================= =========== ================================

함수 0x40000010: 가상 TSC 주파수

41-46

함수 `0x40000010`은 `eax`에 가상 TSC 주파수를 kHz 단위로 반환합니다. `ebx`, `ecx`, `edx`에는 이 문서에서 별도 반환 의미를 지정하지 않습니다.

function: 0x40000010

returns::

          ebx, ecx, edx
          eax = (Virtual) TSC frequency in kHz.