컴퓨터 구조 14 : 병렬 처리, 멀티 프로세서 Serial Process system 현재의 CPU가 하나뿐인 시스템 컴퓨터 처리가 필요한 전 분야에 걸쳐 더 나은 성능 개선 요구가 계속 제기되고 있음. 기계적, 논리적 프로세싱에 있어서는 가장 효율적임. 병렬 처리 Parallel Process system(병렬 처리 시스템) 동시에 여러 명령, 작업들을 실행할 수 있는 병렬 처리 시스템 병렬 처리 소프트웨어(병렬 운영체제, 병렬 컴파일러, 메모리 공유)가 계속 발전하고 있으므로 병렬 구조 개발 여건을 제공하고 있음. 1 : 다중 장치 구조 다수의 CPU로 동시에 여러 개의 작업을 병렬로 처리할 수 있는 시스템. 특징 : 공간적 병렬성 2 : 파이프 라인 구조 다수의 작업을 각기 다른 실행 단계에서 병..
시스템 BUS, I/O 장치 제어 시스템 BUS CPU에 비해 입출력 장치들이 느리고, 직접 컨트롤하기에는 입출력 장치들이 너무나 다양하므로 이것들을 중간에서 제어하는 역할을 하는 시스템 BUS를 고안해 냈다. 많은 레지스터들 사이에서 정보 전송을 위한 경로 역할을 함 한 번에 하나의 전송만이 이루어지도록 제어신호를 이용해 레지스터를 선별하는 공통의 버스를 이용함. 외부 주변 장치(입출력 장치) 및 통신의 주체로서 정보의 입출력을 관장함. 1 : 메모리 버스 데이터, 주소, 읽기/쓰기 정보 전송 2 : I/O 버스 입출력 장치로 정보 주고받음. 3 : 데이터 버스 시스템 모듈 간의 데이터 이동 경로 제공. 주로 32 ,64, 128 또는 그 이상의 분리된 선들로 구성. 선의 수는 한 번에 전송할 수 있는..
캐시 메모리, 가상 메모리, 메모리 관리 하드웨어 캐시 메모리 빠른 CPU 처리 속도와 상대적으로 느린 메인 메모리에서의 속도 차이를 극복하는 중간 버퍼 역할을 함. 데이터의 임시 보관소. 속도가 빠른 CPU와 느린 RAM 사이에서 오는 병목 현상을 해소하기 위해 사용됨. 메인 메모리보다 동작 속도가 더 빠르고 컴퓨터 시스템 속도 향상에 중요한 역할을 함. 캐시 메모리 Mapping Function CPU가 메모리 주소를 사용해 메모리로 데이터를 받으려고 한다. 메모리 관리 장치(MMU)는 메모리가 이해할 수 있는 물리 주소로 변환을 해준다. 각 주기억 장치 블록이 어느 캐시 라인에 적재될 것인지 결정해주는 방식을 mapping이라고 한다. 직접 매핑(Direct Mapping : 직접 사상) : 메모리..
메모리 계층 구조 메모리 시스템의 이해 1) 지역성의 원칙 컴퓨터 역사에 관한 리포트를 쓰기 위해 도서관에 왔다. 컴퓨터 분야 책 몇 권을 내 자리로 들고 온다. 책상 위에 책을 쌓아놓고 수시로 그 책을 참고한다. 책상에 책이 몇 권 없지만 빠르게 참고할 수 있다. 이때 책상의 역할은 컴퓨터의 메인 메모리, 혹은 캐시 메모리의 역할과 같다. 이처럼 프로그램이 어떤 특정 시간에 메모리 공간의 비교적 작은 부분에만 접근하는 것을 지역성의 원칙이라고 한다. 2) 시간적 지역성 한 번 쓰인 것은 또 쓰일 가능성이 높다. 내가 어떤 정보를 찾기 위해 책들을 책상으로 가져왔다면, 곧 그 책을 다시 보게 될 가능성이 크다. 3) 공간적 지역성 어떤 항목이 참조되면 그 근처의 항목들이 곧바로 참조될 가능성이 높다. 가..
파이프 라인 단일 사이클 : 클럭 사이클이 모든 명령어에 대해 같은 길이를 갖는다. 클럭 사이클이 너무 길어서 비효율적. 병렬 처리 : 컴퓨터 시스템 계산 속도 향상을 위해 동시 데이터 처리 기능을 제공. 병렬처리의 방법 - 파이프 라인 다단계 데이터 처리법 : 한 클럭(CPU등의 순차 회로 연산 장치에 가해지는 진동)에 다양한 명령어 수행. 동시 다중 데이터 처리 각 명령어의 실행시간을 개선하지는 못하지만 처리량 개선 가능 세탁, 탈수, 옷 개기, 옷장 넣기를 세탁의 한 사이클로 표현한다. 단일 사이클의 경우 : 한 사이클이 끝나야 다음 세탁물을 세탁 할 수 있다. 파이프 라인의 경우 : 세탁이 끝난 세탁기에 다음 세탁물을 바로 집어 넣게 함으로써 여러 행동을 중첩해서 실행하도록 한다. 파이프라이닝으로..
인터럽트 컴퓨터 작동 중 예기치 않은 문제가 발생한 경우 문제를 해결하고 나서 원래 수행하던 프로그램을 다시 수행하는 메커니즘, 한 번에 하나의 명령만 수행할 수 있는 CPU의 한계를 보완함. CPU의 program counter(PC)에 의해 명령어를 처리하던 프로그램이 도중에 인터럽트가 발생하면 현재 수행하던 프로그램, 프로세서의 상태를 저장하고 인터럽트 처리기(interrupt handler)로 점프. 인터럽트 처리 동작(Interrupt Service Routine : ISR) 수행을 마치고, 인터럽트 처리기가 다시 원래 수행하던 프로그램으로 Return 하면서 저장했던 프로그램과 프로세서 상태를 가져오고 하던 일을 진행함. 실생활로 보는 인터럽트 인터럽트의 종류 외부 인터럽트 CPU 외부에서 어..