在我们的课程中,我们正在学习xv6。目前我们在windows中 使用putty登录我们学校的linux服务器。
在那里我们对 xv6 的源代码进行了更改(使用 vim),然后在qemu中简单地编译和运行它
make clean
make
make qemu-nox
并非总是可以连接到他们的服务器,因此我希望能够在 windows 下编译和运行 xv6(显然在某些模拟器中)。
我可以使用什么模拟器来完成上述工作?(编辑代码,编译和运行)以及如何?
在我们的课程中,我们正在学习xv6。目前我们在windows中 使用putty登录我们学校的linux服务器。
在那里我们对 xv6 的源代码进行了更改(使用 vim),然后在qemu中简单地编译和运行它
make clean
make
make qemu-nox
并非总是可以连接到他们的服务器,因此我希望能够在 windows 下编译和运行 xv6(显然在某些模拟器中)。
我可以使用什么模拟器来完成上述工作?(编辑代码,编译和运行)以及如何?
嗯,在网站http://www.cs.mta.ac.il/~carmi/Teaching/OS.xv6/index.html上有关于如何在Windows下构建和使用XV6环境的合理说明。他们用于实际运行它的模拟器是 Bochs。
如果您想在Windows 10上使用 WSL(Linux 的 Windows 子系统),这可能会有所帮助。
第 1 步:在此之后启用和设置 WSL 。
第 2 步:运行 WSL bash 并在 WSL 上安装所需的东西。
cd <xv6-source-path>
bash
,这会将 CMD 切换到 WSL bash sudo apt-get update && sudo apt-get install git nasm build-essential qemu gdb
第 3 步:在 Makefile中禁用qemu 的视频设备。
使用任何文本编辑器在 xv6 源目录中打开 Makefile。
找到以
QEMUOPTS =
-display none
到这一行并保存文件。 第 4 步:在该终端中键入类似 linux 的命令,即
make
make qemu
现在,如果一切正常,您应该在 xv6 终端中
您可以在VirtualBox中运行 Linux ,这将在您的机器上为您提供与学校服务器上相同的环境。然后你可以继续在 qemu 中运行 xv6。不过,您将需要一台功能相当强大的机器——具有 4G 内存的双核 CPU 是我尝试使用的最低要求。
我也会选择某种 VM 解决方案(如 TMN 建议的那样),但如果您没有运行足够规格的 VM 的硬件,则可能值得尝试在 Cygwin 上构建它。
我已经尝试了上述方法,但make qemu-nox
给了我这个错误:
Cannot set up guest memory 'pc.ram': Cannot allocate memory
我打开Virtual Box GUI,右键单击VM,当它关闭(停止)时,我右键单击VM,然后单击“系统”选项卡,然后将主板内存更改为2000MB以上。
之后我跑了:
make
make qemu-nox
即使没有其他工作,这对我有用。