如何在minix 3.2.1中修改某个系统调用?

时间:2016-04-16 21:13:11

标签: call system minix

我是minix 3.2.1的新手,我想更改某个系统调用及其输出。例如,当我输入mkdir Newdirectory时,我想在屏幕上看到New dir - > myNewDirectory 755(755代表访问权限)。我怎么能做到这一点?

1 个答案:

答案 0 :(得分:0)

首先,您需要找到要修改的正确文件。对于您的示例,您可以通过更改/添加usr / src / servers / vfs / open.c文件中的代码来修改mkdir命令。如果你查看o​​pen.c文件,你会发现那里有一个do_mkdir函数。您可以使用:

printf("New dir -> %s",fullpath);

do_mkdir实际上在fullpath数组中有新目录的名称,因此不必自己创建变量。至于访问权限,您可以使用S_IRWXU / S_IRWXG / S_IRWXO查看访问权限(有关更多信息,请访问http://pubs.opengroup.org/onlinepubs/7908799/xsh/sysstat.h.html)。例如,您可以将访问权限存储在整数变量中:

if(bits & S_IRUSR) x = x + 4;
if(bits & S_IWUSR) x = x + 2;
if(bits % S_IXUSR) x = x + 1;

为群组和其他人的权利做同样的事情,然后你去

请记住,您需要编译该文件才能进行更改。转到usr / src / realeasetools目录并在终端中使用make hdboot命令。重新启动,您将看到更改。