나는 커널이 프로세스(사용자 모드에서 실행) 실행 IN
과 OUT
CPU 명령(권한 있는 명령이라고 가정)을 허용할 수 있다는 것을 읽었습니다.
그러나 커널은 프로세스가 다른 권한 있는 명령(예: 등)을 실행하도록 허용할 수 HLT
있습니까 RDTSC
?
답변1
예 혹은 아니오
아니요
MMU 구성과 같은 일부 지침은 커널로 제한되어야 합니다.
예
특권 명령어가 실행되면 트랩(예외)이 발생합니다. 이 트랩은 커널에 의해 처리될 수 있습니다. 커널은 사용자 모드 프로세스를 대신하여 명령을 실행하도록 선택할 수 있습니다(아마도 검사 및 민감도를 확인한 후).
아니요
x86에서는 일부 특권 명령어는 특권이 없으므로 함정에 빠지지 마십시오. 그러나 그들은 정답을 제시했습니다. 이는 특권 코드를 가상화할 때 가상화에 어려움을 줄 수 있습니다. (예: 내가 어떤 모드에 있는지 묻고 사용자 모드라고 말함)