본문 바로가기

컴퓨터 일반

[System] 컴퓨터 시스템의 구성

 컴퓨터 시스템에서 배워야 할 사항은 크게 [ ① CPU(Central Proccesing Unit) ②Memory [ RAM(Random Access Memory), HDD(Hard Disk Drive)] I/O Device ] 로 나뉠 수 있습니다. 컴퓨터의 메모리에 대한 이해를 먼저 한 뒤에, 이 세부사항에서 무엇을 배워야하는지 설명해드리겠습니다.

 

이것만 배우면 되는데 넘 어렵다는게 함정~

 

□ 컴퓨터 기본 이해

 컴퓨터(Compute)에서 Compute의 뜻은 연산(값을 변화시킨다)한다는 뜻입니다. 컴퓨터는 기본적으로 메모리 공간인 변수와 그 공간을 변화시키는 메소드로 구성됬다는 뜻이 있습니다. 따라서, 가장 먼저 컴퓨터의 모든 구성요소를 배우기 전에 공통으로 System에서는 가장 기본적으로 컴퓨터를 이루는 메모리라는 단위를 배우고, 어떻게 변화시키는지를 배웁니다.

 이 메모리 공간을 비유하자면 사물함이라고 할 수 있습니다. 사물함에는 각각의 번호(주소)가 있고, 그 안에 내용물(값)이 있습니다.

 

옛날에 이 설명듣고 메모리에 대해 뙇 이해됬었다.

 

 

 메모리와 연산의 조합을 통해 [ opcode(연산) + operand(메모리) ] 라는 명령어가 만들어지게 됩니다. 이 명령어의 집합이 곧 프로그램(A set of instruction)이 되게 됩니다.

 

 앞에서는 메모리(operand)를 하나의 사물함에 비유했고, 같은 맥락에서 하나의 번호 tag가 달린 박스로 이해할 수도 있습니다. 이 박스 안에는 사물함과 같이 0과 1이라는 값이 들어가 있습니다. 그리고 연산(opcode)는 이 박스의 값을 넣었다가 빼는 사람으로 이해하셔도 됩니다.

 

(※프로그램 중에 특별한 목적을 갖고 만들어진 프로그램을 앱이라고 부릅니다.

프로그램이 RAM에 들어가서 계속 변화되는 상태를 Process라고 부릅니다.)

 

 

캬~ 명령어의 참신한 비유다!!!

 

Ⅰ. CPU에서 배워야 할 것들

 

이 명령어가 CPU에 들어가서 어떻게 변화되는지를 배우게 됩니다먼저 opcode의 종류(데이터 처리, 데이터 전송, 데이터 제어)를 배웁니다. 그리고 operand에서는 몇 개가 있는지 개수에 따른 형식(SI, ARI, RRI, MRI, MMI))을 구분합니다.

 

 그리고 CPU의 각각의 구성요소인 레지스터와 CPU가 명령어를 처리하는 단계 [ 인출(Fetch) || 간접(Indirect) || 실행(Execute) || 인터럽트(Interrupt) ] 배웁니다. 

 

※ CPU가 명령어를 제어하는 이 과정을 상세히 배울 때 마이크로프로그래밍, 임베디드 소프트웨어를 배웁니다.

보기만해도 빡치지만 열심히 복습하면 된다.

 

Ⅱ. Memory에서 배우는 것들

 

기본적으로 이 명령어는 RAM이라는 메모리 공간 들어있다가 CPU에 들어가서 연산을 수행하게 됩니다그렇기에 CPU다음으로 배우는 것은 메모리, 기억장치(RAM : Random Access Memory)입니다. 여기서 Random의 뜻 Sequential(순차)의 반대 뜻으로, 무작위로 내가 원하는 위치에 간다는 뜻입니다.

 그리고 CPU에서 명령어를 처리할 때 쓰이는 ROM(Read Only Memory)를 배웁니다. ROM은 CPU의 명령어 처리에 하드웨적으로 어떻게 처리할까를 담당하며 제어용 마이크로프로그램(Microprogram)또는 모니터 프로그램 등을 고정시켜 사용합니다.

 기본적으로 RAM은 DRAM(Dynamic Random Access Memory)와 SRAM(Static Random Access Momery)로 나뉘어지며, ROM은 Mask ROm, PROM(Programmable ROM), EPROM(UVEPROM), EEPROM(Electirc EPROM), 플래쉬 메모리(Flash Memory)로 나뉘어집니다.

 

 그 다음으로 RAM만으로는 자료를 저장하는데 한계가 있기 때문에 저장공간의 확장인 HDD(Hard Disk Drive)에 대해 배웁니다. HDD는 순차, 랜덤처리를 하는 자기디스크(Magnetic Disk)순차처리만 가능한 SASD(Sequential Access Storage Device) 형태의 자기테이프를 배웁니다.

 

 마지막으로 RAMCPU의 자료 전송시 버퍼역할하는 캐쉬메모리RAMHDD용량확장을 도와주는 가상메모리, CPU에서 더 빠른 접근을 도와주는 Associative Memory에 대해 배웁니다.

(*Associative Memory캐쉬메모리와 가상메모리의 블록 주소 사상기법에서 Hash Index에 쓰입니다)

 

 

그림 재탕합니다.

Ⅲ. I/O Device

 

그리고 실제 사용자가 입력할 때 쓰는 입력 및 출력장치가 어떻게 동작하는지에 대해 배웁니다. 입/출력 시에 

입력, 출력시에 CPU에 인터럽트 신호를 보내기 때문에, 이 인터럽트를 어떻게 처리하는지도 배웁니다.

 

 

'컴퓨터 일반' 카테고리의 다른 글

[개념] 모듈(module)이란?  (0) 2020.06.23
Nginx설치  (0) 2020.06.21
[운영체제] 컴퓨터 부팅 과정  (0) 2019.10.05
VMware의 Network Type확실히 알기  (0) 2019.09.22
VMware에서 OS설치 준비  (0) 2019.09.15