BIOS가 32/64 비트 대신 16 비트로 작동하는 이유는 무엇입니까?


2

내 선생님은 BIOS (또는 레거시 모드) 항상 내 PC를 16 비트 부팅.

즉, 23.9GHz의 Intel Core i291832를 사용할 수 있지만 레거시 모드를 사용하는 경우 PC는 16 비트 모드로 작동합니다. 그게 사실이야? 그렇다면 왜 그렇게됩니까?

추신 : 당신은 매우 기술적 일 수 있습니다. 나는 컴퓨터 과학을 가르치고있어 아마 당신이 말하는 것을 이해할 것입니다. P.S2 : UEFI와 레거시 모드의 차이점을 알고 있습니다.


Wikipedia : "16 비트 프로세서 모드, 1MB의 주소 지정 가능 공간 및 PC AT 하드웨어와 같은 BIOS 제한 사항은 Itanium이 목표로 삼았던 대형 서버 플랫폼에 너무 제한적이었습니다. 이러한 우려를 해결하기위한 노력은 1998 년에 시작되었으며 처음에는 Intel 부트 이니셔티브 (Boot Initiative), 나중에 EFI로 이름이 변경되었습니다. "
ChrisInEdmonton

WTF? 왜 내 질문에 downvoted? 귀하의 회신은 아무 것도 대답하지 못했습니다, @ChrisInEdmonton, 미안하지만, 저는 당신의 설명에서 정말로 그것을 얻지 못했습니다.
Fernando Paladini

나는 너에게 다운 다운을하지 않았다. 나는 현재 표준 인 EFI (또는 UEFI)가 32 비트임을 지적했다.
ChrisInEdmonton

1
좋아, 답장을 보내 주셔서 감사 드리며 무례한 것에 대해 유감스럽게 생각합니다. 나는 그 질문을 좋아하지 않고 분명한 이유없이 그 질문을 싫어한다고 생각했습니다. 죄송합니다. 시간 / 인내심 / 의견을 주셔서 감사합니다 & lt; 3
Fernando Paladini

답변:


5

이전 버전과의 호환성.

최신 x86 프로세서는 원본을 위해 작성된 소프트웨어를 실행할 수 있습니다. 8088 소프트웨어 에뮬레이션에 의지하지 않고 MS DOS와 같은. 일부 작업은 실행되지 않을 수 있습니다. 예를 들어 많은 게임은 타이밍을 위해 클럭 속도에 의존했기 때문에 5MHz에서 10 초 만에 일어난 일은 이제 2.5GHz에서 0.02 초에 가까운 것이 발생합니다. 행운을 빈다.

실제 모드 (16 비트)는 보호 모드 (32 비트) 및 긴 모드 (64 비트)와 다르게 동작합니다. 리얼 모드 용으로 작성된 프로그램은 보호 된 모드 나 긴 모드에서는 실행할 수 없으며 다른 명령어를 사용합니다.

이전 버전과의 호환성은 x86의 가장 중요한 특성 중 하나이므로 모든 x86 프로세서는 계속 실제 모드로 시작됩니다. (그렇지 않으면 아마 지금까지 덜 정신없는 아키텍처로 옮겨 갔을 것입니다. 인텔도 아이태니엄 .)

BIOS와 UEFI는 CPU가 아닌 마더 보드의 일부입니다. 따라서 원래의 IBM PC와 역 호환을 유지하고 있고 매우 단순한 BIOS는 부트 로더에 제어권을 넘겨 주므로 CPU를 리얼 모드로 남겨 둡니다. UEFI는 그러한 하위 호환성을 위해 설계되지 않았으므로 컨트롤을 전달하기 전에 보호 모드로 자유롭게 전환 할 수 있습니다. 그러나 UEFI 컴퓨터에서 동일한 x86 CPU를 꺼내서 호환되는 마더 보드가있는 BIOS 컴퓨터에 넣으면 여전히 작동 할 것입니다. 부트 로더를로드하기 전에 32 비트 보호 모드로 점프하는 것이 이제는 16 비트 모드로 유지됩니다 부트 로더 전에.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.