BIOS는 마더 보드 자체에 저장된 하드웨어 종속 코드입니다. 모든 마더 보드에는 맞춤형 BIOS가 필요하므로 일반 BIOS / OS 올인원 을 보유하는 것은 불가능합니다 (BIOS는 기술적으로 저장된 코드이므로 이론적으로 하나의 특정 마더 보드 용 OS를 작성할 수 있습니다 ) . 언급했듯이 BIOS의 목적은 다음을 수행하는 것입니다.
PC가 시작될 때 BIOS의 첫 번째 작업은 CPU, RAM, 비디오 디스플레이 카드, 키보드 및 마우스, 하드 디스크 드라이브, 광학 디스크 드라이브 및 시스템과 같은 시스템 장치를 초기화하고 식별하는 POST (power-on self-test)입니다. 다른 하드웨어.
외부 저장소 없이도 컴퓨터를 시작할 수 있으므로 BIOS가 컴퓨터에 필요한 이유입니다. 즉, BIOS는 저장된 컴퓨터 프로그램이 마더 보드에 연결된 다양한 하드웨어 장치와 통신 할 수 있도록 공통 소프트웨어 인터페이스 를 제공합니다 .
예를 들어, 두 개의 다른 SATA 컨트롤러가있는 두 개의 서로 다른 마더 보드가있는 경우 BIOS를 통해 마더 보드가 실제로 SATA 장치에 명령을 보내는 방법에 대한 지식 없이도 두 가지 모두 작동 할 수있는 코드를 작성할 수 있습니다. 컴퓨터에 "이 SATA 장치에서 섹터 X를 읽습니다"라고 말하면 BIOS는 실제로 해당 명령을 하드웨어로 보냅니다.
실제로 "읽기 섹터 X"정보를 얻는 위치는 BIOS에 포함 된 저장된 프로그램으로, 보통 컴퓨터가 공통 위치에 저장된 부트 로더에서 읽도록 지시합니다. 이러한 공통 위치는 다양한 소프트웨어 및 하드웨어 개발자가 동의하며 일반적으로 시스템 간의 호환성을 높이기 위해 일반인에게 제공됩니다.
기본 인터페이스 수준 (다시 말해서 소프트웨어를 통한 논리적 인터페이스)이 설정되면 운영 체제 자체가 다양한 하드웨어 장치 (일반적으로 "장치 드라이버"를 사용하여)와 공통 인터페이스를 구축 한 다음 운영 체제가 하드웨어를 제어 할 수 있습니다.
마지막으로 BIOS는 컴퓨터 하드웨어 구성을 수정하고 온보드 EEPROM에 저장하는데도 사용됩니다 (따라서 컴퓨터는 다음에 시작할 때 변경 사항을 기억합니다). 그러나 앞에서 언급했듯이 운영 체제가로드되면 컴퓨터를 완전히 제어 할 수 있습니다.
따라서 마더 보드 제조업체는 BIOS로 재부팅 할 필요없이 운영 체제 내에서 이러한 변경을 수행 할 수있는 소프트웨어를 개발할 수 있습니다. 다시 말하지만 이것은 하드웨어와 소프트웨어에 따라 다르지만 모든 컴퓨터 인터페이스가 상대적이라는 것을 보여줍니다. BIOS는 이름에서 알 수 있듯이 기본 입 / 출력 시스템으로, 고급 프로그램 ( "운영 체제")을위한 공통 소프트웨어 인터페이스로 시스템을 제어 할 수 있습니다.