问题标签 [xv6]

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 投票
1 回答
837 浏览

unix - 如何在windows上编译和运行xv6?

可能重复:
如何在 Windows 上编译和运行 xv6?

在我们的课程中,我们正在学习xv6。目前我们在windows中 使用putty登录我们学校的linux服务器。

在那里我们对 xv6 的源代码进行了更改(使用 vim),然后在qemu中简单地编译和运行它

并非总是可以连接到他们的服务器,因此我希望能够在 windows 下编译和运行 xv6(显然在某些模拟器中)。

我可以使用什么模拟器来完成上述工作?(编辑代码,编译和运行)以及如何?

0 投票
5 回答
9130 浏览

windows - 如何在windows上编译和运行xv6?

在我们的课程中,我们正在学习xv6。目前我们在windows中 使用putty登录我们学校的linux服务器。

在那里我们对 xv6 的源代码进行了更改(使用 vim),然后在qemu中简单地编译和运行它

并非总是可以连接到他们的服务器,因此我希望能够在 windows 下编译和运行 xv6(显然在某些模拟器中)。

我可以使用什么模拟器来完成上述工作?(编辑代码,编译和运行)以及如何?

0 投票
3 回答
38484 浏览

operating-system - 如何在 xv6 中添加系统调用/实用程序

谁能告诉我/指出任何关于如何在 XV6 中添加系统调用/实用程序的参考资料

在 google 上进行详尽的搜索是徒劳的,而且到目前为止,用艰难的方式进行黑客攻击也没有成效。

参考书也没有任何 hello world 示例开始,非常感谢任何帮助

0 投票
1 回答
570 浏览

c - xv6 rev6 syscall() 中的奇怪代码

任何人都可以看到为什么使用以下 ifs,即 xv6-rev6 代码中的第 3279-3285 行:

而不仅仅是:

0 投票
2 回答
3192 浏览

c - xv6 的 Makefile

我正在阅读 xv6 的代码,并且发现很难阅读 Makefile。你能告诉我以下语句是如何工作的:

以及如何详细学习Makefile?能推荐几本好书吗?

谢谢!

0 投票
2 回答
9546 浏览

gdb - 使用 gdb 在 xv6 上调试用户代码

我正在做一个基于 xv6 的操作系统类,并且我编写了一个需要在其上运行的程序。

我知道我可以调试内核代码,make qemu-gdb但我不确定如何调试我自己的用户程序。

假设我想调试cat,我该怎么做?

谢谢

PS不是有xv6标签吗?这个问题甚至应该去这里吗?

0 投票
2 回答
526 浏览

c - 操作给定路径的递归函数

我正在修改教学 OS xv6(用 c 编写)以支持符号链接(AKA 快捷方式)。符号链接是 T_SYM 类型的文件,其中包含指向其目标的路径。为此,我编写了一个递归函数,它获取路径和缓冲区并用“真实”路径填充缓冲区(即,如果路径包含链接,则应将其替换为真实路径,并且链接可能发生在路径中的任何级别)。

基本上,如果我有一个路径 a/b/c/d,以及从 f 到 a/b 的链接,那么以下操作应该是等效的:

cd a/b/c/d

cd f/c/d

现在,代码已经写好了,但我试图解决的问题是路径以“/”开头的问题(意味着路径是绝对的而不是相对的)。现在,如果我使用名为 /dir1 的路径运行它,它会将其视为 dir1(相对而不是绝对)。

这是主函数,它调用递归函数。pathname 是给定的路径,buf 将包含真实路径。

这是递归部分。该函数返回一个 inode 结构(表示系统中的文件或目录)。它在 realpath 中构建真实路径。ilock 和 iunlock 被用来安全地使用 inode。

我尝试了很多方法来做到这一点,但没有成功。如果有人看到问题,我很乐意听到解决方案。谢谢, 埃亚尔

0 投票
2 回答
289 浏览

c - 如何在 Linux 中手动查找目录?

我即将编写一个显示 linux 中当前目录的命令。我知道我可以使用“pwd”命令,但这就是我需要自己实现的!...换句话说,当输入所谓的“findme”命令时,我想返回我所在的目录片刻。我已经设法创建了我的“findme”命令(这很简单,我知道),但是我应该如何知道在执行命令后我在哪里,以便显示整个目录?

0 投票
1 回答
1169 浏览

operating-system - 无法在 qemu 中启动 xv6

我使用 Debian Wheezy,我想在 qemu 中运行 xv6。我已经安装了 libsdl1.2-dev 然后开始运行 make qemu。但是出现错误:Could not initalize SDL(could not find the device)exiting。

0 投票
1 回答
496 浏览

system-calls - 在 xv6 中实现 vfork()

如果我想添加我的系统调用 vfork(copy on write) 究竟需要在 syscall.c 中编辑什么?我将在哪里添加我的 vfork 代码片段。简而言之,我将如何在 xv6 中实现 vfork?