반응형

시스템 콜(System Call) 

시스템 콜은 커널에게 요청하는 함수이다. 

커널은 하드웨어와 소프트웨어를 관리하기 때문에, 커널에게 요청해야 할 수 있는 작업들을 하기 위해서 사용하는 것이 시스템 콜 함수이다.

 

예) 프로세스를 생성한다고 가정한다. (프로세스 생성은 fork 함수로 한다)

fork 함수 사용 시

이렇게 시스템 콜 함수인 fork 함수를 사용하면 커널에게 요청을 하게 되고 커널이 그에 해당하는 작업을 해주는 것이다. 

 

API (Application Programming Interface)

 

프로그래밍을 통해 무언가를 사용할 때 인터페이스이다. 인터페이스란 사용자와 소통하는 창구이다. 맨날 글로만 읽어서 소통하는 창구인지는 알겠으나 와닿는 개념이 아니라서 따로 정리를 해놔야겠다... 음.. 예를 들자면 음식점 직원 같다. 

음식을 어떻게 주문하는 지?, 어떤 음식이 있는 지?, 화장실은 어디있는지? 처음 가는 식당의 경우 잘 알지 못한다. 따라서 그 음식점을 사용하기 위한 창구로 직원과의 소통을 얘기할 수 있을 것 같다. 이런 것들을 인터페이스(Interface)라고 한다. 따라서 커널과 소통하기 위한 함수로 시스템 콜 함수가 있는 것이다. "즉, 커널의 API는 시스템 콜이다" 라고 설명할 수 있고 밑에 사진과 같이 API는 시스템 콜을 포함하는 더 큰 개념이다. 

 

참고 : 모두를 위한 리눅스 프로그래밍 / 아오키 미네로 / 제이펍 출판사

반응형

+ Recent posts