그알것 — 그럼에도 알아야 할 것들
홈질문커뮤니티
로그인
그알것 — 그럼에도 알아야 할 것들

Service

  • 홈
  • 소개
  • 질문
  • 커뮤니티

My

  • 내 워크스페이스
  • 저장한 질문
  • 작성한 답변

Policy

  • 이용약관
  • 개인정보처리방침
  • 문의

© 2026 그알것 · What Still Matters

질문 목록OperatingSystem
OperatingSystem

시스템 콜이란 무엇인가요?

실무4/5
설계3/5
인간3/5
기초4/5

면접관의 질문 의도

시스템 콜을 그냥 함수 호출로 묶어버리는지, 권한 전환과 비용을 끼고 있는 메커니즘으로 보는지를 가르려는 질문이다. 후속으로 컨텍스트 스위치·인터럽트·비동기 I/O를 물을 판단 근거가 된다.

큐레이션 답변

학습 자료

시스템 콜은 사용자 프로그램이 파일·네트워크·프로세스 제어처럼 커널이 관리하는 자원을 요청할 때 거치는 표준 진입점이다. CPU는 평소 사용자 모드에서 제한된 명령만 돌리다가, 시스템 콜이 들어오면 트랩을 일으켜 커널 모드로 전환하고 요청을 처리한 뒤 다시 사용자 모드로 복귀한다. 이 이중 모드 구조 덕분에 응용 코드는 하드웨어를 직접 건드리지 못하면서도 커널의 보호된 기능을 빌려 쓸 수 있다. 즉 시스템 콜은 단순 API가 아니라 권한 경계를 넘는 통로다.

좋은 답변 구조

  1. 01시스템 콜이 무엇을 요청하는 인터페이스인지 정의한다
  2. 02사용자 모드와 커널 모드의 권한 차이와 트랩 발생 시점을 설명한다
  3. 03호출 → 트랩 → 커널 처리 → 복귀까지 단계별 흐름을 그린다
  4. 04모드 전환 비용과 보호 효과의 트레이드오프를 한 줄로 정리한다

자주 실수하는 포인트

라이브러리 함수 호출과 시스템 콜을 같은 것으로 묶어 비용 차이를 못 본다
모드 전환과 컨텍스트 저장 비용을 무시하고 호출 횟수에 둔감하다
보호 모드의 목적을 "커널이 더 강해서" 정도로만 설명하고 자원 격리 의미를 놓친다
트랩·인터럽트·예외를 같은 단어로 섞어 써서 발생 주체 구분을 못 한다

실무 맥락

  • 파일·소켓 I/O가 초당 수만 건 발생하는 백엔드 서버
  • 프로세스를 자주 fork·exec 하는 빌드·CI 워커 환경
  • strace·perf로 호출 빈도를 떠 성능 병목을 좁히는 상황
  • 권한 분리 컨테이너에서 seccomp로 시스템 콜을 화이트리스트로 막는 환경

본인 경험에 녹이는 힌트

I/O 처리량을 늘리려고 호출을 배치하거나 버퍼링했던 경험이 있다면 시스템 콜 비용 절감 관점으로 풀 수 있다

strace·dtrace·perf로 병목을 추적해 본 적이 있다면 어떤 호출이 핫스팟이었는지로 연결할 수 있다

EPERM·EACCES 같은 권한 오류를 디버깅했던 경험을 모드 경계 침범 사례로 엮을 수 있다

컨테이너·서버리스 환경에서 시스템 콜 제한을 만난 경험이 있다면 보호 경계의 실무 의미로 이어진다

커뮤니티 인기 답변

전체 0개

아직 공개된 답변이 없어요. 첫 공개 답변을 남겨보세요.

관련 꼬리 질문

Q1시스템 콜과 인터럽트는 발생 주체와 처리 흐름이 어떻게 다른가요
Q2동기 시스템 콜이 많은 워크로드에서 비동기 I/O로 바꾸면 무엇이 좋아지나요
Q3컨텍스트 스위치와 모드 스위치는 어떻게 다른가요
Q4seccomp 같은 시스템 콜 필터링은 어떤 상황에서 쓰나요
아직 답을 쓰지 않았어요.
큐레이션 답변과 다른 사람 답변을 보고, 자기 언어로 답을 정리해보면 학습 효과가 가장 큽니다.
목차
  • 01면접관의 질문 의도
  • 02큐레이션 답변
  • 03좋은 답변 구조
  • 04자주 실수하는 포인트
  • 05실무 맥락
  • 06본인 경험에 녹이는 힌트
  • 07커뮤니티 인기 답변준비중
  • 08관련 꼬리 질문