CS/면접

시스템 콜

태태코 2025. 9. 9. 11:27
반응형

시스템 콜

윤영체제는 사용자가 실행하는 프로그램이 하드웨어 자원에 직접 접근하는 것을 방지해 자원을 보호한다.

이유는 프로그램이 하드웨어 자원에 직접 접근해 마음대로 자원을 사용한다면, 컴퓨터 전체에 영향을 가할 수 있기 때문이다.

운영체제는 프로그램들이 자원에 접근하려고 할 때 오로지 자신을 통해서 접근하게 한다,

 

따라서 프로그램은 자원에 접근하기 위해서 운영체제에게 도움을 요청해야한다.

이러한 과정은 이중 모드로 구현되어있다.

 

사용자모드

 운영체제 서비스를 제공받을 수 없는 실행모드이다. CPU가 사용자 모드일 때는 입출력 명령어 같은 하드웨어 접근 명령을 실행할 수 없다. 기본적으로 일반 프로그램은 사용자모드이다.

 

커널 모드

운영체제 서비스를 제공받을 수 있는 실행모드이다. 커널 영역의 코드를 실행할 수 있다.

CPU가 커널 모드로 명령을 실행하면 명령어를 비롯한 모든 명령어를 실행할 수 있다.

 

시스템콜

사용자 모드로 실행되는 프로그램이 자원에 접근하는 운영체제 서비스를 제공받으려면, 운영체제에 요청을 보내 커널 모드로 전환해야하는데 이것을 시스템 콜이라고 한다.

 

시스템 콜은 일종의 소프트웨어 인터럽트이다. CPU는 현재까지의 작업을 백업한 뒤에 커널의 영역 내에서 시스템 콜을 수행하는 인터럽트 서비스 루틴을 실행한 이후 프로그램을 복귀해 실행한다.

반응형

'CS > 면접' 카테고리의 다른 글

URI URL URN차이  (0) 2025.09.05
해시 충돌  (0) 2025.09.04
Call By Value와 Call By Reference  (2) 2025.09.01
교착상태  (1) 2025.08.29
태태코딩 - 시스템 간의 비동기 연동방식(백엔드 질문)  (6) 2025.08.25