问题标签 [bochs]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
8 回答
7671 浏览

macos - 在 Mac os x Snow Leopard 上编译 Bochs

是否有人能够在雪豹下编译 Bochs 模拟器。Leopard 对我来说工作得很好,但是在 Snow Leopard 下我遇到了很多与 Carbon 库相关的问题......

好的,需要更多信息。

  • 我在 shell 上用 make 编译;bochs 源附带的标准构建过程
  • 我成功地能够针对 10.5 SDK 进行编译。不幸的是,它没有在雪豹下运行……总是崩溃
  • 然后我从 SnowLeopard CD 中安装了最新的 XCode,并针对 10.6 SDK 进行了编译;只改变 isysroot 标志以指向 10.6 而不是 10.5 现在编译器无法找到一些碳标头...(-framework Carbon 作为参数包含在 g++ 中)

这里的错误......在为 bochs 编译基于碳的 gui 时失败:

... 更多未声明的 xxx 错误

在此先感谢 Mac

0 投票
2 回答
1327 浏览

bios - BIOS INT 0x15 Function 0x88 总是返回相同的内存大小

我在我的 Bochs 模拟器上使用 BIOS int 0x15,但是无论我配置了什么,它总是返回相同的内存大小(34440):

我知道有更好的内存检测方法,但我想了解为什么这没有按预期工作(以防万一我做了什么)

为什么是这样?bochs bios 是否只是硬编码以返回此值?

0 投票
1 回答
353 浏览

vmware - 如何开始实施虚拟机?

我最近对实现一个基本的 x86 虚拟机产生了兴趣。我认为这将是完全理解 x86 架构工作方式的最佳方式之一。

除了 bochs、QEMU、kvm 或 xen 等开源 VMM 的代码库之外,您会建议我从哪些资源开始着手?

0 投票
3 回答
3416 浏览

debugging - 使用 Bochs + GDB 进行调试:“找不到当前函数的边界”?

我正在编写一个操作系统,但在尝试调试我的代码时遇到了问题。我正在使用 GDB 连接到 Bochs 的 GDB 存根以“远程”调试我的内核。连接工作正常,从内核文件加载调试符号也是如此。我为成功定位的 kmain 函数设置了一个断点,并且调试器正确中断(在我的内核中)。但是,我不能通过我的代码“步进”或“下一步”,GDB 显然也不能确定哪一行代码是当前行。

当我尝试“步进”时,我收到以下消息:“找不到当前函数的边界”。这是我在任何时候收到的唯一错误消息。

我的代码正在使用 -g 标志在 GCC 中编译(我尝试过使用 GCC 选项的其他类型的调试信息;没有一个有效。)我尝试查看 GDB 手册,以及寻找答案,我我完全被难住了。任何帮助都会很棒。

谢谢!

0 投票
1 回答
1658 浏览

macos - InitCursor()、CreateStandardAlert()、RunStandardAlert() 在编译 boch 时未在范围内声明

我试图编译 sh .conf.macosx 工作的 bochs 但 make 命令导致InitCursor(), CreateStandardAlert(), RunStandardAlert()not 在范围内声明是否有明显我遗漏的东西。

提前谢谢。

——斯里曼思

0 投票
1 回答
1185 浏览

assembly - 在软盘映像文件中使用 grub 在 bochs 中启动您自己的内核

基本上我已经按照这里的说明http://sig9.com/bochs-grub创建了一个裸映像文件,它什么都不做,只是让 BIOS 启动 GRUB。

问题是:

  • 我正在编写的内核将是 32 位的,首先使用http://www.jamesmolloy.co.uk/tutorial_html/index.html,但我的主机(物理)机器是 x86_64,bochs 配置如下:

    ./configure --prefix=/usr --enable-vbe --without-wx --enable-cpu-level=6 \ --enable-fpu \ --enable-plugins --enable-x86-64 --enable -smp \ --enable-long-phy-address --enable-debugger --enable-disasm --enable-debugger-gui \ --enable-raw-serial --enable-vmx --enable-x86-debugger - -启用-iodebug

所以我不确定这是否可行,即使在解决了下一个问题之后:

  • 当我启动 bochs 时,grub shell 不会启动。

我得到的是:

有谁知道我做错了什么?

我怀疑按照http://sig9.com/bochs-grub的说明将主机的 64 位 grub 二进制文件复制到应该是 32 位仿真系统的 floppy.img 上。

0 投票
2 回答
3572 浏览

linux - DOS 上的 NASM(Intel 8086):无效的有效地址

我正在使用 Bochs 为 DOS 编写代码。我正在使用NASM
编译程序 假设我有以下代码:

为什么nasm在线抱怨:

无效的有效地址?

如果不使用bx我使用si注册表,则程序会按预期编译作品,将t的ascii 值加载到al中。

为什么?

编辑:发现我不能使用 BX 进行索引。
如果我想加载数据段的确定部分中指向的内容,您可以执行以下操作:

如果我想保持si指向字符串的开头,我可以使用 BX 作为偏移量:

甚至

但据我了解,bx 也可以使用,所以问题仍然存在。

0 投票
3 回答
6116 浏览

assembly - 如何使用 Bochs 运行汇编代码?

我想将 Bochs 用作 8086 仿真器。是否有捷径可寻?我想要的是类似emu8086(http://www.emu8086.com/)的东西。

0 投票
0 回答
530 浏览

cygwin - Cygwin下编译Bochs 2.4.6

谁能告诉我一个Cygwin可以成功编译的版本Bochs 2.4.6?我已经尝试过使用最新版本,Cygwin (1.7.9(0.237/5/3))但遇到了一堆错误。

具体来说,我C compiler cannot create executables在尝试./configureBochs 时最初遇到了一个错误:

我通过使用 /usr/bin/set-gcc-default-3.sh 将我的默认 gcc 切换到版本 3.x 解决了这个问题。然而,尽管构建的进展很顺利,但我终于得到了一个DEPRECATED错误:

现在,我不知道如何克服最后一个错误,所以我被卡住了。

任何帮助将不胜感激。

非常感谢。

0 投票
1 回答
424 浏览

assembly - 如何设置 x86 分页?出现三重故障错误

我有一个玩具内核,我正在使用它在 bochs 上的 x86 下运行。当我启用分页时,bochs 重置并出现三重故障错误。似乎是所有的内存访问都会触发错误。所以,我假设我在设置分页时出错,问题不在于我的中断处理程序。这是代码。

分页.c

paging_asm.s