BarryServer : Git

All the code for all my projects
// BarryServer : Git / Nucleus / blob / master / include / sys / sched.h

// Related

Nucleus

Barry Kernel threads + threads share address space 6217f0d (3 years, 1 month ago)
#ifndef _SYS_SCHED_H
#define _SYS_SCHED_H

#include <sys/types.h>

/* Flags for clone syscall */
enum CloneFlag {
	CLONE_NONE    = (0),
	CLONE_PARENT  = (1 << 0),
	CLONE_THREAD  = (1 << 1),
	CLONE_FILES   = (1 << 2),
	CLONE_FS      = (1 << 3),
	CLONE_VM      = (1 << 4),
	CLONE_SIGHAND = (1 << 5),
	CLONE_IPC     = (1 << 6), // TODO: Add IPC namespace
};

pid_t getpid(void);
pid_t clone(int flags, void *stack);
_Noreturn void exit(int status);

uid_t getuid(void);
int setuid(uid_t uid);
uid_t geteuid(void);
int seteuid(uid_t euid);
gid_t getgid(void);
int setgid(gid_t gid);
gid_t getegid(void);
int setegid(gid_t egid);

#endif