gpt4 book ai didi

x86 - 如果默认情况下禁用 A20 线,如何在 0xFFFFFFF0 处访问 BIOS ROM?

转载 作者:行者123 更新时间:2023-12-02 07:45:09 25 4
gpt4 key购买 nike

我正在阅读有关 A20 线的信息 http://wiki.osdev.org/A20_Line ,这似乎表明A20线默认是禁用的。在Pentium上,如果硬复位后立即输出的地址为0xFFFFFFF0,是否意味着A20线默认启用?

最佳答案

根据我的理解,OP 中链接的文章有点误导,应该说对于旧版 BIOS MBR 引导扇区,A20 线默认被禁用。。这将允许它在默认情况下启用,并且如果引导传统的 IBM-PC 兼容引导扇区,则固件会在引导期间禁用它。 (而不是现代 UEFI 启动,它会在相当早地切换到 CPU 后将 CPU 保持在长模式下。)

这由 external link 支持从那篇文章。 (强调已添加)

Present

Why do we have to worry about this nonsense? Because by default the A20 address line is disabled at boot time, so the operating system has to find out how to enable it, and that may be nontrivial since the details depend on the chipset used.

由于本文的其他部分使用术语“重置”,我的解释是,这特指它是作为启动过程的一部分完成的。

文章的后面特别提到了在重置期间禁用 A20 的效果。

A20 and reset

If (in protected mode) A20 is disabled, the odd megabytes are inaccessible. After a reset, execution begins at top-of-memory: 0xfffff0 on the 286 and 0xfffffff0 on 386 and later. With disabled A20 this becomes 0xeffff0 or 0xffeffff0 and the machine will probably crash, having no memory mapped there.

关于x86 - 如果默认情况下禁用 A20 线,如何在 0xFFFFFFF0 处访问 BIOS ROM?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32415491/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com