我在我的操作系统课程中有一项任务是制作一个简单的伪堆栈 Linux 设备驱动程序。举个例子,如果我要向设备驱动程序写入“Hello”,当我读取它时它会返回“olleH”。我们必须用 C 语言构建一个测试程序来调用设备驱动程序的读/写函数来证明它以 FILO 方式运行。我已经完成了所有这些,我认为我的测试程序证明了任务的目的;但是,出于好奇,在 BASH 中,我执行了以下命令:
回声“测试”> /dev/driver
猫/开发/驱动程序
其中 /dev/driver 是我使用“mknod”创建的特殊文件。但是,当我这样做时,我会得到一个充满错误的黑屏。在我使用 CNTRL+ALT+F7 切换回 GUI 视图后,我看到 BASH 已返回“Killed”。
有谁知道可能导致这种情况发生的原因?我很困惑,因为我的测试程序调用了 open()、read() 和 write(),并且一切正常。
如果我需要显示一些代码,请问。