대상 x86(또는 대상 아치 = 호스트 아치)에서 x86을 대상으로 하는 사용자 모드 qemu를 실행할 때 qemu는 KVM을 사용하거나 제어권을 CPU로 직접 전송하거나 명령을 해석합니까?
답변1
사용자 모드가 KVM을 사용하지 않는다는 간접적인 증거는 다음과 같습니다.
사용자 모드 실행 파일은 옵션을
qemu-x86_64 --help
표시하지 않지만--kvm
전체 시스템 실행 파일은 옵션을 표시합니다.qemu-system-x86_64 --help
다음을 통해 입력 지침과 이진 번역 지침을 볼 수 있습니다.
qemu-x86_64 -d in_asm,out_asm hello.out
이제 더 흥미로운 질문은 이론적으로 가능합니까?
확실하진 않지만 대략gem5 에뮬레이터, 유사한 사용자 모드(시스템 호출 에뮬레이션이라고 함)가 있는 AMD는 최소한 이 가능성에 대해 진지하게 조사한 결과 다음과 같이 결론을 내렸습니다.http://www.m5sim.org/wiki/images/5/53/2015_ws_12_KVM-in-SE.pdf
실제로 2014년에 뭔가가 병합되었습니다: adbaa4dfde96d5aaf84adf0ae4989ef880aad726 "kvm, x86: SE 모드 실행에 대한 지원 추가". 하지만 3ca404da175a66e0b958165ad75eb5f54cb5e772를 시도하면 실패 KeyError: 'OsKernel'
하고 추가 조사/질문이 필요합니다.