운영 체제 (보통?)가 BIOS 설정에 액세스 할 수없는 이유는 무엇입니까?


20

부팅 후 메인 보드가 CPU와 BIOS 칩 사이에 버스를 제공하지 않습니까? 그렇다면 왜 안됩니까?

CPU가 팬 속도를 제어 할 수 있다면 BIOS 구성을 제어 할 수없는 이유를 알 수 없습니다.


내 이해에 따르면, BIOS가 부트 로더를 가져 오면 작동이 중지되면 IPMI의 경우가 예상됩니다.
Linef4ult

일부 마더 보드 제조업체는이를 수행하는 유틸리티를 가지고 있지만 이러한 유틸리티는 해당 마더 보드에만 해당되며, 맬웨어가 사용했거나 일반 사용자가 bios 구성을 탐색하는 경우 나쁜 소식이 될 수 있으므로 Windows에 내장되어 있지 않습니다.
Moab

DavidPostill이 이미 대답했듯이. Windows (및 기타 운영 체제)는 종종 BIOS에 액세스 할 수 있습니다. 그러나 이것은 칩셋과 마더 보드에 따라 다르며 100 % 할인 된 가격으로 작동하지 않을 수 있습니다. BIOS 펌웨어에서 UEFI 펌웨어로 이동하면 더 많은 제어권을 얻을 수 있습니다.
Hennes

실제 BIOS가있는 PC를 본 지 오래되었습니다. UEFI를 의미한다면 /sys/firmware/efiLinux 바로 아래 에 있습니다.
Dmitry Grigoryev

제어권이 OS로 전달 된 후에는 BIOS가 사용되지 않습니다. BIOS 복구 / 손상된 BIOS를 다시 플래시하는 경우 BIOS 칩을 꺼내 다른 칩을 프로그래밍 할 수도 있습니다.
AStopher

답변:


44

운영 체제 (보통?)가 BIOS 설정에 액세스 할 수없는 이유는 무엇입니까?

OS BIOS에 액세스 할 수 있으므로 위의 질문에 대답 할 수 없습니다 .

아래 질문을 받겠습니다.


운영 체제는 어떻게 BIOS 설정에 액세스 할 수 있습니까?

Windows 및 Unix에서 OS는 BIOS를 읽을 수 있습니다.

윈도우

예 (사용 wmic) :

F:\test>wmic bios /?

BIOS - Basic input/output services (BIOS) management.

HINT: BNF for Alias usage.
(<alias> [WMIObject] | <alias> [<path where>] | [<alias>] <path where>) [<verb clause>].

USAGE:

BIOS ASSOC [<format specifier>]
BIOS CREATE <assign list>
BIOS DELETE
BIOS GET [<property list>] [<get switches>]
BIOS LIST [<list format>] [<list switches>]


F:\test>wmic bios list brief
Manufacturer              Name                                        SerialNumber      SMBIOSBIOSVersion  Version
American Megatrends Inc.  BIOS Date: 09/05/11 11:20:58 Ver: 04.06.03  27546064-5001600  R1190V3            Sony - 20110905

Windows는 BIOS에 쓸 수도 있습니다 (일부 마더 보드 제조업체는 Windows 기반 BIOS 업데이터를 제공합니다).

예를 들어 Windows를 통해 또는 BIOS에서 BIOS를 플래시하는 방법을 참조하십시오 .

유닉스

유닉스는 비슷한 명령을 가지고 있습니다.

  • biosdecode 는 BIOS 메모리를 구문 분석하고 모든 구조에 대한 정보를 인쇄합니다.

  • 임베디드 ASM (어셈블리 코드)이 포함 된 C 애플리케이션을 사용하여 루트 사용자로부터 실시간 BIOS 호출을 수행 할 수 있습니다.

소스 BIOS 데이터를 파일로 덤프하는 방법


추가 자료


5
Windows XP 이전에 할 수있는 일을 추가하고 싶습니다. 내 지식을 최대한 활용하는 것으로 설명 할 수 있습니다-debug.com에서 설정에 액세스하는 포인터 속임수-일부 BIOS의 암호 보호를 지우는 트릭이 있음을 기억하십시오 모델. 웹 검색 "debug.com" bios password은 주제와 관련된 정보를 제공하는 것으로 보입니다.
Theraot

1
아직도 "왜?"에 응답하지 않습니다 .... 불만족스러운 ....
Zaibis

@Zaibis "이유"에 대답 할 필요는 없습니다. OS BIOS에 액세스하여 왜 ... 불가능한지 묻고 답할 있습니다. 나는 대답을 조금 명확히했다.
DavidPostill

1
"Unable" should be replaced by "able" as the OS can access the BIOS.당신이 그것을 문구로 의미했다면 그것을 제거해야합니다. 당신의 조언을 따르기 때문에 그들의 질문은 남아 있지 않습니다.
Zaibis

1
@Zaibis <sigh> 다른 사람들은 답을 이해했습니다 (답변을 수락 한 OP 포함). 나는 특히 당신을 위해 그것을 다시 업데이트했습니다;)
DavidPostill

19

그것들은 가능하지만 , 특히 "BIOS"를 의미하는 경우 (예 : pre-UEFI) 표준화 된 인터페이스 설정 방식은 그리 많지 않습니다 .

BIOS의 특정 부분은 BIOS와 그 위에서 실행되는 OS 간의 소프트웨어 계약에 의해 관리됩니다. 오래 전부터 BIOS 루틴은 디스크 읽기 및 쓰기, 화면에 표시하기, 연결된 프린터로 인쇄하기 등과 같은 "기본 입 / 출력 시스템"이라는 모든 종류의 일상적인 작업에 사용되었습니다. BIOS가 하드웨어와 일치 한 경우 OS는 이러한 모든 작업에 고유 한 루틴이 없어도 다양한 하드웨어 변형을 지원할 수 있습니다. 그러나 하드웨어와 OS가 더욱 복잡해지고 제한된 BIOS 기능을 능가함에 따라 OS는 거의 모든 것을위한 자체 드라이버를 제공하기 시작했으며 부팅, 전원 관리 및 시스템 구성 정보 검색을 위해 BIOS에 의존하기 만했습니다.

그러나 BIOS 역시 더욱 복잡 해져서 OS-BIOS 인터페이스에 의해 통제되지 않는 모든 종류의 설정과 능력을 얻었으며, 거기에있는 것들에 대해서도 구현이 아닌 결과 만 지정합니다 . 즉, 모든 BIOS 제조업체는 원하는 방식으로 작업을 수행 할 수 있으며 OS가 계속 실행되는 한 언제든지 원하는대로 변경할 수 있으며 세부 정보 를 아무 에게도 말할 필요가 없습니다 . BIOS에 저장된 데이터에 액세스하는 것은 간단한 일이지만, 데이터를 이해할 수 있거나 BIOS가 실제로 이해할 수있는 방식으로 수정할 수있는 유틸리티가있는 경우 아마도 BIOS 제조업체 자체 또는 리버스 엔지니어링의 결과입니다.


"케이크 조각"부분을 기술적으로 자세하게 설명 할 수 있다면 멋질 것입니다. 예를 들어, 커널 모드에서 임의의 C 코드를 실행하는 방법을 알고 있다고 가정합니다. 이제 BIOS를 수동으로 덤프하는 방법은 무엇입니까?
Mehrdad

6
@Mehrdad BIOS 데이터 영역 및 확장 BIOS 데이터 영역은 기본 메모리 주소에 매핑되므로 적절한 권한으로 직접 읽고 쓸 수 있습니다. 예를 들어보기 (보통은 ... 그렇게하고 싶지 않아) wiki.osdev.org/Memory_Map_%28x86%29#BIOS_Data_Area_.28BDA.29stanislavs.org/helppc/bios_data_area.htmlbioscentral.com/misc BDA 레이아웃에 대한 자세한 내용은 /bda.htm 을 참조하십시오 (첫 번째는 EBDA 레이아웃의 한 변형에 대한 간략한 소개도 제공합니다). "BIOS 데이터 영역"및 "확장 BIOS 데이터 영역"을 즐겨 찾는 검색 엔진에 추가하십시오.
CVn
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.