Just do IT
article thumbnail

입출력과 인터럽트

   * 입출력 (input/output) 구성

   * 인터럽트 (interrupt)

 

입출력 (input/output) 구성

   * 컴퓨터는 사용자와 통신을 하기 위해서 외부 장치, 메모리로 데이터와 명령어를 읽어들일 입력장치(input-device) 계산 결과를 사용자에게 표시해 출력장치(output-device) 갖추어야 한다

   * 단밀장치(terminal device) : 키보드, 프린터

   * 입출력 구성

 

인터럽트 (interrupt)

   * 프로그램 제어 전송 (program controlled transfer) : 플래그를 사용한 통신 방법

   * 프로그램 제어 전송 방법은 프로세스와 입출력 장치와의 속도 차이 때문에 매우 비능률적이다

   * 인터럽트 에이블 플립플롭 (interrupt enable flip-flop) IEN

      - 프로그램 제어전송 대신에 외부장치가 전송 준비가 되었을 컴퓨터에 알리는 방법에 활용되는 플립플롭

      - 컴퓨터는 프로그램 실행 도중 플래그를 체크하지 않으며, 플래그가 세트되면 컴퓨터는 실행중이던 프로그램을 중지하고 플래그의 세트 정보를 받아들여 입출력을 실행

      - 입출력 실행 즉시 원프로그램으로 복귀

   * 컴퓨터 실행 속도 대비 외부 입력 장치와의 입출력 속도 차이

      - 컴퓨터의 프로세스 처리 속도 : 10us-fetch and excute cycle time

      - 입출력 장치의 처리 속도 : 10 문자/ 라고 가정을 한다면

      - 입출력 장치는 1분자 100,000us(=0.1sec) 시간이 소요된다.

      - 결론적으로 전송 5000번의 플래그 체크가 필요하다

 

 

   * 메모리 상태 예제에 대한 설명

      - 메모리 주소 255 있는 명령이 실행 , R=1 이고 인터럽트가 발생 했다고 가정

      - 현재 PC <- 256 복귀 주소이다

      - [before interrupt]에서와 같이 프로그래머는 입출력 서비스 프로그램을 주소 1120번지에 로드 시켜놓았고, 주소 1 <- BUN 1120 로드

      - [인터럽트 실행시] M[0] <- 256, PC <- 1, R <- 0 (clear)

      - Execute M[1] 이는 1120번지로 분기하여 I/O program 실행

      - ION instruction 의해 IEN 1 세트하고 프로그램 복귀 시도

 

출처 : 제로베이스

'공부 Note > 컴퓨터 구조' 카테고리의 다른 글

Chapter 03 중앙처리장치 (7)  (0) 2022.02.24
Chapter 03 중앙처리장치 (6)  (0) 2022.02.24
Chapter 03 중앙처리장치 (4)  (0) 2022.02.24
Chapter 03 중앙처리장치 (3)  (0) 2022.02.24
Chapter 03 중앙처리장치 (2)  (0) 2022.02.24
profile

Just do IT

@AmyG

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!