01.컴퓨터의 기본 구성
1 하드웨어 구성
1.1 CPU와 메모리
'CPU: 명령어를 해석하여 실행하는 장치
'메모리: 작업에 필요한 프로그램과 데이터를 저장하는 장소
-Byte 단위로 분할되어 있으며 분할 공간마다 주소로 구분.
1.2 입출력장치
'입력장치: 외부의 데이터를 컴퓨터에 입력하는 장치
초기의 컴퓨터, 천공카드 사용 -> 현재, 키보드, 마우스, 스캐너 등 사용
'출력장치: 컴퓨터에서 처리한 결과를 사용자가 원하는 형태로 출력하는 장치
프린터, 모니터, 스피커 등
+3D 컴퓨터의 세계
3D 도면을 바탕으로 3차원 물체를 만들어내는 기계를 뜻한다. 가공의 용이성 등 여러 문제 덕분에 초창기에는 대부분 재료로 플라스틱을 사용하였지만 점차 종이, 고무, 콘크리트, 식품에 금속까지 재료의 범위가 점점 넓어지고 있어서 단순히 조형물 출력뿐만 아니라 건축, 설계 등의 향후가 기대되는 분야다. 자신이 직접 3D로 그림을 그릴 수 있는 3D 펜이라는 아이디어 상품도 나왔다.
'의학
[IF] 3D 프린터로 '암 오가노이드' 제작… 환자 맞춤형 치료제 개발 빨라질 듯
'미니 장기(臟器)'로 불리는 오가노이드(organoid)는 동물 실험보다 비용이 저렴하고, 윤리적인 문제에서도 자유로워 생물학 실험에 널리 쓰..
news.chosun.com
3D 프린터로 '암 오가노이드' 제작… 환자 맞춤형 암 치료 가능
'건축
벨기에 안트워프에 들어선 3D 프린팅 2층 시범주택. 캄프시 제공
3D 프린팅 건축의 진화... 2층 주택을 짓다.
3주 소요. 재료, 시간, 비용 60% 절약
1.3 저장장치
'하드디스크나 CD같은 저장장치는 구동장치가 있는 기계이므로 속도가 느리다.
Why? 왜 사용할까? 저장 용량에 비해 저렴하고, 전원 on/off와 상관 없이 데이터를 영구적으로 저장하기 때문이다.
-자성 이용 장치: 카세트 테이프, 플로피디스크, 하드디스크
-레이저 이용 장치: CD, DVD, 블루레이 디스크
-메모리 이용 장치: USB 드라이버, SD 카드, CF 카드, SSD
1.4 메인보드
'CPU와 메모리 등 다양한 부품을 연결하는 커다란 판
2 폰노이만 구조
'CPU, 메모리, 입출력장치, 저장장치가 버스로 연결되어 있는 구조
폰노이만 구조 등장 전, 하드와이어링: 전선의 연결을 바꾸어야 했다.
'모든 프로그램은 메모리에 올라와야 실행할 수 있다.
+폰노이만의 업적, 범용 컴퓨터 구조의 확립 ...
폰 노이만은 논문 '전자계산기의 이론 설계 서론'에서 프로세서, 메모리 하드웨어 구조를 제시하고 프로그램을 내장하여 하드웨어의 변경이 없이 컴퓨터를 구동하는 아이디어를 처음 제시했다.
이제 새로운 계산을 할 때 마다 엔지니어들은 진공관 회로의 물리적 스위치를 처음부터 하나 하나 조정하여 새로이 입력을 처리할 필요가 없어졌다.
하지만 직렬로 작업이 이루어지는 단점이 존재해 인공지능 시대에서는 폰노이만 병목 현상이 발생했다. 컴퓨터 구조가 병렬적으로 변화되어야 하는 시점이 온 것이다.
[김정호의 4차혁명 오딧세이] 'AI 반도체 선구자' 폰 노이만을 생각한다
www.newspim.com
3 하드웨어 사양 관련 용어
'클록Clock: CPU는 작업을 할 때 일정한 박자가 있는데, 이 박자를 만들어내는 단위
-클록이 틱tick을 만들면 거기에 맞추어 CPU 안의 모든 구성 부품이 작업을 한다.
ㄴ틱은 펄스pulse 또는 클록틱clock tick이라고도 부른다.
-메인보드의 클록이 틱을 보낼 때마다 데이터를 주고 받는다.
'헤르츠Hz: 클록틱이 발생하는 속도를 나타내는 단위
-1초에 클록틱이 몇 번 발생하는지를 나타낸다.
-1초에 클록틱이 한 번이면 1Hz, 1000번이면 1kHz(1000Hz)
'시스템 버스와 CPU 내부 버스
-시스템 버스: 메모리와 주변장치를 연결하는 버스
ㄴFSBFront-Side-Bus, 즉 전면 버스라고도 한다.
-CPU 내부 버스: CPU 내부에 있는 장치를 연결하는 버스
ㄴBSBBack-Side-Bus, 즉 전면 버스라고도 한다.
02.CPU와 메모리
1 CPU의 기본 구성
1.1 CPU의 기본 구성
'산술논리 연산장치Arithmetic and Logic Unit, ALU
-데이터의 +, -, x, / 같은 산술 연산과 AND, OR 같은 논리 연산을 수행한다.
'제어장치control unit
-CPU에서 작업을 지시하는 부분
'레지스터register
-CPU 내에 데이터를 임시로 보관하는 곳
1.2 CPU의 명령어 처리 과정
'CPU는 기계어만 인식하므로 코드를 어셈블리어로 작성한다.
'LOAD는 가져오기, ADD는 더하기, MOVE는 옮기기 명령어
'CPU가 연산을 하려면 필요한 데ㅣ터를 CPU로 가져와 임시로 보관해야 하는데, 이때 사용되는 장소가 레지스터
ex) 어셈블리어로 변환한 덧셈 프로그램
LOAD mem(100), register 2;
//메모리의 100번지에 있는 값을 레지스터 2로 가져온다.
LOAD mem(120), register 3;
//메모리의 120번지에 있는 값을 레지스터 3으로 가져온다.
ADD register 5, register 2, register3;
//레지스터 2와 레지스터 3에 저장된 값을 더한 결과를 레지스터 5에 넣는다.
MOVE register 5, mem(160);
//레지스터 5의 값을 메모리의 160번지로 옮긴다.
1.3 레지스터의 종류
'사용자 가시 레지스터
-데이터 레지스터(DR): 메모리에서 가져온 데이터를 임시로 보관할 때 사용
ㄴ일반 레지스터 또는 범용 레지스터라고 부른다.
-주소 레지스터(AR): 데이터 또는 명령어가 저장된 메모리의 주소 저장
'사용자 불가시 레지스터
-프로그램 카운터(PC): 다음에 실행할 명령어의 주소를 기억하고 있다가 제어장치에 알려준다.
-명령어 레지스터(IR): 현재 실행 중인 명령어 저장
-메모리 주소 레지스터(MAR): 메모리에서 데이터를 가져오거나 반대로 메모리로 데이터를 보낼 때 주소를 지정하기 위해 사용
-메모리 버퍼 레지스터(MBR): 메모리에서 가져온 데이터나 메모리로 옮겨 갈 데이터를 임시 저장한다.
1.4 버스의 종류
'제어 버스: 다음에 어떤 작업을 할지 지시하는 제어 신호가 오고 간다.
'주소 버스: 메모리의 데이터를 읽거나 쓸 때 어느 위치에서 작업할 것인지를 알려주는 위치 정보(주소)가 오고 간다.
'데이터 버스: 데이터를 목적지까지 이동시켜준다.
2 메모리의 종류와 부팅
2.1 메모리의 종류
*램(RAM): 메모리를 읽거나 쓸 수 있다.
'휘발성 메모리
-DRAM(동적 램): 저장된 0과 1의 데이터가 일정 시간이 지나면 사라지므로 일정 시간마다 다시 재생시켜야 한다. 메인메모리에 사용한다.
-SRAM(정적 램): 전력이 공급되는 동안에는 데이터를 보관할 수 있어 재생할 필요가 없다. 속도는 빠르지만 가격이 비싸고, 캐시 같은 고속메모리에 사용한다.
'비휘발성 메모리
-플래시 메모리: 전력이 없어도 데이터를 보관하는 저장장치로 많이 사용
-FRAM, PRAM 등
-SSD: 하드디스크 대용. 가격은 비싸지만 빠른 데이터 접근 속도, 저전력, 내구성의 장점이 있어 많은 기기에 사용되고 있다.
*롬(ROM): 메모리 읽기만 가능하다.
-마스크 롬: 데이터를 지우거나 쓸 수 없다.
-PROM, EPROM 등
2.2 메모리 보호
'CPU는 현재 진행 중인 작업의 메모리 시작 주소를 경계 레지스터에 저장한 후 작업
'마지막 주소까지의 차이를 한계 레지스터에 저장
'사용자의 작업이 진행되는 동안 이 두 레지스터의 주소 범위를 벗어나는지 하드웨어적으로 점검
2.3 부팅
'부팅: 컴퓨터를 켰을 때 운영체제를 메모리에 올리는 과정
참고자료
쉽게 배우는 운영체제, 조성호
https://namu.wiki/w/3D%20%ED%94%84%EB%A6%B0%ED%84%B0
https://news.chosun.com/site/data/html_dir/2020/07/16/2020071600447.html
http://www.hani.co.kr/arti/science/future/953910.html
http://sehub.net/archives/1940
'OS' 카테고리의 다른 글
[운영체제] CPU 스케줄링 (0) | 2021.01.22 |
---|---|
[운영체제] 프로세스와 스레드 (0) | 2021.01.22 |
[운영체제] 컴퓨터 구조와 성능 향상 (2) (0) | 2021.01.22 |
[운영체제] 운영체제의 구조 (0) | 2021.01.22 |
[운영체제] 운영체제의 소개와 역사 (0) | 2021.01.22 |