본문 바로가기
2.1 CS/OS

[OS] 사용자 모드와 커널 모드

by Dohi._. 2024. 8. 9.
728x90

응용프로그램을 통해서 우리는 파일을 삭제하지만

실제로는 응용프로그램이 커널을 이용하여 파일을 삭제하는 것이다.

 

여기서 알아야 할 점은 함부로 응용 프로그램이 하드웨어,커널에 직접 접근하지 못한다는것이다.

 

이때 사용자모드와 커널모드로 나눠지는데

사용자 모드에서 응용프로그램이 작업을 하다 커널에 작업을 해야하는 상황이 온다면 커널에 요청을 하고

커널 모드를 이용해서 커널에서 작업을 한후 다시 응용프로그램에서 작업을 한다 

 


Cpu protection Ring이야기를 빼놓을 수 없는 이야기인데  CPU 자체에서도 제공한다.

CPU는 위에서 이야기를 했듯이 사용자 모드와 커널 모드를 번갈아가면서 동작한다.

사용자 모드일때는 User Process를 실행하는데 제약이 있다.

하드웨어(메모리,하드디스크, I/O장치)에 직접 접근할 수 없다.

또한 사용자 모드 privilege level을 가지고 코드를 실행한다.

위에 제약은 커널 모드에서만 실행이 가능한데 

커널 모드로 실행하려면, 반드시 시스템 콜을 이용해야한다.

시스템 콜은 운영체제에서 제공한다.

 

응용프로그램 → API → 시스템 콜 인터페이스 → H/W 

 

 

(출처: 위키백과_보호링)

 

 

728x90

'2.1 CS > OS' 카테고리의 다른 글

[OS] Process , Context Swiching, IPC  (1) 2024.08.10
[OS] Operating System  (0) 2024.08.09

댓글