시스템 호출(System Call)은 운영체제의 커널이 제공하는 서비스에 대해, 응용 프로그램의 요청에 따라 커널에 접근하기 위한 인터페이스이다. 보통 C, C++ 같은 고급 언어로 작성된 프로그램들은 직접 시스템 호출을 사용할 수 없기 때문에 고급 API 를 통해 시스템 호출에 접근하게 하는 방법이다. | 출처 : 위키피디아
System Call
을 통해 직접적인 H/W 요청이나 중요한 시스템 요청을 하는 것이다.응용프로그램
이다. 유저레벨의 프로그램은 유저레벨의 함수들 만으로는 많은 기능을 구현하기 힘들기 때문에 커널
의 도움을 반드시 받아야 한다. 커널
에 관련된 것은 커널모드로 전환된 후에야 해당 작업을 수행할 권한이 생긴다. 커널모드를 통한 이러한 작업은 반드시 시스템 콜
을 통해 수행하도록 설계되어 있다.Mode bit
를 통해 구분하는데, 모든 비트가 0 이면 커널 모드, 1 이면 사용자 모드가 된다.시스템 콜
을 하게 되면 운영체제는 자신의 커널 영역에 정의된 시스템 콜 처리 코드를 수행한다.인터럽트
를 발생시켜 입출력 작업이 완료되었음을 알린다.