0

我正在尝试遵循本指南,即有关用户程序的部分。显然,我能够成功地将程序从 ubuntu 传递到 Pintos 文件系统,因为我可以通过运行看到该文件pintos -q ls

pintos -q ls 的输出

运行时:

pintos-mkdisk filesys.dsk --filesys-size=2
pintos -f -q
pintos -p ../../examples/echo -a echo -- -q
pintos -q run 'echo x'

我只得到这个,没有打印:

在 pintos 中运行 echo 程序

知道为什么看不到输出吗?我也尝试过使用“hellopintos”文件,它只是一个像这样的 hello world:

#include <stdio.h>
#include <syscall.h>

    void main(){
       printf("Hello pintos\n");

    }
4

1 回答 1

0

问题是系统调用处理程序未在 userprog/syscall.c 上实现。在实现它并处理写入/打印案例后,问题得到解决。

于 2020-03-16T14:44:38.957 回答