시스템 콜을 그냥 함수 호출로 묶어버리는지, 권한 전환과 비용을 끼고 있는 메커니즘으로 보는지를 가르려는 질문이다. 후속으로 컨텍스트 스위치·인터럽트·비동기 I/O를 물을 판단 근거가 된다.
시스템 콜은 사용자 프로그램이 파일·네트워크·프로세스 제어처럼 커널이 관리하는 자원을 요청할 때 거치는 표준 진입점이다. CPU는 평소 사용자 모드에서 제한된 명령만 돌리다가, 시스템 콜이 들어오면 트랩을 일으켜 커널 모드로 전환하고 요청을 처리한 뒤 다시 사용자 모드로 복귀한다. 이 이중 모드 구조 덕분에 응용 코드는 하드웨어를 직접 건드리지 못하면서도 커널의 보호된 기능을 빌려 쓸 수 있다. 즉 시스템 콜은 단순 API가 아니라 권한 경계를 넘는 통로다.
I/O 처리량을 늘리려고 호출을 배치하거나 버퍼링했던 경험이 있다면 시스템 콜 비용 절감 관점으로 풀 수 있다
strace·dtrace·perf로 병목을 추적해 본 적이 있다면 어떤 호출이 핫스팟이었는지로 연결할 수 있다
EPERM·EACCES 같은 권한 오류를 디버깅했던 경험을 모드 경계 침범 사례로 엮을 수 있다
컨테이너·서버리스 환경에서 시스템 콜 제한을 만난 경험이 있다면 보호 경계의 실무 의미로 이어진다
아직 공개된 답변이 없어요. 첫 공개 답변을 남겨보세요.