1 /* 2 * Copyright (C) 2000 Jeff Dike (jdike@karaya.com) 3 * Licensed under the GPL 4 */ 5 6 #ifndef __KERN_H__ 7 #define __KERN_H__ 8 9 /* These are all user-mode things which are convenient to call directly 10 * from kernel code and for which writing a wrapper is too much of a pain. 11 * The regular include files can't be included because this file is included 12 * only into kernel code, and user-space includes conflict with kernel 13 * includes. 14 */ 15 16 extern int errno; 17 18 extern int clone(int (*proc)(void *), void *sp, int flags, void *data); 19 extern int sleep(int); 20 extern int printf(const char *fmt, ...); 21 extern char *strerror(int errnum); 22 extern char *ptsname(int __fd); 23 extern int munmap(void *, int); 24 extern void *sbrk(int increment); 25 extern void *malloc(int size); 26 extern void perror(char *err); 27 extern int kill(int pid, int sig); 28 extern int getuid(void); 29 extern int getgid(void); 30 extern int pause(void); 31 extern int write(int, const void *, int); 32 extern void exit(int); 33 extern int close(int); 34 extern int read(unsigned int, char *, int); 35 extern int pipe(int *); 36 extern int sched_yield(void); 37 extern int ptrace(int op, int pid, long addr, long data); 38 39 #endif 40 41