컴퓨터 시스템 동작원리 2 - hochan222/Everything-in-JavaScript GitHub Wiki

바로가기2

  • 동기식 입출력 (synchronous I/O)
    • I/O 요청 후 입출력 작업이 완료된 후에야 제어가 사용자 프로그램에 넘어감
  • 비동기식 입출력 (asynchronous I/O)
    • I/O가 시작된 후 입출력 작업이 끝나기를 기다리지 않고 제어가 사용자 프로그램에 즉시 넘어감

두 경우 모두 I/O의 완료는 인터럽트로 알려줌

  • DMA (Direct Memory Access)
    • 빠른 입출력 장치를 메모리에 가까운 속도로 처리하기 위해 사용
    • CPU의 중재 없이 device controller가 device의 buffer storage의 내용을 메모리에 block 단위로 직접 전송
    • 바이트 단위가 아니라 block 단위로 인터럽트를 발생시킴

좌측 일반적인 I/O
우측 Memory Mapped I/O

저장장치 계층 구조

프로그램의 실행 (메모리 load)

커널 주소 공간의 내용

프로그램 실행