바이오스

위키백과, 우리 모두의 백과사전.
211.205.210.249 (토론)님의 2015년 5월 6일 (수) 00:29 판 (→‎제어)
바이오스 설정 유틸리티
일반적인 바이오스 포스트 과정의 첫 단계
바이오스가 들어간 롬(ROM)

바이오스(BIOS; Basic Input/Output System)는 넓은 의미로 컴퓨터에 탑재된 프로그램 중에서 하드웨어와 가장 낮은 수준에서 입출력을 담당하는 프로그램을 가리킨다. 좁은 의미의 정의에선 IBM-PC 호환 기종에 탑재된 것을 말하며, 보통 이 뜻으로 쓰인다. 바이오스는 컴퓨터에서 하드웨어와 소프트웨어의 중간 형태를 가지는 펌웨어의 일종으로, 대부분 소프트웨어가 하드웨어를 제어하고 하드웨어에 의해 변경되거나 생성된 정보를 소프트웨어에서 처리할 수 있도록 전달하는 등 인간의 신경망과 같은 기능을 수행한다.

저장 매체

바이오스를 저장하는 매체로 초기에는 이 주로 사용되었으나 정보화의 발전 속도가 증가되고 새로운 기기나 매체의 발매 주기가 짧아짐에 따라 현재의 플래시 메모리가 바이오스의 주된 저장 매체로 쓰이기 시작했다. 하지만 플래시 메모리를 이용한 편리함은 1990년대 후반에 바이오스를 손상시키는 바이러스의 등장으로 수많은 컴퓨터를 무력화시키는 사태를 겪기도 했다. 대표적인 예로 CIH 바이러스를 들 수 있다. (다만 이 바이러스는 윈도 NT 계열 이후의 운영 체제에서는 동작하지 않으므로 현대에는 큰 문제로 여겨지지 않는다.)

이전까지 바이오스는 에 담겨 컴퓨터에 미리 맞춰진 형태로 제공되었다. 롬 라이터(ROM Writer)라고 불리는 기록 장치 없이는 바이오스의 내용을 바꿀 수 없는 것이 보통이었다. 그러나 1990년대로 들어서면서 바이오스의 저장매체로 기존의 마스크 롬이나 이피롬이 아닌 플래시 메모리를 사용한 제품이 일반화되었는데, 이것으로 예상치 못했던 문제점을 해결하거나 새로운 장치나 기기를 지원하기 위해 별도의 기록 장치 없이 PC에서 프로그램을 실행해 바이오스의 내용을 간편하게 바꿀 수 있게 되었다. 그러나 바이오스의 내용을 갱신할 때 정전 등을 비롯하여 예기치 못한 상황에서 기록이 정상적으로 되지 못하면, 그 컴퓨터는 시동조차 할 수 없게 되어 버린다. 바이오스는 컴퓨터의 하드웨어소프트웨어를 이어주는 신경망과 같은 프로그램으로 그 내용이 손상되면 BIOS 설정 화면을 띄울 수도 없다. 이렇게 손상된 바이오스를 복구하는 방법은 바이오스가 탑재된 플래시 메모리를 교환하는 방법 밖에 없다.

제어

어댑터 카드의 펌웨어를 시동 과정에서 실행하기 위해 BIOS 는 POST 과정 중에 메모리를 검사해서 실행할 펌웨어를 찾는다. 0xC0000h ~ 0xF0000h 의 메모리 영역을 2킬로바이트 단위로 나누어서 각각의 첫 2바이트를 읽는데, 만약 2바이트의 값이 0xAA55h 일 경우 실행해야 하는 펌웨어이므로 4번째 바이트로 넘어가서 펌웨어의 코드를 실행한다.

이전에는 응용 소프트웨어가 주변 기기를 제어할 때 입출력 포트를 직접 만질 것 없이 바이오스가 제공하는 서브루틴을 불러 제어가 이루어지고 있었다. 그러나 최근에는 이 역할을 운영 체제가 대신 수행하여 응용 프로그램은 바이오스를 사용하지 않고, 운영 체제가 준비한 API 등을 거쳐 바이오스가 제공하는 기능을 사용하게 되었다.

BIOS 외의 펌웨어의 실행

BIOS (=메인보드의 펌웨어)는 컴퓨터의 기본적인 하드웨어 장치들 (키보드, 플로피 디스크, 하드디스크) 에 접근해서 제어할 수 있다. 다만 여러가지 제약사항이 있으며, 일부 플러그인 어댑터들(SCSI, NIC, 비디오 등)의 경우 BIOS 대신 독자적인 펌웨어를 장치에 포함시켜 그 장치용 펌웨어가 해당 장치를 제어하도록 한다. 이렇게 BIOS 에서 호출하는 펌웨어를 옵션 롬 이라고 부른다.

같이 보기

바깥 고리