refactor: 문서 개선 중

This commit is contained in:
donghyeon-ka
2026-09-21 14:30:55 +09:00
parent c93cdea150
commit 805a18f486
1497 changed files with 525837 additions and 59152 deletions
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -14,11 +14,11 @@
"long_description": "왼쪽에서 오른쪽으로 읽는다. 왼쪽 끝에 Guest 가 있고 VM Exit 이 KVM 으로 제어권을 넘긴다. KVM 은 Exit Reason 을 확인해 두 갈래 중 하나를 고른다. 커널 안에서 처리할 수 있는 Exit 은 Kernel 쪽 KVM 커널 처리로 가고, userspace 처리가 필요한 Exit 만 KVM_RUN 이 반환되면서 Userspace 쪽 QEMU 로 간다. QEMU 는 필요한 장치 동작을 처리한 뒤 KVM_RUN 을 다시 호출한다. 두 갈래는 오른쪽 끝에서 다시 만나며 어느 쪽이든 VM Entry 를 지나 Guest 실행 재개로 돌아온다. 무엇이 Exit 을 부르는지와 Exit 이 잦을 때 무엇을 함께 보는지는 본문의 표와 문단이 맡는다.",
"source_context": {
"document": "docs/virtualization/final/document.md",
"document_sha256": "181e2b3cc8a45bae81e7e8193d026937c4d586ae4495d3b2c323eb7e6abcfadd",
"document_sha256": "8c4ecc64c8cea9a4450ed7131fdd9cb2048dc092b66cd969f6346ed77887c210",
"anchor": {
"kind": "heading",
"value": "9. VM Exit 이후 처리",
"line": 493
"line": 506
}
},
"composition": {
@@ -41,8 +41,8 @@
"description": "VM Exit 이 나기 직전까지 실행 중이던 Guest.",
"evidence": [
{
"start_line": 498,
"end_line": 501
"start_line": 511,
"end_line": 514
}
],
"assumption": false
@@ -60,12 +60,12 @@
"description": "VM Exit 을 받아 Exit Reason 을 확인하고 갈래를 고르는 자리.",
"evidence": [
{
"start_line": 495,
"end_line": 495
"start_line": 508,
"end_line": 508
},
{
"start_line": 502,
"end_line": 504
"start_line": 515,
"end_line": 517
}
],
"assumption": false
@@ -79,12 +79,12 @@
"description": "커널 안에서 끝낼 수 있는 Exit 을 처리하는 갈래. QEMU 까지 올라가지 않는다.",
"evidence": [
{
"start_line": 508,
"end_line": 510
"start_line": 521,
"end_line": 523
},
{
"start_line": 531,
"end_line": 531
"start_line": 544,
"end_line": 544
}
],
"assumption": false,
@@ -106,12 +106,12 @@
"description": "userspace 처리가 필요한 Exit 에서만 개입하는 갈래.",
"evidence": [
{
"start_line": 510,
"end_line": 516
"start_line": 523,
"end_line": 529
},
{
"start_line": 533,
"end_line": 533
"start_line": 546,
"end_line": 546
}
],
"assumption": false
@@ -125,12 +125,12 @@
"description": "두 갈래가 다시 만나는 자리. VM Exit 은 VM 종료가 아니라 여기로 돌아온다.",
"evidence": [
{
"start_line": 521,
"end_line": 524
"start_line": 534,
"end_line": 537
},
{
"start_line": 529,
"end_line": 529
"start_line": 542,
"end_line": 542
}
],
"assumption": false
@@ -146,12 +146,12 @@
"style": "solid",
"evidence": [
{
"start_line": 495,
"end_line": 495
"start_line": 508,
"end_line": 508
},
{
"start_line": 498,
"end_line": 502
"start_line": 511,
"end_line": 515
}
],
"assumption": false
@@ -165,12 +165,12 @@
"style": "solid",
"evidence": [
{
"start_line": 504,
"end_line": 510
"start_line": 517,
"end_line": 523
},
{
"start_line": 531,
"end_line": 531
"start_line": 544,
"end_line": 544
}
],
"assumption": false
@@ -184,12 +184,12 @@
"style": "solid",
"evidence": [
{
"start_line": 508,
"end_line": 512
"start_line": 521,
"end_line": 525
},
{
"start_line": 533,
"end_line": 533
"start_line": 546,
"end_line": 546
}
],
"assumption": false
@@ -203,12 +203,12 @@
"style": "solid",
"evidence": [
{
"start_line": 518,
"end_line": 524
"start_line": 531,
"end_line": 537
},
{
"start_line": 531,
"end_line": 531
"start_line": 544,
"end_line": 544
}
],
"assumption": false
@@ -222,12 +222,12 @@
"style": "solid",
"evidence": [
{
"start_line": 514,
"end_line": 524
"start_line": 527,
"end_line": 537
},
{
"start_line": 533,
"end_line": 533
"start_line": 546,
"end_line": 546
}
],
"assumption": false
@@ -237,4 +237,4 @@
"metadata": {
"rationale": "flow 로 고른 이유는 이 절이 답하는 물음이 「제어권이 어디까지 갔다가 어떻게 돌아오는가」이기 때문이다. Kernel·Userspace 를 경계 상자로 그리면 두 상자가 같은 열에서 겹쳐(check-figure-overlap 15750px²) 어느 노드가 어느 경계인지 오히려 흐려져 노드의 details 로 내렸다. 무엇이 Exit 을 부르는지(§8)와 Exit 이 잦을 때 무엇을 함께 보는지는 본문 표가 이미 맡고 있어 그림에 넣지 않았다."
}
}
}