【问题标题】:Change /dev/zero in MINIX to produce 'a'在 MINIX 中更改 /dev/zero 以生成 'a'
【发布时间】:2015-08-24 16:15:39
【问题描述】:

对于一个项目,我必须更改零驱动程序以产生无限量的“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 创建一个新的。但仍然没有任何变化。我也试过重启。

我是更改了错误的文件还是没有编译正确的文件?

【问题讨论】:

    标签: c minix ramdisk


    【解决方案1】:

    假设您正在编辑内核源代码,您可能需要重新启动才能看到更改生效。

    【讨论】:

    • 正如我在问题中所说,我尝试重新启动。没有观察到变化。
    【解决方案2】:

    好的,我发现执行以下操作可以解决问题:

    cd /usr/src/drivers/memory/
    make
    cd ..
    make clean
    make build
    make install
    cd ..
    make world
    make install
    cd kernel
    make clean
    make
    shutdown
    

    所以基本上是重新编译几个目录,然后重新启动操作系统。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-01-20
      • 1970-01-01
      • 2015-03-21
      • 1970-01-01
      • 1970-01-01
      • 2017-11-06
      • 2011-11-18
      • 2018-10-04
      相关资源
      最近更新 更多