Wikipedia引用了英特尔手册中的这一声明
A20M#的功能主要由较旧的操作系统使用,而不由现代操作系统使用。在更新的Intel 64处理器上,可能不存在A20M#。
这是一个短语,它实际上已经存在于当今的手册中,但尚不明确:
A20M#
实际上仅是指引脚还是整个掩膜? GETSEC
或VMX指令)。A20M#引脚本身不见了,在某些时候被DMI中的VLW(虚拟旧版线)接口代替。 DMI协议足够丰富,可以包含用于声明各种旧式引脚的消息:
PCH支持VLW消息,作为传达状态信息的替代方法以下旧边带接口信号发送给处理器:•A20M#,INTR,SMI#,INIT#,NMI
此引言来自PCH系列8(哈斯韦尔时代)。
到目前为止,PCH具有A20GATE直通功能。当PCH配置为捕获对旧式8042 IO端口(60h,64h)的访问并改为提供SMI(用于USB键盘/鼠标的PS2模拟)时,它可以选择让A20线路启用序列通过而不会被捕获。
取决于PCH的配置方式,这允许EC(移动设备)或SuperIO芯片(台式机)成为命令序列的目标。
很奇怪,PCH系列8(Haswell时代)数据表,报告:
注意:不支持A20M#功能。
然而,在LPC部分(连接EC / SuperIO的地方),这可能仅意味着PCH 本身不能模拟A20门,并且必须处理外部芯片(EC或SuperIO)它。
确实是这样,PCI必须具有要由外部芯片置位的引脚。数据表中没有提及任何内容。
但是,我在中国站点的某处找到了我以前的Haswell笔记本电脑的原理图,该原理图显示该引脚(实际上是球)AN10(又称TP14)用作A20M输入引脚:
左侧的blu框标记为LYNX-POINT-DH82LPMS_BGA695。
GATEA20信号的另一端来自EC(如预期):
IT8586E / AX是Lenovo(显然)的EC。
因此,除非我误解了原理图,否则仍然可以在Haswell平台上掩盖A20线。
因此,关于A20M方面的数据表不完整。可能是《英特尔BIOS编写器指南》具备了所有功能。
至少可以在一个Haswell平台上禁用A20线吗?那么Skylake及其后继者呢?
I wrote a simple legacy boot loader that checks if the A20 line is enabled and try to disable it:
0eeh
方法禁用通过KBC的A20线路。当我在Skylake笔记本电脑上运行此程序时,BIOS返回仅支持快速A20方法的操作,并且未显示任何错误,但仍启用A20行。即使aver手动将其禁用,A20线仍处于启用状态。
我得出结论,无法在Skylake上禁用A20线,即它不再存在。
Wikipedia引用了Intel手册中的这一声明。A20M#的功能主要由较旧的操作系统使用,而不是由现代操作系统使用。在较新的Intel 64处理器上,...
似乎至少有一个Skylake平台无法再禁用A20线路。