1 #include "syslib.h" 2 sys_fork(parent,child,child_endpoint,flags,msgaddr)3int sys_fork(parent, child, child_endpoint, flags, msgaddr) 4 endpoint_t parent; /* process doing the fork */ 5 endpoint_t child; /* which proc has been created by the fork */ 6 endpoint_t *child_endpoint; 7 u32_t flags; 8 vir_bytes *msgaddr; 9 { 10 /* A process has forked. Tell the kernel. */ 11 12 message m; 13 int r; 14 15 m.m_lsys_krn_sys_fork.endpt = parent; 16 m.m_lsys_krn_sys_fork.slot = child; 17 m.m_lsys_krn_sys_fork.flags = flags; 18 r = _kernel_call(SYS_FORK, &m); 19 *child_endpoint = m.m_krn_lsys_sys_fork.endpt; 20 *msgaddr = m.m_krn_lsys_sys_fork.msgaddr; 21 return r; 22 } 23