xv6-lab-2024 使用 usertest 验证调用到 kernel 操作
使用 usertest.c 的用户函数验证调用 kernel 函数
以 symlink() 为例介绍如何测试 user 函数已经调用到 kernel 函数了
// user.h
int symlink(char *target, char *path);
// usys.pl
entry("symlink");
// syscall.c
extern uint64 sys_symlink(void);
// syscall.h
#define SYS_symlink 22
// sysfile.c
uint64 sys_symlink(void)
{
printf("sys_symlink\n");
return 0;
}
// usertests.c
uint64 sys_symlink(void)
{
printf("sys_symlink\n");
return 0;
}
quicktests[] = {
{symlinktest, "symlinktest"},
}
然后执行编译,测试
make qemu
usertests symlinktest