sugar.kim

[8장]입출력장치 확인문제 본문

DEV/컴퓨터구조+운영체제

[8장]입출력장치 확인문제

김슈가 2023. 5. 7. 22:24
728x90
반응형

1. 장치컨트롤러에 대한 설명으로 옳지 않은 것을 고르세요. 

답) 1) : 입출력 장치의 종류가 많으며 속도,데이터, 전송 형식 등도 다양하다. 다양한 입출력 장치와 정보를 주고받는 방식을 규격화 되어 관리되기 어렵다.

  • 1) 입출력 장치의 종류는 많지만 정보를 주고 받는 방식은 하나로 규격화 되어 관리 된다. 
  • 2) CPU와 메모리의 데이터 전송률은 높지만 입출력장치의 데이터 전송률은 낮다. 
  • 3) 모든 입출력 장치는 각자의 장치 컨트롤러를 통해 컴퓨터 내부와 정보를 주고받고, 장치 컨트롤러는 하나 이상의 입출력 장치와 연결되어 있다. 
  • 4)  장치컨트롤러는 CPU와 입출력 장치 간의 중개와 오류 검출, 데이터 버퍼링 등 일종의 번역가 역할을 한다.
  • 5) 장치 컨트롤러는 일반적으로 전송률이 높은 CPU와 일반적으로 전송률이 낮은 입출력 장치왕의 전송률 차이를 데이터 버퍼링으로 완화한다. 

2.  아래 설명과 관련된 용어를 연결 시켜라. 

데이터 레지스터, 상태 레지스터, 제어 레지스터, 장치 드라이버
  • 입출력장치가 수행할 내용에 대한 제어 정보와 명령을 저장합니다.  (      제어 레지스터       )
  • CPU와 입출력 장치 사이에 주고받을 데이터가 담기는 레지스터로, 버퍼 역할을 한다.  (      데이터 레지스터       )
  • 장치 컨트롤러의 동작을 감지하고 제어함으로써 장치 컨트롤러가 컴퓨터 내부와 정보를 주고 받을 수 있게 하는 프로그램이다. 장치 컨트롤러가 하드웨어적이 통로라면 이것은 소프트웨어적인 통로이다.  (      장치 드라이버      )
  • 입출력 장치가 입출력 작업을 할 준비가 되었는지, 입출력 작업이 완료 되었는지, 입출력장치에 오류는 없는지 등의 상태 정보가 저장된다.  (      상태 레지스터       )

3. 프로그램 입출력은 프로그램 속 명령어로 입출력 작업을 하는 방식이다. 프로그램 입출력 방식에서 입출력 작업은 CPU가 장치 컨트롤러의 레지스터 값을 읽고 씀으로써 이루어진다. 이 때 CPU가 여러 장치 컨트롤러 속 레지스터를 알고 있기는 어렵다. 장치 컨트롤러의 레지스터에 명령어를 표현하고 메모리에 저장하는 방식은 크게 두가지 방식이 있는데 각각의 방식을 적고 설명 해보라. 

  • 메모리 맵 입출력 : 메모리에 접근하기 위한 주소 공간과 입출력 장치에 접근하기 위한 주소 공간을 하나의 주소 공간으로 간주하는 방법이다. 가령 1024개의 주소를 표현할 수 있는 컴퓨터가 있을 때 1024개 전부 메모리 주소를 표현하는데 사용하지 않는다. 512개는 메모리 주소를 512개는 장치 컨트롤러의 레지스터를 표현하기 위해 사용한다. CPU는 메모리의 주소들이나 장치 컨트롤러의 레지스터들이나 모두 똑같이 메모리 주소를 대하듯 하면 된다. 이는 메모리에 접근하는 명령어나 입출력장치에 접근하는 명령어가 굳이 다를 필요가 없다는 말이다.
  • 고립형 입출력 : 메모리를 위한 주소 공간과 입출력 장치를 위한 주소 공간을 분리하는 방법이다. 가령 1024개의 주소공간을 가진 컴퓨터가 있다고 가정을 해보면, 메모리에도 1024개의 주소 공간을 활용하고 입출력장치도 1024개의 주소공간을 활용할 수 있다. CPU가 메모리 읽기/쓰기 선이 활성화 되면 메모리에 접근하고, 입출력장치 읽기/쓰기 선이 활성화 되면 장치 컨트롤러에 접근한다. 고립형 입출력 방식에서는 메모리 맵 입출력 방식과 입출력 전용 명령어를 사용해야 한다. ( 메모리와 입출력 장치에 같은 명령어 사용 안함.) 

4. 아래 설명 괄호에 들어갈 단어를 보기에서 골라 넣으세요.

백업, 인터럽트 요청 신호, 인터럽트 기반 입출력

입출력 장치에 의한 하드웨어 인터럽트는 정확히 말하자면 입출력장치가 아닌 장치 컨트롤러에 의해서 발생한다. CPU는 장치 컨트롤러에 입출력 작업을 명령하고, 장치 컨트롤러가 입출력 장치를 제어하며 입출력을 수행하는 동안 CPU는 다른 일을 할 수 있다. 장치 컨트롤러가 입출력 작업을 끝낸 뒤 CPU에게 (인터럽트 요청 신호)를 보내면 CPU는 하던 일을 잠시 (백업)하고 인터럽트 서비스 루틴을 실행한다. 이렇게 인터럽트 기반으로 하는 입출력을 (인터럽트 기반 입출력) 이라고 한다.

5. DMA와 관련한 설명 중 옳지 않은 것을 고르세요. 

답 : 5) DMA의 풀 네임은 Direct Memory Access이다.

  • 1) DMA 입출력은 인터럽트, 프로그램 기반 입출력과 달리 CPU를 거치지 않고도 상호 작용할 수 있는 입출력 방식이다.
  • 2) DMA컨트롤러는 CPU 대신 장치 컨트롤러와 상호 작용하며 입출력 작업을 수행한다. 
  • 3) DMA 컨트롤러는 피요한 경우 메모리에 직접 접근하여 정보를 읽거나 쓴다. 
  • 4) 입출력 작업이 끝나면 DMA 컨트롤러는 CPU에 인터럽트를 걸어 작업이 끝났음을 알린다. 
  • 5) DMA의 풀 네임은 Double Memory Access이다.

 

스터디 홧팅! 이제 담주 부터 운영체제~!!!

정답은 드래그 하면 노출됩니다.~!

 

본 자습서를 통해 공부하며 학습한 내용입니다.~! 

https://m.hanbit.co.kr/media/books/book_view.html?p_code=B9177037040 

 

혼자 공부하는 컴퓨터 구조+운영체제

어려운 컴퓨터 구조와 운영체제의 원리를 누구나 쉽게 이해할 수 있도록 용어와 개념은 한 번 더 풀어쓰고, 적절한 예시와 이해하기 쉬운 그림으로 재미있게 구성했다. 또한 일상 소재를 활용한

m.hanbit.co.kr

 

 

728x90
반응형
Comments