OS와 하드웨어
CPU에 특권 모드(커널 모드)와 사용자 모드를 두는 주된 목적은 무엇입니까?
- A애플리케이션의 명령을 커널의 명령보다 빠르게 우선하여 실행할 수 있게 하기 위해
- B애플리케이션이 페이지 테이블이나 장치를 마음대로 조작하지 못하도록 보호하기 위해
- C하나의 CPU에서 동시에 두 개의 명령을 실행할 수 있게 하기 위해
정답과 해설 보기
정답: B. 애플리케이션이 페이지 테이블이나 장치를 마음대로 조작하지 못하도록 보호하기 위해
애플리케이션이 페이지 테이블 재작성, 입출력 장치 조작, 인터럽트 금지 등을 마음대로 할 수 있다면 다른 프로그램의 메모리를 망가뜨리거나 시스템 전체를 멈출 수 있습니다. 그래서 CPU는 이러한 명령을 특권 모드에서만 실행할 수 있도록 하여 OS의 커널만 사용하게 합니다. 사용자 모드에서 실행하려고 하면 예외가 발생합니다. 속도나 동시 실행을 위한 구조가 아닙니다.
- A. 실행 속도는 모드에 따라 달라지지 않습니다.
- B. 올바릅니다. 위험한 작업을 커널로 한정하여 시스템을 보호합니다.
- C. 동시에 여러 명령을 실행하는 것은 슈퍼스칼라 등의 구조입니다.