Reduced kernel size by 512KB by moving private buffer into cstart() function. Replaced assertions with erroneous return values. Removed assertions relating to isuserp(rp), since all processes should become user processes; system processes are now treated similar to other processes.
		
			
				
	
	
		
			65 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			65 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
/* Function prototypes for the system library. The implementation is contained
 | 
						|
 * in src/kernel/system/. The system library allows to access system services
 | 
						|
 * by doing a system call. System calls are  transformed into request messages
 | 
						|
 * to the SYS task that is responsible for handling the call. By convention, a
 | 
						|
 * sys_call() is transformed into a message with type SYS_CALL that is handled
 | 
						|
 * in a function named do_call(). 
 | 
						|
 */ 
 | 
						|
 | 
						|
#ifndef SYSTEM_H
 | 
						|
#define SYSTEM_H
 | 
						|
 | 
						|
/* Common includes for the system library. */
 | 
						|
#include <minix/com.h>
 | 
						|
#include <minix/config.h>
 | 
						|
#include "proc.h"
 | 
						|
 | 
						|
_PROTOTYPE( int do_exec, (message *m_ptr) );		/* process control */
 | 
						|
_PROTOTYPE( int do_fork, (message *m_ptr) );
 | 
						|
_PROTOTYPE( int do_newmap, (message *m_ptr) );
 | 
						|
_PROTOTYPE( int do_xit, (message *m_ptr) );
 | 
						|
 | 
						|
_PROTOTYPE( int do_copy, (message *m_ptr) );		/* copying */
 | 
						|
#define do_vircopy 	do_copy
 | 
						|
#define do_physcopy 	do_copy
 | 
						|
_PROTOTYPE( int do_vcopy, (message *m_ptr) );		
 | 
						|
#define do_virvcopy 	do_vcopy
 | 
						|
#define do_physvcopy 	do_vcopy
 | 
						|
_PROTOTYPE( int do_umap, (message *m_ptr) );
 | 
						|
_PROTOTYPE( int do_physzero, (message *m_ptr) );
 | 
						|
 | 
						|
_PROTOTYPE( int do_unused, (message *m_ptr) );		/* miscellaneous */
 | 
						|
_PROTOTYPE( int do_abort, (message *m_ptr) );
 | 
						|
_PROTOTYPE( int do_getinfo, (message *m_ptr) );
 | 
						|
 | 
						|
_PROTOTYPE( int do_exit, (message *m_ptr) );		/* system control */
 | 
						|
_PROTOTYPE( int do_svrctl, (message *m_ptr) );
 | 
						|
_PROTOTYPE( int do_iopenable, (message *m_ptr) );
 | 
						|
_PROTOTYPE( int do_segctl, (message *m_ptr) );
 | 
						|
 | 
						|
_PROTOTYPE( int do_irqctl, (message *m_ptr) );		/* device I/O */
 | 
						|
_PROTOTYPE( int do_devio, (message *m_ptr) );
 | 
						|
_PROTOTYPE( int do_vdevio, (message *m_ptr) );
 | 
						|
_PROTOTYPE( int do_sdevio, (message *m_ptr) );
 | 
						|
 | 
						|
_PROTOTYPE( int do_kill, (message *m_ptr) );		/* signal handling */
 | 
						|
_PROTOTYPE( int do_getsig, (message *m_ptr) );
 | 
						|
_PROTOTYPE( int do_endsig, (message *m_ptr) );
 | 
						|
_PROTOTYPE( int do_sigsend, (message *m_ptr) );
 | 
						|
_PROTOTYPE( int do_sigreturn, (message *m_ptr) );
 | 
						|
 | 
						|
_PROTOTYPE( int do_times, (message *m_ptr) );		/* clock functions */
 | 
						|
_PROTOTYPE( int do_setalarm, (message *m_ptr) );	
 | 
						|
#define         do_flagalrm 	do_setalarm
 | 
						|
#define         do_signalrm 	do_setalarm
 | 
						|
#define         do_syncalrm 	do_setalarm
 | 
						|
 | 
						|
#if ENABLE_K_TRACING
 | 
						|
_PROTOTYPE( int do_trace, (message *m_ptr) );		/* process tracing */
 | 
						|
#else
 | 
						|
#define do_trace do_unused
 | 
						|
#endif
 | 
						|
 | 
						|
 | 
						|
#endif	/* SYSTEM_H */
 |