2010. 8. 4. 16:12

CMOS와 BIOS의 차이

흔히들 CMOS와 BIOS를 혼동하곤 한다. 컴퓨터 부팅하면서 부팅순서나 연결 장치들의 정보를 보기위한 파란 화면을 CMOS 세팅 또는 BIOS 세팅을 하기 위한 창이라고 이야기 하곤 한다. 둘의 단어적인 의미만 보아도 전혀 다른 두 개의 용어가 왜 혼동되어 비슷하게 사용되고 인식되고 있는지 한번 알아보자.


CMOS
CMOS(Complementary metal-oxide semiconductor)는 한글로 표기하면 상보성 금속산화막 반도체라고 한다. '씨모스'라고 불리는 말에 비해 참으로 어렵다. 쉽게 말해 광다이오드를 사용하여 집적회로를 만들기 위한 기술의 하나이다. 이러한 CMOS 기술은 CPU, microcontroller, static RAM 과 같은 디지털 논리 회로에 쓰인다. 더이상 CMOS에 대한 기술을 언급하는 것은 전자공학을 전공하지 않은 사람에게는 오히려 혼란만 가중될 것 같다.

그렇다면 이러한 반도체와 컴퓨터 시스템에서 흔히 말하는 CMOS와 무슨 차이가 있을까? 컴퓨터 메인보드를 살펴보면 RTC/NVRAM이라고 불리우는 CMOS chip이 존재한다. 메인보드 수은 건전지 옆에 존재하는 이 chip이 CMOS 방식으로 만들어져 있기 때문에 그냥 그렇게 불리어온 것이다. 수은 건전지는 CMOS battery라고 하는데 시스템이 꺼진 경우에도 RTC/NVRAM의 내용을 지속적으로 유지시키기 위해 존재한다.

그럼 CMOS 의 핵심인 RTC/NVRAM은 대체 어떤 정보를 저장하고 있을까?
RTC(Real-Time Clock)은 시스템의 날짜와 시간을 저장하고 있고 NVRAM(Non-Volatile RAM)은 비휘발성 램으로 메모리 크기, 드라이브(플로피 및 하드 등) 타입, 부팅 순서 및 구성 정보 등의 CMOS data를 저장하고 있다.


BIOS
BIOS(Basic Input Output System)은 운영체제와 하드웨어 사이의 입출력을 담당하기 위해 저수준의 소프트웨어와 드라이버로 이루어진 펌웨어을 의미한다. 쉽게 말해 운영체제는 메인보드나 그래픽카드와 같은 하드웨어와 통신하기 위해 중간 매개체를 사용해야 한다. 그렇게 되면 운영체제는 세부적인 하드웨어의 구성이나 신호체계를 알 필요없이 중간 매개체와만 통신하면 된다. 이러한 중간 매개체 역할을 하는 것이 BIOS이며 이것은 하드웨어가 제조될 때 제조회사에서 하드웨어에 포함시켜 둔다.

하드웨어에 포함시켰기 때문에 전원이 없는 상태에서도 유지되야 하므로 ROM을 사용한다. 흔히 메인보드의 BIOS를 ROM BIOS라고 부른다. 이것은 메인보드 뿐만아니라 SCSI, VGA에도 포함되어 제조된다.


CMOS vs BIOS
그렇다면 이제 왜 CMOS와 BIOS가 혼동되고 있는지 살펴보자. 부팅하면서 부팅 설정을 하기 위한 파란 화면에 뜨는 내용들은 실제 CMOS(RTC/NVRAM)에 저장되어 있다. 하지만 이러한 데이터를 설정할 수 있도록 파란화면을 뜨게 하는 프로그램(유틸리티)는 ROM BIOS에 존재한다. 따라서 컴퓨터 시스템을 부팅하면서 F1, F2, ESC, Delete(제조 회사마다 차이)들의 키를 누르게 되면 ROM BIOS에 포함된 BIOS 설정 유틸리티가 CMOS의 내용을 읽어와 설정할 수 있도록 보여주는 것이다.