컴퓨터 구조 16 : 프로세서간 통신과 동기화, 캐시의 일관성 프로세서간 통신 멀티 프로세서의 프로세서들은 공통의 입출력 채널을 통해 서로 통신함. 예로, IOP에 연결된 자기 디스크 저장 장치를 통해 시스템 프로그램을 공유할 수 있음. 공유 메모리 멀티 프로세서 시스템에서는 메모리 일부분을 모든 프로세서가 접근할 수 있도록 할당함. 공유 메모리는 프로세서 사이에서 오가는 메시지의 집중지 역할을 함. 메시지를 보냈다는 신호는 소프트웨어에 의한 프로세서간 인터럽트로 구현함. 송신 프로세서가 수신 프로세서에게 인터럽트를 보내 새로운 메시지를 보냈다고 알림. 멀티 프로세서를 위한 운영체제 구조 1 : 주종 모드(master-slave) 주가 되는 프로세서는 항상 운영체제 기능을 수행 나머지 프로세서에서 운영체..
컴퓨터 구조 15 : 프로세서와 프로세스, 프로세서간 중재 프로세서(Processor) 하드웨어적 측면 : 컴퓨터 내에서 프로그램을 수행하는 하드웨어 유닛. 중앙처리장치(Central Processing Unit)를 뜻하며 폰 노이만 아키텍처에 의해 만들어졌다면 적어도 하나 이상의 ALU(Arithmetic Logic Unit)와 처리 레지스터(Register)를 내장하고 있어야 한다. 소프트웨어적 측면 : 데이터 포맷을 변환하는 역할을 수행하는 데이터 프로세싱 시스템(데이터 처리 시스템) 출력 가능한 인쇄물을 생성하는 워드프로세서도 프로세서라 부른다.(컴파일러, 워드프로세서, 어셈블리 등) 프로세스(Process) 메모리에 적재되어 프로세서에 의해 실행중인 프로그램. 대략적 실행 과정 1 : 사용자가 ..
컴퓨터 구조 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) 공간적 지역성 어떤 항목이 참조되면 그 근처의 항목들이 곧바로 참조될 가능성이 높다. 가..