zoukankan      html  css  js  c++  java
  • bochs: ICW1:level sensitive mode not supported 沉沉_

    最近在用bochs虚拟机写一些裸奔程序,做到时钟实验这部分时开启了定时器中断,一运行就提示:ICW1:level sensitive mode not supported.

    google 了一下,从bochs的源代码上可以看出来:这种错误出现在:

    View Code
     1 void bx_pic_c::write(Bit32u address, Bit32u value, unsigned io_len)
     2 {
     3         .........
     4         switch (address) {
     5            ......
     6            case 0x20: 
     7                   if (value & 0x08) {
     8                        BX_PANIC(("master: ICW1: level sensitive mode not supported"));
     9                   }
    10             .....
    11              case 0x80: 
    12                   if (value & 0x08) {
    13                        BX_PANIC(("master: ICW1: level sensitive mode not supported"));
    14                   }
    15             .....
    16         }
    17         ..............
    18                     
    19 }
    View Code
    从上述代码中可以看出,是往0x20 和 0xA0 端口写的值bit3(第四个位)为1 所导致的。所以我检查代码,果然发现在定时器的中断处理程序中,本来往OCW2中写入0x60,给CPU发送EOI,让我写成了60,即16进制的0x3c, bit3 为1,所以提示这个错误。
  • 相关阅读:
    驱动程序细节和权衡
    交互
    查找UI元素
    Selenium-Webdriver API命令和操作-Get & Wait
    Selenium的webdriver
    openssl生成ssl证书
    tony_nginx_02_URL重写
    CPA
    消息队列产品比较
    元数据交换绑定的秘密
  • 原文地址:https://www.cnblogs.com/chenchenluo/p/2779763.html
Copyright © 2011-2022 走看看