请问rust如何实现系统调用?

问题描述

在学习一些容器知识的时候, 我想尝试利用rust实现如下C代码同样功能的系统调用,创建一个新的UTS namespace.

相关代码

c代码来源: https://segmentfault.com/a/11...
   //创建并启动子进程,调用该函数后,父进程将继续往后执行,也就是执行后面的waitpid
    child_pid = clone(child_func,  //子进程将执行child_func这个函数
                    //栈是从高位向低位增长,所以这里要指向高位地址
                    child_stack + sizeof(child_stack),
                    //CLONE_NEWUTS表示创建新的UTS namespace,
                    //这里SIGCHLD是子进程退出后返回给父进程的信号,跟namespace无关
                    CLONE_NEWUTS | SIGCHLD,
                    argv[1]);  //传给child_func的参数

我尝试搜索和查看文档暂时没有找到相关的实现方法

阅读 7.1k
1 个回答
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏