开始实验,懵逼进来,懵逼出去。
1.sleep程序
先看课程官网的要求。试图从XV6教材中吸取知识,看着看着就懵逼了。课程官网有一些提示,所以新建sleep.c。观察其他程序,包含有头文件、主函数。
//引入头文件
#include "kernel/types.h"
#include "kernel/stat.h"
#include "user/user.h"
//主函数
int
main(int argc, char *argv[]){}
这个主函数有两个参数,我的疑问是,这两个参数有什么用?查找资料(链接)后:
int argc //参数个数,包含命令名
比如:
$ sleep 10
argc=2。命令名+1个参数,共2个参数
char *argv[] //获取输入参数
$ sleep 10
意味着:argv[0]的值是sleep,argv[1]的值是10
从user.h中可以找到sleep:
![]()
“Your sleep should pause for a user-specified number of ticks. ”
sleep函数只要1个int参数:用户输入的a user-specified number of ticks。

本文讲述了作者在学习XV6教材中关于sleep程序的实践过程,涉及参数理解、主函数分析、Makefile使用、Git版本控制以及解决输入错误和权限问题。
最低0.47元/天 解锁文章
501

被折叠的 条评论
为什么被折叠?



