2014-02-23 1 views

답변

0

BIOS는 기본 입력/출력을 제공하지만 하드웨어는 기본 기능을 훨씬 능가합니다. 드라이버가 없으면 이러한 기능을 사용할 수 없습니다.

또한 일부 하드웨어는 기본이 아니며 드라이버를 설치하기 전까지는 기능을 사용할 수 없습니다.

+0

@xxbbcc 그래, 나는 그것을 뒤로 얻었음을 깨달았다. 나는 링크를 통해 "죄송합니다"라고 말했다. – user2864740

+0

빠른 응답을 보내 주셔서 감사합니다. 좀 더 설명해주세요! 기술적으로 더 상세한 대답을 원합니다 – user3139987

+0

@ user2864740 Lol, 문제 없습니다. 나는 같은 이유로 늦었습니다. – xxbbcc

5

는 기존의 x86 BIOS에 대해 얘기 가정하면, 큰 문제가 몇 가지 있습니다 :

  1. BIOS는 전용 (시스템을 부팅하는 데 필요한 장치의 제한된 부분 집합으로 스토리지 컨트롤러를 전달하는 코드를 가지고 , 이더넷, USB 키보드/마우스, USB 대용량 저장 장치). BIOS에는 USB 프린터 또는 웹캠 용 드라이버가 없습니다. 또한 실용적이지 않습니다. 거기에 드라이버가 필요한 수천 개의 장치가 있습니다. BIOS에 모두 포함 할 수는 없습니다. 또한 모든 새 하드웨어 장치에 BIOS 업데이트가 필요하다는 것을 의미합니다.

  2. BIOS INT 호출은 현대적인 하드웨어에서는 실용적이지 못하며 비현실적입니다. 그들은 작은 덩어리의 데이터 읽기/쓰기 (디스크에서 몇 바이트 읽기, 문자를 화면에 인쇄)를 설정합니다. DMA를 사용하여 디스크에서 몇 메가 바이트를 버퍼로 읽는 메커니즘이 없습니다. 원래 BIOS INT 호출은 플로피 드라이브 및 텍스트 모드 디스플레이 용으로 개발되었습니다.

  3. BIOS INT 레이어는 리얼 모드로 존재합니다. 모든 현대 OS는 보호 모드입니다. 최신 OS에서 BIOS 호출을하려면 실제 모드로 전환하고 작업을 수행 한 다음 보호 모드로 돌아 가야합니다. 이것은 상당히 비싼 작업입니다.

UEFI는 어떨까요? 새로운 PC (Windows 7 x64 이상용으로 설계된 거의 모든 제품)는 레거시 x86 어셈블리 언어 BIOS가 아닌 UEFI 펌웨어를 사용합니다. UEFI 펌웨어는 종종 "BIOS"라고도합니다.

UEFI가 처음 등장했을 때 OS 독립적 드라이버로 이어질 것이라는 희망이있었습니다. UEFI는 현대적인 C 기반 API를 제공하며 작업하기가 쉽습니다. 그것은 설치 가능한 드라이버의 개념을 가지고 있습니다. mechanisms for a modern OS to call UEFI services이 있습니다. 그러나 이것은 많은 견인력을 얻지 못했습니다. UEFI "드라이버"는 부팅 전 작업에 유용합니다. OS가 인수하면 자체적 인 일을 수행합니다.

OS에서 UEFI 드라이버를 사용하면 여전히 성능 오버 헤드가 발생합니다. 게다가 "불투명"한 UEFI 드라이버를 기존 OS에 통합하는 것은 어려울 것입니다. 각 OS에는 디스크/파일 시스템 드라이버, 네트워킹 스택, USB 등의 레이어가 있습니다. 모두 다르게 다르게 작동하므로 UEFI 드라이버를 사용하기가 어려울 수 있습니다. (약 10 년 다시 질문한다.)

주를 현대 노트북에 꽤 사용되는 다른 하나의 OS에 독립적 인 "드라이버"레이어가 있다는 것을 : ACPI. 많은 플랫폼에는 ASL/AML code에 "드라이버"가있어 운영 체제에 간단한 이벤트 알림을 제공합니다. 가장 일반적인 예는 노트북을 실행하여 앱을 실행하거나 볼륨을 제어하기위한 키보드 위의 '특수'버튼입니다. 이러한 버튼은 일반적으로 OS가 응답하는 event handler을 트리거합니다. 그것은 매우 단순한 통지 시스템입니다.

관련 문제