시스템 호출
시스템 호출이란 응용프로그램에서 커널 코드를 실행하는 기법입니다.
여기서 커널 코드란?
커널 코드는 커널에 작성된 함수를 뜻 합니다.
응용프로그램은커널에 작성된 함수를 사용할 수 없습니다.
왜냐하면 함수의 위치를 모를 뿐더러, 결론적으로 말하자면 응용프로그램은 커널에 있는 메모리에 접근 권한이 없기 때문입니다.
그래서 운영체제는 패키지를 통해 응용프로그램을 대신하여 시스템 호출 라이브러리를 제공합니다.
따라서 커널 코드를 사용할 수 없는 응용프로그램은 시스템 호출 라이브러리안에 들어있는 시스템 호출 함수를 통하여
커널의 기능을 사용할 수 있습니다.
시스템 호출은 응용프로그램이 커널의 기능을 사용할 수 있는 유일한 수단입니다.
시스템 호출 함수들은 시스템 호출을 일으키는 기계 명령을 통해 CPU가 적재된 메모리 영역이나 커널 코드에 대한 액세스 권한을 가지도록 하고, 커널에 작성된 호출 함수를 실행시킵니다.
요약
1. 커널 코드를 사용하려면 시스템 호출 함수를 실행시켜야한다.
2. 시스템 호출은 커널 기능 사용의 유일한 수단이다.
'CS지식' 카테고리의 다른 글
[CS]운영체제 (1) | 2022.12.30 |
---|---|
프로세스 제어 블록(PCB)란? (0) | 2022.10.12 |
사용자 모드(User mode)와 커널 모드(kernel mode)란? (0) | 2022.10.10 |
하드웨어 인터럽트란? (0) | 2022.10.04 |