Bochs 中的 PintOS 安装
PintOS Installation in Bochs
过去几天我一直在 Bochs 中安装 Pintos。 "threads" 目录中的所有内容都编译得很好,我还设置了所有路径。我在构建目录中有 kernel.lo 和其他文件。
问题出在我 运行 的最后一个命令上:
pintos 运行 报警倍数
这会产生一个错误:
无法识别的字符 \x16;在第 911 行 /home/superboy/pintos/src/utils/pintos 第 7 列附近的 if ($<-- HERE) 之后用 <-- HERE 标记。
pintos 脚本第 911 行的代码是:
# Calls setitimer to set a timeout, then execs what was passed to us.
sub exec_setitimer {
if (defined $timeout) {
if ($ ge 5.8.0) {
eval "
use Time::HiRes qw(setitimer ITIMER_VIRTUAL);
setitimer (ITIMER_VIRTUAL, $timeout, 0);
";
} else {
{ exec ("setitimer-helper", $timeout, @_); };
exit 1 if !$!{ENOENT};
print STDERR "warning: setitimer-helper is not installed, so ",
"CPU time limit will not be enforced\n";
}
}
exec (@_);
exit (1);
}
我正在使用 Debian-9 Stretch
用vim打开utils目录下的Pintos文件,实际输入控制字符替换字符“^V”。这应该可以解决它。
我在 ubuntu 中重复了相同的步骤并且成功了。似乎 pintos 在 Debian 上有问题 运行。
过去几天我一直在 Bochs 中安装 Pintos。 "threads" 目录中的所有内容都编译得很好,我还设置了所有路径。我在构建目录中有 kernel.lo 和其他文件。
问题出在我 运行 的最后一个命令上: pintos 运行 报警倍数
这会产生一个错误: 无法识别的字符 \x16;在第 911 行 /home/superboy/pintos/src/utils/pintos 第 7 列附近的 if ($<-- HERE) 之后用 <-- HERE 标记。
pintos 脚本第 911 行的代码是:
# Calls setitimer to set a timeout, then execs what was passed to us.
sub exec_setitimer {
if (defined $timeout) {
if ($ ge 5.8.0) {
eval "
use Time::HiRes qw(setitimer ITIMER_VIRTUAL);
setitimer (ITIMER_VIRTUAL, $timeout, 0);
";
} else {
{ exec ("setitimer-helper", $timeout, @_); };
exit 1 if !$!{ENOENT};
print STDERR "warning: setitimer-helper is not installed, so ",
"CPU time limit will not be enforced\n";
}
}
exec (@_);
exit (1);
}
我正在使用 Debian-9 Stretch
用vim打开utils目录下的Pintos文件,实际输入控制字符替换字符“^V”。这应该可以解决它。
我在 ubuntu 中重复了相同的步骤并且成功了。似乎 pintos 在 Debian 上有问题 运行。