对于一个项目,我必须改变零驱动器以产生无限量的'a'而不是通常的零。所以我修改了/usr/src/drivers/memory/memory.c
这是原作:
/* Initialize /dev/zero. Simply write zeros into the buffer. */
for (i=0; i<ZERO_BUF_SIZE; i++) {
dev_zero[i] = '\0'; //This is line 247
}
这是我的修改:
/* Initialize /dev/zero. Simply write zeros into the buffer. */
for (i=0; i<ZERO_BUF_SIZE; i++) {
dev_zero[i] = 'a'; //This is line 247
}
所以我保存并关闭并重新编译memory.c但是当我说cat /dev/zero
时没有变化。我甚至尝试删除/ dev / zero并使用mknod /dev/zero c 1 5
创建一个新的。但仍然没有变化。我也试过重启。
我是否更改了错误的文件,或者我没有编译正确的文件?
答案 0 :(得分:0)
假设您正在编辑内核源代码,您可能需要重新启动才能看到更改生效。
答案 1 :(得分:0)
好的,我发现执行以下操作可以解决问题:
cd /usr/src/drivers/memory/
make
cd ..
make clean
make build
make install
cd ..
make world
make install
cd kernel
make clean
make
shutdown
所以基本上重新编译一些目录,然后重新启动操作系统。