1
我是FreeBSD的新手。我在VMware上安裝了FreeBSD-11.0-RELEASE-amd64。我想添加第一個新的系統調用。我找到這link。FreeBSD-11.0-RELEASE-amd64中簡單的新系統調用
我所做的:
CD/usr/src目錄/ SYS /克恩
EE mykern.c
#include <sys/sysproto.h>
#include <sys/proc.h>
#include <sys/types.h>
#include <sys/systm.h>
#ifndef _SYS_SYSPROTO_H_
struct myargs {
int k;
};
#endif
int func(struct thread *p, struct myargs *uap)
{
printf("Hello");
return (0);
}
我說我的系統調用來結束/克恩/ syscalls.master
550 AUE_NULL STD { int func(int k);}
然後我做了
CD/usr/src目錄
須藤讓-C/SYS /克恩/的sysent
接下來,我添加的文件到/ SYS/conf目錄/文件
kern/mykern.c standard
而且,我加入了系統調用/kern/capabilities.conf
##
## Allow associating SHA1 key with user
##
func
最後,而在/ usr/src目錄/我跑的命令
須藤使-j8內核
而在這一步,我得到:
make don't know how to make kernel. Stop
make stopped in /usr/src
這是'make buildkernel',我懷疑。 – arrowd
make buildkernel,同樣的錯誤!我失去了我的希望! – user7194905
[在FreeBSD-11.0-RELEASE-amd64上添加新的系統調用]的可能重複(http://stackoverflow.com/questions/42186375/add-a-new-system-call-at-freebsd-11-0-釋放-AMD64) – arved