ROM 은 주로 RAM 과 같이 나오는 개념이다. 같이 알아보자.
일단 ROM (=Ready Only Memory) 이란 말 그대로 읽기 전용 메모리이다. 메모리를 생각하면 보통 읽기와 쓰기가 전부 가능한 것으로 인식되어진다. 그런가..? 지금 배워가는 과정이라 뭐가 뭔지 잘 모르지만 그렇다고 한다. 아무튼, 하지만 ROM 은 주로 저장된 메모리를 읽을수만 있고 새로운 정보를 기억시킬 수 없는 메모리를 말한다.
우리 주변에 ROM 을 이 들어간 예를 보면 쉽게 이해가 간다. 흔히 사용하는 CD 를 CD-ROM 에 넣고 실행한다. 씨디롬을 실행시키면 그 안에 있는 내용들을 읽기만하지 수정, 편집을 할 수 없다. 그래서 CD-ROM 이라 불린다는 점. 주로 롬에는 윈도우 같은 우영체제를 가동하기 전에 컴퓨터의 각 구성요소를 점검하기 위한 기본 정보들이 들어 있고, 모니터 키보드, 디스크 드라이브 등이 서로 어떻게 정보를 전달하고, 이용할 것인지를 제어하는 기본 입출력시스템. 즉, 바이오스 정보가 들어있다. 이런 것들은 아예 컴퓨터가 만들어질 때 제조회사에서 미리 결정하여 입력하는 정보이므로 사용자가 임의로 바꾸는 일은 없는 셈이라고한다.
두번째로 RAM (= Random Access Memory) 이란 어느 위치에 저장된 데이터든지 접근(읽기 및 쓰기)하는 데 동일한 시간이 걸리는 메모리이다. 어디서든 동일한 시간이 걸리기 때문에 '랜덤(Random, 무작위)' 이라는 명칭이 주어졌다고 한다. 참고로 하드디스크, 플로프 디스크 등의 자기 디스크나 자기 테이프는 저장된 위치에 따라 접근하는 데 걸리는 시간이 다르다.
말이 좀 어려운데 예를 들어서 우체국에 가서 카운터에 보면 우체국 직원이 우편물을 정리하면서 아무 위치에나 마음대로 우편물을 꺼내거나 넣는 것을 볼 수 있을 것이다. 우편물 사서함의 번호가 121이건 108 이건 111 이건 사서함의 번호에 구애받지 않고 자유롭게 접근하는 것과 같은 이치이다.
일반적으로 C언어를 공부하다보면 데이터를 메모리에 올린다, 저장한다 이런 말들이 많이 나오는데 여기서 말하는 메모리가 바로 램, 즉 '메인 메모리(Main Memory, 주기억장치)'를 의미한다. 이 메인 메모리는 전기적인 신호로 데이터를 저장하기 때문에 속도가 빠르다. 하드 디스크 처럼 물리적으로 돌아가는 것이 아닌 빛의 속도라는 의미인가보다. 이 빠른것이 장점이기 때문에 컴퓨터의 주기억장치로 사용되는 것이다.
세번째로 BIOS (= Basic Input/Output System) 이란 메모리, 디스크, 모니터와 같은 주변기기 사이의 정보 전송을 관장하는 일종의 프로그램이다. 즉, 컴퓨터의 하드웨어에 가장 근접되 있는 함수들의 집합이라고 볼 수 있다. 머 결국 BIOS 도 함수들이 집합이라는 것 보니깐 소스 코드인 것 같다(아님 말고..). 바이오스는 ROM 에 들어 있기 때문에 흔히 ROM BIOS 라고 부른다.
컴퓨터 부팅시 <Del>, <F1>, <F2> 등 키를 누르면 나오는 CMOS 셋업 프로그램과 주변기기 초기화, 자체 진단 루틴도 이 롬 바이오스에 같이 포함되어 있다. 롬에는 쓰기가 불가능 하므로 주변기기에 대한 정보를 저장하려면 쓰기를 할 수 있는 다른 공간이 필요하다. 정보를 저장할 수 있는 다른 공간이 바로 CMOS 라는 것인데, CMOS 셋업은 BIOS 에 포함되어 있는 프로그램으로 주변기기에 대한 정보를 저장하고 전원이 끊어져도 정보가 사라지지 않는 비휘발성 특성을 가지고 있다. 그리고 CMOS 셋업 프로그램을 이요해서 장착된 주변기기에 대한 정보를 알려주면 BIOS 는 그것에 기초하여 하드웨어를 인식하고 제어할 수 있게 되는 것이다.
'하드웨어' 카테고리의 다른 글
Tri-state (3상 상태) 란?? (0) | 2016.08.19 |
---|---|
Impedance(임피던스)란? (0) | 2016.08.19 |
Bootloader란 무엇인가? (0) | 2015.06.06 |
래치와 플립 플롭 (0) | 2015.05.31 |
Sink current, Source current (0) | 2015.05.31 |