더북(TheBook)

응용 프로그램은 open() 시스템 호출을 사용해 커널에 파일을 열어 달라고 요청합니다. 이 요청은 사용자 모드에서 실행됩니다.

시스템 호출이 발생하면 CPU는 사용자 모드에서 커널 모드로 전환되어 제어권이 커널로 넘어갑니다.

커널이 파일 시스템(디스크)에서 test.txt 파일을 검색합니다. 해당 파일이 존재하면 파일의 메타데이터(파일 크기, 권한 등)를 확인해 파일 디스크립터를 생성합니다.

요청한 작업을 완료하고 커널은 파일 디스크립터 번호 또는 오류 코드(-1, 파일 없음)를 반환합니다. CPU는 커널 모드에서 사용자 모드로 전환됩니다.

응용 프로그램은 반환한 파일 디스크립터를 사용해 파일을 읽거나 씁니다.

 

Note 커널 모드와 사용자 모드

운영체제는 CPU의 실행 모드를 크게 두 가지로 구분합니다.

커널 모드(kernel mode): 운영체제가 실행되는 특수 권한 모드로, 운영체제의 핵심 기능(프로세스 관리, 메모리 관리, 파일 시스템 관리, 입출력 관리)이 수행됩니다. 커널 모드에서는 CPU가 모든 명령어를 실행할 수 있고, 하드웨어(메모리, CPU, 디스크, 네트워크 등)에 직접 접근할 수 있습니다. 커널 영역으로 보호됩니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.