# 세 fault 는 변환 사슬의 서로 다른 단계에서 갈라져 나가 서로 다른 계층이 받는다 ## Alternative text Guest Page Table 과 EPT, QEMU 의 Guest RAM Backing 에서 각각 fault 가 갈라져 Guest Kernel · KVM · Host Kernel 로 가는 갈래도. ## Long description 위에서 아래로 읽는다. 맨 위 왼쪽에 Guest Page Table 이 있고 거기서 갈래가 둘이다. 하나는 Guest Page Fault 로 Guest Kernel 에 빠지고, 다른 하나는 GPA 를 들고 아래 EPT 로 내려간다. EPT 에서도 갈래가 나뉘어 EPT Violation 은 VM Exit 을 거쳐 KVM 으로 간다. 맨 위 오른쪽에는 QEMU 의 Guest RAM Backing 이 따로 있고 그쪽 갈래인 Host Page Fault 는 Host Kernel 로 간다. 받는 자리의 이름이 그대로 계층 이름이다 — Guest Kernel · KVM · Host Kernel. QEMU 갈래가 EPT 갈래와 선으로 이어져 있지 않은 것은 근거 문서가 둘을 잇는 문장을 두지 않았기 때문이다. 다섯 원인이 무엇인지와 두 사건을 항목별로 견주는 것은 본문의 표가 맡는다. ## Elements and evidence - **Guest Page Table** (component): 첫 번째 translation 단계. 여기서 접근을 완료할 수 없으면 Guest Page Fault 가 난다. Evidence: L2443–L2445, L2484–L2485. - **Guest Kernel** (service): Guest Page Fault 를 받는 계층. Evidence: L2487–L2487, L2493–L2494. - **EPT** (component): 두 번째 translation 단계. Guest translation 이 성공한 뒤 여기서 막히면 EPT Violation 이 난다. Evidence: L2465–L2469, L2484–L2485. - **KVM** (service): EPT Violation 을 VM Exit 뒤에 받는 계층. Evidence: L2471–L2473, L2487–L2487. - **QEMU · Guest RAM Backing** (store): Host 의 일반 userspace 메모리로 관리되는 자리. demand allocation 이나 reclaim, swap 때문에 여기서 fault 가 난다. Evidence: L2504–L2504, L2514–L2519. - **Host Kernel** (service): Host Page Fault 를 받아 필요한 Host page 를 처리하는 계층. Evidence: L2521–L2525. ## Relationships - **EPT → KVM:** EPT Violation · VM Exit. Evidence: L2467–L2473, L2487–L2487. - **Guest Page Table → Guest Kernel:** Guest Page Fault. Evidence: L2484–L2487, L2493–L2494. - **QEMU · Guest RAM Backing → Host Kernel:** Host Page Fault. Evidence: L2517–L2525. - **Guest Page Table → EPT:** GPA. Evidence: L2461–L2467.