代码之家  ›  专栏  ›  技术社区  ›  md.jamal

如何通过键盘端口重新启动

  •  0
  • md.jamal  · 技术社区  · 5 年前

    下面的代码是如何重新启动系统的,可以提供关于这个

    #define KEYBOARD_PORT 0x64
    ioperm(KEYBOARD_PORT, 0x01, 0x01);
    outb(0xfe, KEYBOARD_PORT);
    

    在键盘端口上写“0xfe”有什么意义。

    1 回复  |  直到 5 年前
        1
  •  2
  •   Antti Haapala -- Слава Україні    5 年前

    最初的8042“PS/2键盘控制器”设计在控制器上有一些额外的管脚,而小气鬼IBM的工程师确实在这些额外的管脚上连接了很多东西。一个管脚连接到CPU复位管脚,另一个未使用的管脚用于修复80286地址环绕不兼容,该修复被称为 the A20 gate .

    命令字节 0xFx 意思是“将所选线路向下脉冲6毫秒” E 选择重置行(位0为零)。其效果是重置CPU,以便它根据其引导顺序开始执行代码。

    当然,目前的个人电脑没有英特尔8042微控制器,只是一个模拟。。。


    更多信息 Osdev wiki article Reboot PS/2 Controller .

    推荐文章