코어부트

위키백과, 우리 모두의 백과사전.
Ykhwong (토론 | 기여)님의 2013년 7월 27일 (토) 20:49 판
코어부트
coreboot
원저자Ronald G. Minnich, Eric Biederman, Olli Lo, Stefan Reinauer, 코어부트 커뮤니티
발표일1999년
안정화 버전
저장소
프로그래밍 언어대부분이 C로 구성, 약 1%만이 ASM
플랫폼x86 x86-64 (WiP:[1] ARM)
종류펌웨어
라이선스GNU GPL
상태지원 중
웹사이트coreboot.org

코어부트(coreboot. 구 LinuxBIOS[2])는 자유 소프트웨어 프로젝트의 일종이자 해당 프로젝트 아래에서 개발되는 소프트웨어의 이름이다. 1999년 겨울 로스 알라모스 국립 연구소(Los Alamos National Laboratory, LANL) 내 Advanced Computing Laboratory에서 시작되어[3] 현재 자유 소프트웨어 재단의 지원 아래에[4] 진행되고 있는 이 프로젝트는 대부분의 컴퓨터에 심어져 있는 사유 BIOS를 32비트 또는 64비트 운영체제를 구동하는 데 필요한 최소한의 기능만을 탑재한 경량의 BIOS로 대체하는 것을 목표로 하고 있다.

프로그램 코어부트는 GNU 일반 공중 사용 허가서를 따라 배포되며, 설치하기 위해서는 플래시롬이라는 프로그램이 필요하다.

지원 플랫폼

코어부트는 바이오스를 대체하는 프로그램이기 때문에 바이오스를 사용하는 x86 계열 플랫폼에서만 설치 및 구동이 가능하다. 다만 컴퓨터는 다양한 제조사들에 의해 다양한 구조로 만들어져 나오기 때문에 모든 x86 계열 플랫폼이 당장 공통적으로 코어부트가 설치되고 구동될 수 있는 것은 아니다.

구동

코어부트는 주로 리눅스 커널을 즉석에서 구동하는 데 쓰이지만 사실은 ELF 형식을 갖는 바이너리라면 어떤 것이든 실행할 수 있다. 또한 16비트 모드로만 구동되는 기존의 바이오스들과 달리 처음에 10여개의 연산을 수행한 다음 EFI처럼 32비트 모드로 구동된다.[5]

다만 바이오스 호출 기능은 가지고 있지 않기 때문에 이를 사용하려면 코어부트상에서 SeaBIOS라는 것을 구동해야 된다. 코어부트를 사용하는 컴퓨터에서 마이크로소프트 윈도, FreeBSD 등 리눅스 이외의 운영 체제들을 구동할 때에도 이 프로그램을 구동해야 된다.

SeaBIOS 말고도 GRUB의 역할을 대신하는 FILO, 원격 네트워크 시동을 수행하는 gPXE 등이 코어부트상에서 구동할 수 있다.

주석

바깥 고리