syscalls.h

Go to the documentation of this file.
00001 /*****************************************************************************************
00002  Copyright (c) 2002-2004 The UbixOS Project
00003  All rights reserved.
00004 
00005  Redistribution and use in source and binary forms, with or without modification, are
00006  permitted provided that the following conditions are met:
00007 
00008  Redistributions of source code must retain the above copyright notice, this list of
00009  conditions, the following disclaimer and the list of authors.  Redistributions in binary
00010  form must reproduce the above copyright notice, this list of conditions, the following
00011  disclaimer and the list of authors in the documentation and/or other materials provided
00012  with the distribution. Neither the name of the UbixOS Project nor the names of its
00013  contributors may be used to endorse or promote products derived from this software
00014  without specific prior written permission.
00015 
00016  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
00017  EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
00018  MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
00019  THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
00020  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
00021  OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
00022  HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
00023  TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
00024  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00025 
00026  $Id: syscalls_8h-source.html 88 2016-01-12 00:11:29Z reddawg $
00027 
00028 *****************************************************************************************/
00029 
00030 #ifndef _SYSCALLS_H
00031 #define _SYSCALLS_H
00032 
00033 #include <ubixos/sched.h>
00034 #include <vfs/file.h>
00035 
00036 void sysAuth();
00037 void sysPasswd();
00038 void sysAddModule();
00039 void sysRmModule();
00040 void sysGetpid();
00041 void sysExit();
00042 void sysExec();
00043 void sysFork();
00044 void sysCheckPid();
00045 void sysGetFreePage();
00046 
00047 void sysFwrite();
00048 void sysFgetc();
00049 void sysFopen();
00050 void sysFread();
00051 void sysFclose();
00052 void sysSchedYield();
00053 void sysFseek();
00054 void sysMkDir();
00055 void sysRmDir();
00056 void sysGetUid();
00057 void sysGetGid();
00058 void sysSetUid();
00059 void sysSetGid();
00060 void sysSDE();
00061 void sysGetDrives();
00062 void sysGetCwd();
00063 void sysChDir();
00064 void sysGetUptime();
00065 void sysGetTime();
00066 void sysStartSDE();
00067 void sysUnlink();
00068 void sysMpiCreateMbox();
00069 void sysMpiDestroyMbox();
00070 void sysMpiPostMessage();
00071 void sysMpiFetchMessage();
00072 void sysMpiSpam();
00073 
00074 typedef void (*functionPTR)();
00075 
00076 functionPTR systemCalls[] = {
00077   invalidCall,      
00078   sysGetpid,        
00079   sysExit,          
00080   sysExec,          
00081   sysFork,          
00082   sysFgetc,         
00083   sysCheckPid,      
00084   sysGetFreePage,   
00085   sysFopen,         
00086   invalidCall,      
00087   sysFclose,        
00088   sysSchedYield,    
00089   invalidCall,      
00090   invalidCall,      
00091   invalidCall,      
00092   invalidCall,      
00093   invalidCall,      
00094   invalidCall,      
00095   invalidCall,      
00096   invalidCall,      
00097   sysFopen,         
00098   sysFclose,        
00099   sysFread,         
00100   sysFwrite,        
00101   sysMkDir,         
00102   sysRmDir,         
00103   sysGetCwd,        
00104   sysFseek,         
00105   sysChDir,         
00106   sysMkDir,         
00107   sysUnlink,        
00108   sysGetUid,        
00109   sysGetGid,        
00110   sysSetUid,        
00111   sysSetGid,        
00112   sysAuth,          
00113   sysPasswd,        
00114   sysAddModule,     
00115   sysRmModule,      
00116   invalidCall,      
00117   //sysSDE,           /**  40 SDE Kernel Interface    **/
00118   invalidCall,      
00119   invalidCall,      
00120   invalidCall,      
00121   invalidCall,      
00122   invalidCall,      
00123   sysGetDrives,     
00124   sysGetUptime,     
00125   sysGetTime,       
00126   sysStartSDE,      
00127   invalidCall,      
00128   sysMpiCreateMbox,   
00129   sysMpiDestroyMbox,  
00130   sysMpiPostMessage,  
00131   sysMpiFetchMessage, 
00132   sysMpiSpam,         
00133   };
00134 
00135 int totalCalls = sizeof(systemCalls)/sizeof(functionPTR);
00136 
00137 #endif
00138 
00139 /***
00140  $Log: syscalls_8h-source.html,v $
00140  Revision 1.7  2006/12/15 17:47:07  reddawg
00140  Updates
00140 
00141  Revision 1.2  2006/10/12 17:05:44  reddawg
00142  Removing SDE
00143 
00144  Revision 1.1.1.1  2006/06/01 12:46:14  reddawg
00145  ubix2
00146 
00147  Revision 1.2  2005/10/12 00:13:37  reddawg
00148  Removed
00149 
00150  Revision 1.1.1.1  2005/09/26 17:23:56  reddawg
00151  no message
00152 
00153  Revision 1.5  2005/08/04 22:48:39  fsdfs
00154 
00155  added 4 new syscalls: sysAuth(), sysPasswd(), sysAddModule(), sysRmModule()
00156 
00157  Revision 1.4  2004/05/26 15:39:22  reddawg
00158  mpi: brought mpiDestroyMbox(char *name) in to the userland
00159 
00160  Revision 1.3  2004/05/25 15:42:19  reddawg
00161  Enabled mpiSpam();
00162 
00163  Revision 1.2  2004/05/21 15:20:00  reddawg
00164  Cleaned up
00165 
00166 
00167  END
00168  ***/

Generated on Fri Dec 15 11:18:55 2006 for UbixOS V2 by  doxygen 1.4.7