..

시스템 콜, DMA, 이더넷

시스템 콜(System Call)

  • 사용자 프로그램이 OS 기능을 요청하는 방법
  • 트랩이 발생하면 CPU는 즉시 커널 모드로 전환, 운영체제의 시스템 콜 핸들러로 점프
    • 트랩: 의도적으로 발생시키는 소프트웨어 예외 (syscall 명령어, int 명령어)
  • 동작 방식
    1. 사용자 프로그램이 c 라이브러리 함수를 호출합니다(read, write)
    2. 특수한 트랩 명령어를 실행하여 CPU를 커널 모드로 전환
    3. CPU는 시스템 콜 벡터 테이블을 참조하여 적절한 커널 핸들러로 점프
    4. 커널 핸들러가 요청된 작업을 수행
    5. 작업이 끝나면 제어가 다시 사용자 프로그램으로 돌아옴

DMA(Direct Memory Access)

  • DMA는 CPU를 거치지 않고 I/O 장치가 메인 메모리에 직접 데이터 전송을 수행할 수 있게 해주는 메커니즘
  • CPU 부하를 줄이고 I/O 성능을 높일 수 있음

이더넷(Ethernet)

  • 이더넷은 컴퓨터와 네트워크 장치등을 연결하는 데이터 링크 계층 기술
  • IP 패킷을 실제 물리 네트워크에서 전달하기 위해, MAC 주소를 기반으로 프레임 단위 전송을 담당하는 링크 계층 기술
  • 이더넷은 링크 계층의 대표 사례
    • 7계층 응용, 6계층 표현, 5계층 세션, 4계층 전송, 3계층 네트워크, 2계층 데이터 링크, 1계층 물리