CS311 Computer Organization

Download Report

Transcript CS311 Computer Organization

컴퓨터 구조학
정보보호학과
강의 내용















1. 서론
2. 컴퓨터의 논리 회로
3. 정보의 표현
4. 연산
5. 기억 장치
6. 중앙 처리 장치
7. 인스트럭션 세트(Instruction Set)
8. 단축 인스트럭션 세트 컴퓨터(Reduced Instruction Set Computer)
9. 제어 장치
10. 마이크로프로그램과 제어 장치(Microprogram and Control Unit)
11. 인터럽트(Interrupt)
12. 입출력 시스템
13. 병렬 처리 컴퓨터
14. 인스트럭션 수행 파이프라인(Instruction Execution Pipeline)
15. 고성능 기억 체제
제 1 장 서론
제1장 서론
강의 내용




컴퓨터의 특성
알고리즘의 구현
외부 프로그램 컴퓨터와 프로그램 내장형 컴퓨터
컴퓨터의 세대
컴퓨터와 인간
정보 수집
정보 처리
정보 저장
처리 결과
인간
5감
시각
청각
후각
촉각
미각
신경
두뇌
느낌
이동
컴퓨터
문자 인식
음성 인식
키보드(keyboard)
중앙 처리 장치(연산 장치)
기억 장치
필기 문자,그림,음,
물체의 이동
컴퓨터 시스템의 변천
 입력 장치
 음성, 문자
 영상
 출력 장치
 프린터, 영상, 음성
 로봇
 기억 장치
 용량, 접근 시간
 처리기
 처리 기능, 처리 시간
 사용의 편의
컴퓨터의 응용 분야
 과학 기술적 계산 응용
 복잡한 함수의 계산에 이용
 빠른 속도와 정밀한 계산
 자동차, 선박, 항공기 등의 설계 일기 예보
 환경, 운송, 생체, 화학 물질의 합성, 전쟁상황의 시뮬레이션
 사무 자동화 응용
 컴퓨터의 문자 처리 능력과 많은 양의 정보를 동시에 처리 기능 이
용
 경영정보시스템
 사무자동화시스템
 정밀 기계의 제어 응용
 컴퓨터의 신속하고 오류가 없는 계산 능력을 이용
컴퓨터의 구분
 퍼스널 컴퓨터
 마이크로 컴퓨터
 미니 컴퓨터(슈퍼 미니 컴퓨터)
 범용 컴퓨터(메인프레임 컴퓨터)
 슈퍼 컴퓨터
 퍼스널 컴퓨터 : 개인용 컴퓨터로 혼자 사용하도록 만든 컴퓨터
 마이크로 컴퓨터 : 서너명 소수 인원이 사용할 수 있는 컴퓨터
 이 들의 공통점 : 중앙 처리 장치가 마이크로프로세서
 마이크로 프로세서 : 컴퓨터의 중앙 처리 장치를 하나의 반도체 칩으
로 내장
 1970년 초반 : 최초의 마이크로프로세서 개발
 1970년 중반 : 마이크로 컴퓨터 개발
 1970년 후반 : 퍼스널 컴퓨터 등장
 1980년 퍼스널 컴퓨터의 발달로 마이크로 컴퓨터 사라짐
 팝 톱 컴퓨터, 노트북 컴퓨터(랩 톱 컴퓨터), 테스크 톱 컴퓨터, 테스
크 사이드 컴퓨터
 미니 컴퓨터 : 단위 부서와 같은 작은 규모의 조직이 사용하는 컴퓨터
 작은 규모의 연구실에서 연구원들의 전용 컴퓨터
 미니 컴퓨터의 출현 : 1960년 후반
 과학 기술용 수치적 계산과 정밀 기계의 제어 응용을 목적
(사무자동화 : 이용안함)
 슈퍼 미니 컴퓨터
 사무 자동화에 까지 이용
 컴퓨팅 서버, 파일 서버, 네트워크 서버 등으로 사라짐
 범용 컴퓨터 : 큰 기관의 전 직원이 공동으로 사용할 수 있는 컴퓨터
 1960년 중반부터 본격적으로 사용(컴퓨터 이용이 보편화)
 외형뿐만 아니라 성능, 이용자 수, 응용의 복잡도 등이 크다
 컴퓨터 설계 기술의 발달, 부품 기술의 발달로 인하여 슈퍼컴퓨터 등
장
 슈퍼 컴퓨터
컴퓨터
: 하드웨어와 소프트웨어
 하드웨어 : 각종 부속품들로 조립되어 있는 유형적인 물체
 외부 포장 및 세탁 용기
 모터
 파이프와 발브
 전기 배선
 스위치, 제어 손잡이, 지시등, 등
 소프트웨어 : 운영 절차에 따라 조작원이 하는 일과 같은 무형적인 작업
 운영 절차(operation procedure)
 응용 절차(application procedure)
컴퓨터와 기계
- 자동 세탁기의 소프트웨어  운영 절차(Operation Procedure)
 세탁 용기에 급수하기 위하여 급수 발브를 개방
 적절한 수위에 도달하면 급수 발브를 폐쇄
 세탁 용기를 회전시키기 위하여 모터를 작동
 세탁이 끝나면 모터의 스위치를 차단
 세탁한 물을 배수하기 위하여 배수 발브를 개방
 배수 발브를 폐쇄
 세탁 용기에 깨끗한 물을 급수하기 위하여 급수 발브를 개방
 급수 발브를 폐쇄
 세탁 용기를 회전시키기 위하여 모터를 작동
 배수 및 회전 건조를 위하여 배수 발브를 개방
 모터의 스위치를 차단
컴퓨터와 기계
- 자동 세탁기의 소프트웨어  응용 절차(application procedure)
 전원 스위치를 킴
 제어 판넬에 원하는 제어를 위한 조작
 세탁기 뚜껑을 열음
 세탁물을 세탁 용기에 넣음
 세제를 넣음
 뚜껑을 닫음
 시작 스위치를 킴
 세탁 완료 후 세탁물 뚜껑을 열고, 세탁물을 꺼냄
컴퓨터와 기계(특성)
일반적인 기계나 전자 기계를 막론하고, 컴퓨터를 포함한 기
계에는 운영 절차와 응용 절차가 필요함
 운영 절차(Operation Procedure)
 일반적으로 컴퓨터를 포함한 기계에는 하나의 운영 절차만 있다
 응용 절차(Application Procedure)
 기계 - 자동 세탁기
유일한 응용 분야 -세탁만 할 수 있음
 컴퓨터
다양한 응용 분야 -주요 응용 분야
» 사무 자동화
» 과학 기술용 계산
» 자동 제어
» 업무 전산화
알고리즘
알고리즘(Algorithm)
기계가 이행하는 작업을 기계의 일부분이 유한한 시간 내에 이행할
수 있는 유한한 수의 작은 작업들의 순서로 나타낸 것을 의미
예: 자동 세탁기의 응용 알고리즘
[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
전원 스위치를 킴
제어 판넬에 원하는 제어를 위한 조작
세탁기 뚜껑을 열음
세탁물을 세탁 용기에 넣음
세제를 넣음
뚜껑을 닫음
시작 스위치를 킴
세탁 완료 후 세탁물 뚜껑을 열고, 세탁물을 꺼냄
알고리즘의 구현
3 가지 구현 방법:
프로그램(소프트웨어) : 프로그램 이용
마이크로프로그램(펌웨어; Firmware)
논리회로(하드웨어) : 기계나 전기 회로를 이용
소프트웨어
속도
가격
변경 비용
확장성
저속
저가
저가
쉬움
펌웨어
중간
중간
중간
중간
하드웨어
빠름
고가
고가
어려움
펌웨어(firmware)
 마이크로프로그램의 집합
 소프트웨어의 특성과 ROM에 저장되어 있기 때문에
하드웨어적인 특성을 갖고 있다.
 따라서 소프트웨어 또는 하드웨어로 실행되는 기능의
일부를 펌웨어로 구현하는 경우가 많다.
 하드웨어의 기능이 펌웨어로 구현되면 속도는 느리지
만 쉽게 변경할 수 있는 융통성이 있다
 소프트웨어의 기능을 펌웨어로 바꾸어 구현하면 쉽게
수정하기는 어렵지만 속도가 빨라진다.
 빠른 처리속도를 요하는 경우 펌웨어로 처리
알고리즘의 구현
 개발 후에 수정/변경이 불필요한 프로시듀어
일반 기계
• 하드웨어로 구현하는 것이 유리함
• 특히 간단한 프로시듀어의 경우 유리함
• 속도가 빠른 점
 자주 변경되는 프로시듀어
컴퓨터의 응용 프로시듀어
• 소프트웨어로 구현하는 것이 유리함
• 펌웨어로 구현하는 것이 유리한 경우도 있음
• 변경의 용이성 등 융통성이 있는 점
• 가격이 유리한 점
컴퓨터의 프로시듀어 구현
- 운영 절차 -
 운영 절차(Operation Procedure)
 컴퓨터에는 보통 시스템 내에 있는 여러 가지 자원을 관리하며, 컴퓨터의 동
작을 감시하는 운영 프로시듀어가 있다.
 이를 운영 체제(OPERATING SYSTEMS) 혹은 OS라 부른다.
 OS는 컴퓨터 사용자가 작성하지는 않는다.
 사용자가 사용하고 있는 컴퓨터 내에는 하나의 OS만 존재한다.
 그러나, 하나의 컴퓨터에는 하나 이상의 OS가 사용될 수 있다.
 OS는 시스템 프로그래머에 의하여 개발된다.
 OS는 여러 개의 프로그램으로 구성되어 있다.
컴퓨터의 프로시듀어 구현
- 응용 프로시듀어 -
 응용 프로시듀어
 컴퓨터에는 보통 하나 이상의 응용 프로시듀어가 있다.
 컴퓨터는 다양한 문제 풀이에 사용된다.
• 과학 기술용 계산
• 사무 자동화
• 업무 전산화
• 공정 제어
 응용 프로시듀어는 소프트웨어로 구현하며, 하드웨어로 구현하는 경우
는 거의 없다.
 응용 프로그램
 응용 소프트웨어 - 여러 개의 프로그램으로 구성된 경우
 응용 프로시듀어를 소프트웨어로 구현하는 경우
 간단한 응용 프로그램은 사용자가 개발
 복잡한 응용 소프트웨어는 응용 프로그래머가 개발
OS와 응용 프로그램
응용
프로그램
컴퓨터
응용
프로그램
응용
프로그램
응용
프로그램
응용
프로그램
응용
프로그램
운영 체제
응용
프로그램
두 종류의 컴퓨터
 프로그램 내장형 컴퓨터
(Stored Program Computer)
기본적인 구조 : 1946년 폰 노이만이 제안
초기 컴퓨터 : 전자 회로로 만듬(현재의 컴퓨터와 큰 차이)
운영 체제와 응용 프로그램이 컴퓨터의 기억 장치 내에 기
억된 후 사용 (현재의 컴퓨터)
 외부 프로그래밍 컴퓨터
(Externally Programmed Computer)
프로그램 내장형 컴퓨터가 개발되기 전에 사용
두 종류의 컴퓨터 구조
 외부 프로그래밍 컴퓨터(Externally Programmed Computer)
입력 장치
출력 장치
연산 장치
임시
기억 장소
시퀀서
 프로그램 내장형 컴퓨터(Stored Program Computer)
중앙 처리 장치
입력 장치
출력 장치
연산 장치
연산 장치
제어 장치
부속 시스템의 기능
 제어장치:
컴퓨터 내의 모든 부속 시스템들이 프로그램된 대로 동작하게 하는 장치
 외부 프로그래밍 컴퓨터
* 시컨서(sequencer) : 외부 프로그래밍 컴퓨터의 제어장치
* 시컨서의 전자회로가 바로 프로그램
* 프로그램을 입력 장치를 이용하여 읽어드리는 것이 아니라 시컨서의 회로
를 설정하는 것이 곧 프로그램을 작성
 프로그램 내장형 컴퓨터
* 프로그램이 기억 장치에 기억
* 중앙 처리 장치에 의하여 읽어낸 기억 장치에 기억된 프로그램의 각 인스트
럭션에 따라 이를 수행에 필요한 제어 신호를 발생, 컴퓨터 내의 각 부속 시
스템 제어
 입력장치 : 컴퓨터를 이용하는데 필요한 정보를 컴퓨터에 입력하기 위한 장치
 외부 프로그래밍 컴퓨터
* 한번에 하나의 데이터만을 입력 장치에 준비된 순서대로 입력
 프로그램 내장형 컴퓨터
* 프로그램과 데이터를 한꺼번에 입력하여 기억 장치에 기억
 출력 장치:
컴퓨터에 의하여 처리된 정보를 외부에 전달하는 장치
 외부 프로그래밍 컴퓨터
* 매번 컴퓨터에 의하여 하나의 처리된 결과가 생성될 때마다 즉시
출력 장치에 의해 출력
 프로그램 내장형 컴퓨터
* 프로그램의 수행 중에 생성되는 처리 결과를 기억 장치에 기억
* 프로그램의 수행이 완료된 후 모든 결과를 한꺼번에
 처리 장치와 연산 장치
 유사한 기능을 가진 처리기로서 기본적으로 덧셈 기능이 있음
 두 컴퓨터의 차이 : 기억 장치
 프로그램 내장형 컴퓨터에서의 용도
* 운영 체제의 일부, 사용 중인 응용 프로그램과 그 데이터, 중간 결
과 등을 기억 시키는 기억 장소
 외부 프로그래밍 컴퓨터
* 기억 장치가 없다
* 제어 장치인 시컨서 두어 데이터 입력 장치를 사용하여 읽고
인스트럭션 수행에 필요한 부속 장치 제어
외부 프로그래밍 컴퓨터
임시 피연산자와 연산 결과 저장을 위한 소용량 임시 기억장치
 프로그램과 데이터를 기억시켜 놓을 기억 장치가 없음
데이터를 재사용 할 수 없음
다른 데이터에 대하여 같은 연산을 할 수 없음
브랜치와 조건부 브랜치 인스트럭션이 없음
서브루틴이 불가능하거나 구현이 어려움
프로그램 내장형 컴퓨터
특징 : RAM으로 구현한 주기억 장치의 도입
 랜덤 액세스(random access) : 주소에 의하여 원하는 정보가 기억된 곳
 각 기억 장소에는 고유의 번호, 즉 주소(address)가 부여됨
 주소(Address)
•
•
•
•
•
주소를 사용하여 기억되어 있는 정보를 읽음
기억되어 있는 모든 정보의 접근 시간(Access Time)은 동일함
최소 기억 장소 : 비트(bit), 바이트(byte:8비트), 단어(word:1,2,4 혹은 8바이트)
랜덤 액세스 기억 장치를 만들 때 : 2n개의 연속된 기억 장소를 만듬
(예)n=10 ; 1024개의 기억 장소 존재 “ 1K바이트 RAM칩 “
 프로그램과 데이터를 모두 기억 장치에 기억시킴
 데이터에 대하여 연산을 하듯이 프로그램의 인스트럭션에 대하여도 연산을 할 수 있음
 기억 장치에 기억되어 있는 데이터와 프로그램의 인스트럭션을 재사용 할 수 있음
 기억 공간 사용이 효율적
 브랜치와 조건부 브랜치 인스트럭션의 구현이 용이함
 서브루틴의 구현이 용이함
프로그램 내장형 컴퓨터의 구성
 연산 장치(arithmetic logic unit : ALU) : 연산을 하기위한 장치
 제어 장치(control unit)
 연산 순서에 따라 연산 장치의 동작 순서를 제어 하기 위한 장치
 기억 장치(main memory 또는 memory)
 연산 순서를 프로그램의 형태로 기억
 입력 장치(input device) : 입력 기능을 하기 위한 장치
 출력 장치(output device) : 출력 기능을 하기 위한 장치
기본적인 구성
제어 장치
중앙 처리 장치
입력 장치
주 기억 장치
보조 기억 장치
출력 장치
(1) 입력장치(input device)
 입력 매체에 기록된 프로그램과 데이터를 컴퓨터 내부로 읽어
들이는 장치
 읽어 들인 정보를 주 기억 장치나 중앙 처리 장치로 보냄
 입력 장치의 종류
* 문자 및 기호 입력 장치 : 키보드(keyboard)
* 그림 입력 : 디지타이저(digitizer)
* 음성 입력 장치 : 마이크(microphone)
 공정 제어 분야에 응용되는 경우
* 전압 혹은 전류, 압력, 온도, 습도, 명암, 각도 등 다양한 정보를
제공하는 입력 장치가 사용
(2) 주기억 장치(main memory, primary memory) : 5장
 수행되고 있는 프로그램과 이를 수행에 필요한 데이터를 기억하고
있는 장치
 중앙 처리 장치와 직접 정보 교환
(3) 보조기억장치(auxiliary storage, secondary storage) :
5장
 주기억 장치의 기억 용량만으로 프로그램과 데이터를 모두 기억시키기
에 불충분한 경우 보조 기억 장치를 둠
 가까운 장래에 필요한 프로그램이나 데이터를 파일(file) 형태로 기록
 주기억 장치보다 용량이 크다
 보조 기억 장치의 종류
* 자기 디스크, 자기 테이프
* 디스크, 플로피 디스크, 카세트 테이프, 테이프 카트리지
(4) 중앙 처리 장치(central processing unit, CPU) : 6장
 연산 장치(arithmetic and logic unit) : 연산 기능 수행
 제어 장치(contral unit) : 제어 기능 수행
 레지스트(register) : 프로그램의 수행에 사용되는 데이터와 제어 정보
보관
(5) 출력 장치(output device)
 컴퓨터 내부에서 처리된 결과를 사람이 알아보거나 사용할 수 있는 출
력 매체로 보내는 장치
 CRT 모니터
 프린터 : 라인 프린터, 문자 프린터, 페이지 프린터 등
컴퓨터 소프트웨어
 응용 프로그램
 주어진 문제를 직접 푸는 프로그램(많은 경우 사용자가 직접 작성)
 사용할 수 있는 언어의 종류가 많으나 고급 언어가 많이 쓰임
 번역기 : 응용 프로그램의 작성에 쓰인 언어에 따라 다름
 어셈블리어의 경우 : 어셈블러
 고급 언어인 경우 : 소프트웨어에 의하여 기계어로 번역(컴파일러)
 로더(loader)
 기계어로 번역된 프로그램이 로더라는 소프트웨어에 의하여 수행될 수 있는 형태로 기
억 장치에 저장
 운영 체계(operating system)
 컴퓨터 내의 프로그램과 데이터 관장
 프로그램의 효율적인 수행을 위하여 컴퓨터 시스템 내의 하드웨어와 소프트웨어를 포함
한 모든 자원을 관리하는 소프트웨어
 라이브러리 프로그램(library program)
 응용프로그램을 위하여 시스템 내에 미리 전문가가 작성한 흔히 사용하는 프로그램
 유틸리티 프로그램(utility program)
 컴퓨터와 주변 장치 또는 컴퓨터와 사용자간의 정보 교환을 용이하게 하는 프로그램
 고장 진단 프로그램(diagnostic program)
 컴퓨터의 고장 진단 등 유지 보수를 위하여 마련된 프로그램
정보의 표현
 컴퓨터의 계산 기능
 전자 회로로 만든 중앙 처리 장치에 있음
 정보를 전기적 신호로 표현되어야만 중앙 처리 장치에 의하여 처리 됨
 정보를 전기적 신호로 나타내는 방법(두 가지)
 전류에 의하여 나타내는 방법
• 전류 흐름의 방향 : 양방향과 음방향이 각각 서로 다른 정보를 나타내는 경우
• 전류의 유무 : 전류의 흐름과 차단이 서로 다른 정보를 나타내는 경우
• 전류의 값 : 나타낼 수 있는 정보의 종류가 많음
 전압에 의하여 나타내는 방법
• 회로가 다룰 수 있는 전압의 범위를 몇 개의 대역으로 나누고
• 각 대역의 전압이 서로 다른 정보를 나타내게 함
 정보를 나타내는 방법
 아날로그(analog) 신호
: 정보를 직접 전류나 전압의 값과 관련 지어 나타내는 방법
 디지털(digital) 신호
: 정보를 부호화한 후 그 부호를 전류나 전압으로 나타내는 방법
 아날로그 신호
 시간에 따라 연속적으로 변화하는 전류 또는 전압을 의미
• 정보의
영역은
• 정보를
• 회로의
영역은 대단히 큰 반면 전자 회로가 안전하게 다룰 수 있는 전류나 전압의
크지 못함
나타내는 경우 서로 다른 정보는 미세한 차이의 아날로그 신호로 나타냄
노후화 및 잡음 등으로 전류나 전압의 값에 미세한 변화도 정보로 오인
 아날로그 신호의 예
• 음향 기기의 스피커에 가해지는 음향을 나타내는 신호
• 텔레비전의 브라운관에 가해지는 화면의 명암과 색상을 나타내는 신호
• 컴퓨터에도 아날로그 신호를 사용 : 아날로그 컴퓨터
 아날로그 컴퓨터
• 아날로그 신호를 다루는 계측 기기와 접속하여 사용하는 컴퓨터
• 컴퓨터 응용기술의 발달, 디지털 신호의 정확성, 하드웨어의 가격하락으로 사라짐
 디지털 신호





컴퓨터의 회로에서 사용되는 신호
디지털 정보 : 정보를 디지탈화한 부호로 표현
디지털 신호 : 정보를 신호화한 것
디지털 회로(digital circuit) : 디지털 신호만 취급하는 전자 회로
2진 디지털 회로(논리회로) : 2진 디지털 정보를 다루는 2진 디지털 신호만 취
급하는 전자 회로
 디지털 컴퓨터(컴퓨터) : 논리 회로로 만든 컴퓨터
컴퓨터 하드웨어의 기능
 컴퓨터 하드웨어 : 논리 회로로 구성
 조합 논리 회로 : 디지털 정보의 처리 기능을 가진 회로
 순서 논리 회로 : 디지털 정보의 기억 기능을 가진 회로
 조합 논리 회로(combinational logic circuit)
 기본 회로 : 게이트(gate)라는 스위치
 스위치에서 스위치를 통하여 흐르게 하거나 스위치에 의하여 차단되는 전류는 디지털
정보에 해당하는 디지털 신호
 조작은 컴퓨터 회로 내의 전류에 의하여 조작
 전류는 컴퓨터의 인스트럭션에서 도출되는 제어 신호
 순서 논리 회로(sequential logic circuit)
 기본 회로 : 플립플롭(flip-flop)
 플립플롭 : 1비트를 기억시킬 수 있는 장치 또는 회로(단위 디지털 정보)
* 디지털 정보의 1비트 내용, 즉 0이나 1에 해당하는 두 가지 안정된 상태의 회로
* 회로의 외부에서 새로운 정보, 즉 신호를 가하지 않는 한 변하지 않음
 레지스터(register)
 컴퓨터 중앙 처리 장치내에서 몇 개의 플립플롭을 연결하여 사용
 한 레지스터 : 8배수의 플립플롭으로 구성(8, 16, 24, 32 등)
 인스트럭션 (instruction) : 7장
컴퓨터의 역사
- 선사 시대  바퀴형 - Pascal, Leibnitz
-수치 계산용
9
1
8
2
7
4
3
6
5
 계산기 구조
 10진수의 0부터 9까지의 숫자를 나타낸 10개의 톱니가 달린 톱니바퀴로
구성
 톱니바퀴에 여러 개가 같은 축에 설치
 각 톱니바퀴는 10진수의 자리를 나타냄
 계산이 가능
바퀴를 사용하지 않은 계산기
 천공형 카드(Punched Card)
 숫자 혹은 부호를 나타내는 구멍을 뚫은 카드 사용
 Hollerith, Hollerith 코드
 수치 계산과 데이터 처리용
 전자 컴퓨터
 에니악 “ENIAC” (Electronic Numerical Integrator and
Calculator)
• 1946년 애커트와 모클리가 개발
• 최초의 프로그램 내장형 컴퓨터
 18,000 개의 진공관, 30t 이상, 1,500 ft2
 10 자리 10진수 계산: 0.2msec(millisecond ; 0.001초)
 기본적인 부품 비교
 애니악 : 진공관
 현재의 컴퓨터 : 집접 회로(IC)(기본 부품 : 트렌지스터)
• 진공과의 크기 : 트렌지스터의 100만배
-제1세대 컴퓨터(1951~1958) 회로를 진공관으로 만들었음
 구조
• 프로그램 내장형 컴퓨터에 있는 부속 장치를 모두 가지고 있음
• 중앙 처리 장치 내에 연산용 데이터 레지스터가 있음
: 누산기(accumulator “AC”)
• 주기억 장치로 자기 드럼(magnetic drum)을 사용
• 자기 드럼
* 외부에 자성 물질을 입힌 축을 중심으로 회전하는 원주형 물체와 원주의
주위에 밀착된 헤드(head)로 구성된 기억장치
* 헤드 : 자기 드럼에 정보를 기억시키거나 이로부터 정보를 읽는 일
 특징 : 프로그래밍 언어 개발
 초기
• 상징적 어셈블리어(symbolic assembly language) 개발
 후기
• 고급 프로그래밍 언어(high-level programming language)
: FORTRAN 언어 개발
• 어셈블러(Assembler) 와 컴파일러(Compiler) 개발
 UNIVAC I은 미국 인구조사에 이용되었음
-제2세대 컴퓨터(1959~1964) 반도체 부품을 사용
트랜지스터와 다이오드
 대표적인 컴퓨터 : IBM 7090
 특징
보편적으로 AC를 가지고 있음
몇몇의 컴퓨터 : AC 외에 서 너 개의 레지스터를 가짐
* AC : 연산 결과의 임시 저장 장치로의 용도로 국한
* 레지스터 : 연산 결과의 임시 저장 장치 뿐만 아니라 주소까지 기억하는 중앙 처
리 장치 내의 기억 장치
 자기 코어(Magnetic Core) : 주기억 장치에 사용
* 가격에 무리한 부담이 없이 큰 용량의 랜덤 액세스가 가능한 주기억장치 구현
* 크기가 미세한 자성체로 만든 반지 모양
* 가느다란 절연된 도선에 꿰어 인쇄 회로 기판(Printed Circuit Board: PCB)
에 설치
 자기 디스크와 자기 테이프 : 보조 기억 장치로 사용
* 랜덤 액세스는 불가능
* 자기 코어보다는 느리지만 훨씬 큰 용량을 저렴한 가격으로 제공
 연산 알고리즘의 개량
덧셈 알고리즘의 덧셈 시간은 이론적인 최소 한계에 도달
-제3세대 컴퓨터(1964~1969) 부품으로 집적 회로(Integrated Circuit: IC)를 사용
집적 회로를 중앙 처리 장치에 사용 시작
집적 회로를 사용한 컴퓨터 : IBM S/360(3세대 대표 컴퓨터)
소규모 집적 회로(Small Scale IC: SSI)
 초기의 컴퓨터들은 자기 코어를 주기억 장치에 사용하였으나, 후기의 컴퓨터
에는 반도체 기억 장치를 사용
 범용 레지스터(General Purpose Registers: GPR)를 사용
 범용 인스트럭션 세트(General Purpose Instruction Set: CISC) 포함
 마이크로프로그램으로 구현한 제어 장치(Microprogrammed Control Unit)를
사용
 다중 프로그래밍(Multiprogramming)과 시분할(Time-sharing) 운영 기법의
개발 : 효율적인 중앙 처리 장치 이용 방법
 계열 컴퓨터(Computer Family design) 설계 기법의 도입
IBM S/360 계열, CDC 6000 계열
 미니컴퓨터(Minicomputer)의 등장
DEC의 PDP 8, PDP 9
-제4세대 컴퓨터(1970~
)-
 중규모 집적 회로(Medium Scale Integrated Circuit: MSI)를 사용
 반도체 기억 장치를 사용
 고성능 기억 체제의 개발
가상 기억 체제(Virtual Storage System)
캐쉬(Cache) 기억 장치 시스템
 마이크로프로그램 가능한(microprogrammable) 컴퓨터 등장
 수퍼 컴퓨터(supercomputer)의 등장
파이프라인 처리(pipeline processing), 배열 처리(vector processing)
기법 및 처리기 개발
Cray
 미니컴퓨터(Microcomputer)의 등장
Apple II, IBM PC/XT, PC/AT, PS2, Macintosh
 범용 컴퓨터-IBM S/370
-Future Generation Computers1980년대 초반
초대규모 집적 회로(VLSI) 기술의 발전
병렬 컴퓨터 구조의 발전
하나의 컴퓨터 시스템 내에 수 십에서부터 수만 개의 처리기를
포함할 수 있는 기술 수준
- 수많은 처리기와 기억 장치들 사이에 신뢰도 높은
통신을 제공하기는 매우 어려움
- 수많은 하드웨어 자원의 활용을 극대화하기는
매우 어려움