728x90
반응형

https://youtu.be/mXWbHv3cVtc



1. 입력과 출력 이해

1-1. CPU, 메모리, 입출력 장치
-  CPU는 컴퓨터의 두뇌 역할, 주기억장치에서 명령어 형태로 표현됨
- (중요) 명령어는 제로주소, 1주소, 2주소, 3주소 중 하나로 표현되어 실행됨
-  인터페이스, DMA, 채널 등의 원활한 작용을 위해 CPU의 4가지 스테이트가 필요함
-  각 장비마다 인터페이스 존재, 데이터를 주고받는데 활용됨
-  인터페이스, DMA, 버스 등을 통해 장비 간의 데이터 교환이 이루어짐

1-2. 입력 장치의 이해
-  입력 장치는 데이터를 외부로부터 읽어 메모리로 처리하도록 만듦
-  메모리 내 CPU로 데이터 전달 시, 코드로 변환되어 처리됨
-  처리된 데이터는 메모리 저장된 내용으로 나타남
-  인터페이스를 통해 데이터를 주고받으며, DMA가 이를 지원함
-  데이터와 정보를 주고받으므로 이러한 데이터를 인터페이스라고 부름

1-3. 출력 장치의 이해
-  출력 장치는 메모리에서 처리된 결과를 사용자에게 표시함
-  메모리에서 CPU로 데이터 전달 시, 데이터와 정보가 다름
-  데이터를 입력 받으면, CPU가 메모리에 해당 데이터를 저장하고 처리 결과를 반환함
- (중요) 데이터를 반영한 표시 방식이 출력 장치임
-  데이터와 정보를 정확히 구별하여 놓치지 않도록 해야 함

2. 기계장비와 전자장비 이해하기

2-1. 입출력 장치의 이해 및 종류
-  CPU와 입력 장치(종합키보드, 마우스 등) 간의 데이터 전송을 위해 양방향 버스 사용함
- (중요) 데이터 입력과 작업 처리를 위한 다양한 장치가 존재하며, 해당 장치의 종류에는 키보드, 마우스, 스캐너 등이 포함됨
-  실시간 작업이 필요한 경우에는 디지털 타이포, 터치스크린 등의 장치도 활용함
-  보조 기억 장치의 경우 디스크나 플라피 디스크 등을 통해 데이터를 저장하거나 불러오는 역할을 수행함

2-2. 기계장비와 전자장비의 차이점
-  기계장비와 전자장비 모두 데이터의 입력과 처리를 위해 필요하나, 특징적으로 서로 다른 성능을 보임
- (중요) 기계장비는 주기억 장치보다 데이터의 처리 속도가 느림
-  또한 동작의 자율성이 부족하여 통제 가능한 수준에서는 문제가 발생하기 쉽다는 점도 차이점임
-  반면, 전자장비는 어느 정도 자율성을 갖고 있어 부담이 적으며, 실수 발생 시에도 일부 오류를 수용할 수 있다는 장점이 있음

2-3. 기계장비와 전자장비의 효율적인 활용법
-  기계장비와 전자장비 간의 차이점을 극복하고 효율적으로 활용하기 위해서는 한편으로는 중견적으로 통제해야 하는데, 이 부분이 기계장비의 관점에서는 개별적인 행동으로 생각되어야 함
-  기계장비의 경우, 소프트웨어를 통해 특정 부분에 대한 제어를 통제할 수 있으므로 개발자가 이를 효율적으로 이용하려면 구체적인 제어 방법을 숙지해야 함
- (중요) 전자장비의 경우 오류가 없도록 통제하는 것이 중요하며, 이러한 부분이 그 장비의 성능을 결정짓는다는 점을 인지함
-  위와 같이 상황에 따라 개선하거나 보완해야 하는 부분이 기계장비와 전자장비 모두에서 공유됨

3. CPU와 인터페이스

3-1. 중매결혼과 인터페이스
- (중요) 중매결혼이 잘되는 이유는 중매를 통해 상호 다른 장비(인터페이스) 사이의 단점을 보완, 완충해줌
-  서로 다른 장비 간엔 데이터 전송이 불가능함
-  인터페이스는 각 장비의 차이점을 보완, 완충 조정해주며, 입출력 장치를 연결해줌
-  인터페이스는 하드웨어적, 소프트웨어적으로 모두 구현 가능함
-  메모리와 아이오 장치의 거리를 좁히기 위해 인터페이스가 필요함

3-2. 인터페이스의 종류
-  인터페이스는 큰 분류로 DMA, 채널, 인터레텍셔널, 프로그램에 의해 나뉨
-  DMA(직렬 부호 변환)는 소형 컴퓨터에서 사용하며, 직전/뒤로 부호 바꿈
-  채널은 커버레이션이 높아 대형 컴퓨터에서 사용함
-  프로그램에 의한 아이오는 시피뉴스가 입출력 동작을 제어함
-  인터랙티브에 의한 아이오는 DMA와 채널이 제어기에 없음

3-3. 주요 인터페이스 설명
-  CPU가 직접 제어하거나 관여하지 않는 인터페이스도 있음
-  프로그램에 의한 아이스레깅은 시피뉴스가 멈춤
- (중요) 인터랙티브에 의한 아이스레깅은 DMA가 제어기를 제공함
- (중요) 프로그램에 의한 아이스레깅은 CPU의 부담을 덜어줌
-  DMA와 채널은 시피뉴스로부터 거치지 않으며, 소형 컴퓨터에서 사용됨

4. CPU의 입출력과 DMA 이해하기

4-1. CPU의 입출력 관리 및 플래그 이해
-  프로그램(당신의 컴퓨터)이 입출력 정보 제공을 위해 CPU 사용함
-  프로그램은 현재의 입출력 상태를 states 플래그로 나타냄
- (중요) 현재 CPU 상태(현재 플랫폼, 해당 문제 등)를리더라 다시 사용될 때 확인되는 플래그들을 즉각적 플래그라고 함
-  메모리 버퍼 등의 다양한 비정형 데이터와 레지스터 값 등을 포함하는 상태 레지스터는 이의 논리적인 분석을 가능하게 함

4-2. 프로세스 vs 프로세스 관리
-  프로세스는 CPU가 실행 중인 명령어/데이터에 대해 이의 집합 표현이며 이 커널 적 압니즘이 그보다 간편해짐
- (중요) CPU가 관심을 가지는 것은 본래 다른 작업이 수행되기 때문에 한 번만 관여하면 된다는 이론
-  그럼에도 불구하고 입출력 작업에서는 CPU가 관여하며 그 결과 이 프로세스 관리는 불가능
-  그러나 별도의 작업, 예를 들면 넣기 등의 작업을 통해 프로세스로서 CPU를 대체하는 새로운 계층 구조를 제안

4-3. DMA 이해
-  DMA는 다이렉트 메모리 액세스 방식인데 CPU와 무관하게 동작함
- (중요) DMA의 기본 단위는 블록으로, 이러한 블록 방식 덕분에 고속의 데이터 전송이 가능함
-  DMA의 제어기(CPU와 관계없는 멀티태스킹 처럼 통제하는 장치)를 관리함
-  이는 메모리에서 CPU의 명령을 받아서 별도의 작업을 진행하는 방식이라 그래서 다시 CPU가 일이 될 필요가 없다고 결론화

5. DMA 제어기

5-1. DMA 제어기 소개
-  DMA는 데이터 처리 능력 없으며 관리 기능 제공함
-  처리 기능은 없으나, 데이터 채널 제어 및 연결, 반대 연동 등 4가지 기능 존재함
-  DMA 기능은 요청, 선택, 관리, 보고 4가지이며, 처리 기능은 무시됨
- (중요) DMA 제어기는 CPU와 관계없이 완전한 I/O 전용 제어기임
-  사이클 스틸은 대기 상태로, 인터럽트 발생 시 작업을 중단하며 CPU 보존해야 함

5-2. 사이클 스틸과 인터럽트
-  사이클 스틸은 통제 유도 위해 DMA 제어기를 통해 메모리 사이클 조절하는 방식임
-  인터럽트는 CPU 작동 중 다른 작업 방해 경우 발생하며, 이를 시피우라고 부름
-  시피우 시, CPU는 잠시 대기 상태로 전환 후, 다음 작업 시작하거나 IO 작업 진행함
-  사이클 스틸 발생 시, DMA 제어기가 사이클을 훔쳐가는 것으로 인터럽트 처리가 이루어짐
-  인터랍트 발생 시, CPU는 인터럽트 처리 명령을 따라 다음 작업으로 감

5-3. DMA 제어기 내부 구조
-  DMA 제어기는 CPU의 사이클을 이용해 데이터 처리를 위한 인터럽트 처리 수행함
-  파트1에서는 CPU의 사이클 상황과 인터럽트 발생 시 절차를 설명함
-  인터럽트 발생 시, DMA 제어기(인터럽트 제어기)는 CPU의 작업을 중단하고 해당 작업을 수행함
- (중요) 인터럽트 처리 시, CPU는 현재의 메모리 연번지를 저장하고 인터럽트 이름, 위치 등을 기록함
-  파트2에서는 DMA 제어기 내부에서 일어나는 다양한 논리적 과정을 이해함

6. 메모리아이오 관리 및 유저공간 점유에 대한 분석

6-1. 내부 메모리에 관한 분석과 사례 설명
-  메모리의 중요성과 사이클 스핀(사이클-스트레티브)에 대해 소개함
-  사이클 스핀 발생 현상과 DMA 제어기를 이용한 입출력 관리 방법론에 대해 설명함
- (중요) 메모리의 내부 인터럽트 현상을 다루며, 인터럽트 발생 시 CPU의 동작에 대한 내용을 함축적으로 분석함
-  메모리의 내부 인터럽트 현상이 발생하기 위해 필요한 데이터 채널 요청과 관련된 개념들을 설명함
- (중요) 입출력 성능의 중요성과 이를 보장하는 인터럽트 처리의 필요성을 강조함

6-2. 사이클 스핀 발생과정 분석
-  CPU의 명령 실행 시, 사이클 스핀이 발생하는 상황과 그 효과를 파악함
- (중요) 데이터 채널 요청과 인터럽트 요청 등이 동시에 발생했을 때, CPU가 어떤 행동을 취하며 무엇을 대기하게 되는지를 설명함
-  인터럽트 발생 시 CPU의 대기 상태와 해당 시점에서 명령어를 재발행하는 과정에 대해 서술함
-  인터럽트에 따른 CPU의 동작 변화 과정을 구체적인 예시로 설명함

6-3. 복잡한 입출력 환경에서의 인터페이스 설계 방향에 대한 분석
-  입출력이 매우 복잡한 환경에서 DMA 제어기로 인터페이스 설정에 대한 의논을 진행함
-  입출력 환경에서 CPU를 대체해야 하는 아이오 전용 특수 컴퓨팅의 중요성을 강조함
-  I/O 선별링의 성능에 대한 분석 결과를 통해 각 종류별 I/O 적합성을 결정함
-  입출력 환경의 요구사항에 따라 최적화된 데이터 전송 방식 선택의 중요성을 강조함
-  I/O 적합성을 결정하는 과정에서 필요한 다양한 계층의 정보를 고려해야 함을 지적함

7. 컴퓨터 메모리 구조와 인터렉션 이해

7-1. 개인적 왜 통신 장치 사용?
- (중요) 스마트폰과 노트북 등 개인적인 마이크로플렛 사용함
-  초단위 차원의 통신장을치 또는 상호 통신을 위해 DMA 사용함
-  차세대 무선 통신에 필요한 입출력 장치 사용을 설명함
-  각종 스마트 제품에 적용되는 무선통신 장치 설명과 사용을 알아봄
-  무선 통신에 사용되는 표준화 된 규칙이나 개발 언어 등을 살펴봄

7-2. 다중화 채널 이해
- (중요) 마이크로프로젝셔닝 장치별로 활용 가능한 3가지 종류의 채널 설명함
-  선택형 채널에서는 1개의 장치만 제어하며 다중화 채널에서는 여러 개의 장치를 동시에 제어함
-  각각의 채널에서는 장치 간 지시 또는 상황 점검 등의 역할을 담당함
-  바이트 다중화 채널과 블럭 다중화 채널에 대한 설명과 특징을 소개함

7-3. 관계 통신 장치 사용과 버퍼링의 효과
- (중요) 관계 통신 장치 사용이 전체 컴퓨터 성능에도 영향을 미침
-  자극 대상보다 더 상당하게 언급되며 대상 자체에 차례로 통신기를 설명함
-  스마트폰과 노트북에 차량 자동차 디바이스 관련 언급을 시작함
-  주변장치 통신 장치 또는 상호 통신을 위해 DMA를 활용하는 이유를 논의함
-  DMA 상에서의 성능 문제가 무엇인지에 대해서 설명함

8. 응용프로그램과 기억장치

8-1. 기억장치 종류와 성능 비교
-  아이오 장치와 CPU 간에 속도 차를 줄이는 것이 목적임
-  아이오 장치는 압축된 형태이고, CPU는 스프레드 스윙 형태이며, DMA는 스프레드 스윙과 더불어서 사용됨
-  메모리 속에 메모리 버퍼들을 만들어 데이터 처리를 위해 한번에 많은 양의 데이터를 올리거나 처리함
- (중요) 버퍼링은 메모리 속 작은 주기억장을 만듦
-  스플링은 하드디스크에 메모리를 만들어 처리 과정에서 기다리는 시간을 줄임

8-2. 버퍼링과 스플링의 차이
-  버퍼링은 주기억장치의 메모리를 만들어 처리 과정에서 이를 대기시키는 것임
-  스플링은 보조 기억장치인 하드디스크를 통해 데이터를 생성하거나 기다리는 상태에서는 CPU가 다른 작업을 함
-  스플링은 소프트웨어로 제어 가능하며, 스플링 기능은 하드웨어에 구현되어 대기시키는 현상을 줄임
- (중요) 버퍼링과 스플링 모두 하드웨어의 한계를 보완하기 위함이며, 응용 프로그램의 효율성과 연동성이 중요함

8-3. 응용 프로그램의 역할
-  응용 프로그램은 응용 규칙을 정의하고, CPU는 그 규칙에 맞춰 일을 수행하도록 함
-  응용 프로그램은 컴파일러와 함께 실행 파일이나 문서 작성 프로그램의 역할도 함
- (중요) 특히 응용 프로그램의 정의 범위와 역할에 대해 숙지하는 것이 중요함
-  정의 범위에 대한 이해는 프로그래밍 언어별 특징을 파악하는 데 필수적임
-  특히 응용 프로그램의 정의 범위에 해당되는 부분은 반드시 포함되어야 함

화자 1
00:12
전국에 계시는 우리 엠투엠 사이버 생방송 안방 가족 여러분 계속해서 뜨거운 감동의 수업을 함께 하겠습니다. 아하 예 좋습니다. 여러분들 좀 쉬었습니까? 한 10분 쉬는 동안 저도 잼싸게 밥 1그릇 먹었어요. 그죠 힘도 나고 잠도 오고 자 화이팅 합니다. 자 우리가 이제 앞 시간까지 이제 명령어의 수행과 제어를 정리했습니다.

화자 1
00:40
그죠 잠깐 정리하면 오늘날 여러분들이 컴퓨터한테 내리는 하나의 명령문은 컴퓨터 주기억장치에서 명령어 형태로 표현되제 그래서 명령어는 오피코드와 오프렌드 되더라 그 형식은 뭐다 제로주소 1주소 2주소 3주소 중의 하나로 표현되면 이 표현된 하나의 명령어가 이제 CPIO 속에 이제 수많은 뭐다 이미 조직화돼 있는 일련의 전자 명령어 즉 마이크로 인스트럭션 마이크로 오퍼레이션 즉 마이크로 동작에 의해서 우리 인간의 명령어는 수행되고 제어되더라 이런 이야기를 했죠. 그래서 우리는 이미 심피유 속에 컴퓨터가 그럴 때 움직이는 그 동작 마이크로 동작 마이크로프레션을 위해서 환상적으로 정리했습니다.

화자 1
01:30
그죠 그래서 특히 오늘 CPU에 큰 4가지 스테이트 그죠 패치스테이트 즉 다른 말로 패치사이클 인다이렉트 엑시큐트 인터렉트 생각나지 10분 전에 이야기했는 거 아닙니까 그죠 그래서 CPU의 상태 변이도 알겠나 반드시 문제 나온다고 보고 정리를 잘 해놔야 됩니다. 각각의 스테이트에서 벌어지는 마이크로 동작 정리되었습니다. 됐습니까? 자 그러면은 요번 시간에는 이제 뭐다 입력과 출력 컴퓨터의 IO 동작 과연 컴퓨터의 주변 장치는 어떤 식으로 동작하고 어떤 식으로 제어되는지를 또 아주 재미나게 공부해 보겠습니다. 아이오레딧 좋습니다. 따라오세요. 좋습니다. 자 입력과 출력 넘어가 봅니다. 자 우선은 어 우리가 그 컴퓨터 시스템에서 이 아이오 장치들 입출력장치가 어떻게 구성되어 있는지 눈으로 한번 보자 이 말입니다.

화자 1
02:27
그죠 단순하게 여러분 눈에 보이는 뭐 키보드 모니터만 있는 게 아니고 오늘날 주변 장치들 아 요 장치는 크게 그죠 이렇게 구성되어 있습니다. 그죠 그래서 크게 이제 뭐다 이쪽이 우리 이제까지 여기 이걸 배웠죠 CPU 메모리 메모리 인제 다음 장에서 배웁니다. 어 이런 어 이 크게 보면은 CPU와 메모리 쪽은 전자장비입니다. 여러분 전자장비 예 전자신호의 움직이는 장비들이고 즉 우리가 지금 배우고자 하는 주변장치 즉 아료장치는 기계장비와 기계장비 그래서 기계적인 동작을 가해야만이 전자신호가 발생되는 걸 기계장비라 하고 우리가 앞을 앞 시간에 배운 이 프로세스와 뒤에 배울 메모리는 전자 전자 장비다 그죠 이 2개의 장비 사이에 많은 차이가 있습니다. 그래서 이제 이 차이점을 해결하기 위해서 이제 장치 외에도 인터페이스나 특히 입출력 제어기 등이 등장합니다.

화자 1
03:22
그래서 그래서 입출력 제어기 아이오 제어기 그리고 각 장비들의 인터페이스 그리고 이 장비들과 실제 데이터를 주고받게 할 수 있는 즉 전자장비들과 데이터를 주고 받을 수 있도록 해주는 버스 아이오버스들 그죠 이렇게 구성돼 있죠. 그래서 아이오 장치의 구성은 여러분 있죠. 각 아이오 장치들 여러분 있죠. 아이오 장치 실제 아이오 장치 카면 여러분들 뭐 키보드나 모니터나 마우스나 프린트나 디스크 이런 것들이 되겠죠. 아이오 장치들 그다음에 아이오 인터페이스 인터페이스 뒤에 배웁니다.

화자 1
03:59
인터페이스들 그리고 데이타를 주고받는 버스 아이오버스 아이오버스 아주 중요한 입출력 제어기 아이오 제어장치 제어기 이 4가지로 구성되는 게 아이오 장치의 구성이야 아니 그러나 이제까지는 여러분들 뭐 입력 장치가 어떻고 출력장치가 어떻고 이 정도 선에서 정리했습니다마는 정보처리 기사 산업 기사에는 아이오 장치의 구성하면 여러분 이정도로 이야기 돼야 되겠죠. 그죠 아이오 제어기 아이오 버스 인터페이스 바이오 장치 이 4가지 구성 요소들을 우리는 아 요 장치다 이렇게 하고 그 모식도는 이렇게 된다. 그죠 그래서 각 장치마다 각 장치마다 핸들링 해주는 인터페이스가 다예요. 마우스 인터페이스 디스크 인터페이스 그죠 키보드 인터페이스 프린터와 인터페이스 예 여러분 각 장비마다 이 인터페이스가 다 존재합니다. 그죠 인터페이스에 대해서는 뒤에 배웁니다.

화자 1
04:56
그리고 이제 데이타를 아이오 장치에서 들어간 이 데이타를 주고받는 버스 이 버스 이 그리고 이제 아이오 장치와 전자장비 사이에 존재하는 아이오 제어기 DMA 채널 이런 것들이 요 장치가 된다. 이 말입니다.

화자 1
05:11
그죠 알레나 그래서 여러분 입력 장치의 정의는 뭐고 쉽다 데이터를 입력해서 메모리 쪽으로 데이터를 전송시키는 장치 이렇게 보면 되지만 조금 더 구체적으로 보면은 데이터를 외부로부터 읽어 컴퓨터 즉 CPV나 메모리로 처리할 수 있게 데이타를 코드로 변환하여 메모리로 전달하는 장치가 아료 장치죠 그죠 그래서 입력장치에서 이제 뭐다 메모리 쪽에 데이터가 이렇게 들어오면은 ECPU가 메모리에 기억된 데이터를 제스하게 낚아채워서 처리해서 출력 장치를 통해서 뭐다 결과를 보여주는 거겠지 그렇지 이게 입력해서 메모리 메모리에서 CPU에서 사이클 활동 앱을 처리해서 그 결과를 다시 메모리에 세이브 시키고 이 메모리 기억된 걸 이제 출력 장치로 정보를 만들어 출력합니다. 그러니까 실제 이제 입력 장치와 메모리 메모리와 출력장치 그렇죠.

화자 1
06:08
요렇게 입력에서 메모리 입력 장치는 메모리적으로 데이터를 읽어 드리고 출력은 뭐다 메모리에서 처리된 결과를 우리 인간들한테부터 보여주는 거다 그죠 그래서 출력 장치는 처리된 데이타 처리된 데이타가 뭐고 정보죠. 처리되기 전에 자료는 뭐다 데이터고 처리된 데이터는 뭐야? 이쪽으로 갈 때는 데이터고 이쪽으로 올 때는 뭐다 이미 정보죠. 그죠 처리된 데이터 정보를 우리 사람이 알아볼 수 있는 형태로 변환하여 표시하는 게 출력 장치더라 그래서 요 그림 가지고 전체 아이오 장치에 대해서 개념을 우리가 한번 잡아봅시다 쉽죠 그래서 함 보자 이 말입니다. 보자 자 넘어가 봅니다. 아이오 장치의 구성 자 그러면은 우리가 이 아이오 저기부터 한번 배워 보자 하면 아요.

화자 1
06:58
제어기 뒤에서 각각 배웁니다마는 이 IO 장치는 뭐다 즉 입출력장치와 컴퓨터 사이에 자료 전송을 제어하는 장치 즉 DMA 제어기 또는 채널제어기다 이렇게 표현할 수도 있고 이 IO 제어기는 뭐다 바로 여러분들 이 시피뉴와 우리 앞에서 보면 이 시피니와 아이오 장치 사이의 많은 동작의 속도 차이가 많이 나요? 이 시피니와 아이오 장치 사이에 어 장치 사이에서 특히 동작의 속도 동작의 속도를 해결해 주기 위한 제어기다 해결하기 위한 제어기가 아이오 제어기다 그죠 다른 각도로 이렇게 해석할 수가 있습니다. 그래서 이 아이오 제어기의 대표적인 게 뭐 다 지금 메모리 억세스 뒤에 배운다 DMA 제어기가 있고 채널 제어기가 있더라 이 말입니다. 이런 제어기가 아주 고속의 시피뉴와 아이오 저속의 아이오 장치에 그 차를 해결해 주는 제어기들이다. 이 말이야.

화자 1
07:58
그죠 됐나 그리고 이제 아이오 인터페이스도 안 가집니다. 아이오 인터페이스는 서로 다른 메모리나 프로세스의 내지스트와 외부 기계장비인 아이오 장치 간에 이진 정보를 전송하는 방법을 제공하는 기능을 담당하는 게 인터페이스다 서로 다른 즉 CPU와 메모리와 IO 장치가 다르단 말이에요. 이 다른 어 장비들 사이의 그 소 어 문제점을 즉 문제점을 보완 관충 해결해 주는 게 아이오 인터페이스다 이 말입니다. 그죠 그리고 아이오 버스 아이오 버스다 그죠 즉 데이터를 전송하는 거 이 버스에는 3종류와 배았지 데이타버스 데이타버스 무슨 양방향이죠. 양방향 데이타버스는 양방향 버스다 그죠 그리고 주소 버스는 뭡니까? 단방향이었죠. 단방향 버스 생각나나 제어버스는 뭡니까? 역시 단방향이었죠. 단방향 항상 주소버스와 컨트롤 버스는 뭡니까?

화자 1
08:58
CPU에서 IO로 그죠 CPU에서 IO로 어 그리고 데이터버스는 뭡니까? 이 CPU와 IO 장치 스로 양자 간의 데이터를 전송할 수 있는 양방향 버스라는 거 되겠나 그리고 이런 아이오 장치의 종류는 뭐 이거는 시험에 나올 수도 없제 참고로 한번 봅니다. 대표적인 입력장치는 뭐다 여러분 많이 쓰는 키보드 108키 키보드 마우스 또 스캐너 뭐 더 이상 설명 안 해도 되겠죠. 그다음에 라이트펜 펜 팬마우스라고 하죠. 디지타이저 캐드 같은 데 많이 쓰는 디지털 타이저 그다음 터치스크린 요즘 터치스크린 그다음에 OMI 카드 여러분 시험 치기에 가면은 우리 정보처리 기사 산업기사는 OMI 카드의 수성 사이펜으로 마킹합니다. 그죠 그 마킹했는 걸 이제 바로 레이저로 인식을 해서 그래서 여러분 마킹되는 게 정답이면 맞고 마킹했는 게 틀리면은 틀렸다 이 말이죠.

화자 1
09:57
오엠아이 카드 역시 요번 시험철에 보면 무식하게 수성 사이펜으로 예 여러분 1234의 땡그레미 치는 거 이제 거기에 침 흘려 가지고 그 수성 사이팬이 번져가지고, 떨어지는 여러분의 선배가 있었습니다. 누구라고 이야기는 안 한다. 그래서 딱 1사람 떨어졌지 그리고는 제 예측 강의 듣고 떨어진 사람은 1명도 없다. 그 다음에 OCR 카드 뭐 그다음 MICR이나 또 바코드 리더기 바코드 뭐 이런 거 참고로 눈으로 살짝 봐 놓으면 되겠죠. 바코드도 임명장 치겠제 바코드는 아니죠. 이런 편의점에 가면은 편의점에 가서 과자는 잘사무제 편의점에 가면 계산할 때 바코드 니덕이죠. 그죠 출력 장치는 모니터 프린터 플루트 역시 엑스 와이 플루트 캐드에서 우리가 그림을 그려주는 장치죠 그다음에 이제 아이오 겸용 어떤 입력 장치도 되고 데이터를 읽어 올 수도 있고 저작 처리된 데이터 정보를 기억할 수 있는 아이오 겸용 장치들은 모든 게 보조기억장치가 됩니다.

화자 1
10:54
그죠 그래서 보조기억장치의 대표적인 게 디스크 그죠 하드디스크나 플라피 디스크 여러분들은 또 뭐 많이 쓰죠 그다음에 자기 드럼 또 자기 테이퍼 즉 보조 기억 장치들은 뭐다 입출력 전용 장치들이라 할 수 있다. 이 말입니다. 살짝 요렇게 중요하지 않으니까 눈으로 1번씩 봐 놓으면 되겠다. 이 말입니다. 아 목이 뻑뻑하네요. 좋습니다. 여러분들 요거 아주 중요한 이야기죠 요게 핵심이죠. 제재치 핵심이다. 자 방금 우리들이 기본적인 기계 장비 입출력 장치를 봤습니다. 잠깐만 야 일단 생중계니까 이거 뭐 기침 소리도 다 나가고 좋다. 그죠 어 이 스승의 기침소리 이 기침 이 침을 많이 먹어야 된다. 태준이 내 병원에 입 벌려라 에 이 침을 많이 먹으면 마음이 먹을수록 도통한다. 알겠어요.

화자 1
11:50
카메라를 통해서 내 기침이 내 침이 전국에 뇌사라는 병태 순자 입으로 들어간다 아 많이 막 입 벌려 좋습니다. 그래서 방금 배운 이런 아이오 장치들은 기계장비다 그죠 이 아이오 장치들 거기에 보면 어떻게 되어 있습니까? 여러분들 어 아이오 장치들 그 각 장치 연결된 인터페이스들 그리고 데이터를 주급하는 아이오버스 그리고 이제 어 이 메모리와 아이오 장치의 속도 차이를 해결해주기 위한 또 제어기들 이런 걸 전체 다 IO 장치란다 이게 기계장비와 어 주기억장치 간의 차이점을 함 보자 이 말입니다. 그죠 현재 지금 배우고 있는 우리 아이오 장치는 기계 장비야 기계장비 기계 장비다 말이에요. 기계적인 동작을 가해야만이 신호를 발생시키는 기계 장비고 지금 컴퓨터 내부에 들어있는 메모리나 CPU는 뭐다 전자장비요 다르다 이 말입니다.

화자 1
12:44
그러면서 이 차이점이 몇 가지가 있느냐 4가지가 있더라 아주 중요하다 아이오 장치와 매매모리 즉 외부장치와 내부장치 즉 기계장비와 전자장비의 차이는 뭐 동작의 속도가 가장 큰 속도가 차이가 나더라 이 말입니다. 그죠 주계열 장치보다는 IO 장치가 늦어요. 이 고속이다. 그죠 데이터를 빨리 처리합니다. 전자장비이기 때문에 기계장비는 저속입니다. 저속의 IO다 그죠 보통 동작의 속도 데이터를 처리하는 속도는 NSD 나노 세컨드 단위로 합니다. 보통 나노 세컨드가 뭐다 10의 마이너스 9승 초 만에 한다. 이 말입니다. 10의 마이너스 우승 초인데 보통 아이오 장치는 밀리 세컨드를 합니다. 우리 앞에서 배웠죠 시간 어 시간의 단위 뭐다 밀리 세컨더 다 배웠잖아.

화자 1
13:28
마이크로 세컨드 나노 세컨더 피코 세컨더 뱀토 세컨드 더 이상 이야기 안 해줘도 알겠제 앞에서 배웠는 거다 예 그래서 밀리세컨드는 뭐다 10의 마이너스 3승 초만에 수행을 하더라 즉 천분의1초로 움직이고 이놈은 뭐다 10의 구성이니까. 공화국에 붙이는 게 이게 1억 1억입니까? 뭐 1억 분의 1초에 움직이는 거예요. 그죠 이만큼 속도 차이가 많이 나다 그리고 또 정보의 취급 단위 데이터를 처리하는 단위 단위가 다르더라 이 말이에요. 그러니까 메인메모리는 뭐다 워드 하이퍼워드나 풀워드나 더블워드 즉 16비트나 32비트나 64비트로 묶어서 처리합니다. 보통 풀 워드 단위로 풀 워드가 몇 비트고 오케이 32비트 몇 바이트고 오케이 4바이트죠 4바이트씩 묶어서 정보를 쫙쫙 지급하는데 입출력 장치는 바이트 단위들 1바이트 즉 8개의 비트로 처리하더라 이 말입니다.

화자 1
14:24
여러분 우리 키보드 에이 이렇게 누르죠 미음 니은 이렇게 누르죠 그러니까 아 요 장치는 데이터 처리를 뭐다 8개 비트 1개의 바이트씩 하지만 메모리는 뭐다 워드 단위로 처리하더라 이 말이에요. 그중에서도 풀워드 그러니까 훨씬 정보를 취급하는 단위가 빠르게 처리하죠. 그죠 취급단위도 차이가 나고 그다음에 동작의 자율성도 차이가 나더라 즉 주 기억 장치는요 제멋대로 지팔지 모은들이 항상 CPU 의한 제어를 받게 되어 있습니다. CPU 프라세스에 의해서 움직입니다. 메메모리는 매매물이 들어있는 건 뭐다 명령 아니면 데이터제 이 CPU가 주기억 장비들의 명령을 가서 가져오죠 인스트럭션 배치 그리고 인스트럭션 프라세싱을 위해서 데이터도 누가 CPU가 던져주는 게 아니고 뭐 어 저 메모리가 던져주는 게 아니고 CPU가 산 넘고 물건넛바다 건너셔시 하면서 가서 데이터를 가져옵니다.

화자 1
15:23
뭐 데이타 패치가 아니고 뭐 오프렌드 패치죠 그래서 모든 게 시핑에 의해서 지배를 받는데 요 장치는 뭡니까? 시핑에 의한 지배도 받지만 독립적 제어 집할 지원될 수가 있다. 이 말이에요. 그죠 독립적 제어가 가능하다 이 말입니다. 독립적 제어 그죠 예 지팔 지원될 수 있다. 이 말이에요. 물론 CPU에 의한 지배도 일어납니다. 그래서 요런 차이도 있고요. 그 다음에 오류 발생률 에러율도 차이가 나더라 주기억장치 내부 장치들은 거의 오류가 없습니다. 여러분 전자장비는 거의 오류가 거의 0에 가깝습니다. 그런데 우리가 입출력 장치 주변 장치들 키보드 여러분들 마우스 에라만체 그래 가지고 마우스도 몇 개씩 사고 하잖아요. 또 여기 몇천 원짜리 마우스는 금방금방 고장 납니다. 그래서 오류 발생률도 훨씬 주변 장치가 많이 발생되더라 이 말이죠. 어쨌든지 어쨌든지 이 4개의 차이가 나요? 에 4개의 차이가 나요?

화자 1
16:19
그럼 누군가가 이 차이점은 여러분이 차이가 나서는 안 돼 차이점 차이가 생기면은요, 여러분들 데이터가 송수신하지만 대화를 못해 여러분 사람도 차이가 나는데 어떻게 대화하노 아 맞나 안 맞나 어 차이점을 누군가가 뭐 보완하고 보완하고 완충해주고 이 차이점을 누군가가 해결해 줘야 돼요. 그래서 서로 다른요 뭐야? 기계장비죠 IO 장치는 여러분 뭐요 기계장비예요. 지금 주기억장치는 뭡니까? 전자장비입니다. 서로 다르단 말이에요. 이 서로 다른 장비가 데이터를 데이터를 전송 대화를 할 수 할라 하면 누군가 중매제의가 필요하단 말이에요. 중매제해가 여러분 남자하고 여자하고 같나 다르나 단지 다르니까 여러분 결혼할 때 반드시 중매쟁이가 들어오잖아. 어떻게 어 다른 사람들끼리 이 남자 여자 원래 대화 안 돼요.

화자 1
17:18
대화하면 안 돼 야 만날 싸움 많이 하잖아요. 왜 다른 데 뭐 다른데 그러니까 여러분 결혼을 잘 하기 위해서 반드시 무슨 결혼하라 중매결혼 해야 됩니다. 중매결혼 어 전국에 있는 술잡이한테 내 말 잘 들으래이 자 써라 결혼은 뭘 하라 중매를 중매를 해야 잘 산다 연애하면 안 됩니다. 서로 다른 장비인데 그러면 중매제이가 탁 들어서 가지고 에 거 이야기해 줘야 돼요. 중매제이가 야 야 봐라 자는 뭐가 좋구나 이렇게 맞춰줘야 돼요. 그래서 서로 차이점이 없어야 결혼이 돼 그래 결혼해야 잘 삽니다. 이 중매결혼해야 잘 산단 말이야. 요즘은 자꾸 이혼하는 게 뭐고 저끼리 안 맞는데 막 드림 어 누군가가 중간에서 보안 완충 이 문제점 해결 안 해줘요 저 둘이 붙여놓으면 지지고 뽑고 막 무조건 막 이혼해 뿌리고 디보션 이라 하잖아요. 그래서 중요한 이야기다 중력 여론을 아주 보면서 1가지다 컴퓨터도 서로 다른 서로 다른 장비 사이에는 데이타 전송이 안 일어나요?

화자 1
18:16
그럼 누군가가 이 문제점을 보완 완충 해결해 주는 누군가 누구냐 인터페이스입니다. 중요한 이야기죠 인터페이스의 정의가 뭐고 오케이 서로 다른 서로 다른 2장비 사이에 서로 다른 쓰라 2장비 사이의 그 차이점을 보완 완충 조정해주는 장비를 우리는 인터페이스라 합니다. 인터페이스 중요하제 인터페이스입니다. 인터페이스 이 인터페이스는 하드웨어적인 인터페이스가 있고요. 소프트웨어적으로도 인터페이스를 구현할 수가 있습니다. 아 이 중요한 양이에요. 그러니까 여러분들 잘 봐라 이 아이오 장치와 이 아이오 장치와 대화를 할 수 있는 메모리는 다르니까 반드시 뭘 통해야 된다. 오케이 인터페이스가 중간에 필요하다 이 말입니다. 알겠습니까? 인터페이스 그러니까 우리가 아이오 장치는 뭐다 이 아이오 장치 외에 실제 아이오 전용 인터페이스가 있고 아이오 인터페이스가 뭡니까?

화자 1
19:15
특수 인터페이스가 바로 DMA 제어기 그다음에 지금부터 배울 채널입니다. 채널 채널 제어기 이런 것들이 전부 다 크게 뭐다 인터페이스입니다. 알겠나 이런 인터페이스 없이는 뭐다 IO 장치와 메모리는 대화가 되란다 안 된다. 이 말이야. 그래서 여러분들 입출력에서 문제 나오는 건 바로 어디에서 이 인터페이스에서 나옵니다. 그죠 그 IO 인터페이스 이거는 이제 각 이제 입출력 장치에 바로 붙어있는 인터페이스 피씨 같은 경우 인터페이스 카드가 그대로 꼽혀 있습니다. 고 인터페이스 카드가 없으면 안 되는 거요 그리고 특수 인터페이스로 이제 DMA나 채널 이놈이 바로 아이오 제어기를 합니다. 아이오 제어기 입출력 제어기들 에 아이오 제어기나 아이오 인터페이스를 통해야만이 대화가 된다는 거지 대화가 된다는 이야기 그래서 문제는 여기서 나오는 거예요.

화자 1
20:05
입력 장치 뭐 출력장치 이런 얌삼한 문제는 기사 산하 기사에 안 나온다 다음 중 입력 장치가 아닌 것 이런 문제 기대하지 마라 이게 모든 시험도 아니고 그래서 인터페이스 이 원리에 의해서 이제 인터페이스에 대해서 배워보자 이 말입니다. 아 요 방식에 대해서 배워보자 이 말입니다. 되겠나 정리 잘 되죠. 자 예 너무 빨리 넘기지 마세요. 칠판을 좀 치어야 되잖아요. 예 좋습니다. 예 자 그러면 이제 아이오 제어 방식을 보자 자 어떤 식으로 이제 메인메모리와 CPU 저 메인 메모리와 아이오 장치의 문제점들을 해결하면서 아주 이상 없이 데이터를 IO 하는지 그 방식 IO 방식에 대해서 이게 문제가 나온다는 거예요.

화자 1
20:54
IO 방식 즉 IO 제어방식 4가지 차이점을 어떤 식으로 현명하게 조율해 가면서 데이터가 왔다리 갔다 왔다리 갔다 하는 게 문제가 없도록 해주느냐 이거 문제가 제일 많이 나오겠지 에 이 중매 중매쟁이가 중매를 잘 써야만 결혼이 잘되고 행복해요. 그죠 그래서 여러분들 이 중매쟁이한테 중매 잘 쓰면 돈 많이 줘야 됩니다. 양복도 사줘야 되고 알겠나 순자야 좋습니다. 자 CPU를 이용하여 데이터를 아이오 하는 것과 자 IO 제어 방식은 크게 CPU가 입출력 장비들을 제어하는 게 있고요. CPU가 전혀 관여하지 않는 IO가 있다. 이 말입니다. 잘 들어라 에 자 이 아이 주변 장치와 메모리제 이 메모리에서 데이터가 왔다리 갔다리 해야 되잖아요. 그죠 데이터를 올리는 게 인풋이고 그죠 그럼 이게 주로 입력해서 메모리제 또 메모리에서 결과를 아웃풋하면 주로 출력장치로 아웃풋 하죠.

화자 1
21:52
그래서 이 하는데 이 CPU가 CPU가 개입하는 게 있고 개입하는 게 있고 CPU가 전혀 개입하지 않는 2가지 방식이 있더라 이 말입니다. CPU가 관여하는 게 있고 관여하지 않는 게 있더라 이런 이야기요 잠깐 보면은 자 아이오 제어 방식 즉 아이오 방식에는 4가지가 있다. 프로그램에 의한 아이오 프로그램드 아이오 매스드가 있고 인터렉트에 의한 아이오가 있고요. DNA에 의한 IO 방식이 있고 채널에 의한 IO가 있다. 이 말입니다. 그죠 자 프로그램에 의한 아이오와 인터렉트의 나이오는 시피뉴가 관여를 합니다. 시피뉴가 입출력 동작을 지시하고 지가 노려보고 째려보고 관여를 한다는 거야. 이 시피뉴가 그런데 DMA나 채널은 전혀 시피뉴가 관여하지 않습니다. 시피뉴가 관여하지 않고 IO가 일어나는 DMA가 채널이 CPN의 역할을 대신하는 거죠.

화자 1
22:43
되겠나 그리고 이제 가장 원시적인 방법들이고 이 DMA라는 IO는 주로 소형 컴퓨터에서 즉 PC 같은 건 소형 컴퓨터에서는 DMA에 의해서 IO가 일어나고요. 또 이제 IBM 360이라든지. 우리 백스라든지 큰 대형 컴퓨터도 있죠. 은행 전산실이라든지. 국가기관이나 큰 어 뭐 요런 IDC에 들어있는 이런 대형 컴퓨터는 인제 주로 체내에 의한 IO를 합니다. 그렇죠. 자 IO 방식 즉 아이오 제어 방식 4가지 프로그램에 의한 아이오 인터렉트에 의한 아이오 DMA에 의한 IO 채널에 의하여 CPU 관여를 하고 관여를 하지 않고 그렇죠. 주로 소형 컴퓨터 대형 컴퓨터 되나 한번 살짝살짝 중요하다 봐놓고 넘어가 봅시다의 좋습니다. 예 자 제일 먼저 프로그램에 의한 아이오는 뭡니까? 입출력을 이제 소프트웨어 즉 프로그램이니까. 소프트웨어적으로 입출력을 시키는 거죠.

화자 1
23:40
프로그램의 여러분 리더 나이트 명령에 의해서 이제 GP년 유가 그 입출력을 관리를 하는 그런 거죠. 그렇죠. 자 심피뉴가 상태 플래그 상태 플래그는 뭐다 우리가 상태 레지스터죠 상태 레지스터 에스알이죠. 에스알 64비트로 되어 있다. 그죠 자 64비트로 되어있는 건 피 SW 프로그램 스테이트스 워드 현재 CPU의 모든 컴퓨터의 모든 상태를 기억하는 60내미터로 된 단어를 기억하는 레지스트가 뭐다 상태의 레저트 다른 말로 하면 상태 플래그라고 하잖아요. 그죠 자 CPU가 이 컴퓨터의 모든 상황을 요 안에 들어가 보면은 현재 모든 IO에 대한 개념도 다 들어가 있죠. 상태를 계속 조사하여 IO가 완료되었으면은 MBI와 메모리 버퍼 레지스터 데이터를 갖다 놓는 거죠. 그리고 에이 씨는 뭡니까?

화자 1
24:28
바로 누상 기조 누상기사에서 자료 전송도 CPU가 직접 IO를 하는 방식 프로그램의 IO죠 그죠 되겠나 자 이러다 보니까 IO 작업 시 CPV는 계속 관여해야 되기 때문에 다른 작업 즉 다른 작업 프로세스를 프로세싱 할 수는 없죠 그러다 보니까 CPU의 아이들 타임 유효시간이 많이 발생하겠죠. 무슨 말인지 아나 어 자 원래 CPU의 고정 CPU 우리 다른 말로 뭘 알아 여러분들 프로세스라 하잖아. 프로세스 시필요 우리는 프로세스고 PCS는 뭐라 칸다 오케이 마이크로프로세스라 하잖아. 다 배웠제 어 프로세스예요. 이 프로세스의 정의는 뭐고 오케이 프로세스를 처리하는 처리 기간 뭐고 프로세스야 그럼 프로세스는 뭐고 현재 컴퓨터가 수행 중인 즉 CPU가 수행 중인 명령어나 데이터를 우리는 내용을 프로세스라 합니다.

화자 1
25:27
자 CPU는 명령어나 데이터만 처리하면 돼 IO와 관계없어요. 그런데 이것만 해야 되는데 이놈을 하다가 시피늄 한번 봐봐요. 프라세스를 프라세스를 프라세싱만 하면 되는데 이제 뭡니까? IO 작업이 아니 입출력 작업에 관여를 합니다. 시피뉴가 예 이것도 처리하면서 슬쩍설치 관여를 해 관여를 해 가지고 이놈이 완료되면 뭡니까? 지가 관여돼서 가져와야 되거든요. 쪽으로 메모리 쪽으로 가져와야 됩니다. 그러다 보니까 관여하는 시간 어 가져오는 시간이 발생된다. 이 말입니다. CPU는 프라세스만 지 원체적으로 뭐 이래 하면 되는데 딴 일에 신경을 써요 IO에 신경 쓰다보니까 CPU 아이들이 타임 즉 프로세스를 처리하는 시간이 뭐야? 아이들 타임 유휴시간이 발생하겠죠. 자 CPU가 지 하던 일을 안 하고 딴 일을 하는 건 전부 유휴시간이야 알겠나 내가 지금 강의만 해야 되는데 강의만 해야 진도도 잘 나오고 이렇게 막 시간 낭비가 없는데 강의하다가 옆에서 저거 누가 끄적끄적 거리거든.

화자 1
26:26
그래서 강의 자꾸 기다려줘요 저것도 관여하고 또 다시 와 강의하다가 또 저 관여하고 이러면 뭐예요? 여러분 입장에선 뭐해야 되노 이건 뭐 강의 1시간 넘는데 한 3시간 걸리지 유휴 시간이 지가 지 볼매기를 안 하고 쓸데없는 데 시간을 발생하는 것보다 아이들 타임이라 한다. 유류시간이 많이 발생합니다. 알려나 CPU 유유 아이들타임이 많이 발생한다. 프로그램은 그래서 원시적인 방법 좋지 않죠 그다음에 요놈을 좀 개선한 게 뭐다 오케이 인터럽트에 의한 아이오입니다. 인터럽트는 뭐고 아까 프로그램에 의한 아이오는 뭐다 CPU가 계속 관여를 합니다. 플라세스 계속 보고 있어요. 근데 인터랩터에는 아니고 그렇지 않죠 CPU가 계속 상태 플래그를 검사하지 않고 데이터를 전송할 준비가 되면은 IO 인터페이스가 CPU에게 알려주고 알려주면 이제 뭡니까? 전송이 완료되면 수행 중이던 프로그램으로 되돌아가 수행을 재개하는 IO 방식이다. 그죠 인터럽트의 IO는 뭐다 CPU는 관여하지 않아요.

화자 1
27:25
열심히 일을 하다가 이 아이오 장치가 입출력을 마쳐버렸제 그러면 아이오 장치에 연결된 인터페이스가 CPU한테 뭐 인터랩도 요청 신호를 발생시킵니다. 배웠제 요청 신호 발생시키면 그제서야 어 니가 어 입출력 다 했단 말이제 알았어. 가서 데이터를 메모리에 노드 시키는 겁니다. 알겠나 아까는 계속 관여를 하는 거예요. CPU 지가 계속 관여를 하다가 IO까지 시켰지만 인터렉트의 IO는 뭡니까? 관여하지 않아요. CPU 열심히 프로세스만 하다가 IO 장치에서 입출력이 완료가 되면은 IO 인터페이스가 CPU한테 어 인터뷰도 요청 신호를 발생시켜 아이고 주인님 입출력 다 됐으니까 잠깐 보살펴주소서 이카면 어 그래 잠깐 가서 오케이 다 됐네 그 데이터를 메모리에 갖다 줘놓고 여기 와서 강의를 시작합니다. 알겠나 그러니까 관여 게 좀 더 덜 하죠. 그죠 그러다 보니까 뭐 요놈은 CPU IDEL 타임을 좀 많이 줄일 수가 있는 거죠. 그렇죠.

화자 1
28:21
그러니까 프로그램에 의한 IO보다는 인터렉트에 의한 IO 방식이 쫌 더 좋은 IO 방식이다. 이렇게 보면 됩니다. 이해되나 그죠 근데 이 2놈은 뭐다 싫든 좋든 CPU가 관여를 합니다. 그런데 이 DNA에 의해 나와있는 시피면은 전혀 관여를 하지 않습니다. 자 볼까요? 어떤 식으로 입출력을 행하는지 자 어떤 식으로 입 출력을 행하는지 한번 보자 이 말이여 음 DMA는 여러분 다이렉트 메모리 억세스 말 그대로 뭐다 DMA 저기는요 다이렉트로 CP와 관계없이 지가 메모리의 데이터를 IO 장치에서 입력된 데이터를 지가 갖다 놓고 가져온다는 거죠.

화자 1
29:03
억색스 하는 게 뭐고 데이터를 갖다 놓는 리더 또 가져오는 라이터 이 2개를 합해서 우리는 뭐다 억세스라죠 억세스 에 접근해야지 접근 에 그렇제 아 요 와보자 DMA는 아이오 장치가 CPU에 관계없이 직접 메모리를 억세스하여 니드나이트 하여 데이타 블록을 아이오 하도록 하는 아이오 제어 방식입니다. 그죠 DMA가 아이오하는 단위는 블록 단위입니다. 블락 피지컬 레코드 알게나 블록하는 거 배웠지 블록 단위로 데이터를 어 1개의 블록을 해주는 거죠. 많은 양의 데이터죠 블록 단위니까 에 바이트 단위가 아니고 블록 단위니까 고속으로 전송할 수 있는 장점이 있고 자 아주 중요하다 이 DMA 제어기는 뭐 사이클 스틸 방식을 이용하여 데이터를 미드나이트 시킵니다. 전송합니다. 사이클 스틸러 도둑놈입니다. 도둑놈 자 보자 우에 도둑치는지 에 도둑질을 하는지 한번 보자 이 말이요.

화자 1
30:00
자 여러분 사이클 스틸이 뭐냐면요 이게 사이클 스틸이다. 이 말이야. 자 DMA는 어떤 거냐 DNA 제어기는요 아이오 제어기죠 자 이쪽이 여러분들 메모리를 하고요. 이놈이 CPU로 하고 여기 인제 아이오 장치라 합시다. 아이오장치 그러면 인제 어 이 DMA는 DMA 제어기는 인터페이스이기 때문에 중간에 있겠죠. 중매제의는 중간에서 했는데 중간에 중매제가 여기 있으면 안 되겠죠. IO 인터페이스인 DMA 제어기는 여기 있겠죠. 예 그럼 여러분 CPU가 일을 한다는 정의는 뭐고 오늘날 컴퓨터 시스템에서 플라세식 능력이 있는 것 즉 처리능력 처리 능력을 가지고 있는 게 온이 먹어 CPU 밖에 없제 프로세스밖에 없잖아요. 처리 능력 가지고 있는 게 처리 능력 즉 일을 할 수 있는 장비는 내 CPU 밖에 없어요.

화자 1
30:53
처리 능력 힘있는 거는 나머지 힘없어 전부 CAPING에 의한 지배를 받고 있지 그럼 CPU가 일을 한다는 거 메모리에 가서 명령어 가져오고 다 배웠잖아. 명령어 가져오고 명령어 프라세싱하고 데이터 가져오고 이 지랄하제 수많은 사이클 활동한다는 게 CPU가 일을 한다는 정의 아니여 에 열심히 일을 합니다. 어 메모리에 들어있는 명령어 데이터를 열심히 억세스하겠죠. 그러면 DMA는 뭐야? DMA는요 아주 신사적인 도둑이에요. 저는 힘이 없어요. DMA는 뭐다 데이터를 처리할 수 있는 처리 능력이 없다니까 처리 능력이 없고 처리 능력이 없는 대신 딴 능력이 있습니다.

화자 1
31:33
이게 딴 능력 뒤에 어 딴 능력을 요청 헬퍼믹 하는 능력과요 그 다음에 선택할 수 있는 거 눈은 있어 그리고 이제 관리할 수 있는 그다음에 다시 되돌려 보고 기능 그래서 자 이거 DMA의 기능은요, 요청기능 선택기능 관리기능 보고 기능 4가지 기능을 가지고 있습니다마는 처리기능 처리 기능은 없다니까 처리 기능을 가지고 있는 건 누구 오니 시피뇨약 DNA는 처리 기능은 없어요. 그러니까 힘은 없어요. 힘은 없단 말이야. CPU가 사용하는 이 CYCLE을 하나 훔쳐 올 수가 있습니다. 이 사이클을 하나 훔쳐요 어 이 도둑놈이야 훔칠 때 그냥 훔치는 건 아닙니다. 내가 훔쳐갈게 합니다. 훔쳐갈게 하고 나는 훔쳐와요. 딱 훔쳐와서 요 사이클 동안에 데이터를 IO 시켜 버립니다. 오케이 아 훔쳐와요. 요런 거예요. 다시 이야기합니다. 오늘 DMA라는 제어기는요 CPU처럼 일을 할 수 있는 처리 기능은 없는데 대신 4가지 기능이 있다. 뭐야?

화자 1
32:27
요청 기능 뭐 훔쳐올 때 그냥 와놓으면 훔쳐간다 하고 훔쳐올 수 있는 요청 기능이 있고요. 그리고 이 많은 사이클 중에 어느 걸 훔쳐 갖고 선택할 수 있는 선택 기능이 있습니다. 사이클 많은 것 중에 근데 어디 거 훔칠꼬 요거 보는 눈이 있다는 거야. 선택 기능 그리고 이제 이 어 요 훔친 이 사이클 동안 데이터를 아이오 시킬 때 데이터를 관리할 수 있는 관리 기능이 있고요. 그리고 사용 당했는 사이클을 되돌려주는 거예요. 보호기능 반환 기능은 있어요. 이 훈천하고 또 되돌려줘 신사적인 도둑놈이 DMA 지역입니다. 도둑놈 중에서도 신사지역 되겠나 요런 강의 들으면 들어줄 수가 없지 시험에 많이 나온다 어 요 원리를 이용해서 CPU가 그 CPU 사이클을 훔쳐 가지고 고 사이클 동안에 IO 장치의 데이터를 메모리에 입력시키고 출력시키는 요런 담당을 하는 게 DNA 제어기야 되겠나 멋지잖아.

화자 1
33:22
이거 자 그래서 사이클 스틸이 뭐냐 프로 지피뉴가 프로그램의 수행을 위해서 메인 메모리의 사이클을 이용하고 있을 때 많은 사이클을 이용하고 있을 때 데이터 채널 즉 요청 요청이죠. 훔쳐 가 요청하였다. 다음 사이클을 DNA 제국에 이용하도록 하는 개념 요 사이클 동안 아이오하는 개념 즉 시피뉴가 사용하는 사이클을 훔쳐와서 IO 처리를 하는 방식이 CYCLE STORY고 이 CYCLE STORY를 가지고 하는 제어기가 뭐다 DMA 제어기냐 그래서 이 DNA 기능은 자체 처리 능력은 없다. 즉 처리 기능은 없는 거예요.

화자 1
33:53
처리 기능은 없지만, 요청기능 데이터 채널을 요청할 수 있는 기능 훔쳐간다 하는 기능 그리고 많은 사이클 중에 원룸을 훔쳤고 사이클을 선택할 수 있는 기능 그다음에 IOAR 메메모리의 번지 자료 양을 관리하는 기능 오케이 에러 없이 입출시킬 수 있는 기능 그다음 완료 시 IO 다 시켰을 때 CPU한테 보고하는 기능 즉 반환기능 인터랩션호를 발생시켜서 보고 또는 무슨 기능 더 되돌려줘야 되겠죠. 반환기능 다른 말이죠. 보고 기능이나 반환 기능 같은 말이에요. 그죠 요런 4가지 기능 DMA 기능 암기할 필요 없어요. 무슨 요청기능 선택기능 관리기능 보고 기능 다른말로 뭐 반환 기능 이걸 암기하나 암기할 필요가 없더라 이 말입니다. 되겠습니까? 예 자 DMA 제어기라는 인터페이스를 어떻게 하려고 알지 그렇죠.

화자 1
34:43
CPU와 관계없이 CP의 힘을 빌려와 가지고 CPU의 사이클을 훔쳐가지고 IO 시키는 특수 아이오 전용 제어기다 이 말입니다. IO 전용 제어기예요. 그죠 그래서 근데 여러분들 이 사이클 스틸과 앞에서 배운 인터럽트가 좀 비슷하제 요거 차이점 한번 볼까요? 자 사이클 스틸은 누가 하는 겁니까? DNA가 하는 거고, 인터럽트 처리는 누가 하나 우리 시피뇨가 했제 알아 다 배웠다 자 시표유는 뭐다 스틸된 사이클 동안 완전히 대기 상태가 됩니다. 사이클 스틸이 벌어지면은 사이클 스틸이 DNA 제어기가 사이클을 훔쳐 가버리고 시피유는 잠시 억 힘을 뺏겨버리니까 그 순간 꼼짝하고 가만히 있는 거예요. 꼼짝 말아요. 그래서 이 사이코스틸이 벌어지면은 IO는 누가 하노 DNA가 하고 CPU는 뺏겼기 힘을 뺏겼기 때문에 잠시 대기 상태입니다. 대기 대기의 CPU는 멍 포즈 이 대기가 포즈제 이 포즈 상태예요. 포즈 포즈 상태를 취합니다. 포즈 어 이래요.

화자 1
35:43
그리고 아무런 동작을 하지 않고 DMA 저기에서 메모리 접근이 완료되었을 때를 기다립니다. 그죠 돌려줄 때까지 기다린다는 겁니다. 돌려주면 그 다음부터 막 아싸 막 일을 하고 디엠에 훔쳐가면 어 돌려주면 아싸 훔쳐라며 어 요거제 요래까지 해줬는데 틀리면 안 된다. 그런 거예요. 그러다 보니까 CPU의 상태 보존이 필요 없어야 되는데 왜 CPU가 상태 보존 필요 없죠 가만히 있으면 되니까. 왜 DMA가 일을 하기 때문에 그죠 근데 인터랩트가 발생되면 뭡니까? 인테스트는 CP가 이거 현재 어떤 하던 일을 하는데 누군가가 방해를 하죠. 방해를 하니까 잠시 기다려 상태 보존을 딱 해놓고, 어디까지 했노 순자 여기까지 했나 지역해 놔라이 상태 보존해 놓고 언놈의 12번으로 가서 이 말을 처리하고 와서 아까 어디까지 했노 해서 계속 강의를 하는 거 아닙니까 그죠 그게 인터럽트였죠 근데 뒤에 사이코스틴은 그렇지 않다 이 말입니다.

화자 1
36:38
자 인터럽트는 그렇제 인터럽트는 여러분 뭐요 수행하고 있던 프로그램을 정지되지만 인터럽트 처리 루틴의 명령을 실행하기 위하여 시프면 일을 합니다. 자 인터럽트는 어떤 거고, 내가 CPU 아니야. 강의를 열심히 하잖아. 열심히 하는데 어디서 막 시끄러운 소리가 들려 도저히 이것 때문에 강의 안 되거든. 이 CPU가 프로세스가 프라세시물이 뭐야? 그래서 잠시 스톡 어디까지 했노 끝까지 했잖아. 고까지 했잖아. 고거 기억해놔 어디 기억시키느노 메모리 연번지나 스택이나 인터뷰터 백타이 기억시키자 시켜놓고 고까지 했죠. 기억해 놔 잠시 갔다 돌아올게 어 이 사 그 인터뷰트가 발생되면 인터럽트를 누가 해결하노 심핑을 해야 되잖아. 그러니까 상태 보존해 놓고 잊어버리지 마래이 고까지 했제 메모리 영번집 다 갖다 놓고 가가 이 새끼 지가 처리 다 하고 난 뒤에 아 돌아왔어 요게 인터렉트잖아. 알겠습니까? 알겠나 근데 사이코스트리는 어떠노 열심히 일하고 강의하는데 어 뺏어가 버렸는데 말 그대로 뺏어가 버리는 거야.

화자 1
37:35
그럼 고 사이에 가만히 있으면 돼 돌려주면 아 하면 됩니다. 되겠나 요런 이야기 그래서 CPU의 상태 보존이 인터랙트를 반드시 필요한 상태 보존을 어디 하더노 다시 복습해보자 메인 메모리의 0번지나 스택의 상태 보존하죠. 그죠 이놈은 상태 보존이 필요 없고요. 자 사이클린 어떻게 벌어지면 CPU는 대기 상태고 인터럽트가 발생되면 CPU는 일을 합니다. 대기가 아니고 CPU는 일을 수행합니다. 하는데 뭘 처리하노 인터럽트로 처리를 하겠죠. 명령어 처리가 아니고 되나 요렇게 시피뉴하고 여러분 DMA 제기하고요. 자 시험에 많이 요걸 다시 그림으로요 요 그림이 옛날에 출제가 되어 있기 때문에 이 그림을 가지고 다시 한번 중요하기 때문에 여러분한테 설명을 드리도록 하겠습니다. 알겠어요. 아 좋아요. 아유 확실히 정의를 하죠. 자 이거는 이제 메모리 사이클입니다. 그죠 메모리 인제 메모리 사이클이 쭉 일어나죠. 일어나는데 요 사이클 스틸이 발생되었을 거고, 요때는 인터럭트가 발생되었다고 가정합시다.

화자 1
38:34
그죠 요번째 요 사이클 두 번째 사이클에서 요게 아이 카는 게 인터럭트잖아요. 자 인터럭트가 발생되었습니다. 인터럭트 인터럭트 발생이 됐고 요 디는 뭡니까? 데이터 채널 요청 즉 DMA 제어기가 시필요한테 뭐 데이타 요청을 했죠. 데이타 채널 요청을 했죠. 그죠 사이 그러니까 시피면 어 사이클 하나 줘 채널 요청을 했습니다. 이건 인터렉트 요청이고 인터런트 발생된 요청이에요. 그죠 그래서 요거는 아이라 하고 요건 디고 아이디 요렇게 합시다. 그럼 사이클 스틸이 발생되면요 자 이 메모리 사이클에서 1개의 명의어를 옆 패치죠 패치 CPU는 매물 가서 명령을 가져왔어요. 첫 번째 명령을 가져왔어요. 첫 번째 명령을 배치했다. IMF 가져와서 인제 여기에서 이 첫 번째 명령을 막 그냥 그 바로 수행해 버리십시오. 첫 번째 명령을 엑시큐트 했습니다. 이 가능 엑시큐트지 수행을 했다. 합시다. 중간에 원래 명령어 수행은 뭡니까?

화자 1
39:34
명령어를 가져와서 그 다음에 명령어를 프라세싱하고 그리고 그 다음에 오프렌드를 가져와서 그리고는 명령어를 수행하지 말고 이걸 빼버리자 그래서 가져와서 수행한다. 이렇게 합시다. 예 뭔 말인지 알겠나 어 가져왔어요. 수행을 했어요. 근데 여기서 인제 두 번째 명령어를 이제 가져와야 되는데 여기에서 뭐가 발생됐냐 아 데이타 채널 요청이 일어났어요. 데이터 그럼 요 사이클 동안 원래는 뭐고 데이터 채널 요청이 없으면은 두 번째 명령을 패치해야 될 사이클 아니야. 그죠 첫 번째 명령 가져와서 수행하고 두 번째 명령 가져와서 수행하고 이렇게 나가야 될 거 아닙니까 근데 데이타 자 CPU다 CPU가 지금 관점은 CPU죠 이거는 첫 번째 명령은 가져왔어요. 첫 번째 명령 수행을 했습니다. 이상 없기 때문에 사이클 스틸이 근데 두 번째 명령 가져올라 카니까 요 사이클의 DNA가 뭐다 데이터 채널 요청을 했거든.

화자 1
40:27
CPU 요 채널 동안 이 두 번째 명령어 두 번째 명령을 가져오는 거 잠시 중단해라 내가 요거 어 이 사이클 동안 뭐하꼬 내가 어 메모리 아이오 장치에서 데이터를 아 요 메모리 갖다 놓을게 DNA가 요 사이클을 써버립니다. 그럼 CPU는 뭡니까? 요 사이클 동안 쉬죠 그래 알았다. 마 가져가라 포즈입니다. 잠시 대기 그리고는 여기서 뭡니까? 명령어 두 번째 명령을 가져옵니다. 가져오죠 원래는 이런 게 없다. 카는 거고, 첫 번째 명령어 가져와서 첫 번째 명령어 가져와서 요 사이클에서 두 번째 명령어 수행하고 세 번째 명령어 가져와서 요 사이클에서 세 번째 명령어 수행하고 저 세 번째 명령 액시큐트 수행하고 요렇게 나가겠지 그렇지 그런데 첫 번째 명령어는 CPMU 가져와서 첫 번째 명령은 수행을 잘 했어요. 요 사이클에서 두 번째 명령어를 가져와야 되는데 데이터 채널 요청이 있거든.

화자 1
41:22
DNA가 이 누가 DNA가 어이 봐라 친구야 봐라 시피뉴 요 사이클 얘한테 빌리도 니는 잠시 대기해라 인마 포즈해라 그리고 DNA가 요 사이클 동안 뭐 해 버리노 아유 해 버립니다. 됐나 되겠습니까? 그러면 씹히면 여기서 인제 여기에서 수행해야 될 거예요. 가져오고 또 여기서 세 번째 명령어를 가져올라 카는데 또 뭡니까? 데이터 천일 요청이 또 있제 그러면 요 사이클 또 뭐야? DNA가 요 사이클 동안 IO를 해버리고 CPU는 대기합니다. 이런 식으로 가겠죠. 이해되나 요건 인제 사이클 스틸 쪽입니다. 근데 인터랩트가 발생되면 어떻게 돼요. 자 첫 번째 명령어를 이제 시피뉴가 메모리에 가서 첫 번째 명령어를 산 넘고 물건 너바닥을 넣지고 가져왔어 가져왔는데 여기서 뭐다 인터랩트가 발생돼 버렸죠 원래는 요 두 가져왔는 걸 요 첫 번째 명령은 애시큐트를 해야 되는데 요 사이클에 뭐다 수행하려 하는데 인터럭트가 발생돼 버렸지 그러면 CPU는 뭐고 인터럭트를 처리를 하죠.

화자 1
42:20
요 사이클 동안 인터럽트를 처리합니다. 대기하고 있는 게 아니고 그리고 이제 요 사이클에서 뭐야? 첫 번째 명령어를 다시 가져오죠 아까 가져와 수행할라 하다 모였으니까 첫 번째 다시 가져와야 됩니다. 패치 사이클을 다시 가야 되겠죠. 어 그리고 여기서도 이 첫 번째 명령을 수행할라 하니까 또 인터넷 또 발생돼서 CPU는 또 요 사이클 동안 지를 방해하는 원인을 처리합니다. 그리고 다시 뭐야? 첫 번째 명령을 또 가져옵니다. 가져와서 여기서 뭐다 첫 번째 명령을 수행합니다. 요렇게 되면 된단 말이에요. 뭔 말인지 알겠나 어 요렇게 되는 거죠. 데이터 채널이 벌어지면 어떻게 데이터 채널이 벌어지면 첫 번째 명령을 가져와서 수행하고 이제 여기서 두 번째 명령어 가져오고 여기서 두 번째 명예어를 수행을 하겠죠. 되겠나 요 원리를 여러분 아시겠죠. 강의 잘했제 여러분들 여러분 요 그림을 보고 데이타 채널이 일어나면 인터렉트가 발생되면은 CPU는 2를 한다. 그죠 근데 데이타 채널이 발생되니까.

화자 1
43:20
CPU는 대기합니다. DNA가 곧 사회 또 하는데 일을 하는데 CPU는 무슨 일을 하노 인터랩트로 처리하지 명령을 수행하지 않는 거예요. 그래서 수행하지 않기 때문에 다시 명령을 가져와야 되겠죠. 아 이 명령을 안전한 장소에 보관을 해버렸기 때문에 이해되나 그러니까 아이완 에프 여기 아이완 에퍼 아이완 에프 여기서 아이완이 수행을 안 합니다. 되겠나 야 요 그림 요 그림 하나만 알면은 좋다는 거죠. 이해되제 그래서 좋습니다. 좋고요. 좋습니다. 좋고 자 예 자 방금 만든 게 DMA 제기에 의해서 이제 컴퓨터가 아이오 동작을 하는 즉 CPU는 전혀 관여하지 않고 DNA가 아이오 시킬 그 사이클 동안 포즈 잠시 대기만 하고 있더라 그죠 그 사이클을 훔침을 당했죠. 누구한테 DMA 제어기한테 되나 요렇게 이야기 해주는데도 모르면 간첩이다. 자 그 다음에 마지막으로, 아이오 방식 체내에 의한 아이오 한번 보자 이 말입니다.

화자 1
44:19
그죠 여러분 인제 아이오 방식 보는 거다 아이오는요 여러분들 입출력적 아이오 장치가 제멋대로 데이터를 아이오 못 시키지 왜 다시 정리한다. 아이오 장치와 메모리는 차이가 나기 때문에 반드시 중간에 저기 즉 인터페이스가 존재해야 되는데 그 인터페이스에 의한 아이오다 이 말이죠. 아이오 어 그래서 입출력 방식이 뭐냐 프로그램에 의한 아이오 그죠 그다음에 인터렉트에 의한 아이오 그다음에 DM에 의한 아이오 자 마지막 채널에 의한 IO를 보자 이 채널은요, 한마디로 이야기하면 IO 전용 IO 전용 특수컴퓨터입니다. 특수컴퓨터 입출력만 전담으로 하는 그냥 컴퓨터예요. 원래 컴퓨터는 뭐다 명령어를 처리하는 건데 이놈 말고 IO만 처리하는 아이오 전용 특수 컴퓨터입니다. 즉 CPU를 대신하여 메모리와 IO 장치 사이에서 아이오 입출력만을 수행하는 IO 전담 처리 기사는 말로 IO 전담 컴퓨터를 채널이라 합니다.

화자 1
45:14
대형 컴퓨터 우리가 대형 전산실에 가면요 채널이라는 또 캐비닛이 있습니다. 어 이 시피니처 프라세스 원 프라세스 뚝 하다가 저건 채널 프라세스라 카거든. 그 저 캐비넷에 뭐하느니 하나하노 이카면 아 요 입출력만 한다. 어 입출력 장치하고만 대화를 한다. 이 말입니다. 그죠 그래서 IO 전용 특수컴퓨터 있네요. 그죠 CPU에 관섭 없이 IO 동작을 수행하도록 지시하고 작업이 끝나면 CPU에게 인터렉트로 알린다 그죠 1개 명의에 의해 여러 블랙을 IO 합니다. 그죠 그러니까 이 채널은요, 아주 고성능 아이오 제어기다 그죠 그래서 데이터 입출력 할 때 1개만 1개씩만 하는 게 아니고 여러 개를 블락 단위로 해버립니다. 바이트 단위가 아니고 그러니까 고속의 IO 제어기죠 그죠 고속의 IO 제어기다 이렇게 생각하면 되겠죠. 예 여러 개를 블랙 단위로 하고 아까 DNA는요 DMA 제어기는 여러 개가 아니고 1개의 블랙씩 합니다. 한 블락씩 한 사이클 동안 한 블락시 아이오 시키는 거죠. 알겠습니까?

화자 1
46:13
어 그리고 아까 뭐 딴 거는 뭡니까? 바이트 단위로 IO를 하는 거죠. 그렇죠. 그래서 IO 성능이 제일 좋은 게 여러분 뭐가 오케이 채널이죠. 채널 채널 제어기요 IO 성능이 제일 좋아요. 그다음에 DNA 그죠 DNA 그다음에 인터렉트 의한 아이오 가장 성능이 나쁜 게 뭐다 프로그램에 의한 아이오예요. 중요하다 채널에 의한 IO가 가장 IO 속도를 빠르게 제어할 수가 있고요. 그다음에 DNA 어 그러니까 채널은 뭐다 여러 개의 블록 여러 개의 블록 단위로 데이터를 하고 DMA는 1개씩 1개의 블락도 아니라 블락은 알제 블락 알죠 피터 바이트 워더 워드 필드 레코드 다음에 뭐냐 블록이죠. 블록 예 블록 그다음에 인제 이런 것들은 바이트 단위로 하죠. 바이트 단위로 바이트 단위로 되겠습니까? 요렇게 하면 되고 그럼 아주 쉬워요 기능은 IO 명령을 해독하겠죠. 딴 건 뭐하겠죠. IO 장치의 명령실행 지시를 한다. 에 주변 장치에만 지시된 명의의 실행 상황을 점검할 수도 있고 그 종류는 크게 3가지가 있다.

화자 1
47:13
실렉트 채널 선택형 채널이 있고 그다음에 다중화채널 이 다중화채널도 2종류입니다. 바이트 형의 바이트 문자 다중화 채널이 있고 블락 다중화 채널이 있더라 그죠 블락 다중화채널 그래서 종류는 3종류의 또 채널이 존재하더라 3종류의 채널 그래서 주로 이제 선택형 채널은요, 고속의 아이오 장치를 제어하는 채널입니다. 그죠 그 선택형 채널은 고속 고속 승복 고속의 아이오 장치를 제어하는 채널이고 1개의 IO 장치만을 제어할 수 있는 채널이고요. 바이트채널은 이 다중화채널이에요. 바이트형 즉 문자형 다중화채널은 저속의 아이오 장치를 제어합니다. 저소 그리고 1개 동시에 여러 개의 아이오 장치를 제어할 수가 있죠. 동시 동시 동그라미 그다음에 블록은요, 즉 블록 다중화 채널은 고속의 IO 장치를 제어하면서 뭐야? 동시에 여러 개를 IO 합니다.

화자 1
48:07
알겠나 자 다시 선택형 채널은 고속의 IO 장치를 제어하면서 1개 어 1개의 장치만을 제어한다. 한 장치만 근데 이게 뭐야? 바이트 단위의 다중화 채널 문자 다중화 채널은 뭡니까? 저 속에 IO 장치를 제어하면서 여러 개의 장치를 제어할 수가 있고 그다음에 이 문자 어 그 뭐야? 블랙 다중화 채널은 뭐다 고속의 아이오 장치를 제어 가능하면서 여러 개의 여러 개의 장치를 할 수가 있습니다. 그죠 고속의 아이오 1개 장치 저속의 아이오 여러 개의 장치 고속의 아이오 여러 개의 장치 요렇게 선택형 바이트형 문 저 뭐야? 블락형 다중화 채널이라는 거 실제 요렇게 정리해 놓으시면 됩니다. 자 요 장치 쉽죠 아주 정리가 환상적으로 되겠죠. 환상적으로 되겠죠. 예 글자가 너무 여러분 텍스트는 중요한 거 아니다.

화자 1
49:05
그래서 내 설명만 잘 듣고 눈으로 그냥 슬슬 봐주면 됩니다. 그죠 봐주면 된다. 예 쓸데없이 글을 많이 썼네 쓸 필요 하나도 없는 걸 자 채널 프로그램 채널은 또 이 채널 프로그램에 의해서 동작 되겠지 채널은 하나의 특수 전용 컴퓨터니까 그래서 주기억장치 역시 기억되고요. 채널에 의해 해독하고 실행이 됩니다. 채널 프로그램이 대개나 바꾸어 말해서 채널 프로그램 응, 어 채널 프로그램은 채널에 의해서 해독되고 실행되고 또 채널은 채널 프로그램에 그래서 움직인다는 거죠. 그래서 씨씨더블유는 뭐다 채널 유커맨 중요한 건 아니다. 한번 하나 살짝 1번씩 혹시 문제가 나올 수 있으니까 채널 커맨드 워드 캐 가지고 32비트의 풀 워드로 되겠죠. 그죠 채널 명령은 32비터 풀 워드로 채널에 대해 명령을 내린다는 거예요. 그죠 CAW 뭐다 채널 명령어의 번지 개념 즉 저 채널에 이 채널 명령어를 기억하는 채널 번지 개념이다.

화자 1
49:57
그죠 그래서 채널 어드레스 워드라 카고 CSW는 뭐다 우리 CPU의 PSW 똑같죠 PSW 뭐다 CPU와 무엇을 하고 있는가 현재 모든 프로그램의 상황을 기록하는 64비터로 되어 있는 단어고 CSW 뭐다 채널 스테이터스 워드 캐 가지고 현재 수행 중인 채널의 명령의 상태를 역시 파악할 수가 있고 역시 64비터로 구성이 되어 있습니다. 되겠나 이 시험에 PSW와 똑같은 기능을 하는 채널은 CSW다 그죠 실제 CCW 채널 커맨드 워드 채널 명령어 CAW 채널 어드레스 워더 채널의 명령의 번지 CSW는 채널 스테이터스 워드 즉 CPU 의 PSW하고 같은 개념 아닙니다. 이 말이고 뭐 중요한 건 아닙니다. 주기억 장치를 보면 OS가 상주해 있고 응용 프레임이 있고 만약에 채널이 있으면 채널 프레임이 응용 프레임 밑에 들어가요 그 밑에는 뭐가 들어간다 이 응용 프레임 이용될 데이터들이 들어가겠죠.

화자 1
50:52
그죠 그래서 메모리 구조다 그러니까 이 응용 프로그램은 CPU가 처리하고 채널 프로그램을 누가 한다. 채널이 처리한다는 거 채널 컴퓨터가 처리한다는 거 요렇게 정의 하시면 됩니다. 예 됐고요. 예 자 모든 게 마지막 장 함 봐야 됩니다. 예 마지막 장 함 봅시다 예 좋습니다. 예 그 사이에 치우고 마지막 장이죠. 한번 쭉 구경합시다. 그래서 입출력장치 한 2문제 예상되는데 모든 문제가 방금 보는 여기에서 다 된다는 거지 알겠나 그래서 아주 쉽다 그죠 그래서 뭐 아이오 장치 이런 걸 틀릴 수가 없습니다. 자 요건 참고로 현재 여러분의 우리 컴퓨터에 IO 장치는 저속이죠. 그래서 저속의 IO 장치와 또 CPU CPU와 메모리는 굉장히 빨라요. 고속의 CPU 사이에 속도 차를 해결하기 위한 기타 방법 그죠 자 우리가 버퍼링 있어 버퍼링 많이 들어봤지요 버퍼 버퍼링이 있고요. 스플링이 있습니다.

화자 1
51:51
스플링 스프링 2가지 방식이 있습니다. 자 버퍼링은 어떤 거냐 버퍼링은 이런 겁니다. 뭐 이게 인제 입력 장치를 하고요. 자 이게 메모리로 합시다. 메모리 야 요 장치 입력 출력 같이 해버리자 메모리다 그죠 그러면은 어 그리고 여기 시피뉴가 있답시다 시피뉴 프로세스가 여기 있어요. 응 여 현재 입력 장치에서 내가 지킬 일이 만약 에이라는 일이 있고 비라는 일이 있고 씨라는 일이 있습니다. 그죠 3가지 일이 있답시다 3가지 그리고 원래는 어떻게 되냐면 컴퓨터는요 입력장치를 통해서 에이가 메모리 올라와야 됩니다. 오죠 그죠 그럼 시피뉴가 에이를 굉장히 빠르게 처리합니다. 처리를 해요. 처리를 합니다. 그럼 처리가 끝나면 그 다음에 비가 올라와야 됩니다. 비가 산 넘고 한참 올라오겠죠. 비가 올라와야 돼요.

화자 1
52:43
자 여러분 잘 봐라 에이가 올려올 가장 많은 시간이 뭐고 CPU에서 이 시간이 제일 빠르고 여기서 그 다음 시간 제일 많이 걸리는 시간이 뭐고 주변 장치에서 아이오장치 즉 입력장치에서 메모로까지 올려오는 시간이 이 시간이 엄청 긴 시간입니다. 이 시간에 가장 많이 걸려요 자 그러면요 일을 개시한다. 금 에이가 올라오죠 에이 올라올 동안 CP면 한참 나옵니다. 왜 일이 메모리 올라와야 처리하지 언제 올라오나 막 발가락 가득하다 하면 기다려 빨리 올라옵니다. 한참 기다립니다. 올라오면 금방 처리해 버립니다. 금방 처리하고 또 비가 올라올 때까지 또 기다립니다. 이 올라오는 시간이 너무나 커 또 막 씹히면 왜가 날아가 왜 안 오노 그래 비가 올라오면 또 처리하고 금방 처리하거든. 또 인제 그 다음에 씨 올라오는데 누구도 길어요. 막 올라올 때까지 막 한참 기다리기 어 그래서 이걸 해결하자 즉 저속의 IO 장치와 고속에 CPU 사이 이런 속도 이거 엄청 CPU 아이들타임 엄청 많이 발생하잖아요.

화자 1
53:41
아이들타임 이걸 좀 줄여보자 이 말이야. 그래서 어떻게 하나 버퍼링은 뭐냐면 자 그러지 말고 메모리를 쪼개자 메모리를 하나로 보지 말고 어 이 메모리를 왜 실제 하나의 공간에는 하나의 방 기어 모아거든. 메모리를 쪼개는 거예요. 쪼개 메모리 속에 메모리를 두자 메모리 속에 메모리를 두자 메모리 속에 메모리가 뭐다 바로 버퍼입니다. 버퍼 버퍼입니다. 버퍼 메모리 속에 메모리가 버퍼예요. 그러면은 이 1개의 메모리지만 이 메모리 버퍼 조각 내놨는 거야. 그럼 뭐야? 이제 에이가 올리죠 에이 딱 올리면 CPU가 처리하죠. 그럼 CPU가 처리할 동안 또 비 올라옵니다. 일 할 동안 원래는 다 끝나고 올라와요. 비 올려옵니다. 혹시 피부가 딱 이제 기다릴라 카 올려와 있거든. 합니더 할 동안 또 이거 올립니더 속도 차를 줄여줄 수가 있죠. 그죠 요런 개념이 뭐다 버퍼링이다.

화자 1
54:38
되나 주기억장치의 메모리 속에 메모리 버퍼들을 만들어 가지고 버퍼를 만들어서 이제 데이터들을 처리할 데이터 하나씩 올립니다. 올리고 처리할 동안 또 올려오죠 이거 버퍼가 없으면 어떡 올리고 처리 끝나고 난 뒤에 또 올라와야 되니까. 한참 기다려야 되니까. 됐나 요런 개념이다. 이 말입니다. 그죠 요게 버퍼링입니다. 그래서 버퍼 주기억장치의 다시 작은 주기억장치를 만들어내는 거고요. 여기에 반해서 스플링은 뭐냐 하면 스플링 잘 들어라 자 스플링은 뭐냐 하면은 하드디스크에 또 이 메모리를 만들어야 됩니다. 큐 방식으로 큐인데 큐 자 요거 중에서 배웁니다. 큐 리스트를 만들어 가지고 자 여러분들 자 이 메모리에서 저 프린트로 인제 프린트로 프린트로 인제 내가 데이터를 출력해야 돼 예를 들면은 에이 비 씨를 출력해야 돼요. 원래 이 어 출력을 해야 됩니다. 그러면은 에이가 출력 떡 하고 또 프린트 넣었잖아.

화자 1
55:34
여러분 집에 있는 것도 9만원짜리 10만원짜리 엄청 늦게 또 출력할 수 있죠. 할 동안 또 CPU가 놀아요. 이거 빨리 보내고 해야 되는데 그다음에 또 비가 또 이렇게 프린트 끝나고 얼마나 기다려 에이가 끝날 때까지 기다려 또 이제서야 어떻게 하노 그래서 뭐다 CPU는 빨리 맹물이 있는 걸 잊어보내버립니다. 에이 비 씨 보내버려 보내버 지 딴 일을 하는 거야. 그럼 디스크에 보내버리면 여기서 그냥 출력해 버림 출력을 CPU는 관계 있나 없죠 자 다시 이야기한다. 원래는 뭐다 CPU가 A를 메모리에 보내가 자 A를 프린트로 다 뽑아야 그다음 비를 보내고 어 비가 다 뽑게 나와야 씨를 보내고 그러니까 이 뽑을 동안 씹히면 한참 기다리는 거야. 아이고 먼지 같은 게 저 프린터 저놈 봐라 저거 와저래 넣노 하고 막 계속 기다립니다. 그럼 프린트 더 다 되면 또 B를 보내가 출력을 해야 돼요. 그러니까 만약에 디스크 속의 스플러 스플링을 만들어 놓으면 어떻게 한다. 그냥 씹히면요 그 양반만 봐봐 디스크에만 디스크 고속이죠.

화자 1
56:34
보내버려 보내뿌고 난 뒤에는 출력이 되든가 안되든 여보내버릴게요 저는 딴 일 합니다. 그러면 여기서 이제 출력이 되는 거예요. 자 여러분 아래한글 같은 거 할 때 스플링 기능 있지 그지 스플 딱 이래 해 놓으면은 어 뭐 어 스풀해놓고, 스플링 기능 해놓고, 그죠 출력자 프린터는 프린터로 놀고 CPV를 딴 일을 하잖아요. 에 뭐 스플링 기능 안 해 놓으면 출력될 동안 여러분들 요즘에도 무식하게 출력을 하는 동안 딴 거 안 한 사람 있나 대부분 출력시켜 놓고 우리는 여기서 다시 인터넷 하고 하잖아. 근데 수원자는 프린트 출력할 때까지 가만히 있는다고 이 문디 같은 게 스플링 기능을 이해해라 문디야 어 요즘 그런 사람 없다. 왜 스플링 기능이 윈도우는 다 잡아주기 때문에 자동으로 여러분들 출력 딱 해놓고, 출력해 놓고는 딴 거 하면 됩니다. 딴 거 CPU가 딴 일 나도록 뭐 다시 아래한글 작성을 한다든지 게임을 한다든지 그렇죠. 여러분들 강의를 듣는다든지 딴짓하면 돼요. 어 근데 옛날엔 안 그랬단 이 말이에요. 요즘 그런 빛이 없다. 알겠나 IGS 분리 기능이 다 있는 겁니다.

화자 1
57:33
되겠나 아 쉽다요 그래서 인제 이 버퍼링은 뭐다 주기억장치의 메모리를 만들어지는 거고요. 스플링은 보조 기억장치 즉 하드디스크에 만들어지는 거겠죠. 그죠 운영 방식을 버퍼링에 단일 하나씩 하나씩 뽑아오고 스플링은 다중 다중처리 한꺼번 10분에 보내서 처리할 수가 있습니다. 그리고 버퍼링은 하드웨어 하드웨어를 구현하는 거다 스플링은요, 소프트웨어로 아래 안 걸려서 스프링 자동 잡아줍니다. 스플링 기능 소프트웨어로 하는 거다 그죠 되겠습니까? 이 버퍼링과 스플링이 뭐다 저속의 아이오 장치와 아주 빠르게 일을 하는 고속의 전자 장비인 CPU 사이에 속도 차를 해결해 주기 위한 하나의 기법들이죠. 기법이다. 기법 그래서 여러분들 무식하게 출력할 동안 컴퓨터 꼼짝 마라 이런 건 없제 이해되나 그래서 요 버퍼링 스프링 잘 알아 놓으십시오. 이해 되니까. 좋습니다. 자 오늘 여러분들 빠르게 아요. 장치 그죠 정리했습니다. 아요.

화자 1
58:32
장치에서 최대 2문제 또 많이 나오면 3문제 나온다 방금 했는데 이 안에서 부처님 손바닥이다. 그죠 방금 내가 강의한 안에서 다 했다. 중요한 거 다시 정리하자 뭐자 오케이 현재 컴퓨터의 주변 장치 주로 주변 장치 가면은 아이오 장치다 그죠 아이오 장치와 CPU 내부에 즉 메모리와 CPU 내부 장치잖아요. 이놈하고 차이가 나더라 이 차이가 나 그 차이가 뭐더라 냉하지 안나더라 속도 차이가 많이 안 나더라 CPU와 메모리는 10의 마이너스 난 고속으로 해버리지만 아 요 장치는 10의 마이너스 밀리세컨드로 늦어요. 그리고 정보를 취급하는 단위가 뭐다 시핑유 하고 시피유 메모리는 32비트로 하는데 IO 장치는 1바이트 8비트씩 하더라 이 말이야.

화자 1
59:17
그러고 동작의 자율성도 메모리는 CPING에 의해서 자율되지만 IO 장치는 집할 지연대로 그리고 오류 발생률도 IO 장치가 훨씬 에러가 많이 터져요 이런 예 가지 차이가 나 가지고는 대화가 되나 안 되나 DATA 통신이 되나 안 되나 안 됩니다. 여러분 서로 다르면 대화가 안 되잖아요. 여러분 미국 사람하고 여러분 대화되나 안되제 우리 병태는 된다고 된다고 되는지 안되나 보자 대화가 안 되죠. 뭐 다른 여러분들 초등학생 아니지 초등학생하고 대화되겠다. 유치원생하고 대화되나 안 됩니다. 예 여러분 지금 나하고 대화되기 때문에 강의가 되는 거야. 현재 여러분 내 말 뭐 알아 들으면 내가 지금 여기 초등학교

화자 2
1:00:00
이나 여기 유치원생 갖다 놓으면 강의 이래 하면 안 됩니다. 자 전국에 계시는 사랑하는 유치원생 여름 보세요. 요게 맞지요 1강입니다. 에 그니까 서로 다르면 안 돼요. 여러분하고 내하고 비슷해야 이 스승과 제자가 비슷해야 강의야 명강이여 내가 지금 전부 영어로 강의해 봐라 너 알아듣겠나 다른데 어 인도오피셜 오늘의 온 에피디오 뭐 알아듣잖아. 그래서 나를 닮아라 두사물책 하는 게 그거야. 문제더라 이 스승을 닮아야 여러분들 합격하는 거야. 아이 아시겠습니까? 그래서 어쨌든지 서로 다르면 대화가 안 되니까. 그러면 누군가가 이 다른 점을 보완 완충 해결해 줘야 되잖아. 그걸 뭐라 카노 인터페이스야 인터페이스 알게 나 인터 인터페이스 중매제이 스로 다른 두 장비 두 소프트웨어 사이에서 그 차이점을 보완 완충해주는 걸 한마디로 뭐라 한다. 인터페이스를 한다면, 오늘날 IO 장치와 메모리는 차이가 있기 때문에 반드시 누가 들어와야 되노 중매제의 인터페이스가 들어와야만이 뭐가 된다.

화자 2
1:01:00
입출력이 된단 말이야. 그래서 오늘날 IO 방식은 철저한 중매제의에 의한 IO 전 인터페이스에 의한 아이오다 이 말이야. 되겠어요. 그래서 그 아이오 제어 방식을 몇 가지다 4가지 프로그램에 의한 아이오 그렇지 그다음에 인터렉트에 의한 아이오 그렇죠. DMA에 의한 아이오 채널이라는 중매재에 의한 아이오 4가지가 시험에 나오는 거 아니야. 고게 다다 그게 다다 그 원리만 알면은 어떤 문제 나와도 확실하다 이 말이야. 되겠어요. 대체 아효 장치 2문제 3문제 끝 끝났습니다. 자 오늘 이렇게 해서 아효장치 시원하게 정리하고요. 자 내일은 아주도 재미있는 메모리 세계 메모리 메모리로 들어갑니다. 예고편 해줬다 자 내일 여러분들 또 다시 메모리를 가지고 다시 한번 만나 뵙기를 약속드리며 오늘은 여기까지 하겠습니다.

728x90
반응형
posted by 아이윤맨
: