All changes are now in a single header file.
* System calls are transformed into request messages to the SYS task that is
* responsible for handling the call. By convention, sys_call() is transformed
* into a message with type SYS_CALL that is handled in a function do_call().
+ *
+ * Changes:
+ * Jul 30, 2005 created SYS_INT86 to support BIOS driver (Philip Homburg)
+ * Jul 13, 2005 created SYS_PRIVCTL to manage services (Jorrit N. Herder)
+ * Jul 09, 2005 updated SYS_KILL to signal services (Jorrit N. Herder)
+ * Jun 21, 2005 created SYS_NICE for nice(2) system call (Ben J. Gras)
+ * Jun 21, 2005 created SYS_MEMSET to speed up exec(2) (Ben J. Gras)
+ * Apr 12, 2005 updated SYS_VCOPY for virtual_copy() (Jorrit N. Herder)
+ * Jan 20, 2005 updated SYS_COPY for virtual_copy() (Jorrit N. Herder)
+ * Oct 24, 2004 created SYS_GETKSIG to support PM (Jorrit N. Herder)
+ * Oct 10, 2004 created handler for unused calls (Jorrit N. Herder)
+ * Sep 09, 2004 updated SYS_EXIT to let services exit (Jorrit N. Herder)
+ * Aug 25, 2004 rewrote SYS_SETALARM to clean up code (Jorrit N. Herder)
+ * Jul 13, 2004 created SYS_SEGCTL to support drivers (Jorrit N. Herder)
+ * May 24, 2004 created SYS_SDEVIO to support drivers (Jorrit N. Herder)
+ * May 24, 2004 created SYS_GETINFO to retrieve info (Jorrit N. Herder)
+ * Apr 18, 2004 created SYS_VDEVIO to support drivers (Jorrit N. Herder)
+ * Feb 24, 2004 created SYS_IRQCTL to support drivers (Jorrit N. Herder)
+ * Feb 02, 2004 created SYS_DEVIO to support drivers (Jorrit N. Herder)
*/
#ifndef SYSTEM_H
* m_type: SYS_VIRCOPY, SYS_PHYSCOPY
*
* The parameters for this system call are:
- * m5_c1: CP_SRC_SPACE
- * m5_l1: CP_SRC_ADDR
- * m5_i1: CP_SRC_PROC_NR
- * m5_c2: CP_DST_SPACE
- * m5_l2: CP_DST_ADDR
- * m5_i2: CP_DST_PROC_NR
- * m5_l3: CP_NR_BYTES
- *
- * Changes:
- * Jan 20, 2005 updated to use new virtual_copy() (Jorrit N. Herder)
+ * m5_c1: CP_SRC_SPACE source virtual segment
+ * m5_l1: CP_SRC_ADDR source offset within segment
+ * m5_i1: CP_SRC_PROC_NR source process number
+ * m5_c2: CP_DST_SPACE destination virtual segment
+ * m5_l2: CP_DST_ADDR destination offset within segment
+ * m5_i2: CP_DST_PROC_NR destination process number
+ * m5_l3: CP_NR_BYTES number of bytes to copy
*/
#include "../system.h"
* m2_i1: DIO_TYPE (flag indicating byte, word, or long)
* m2_l1: DIO_PORT (port to read/ write)
* m2_l2: DIO_VALUE (value to write/ return value read)
- *
- * Changes:
- * Feb 02, 2004 created to support user-space drivers (Jorrit N. Herder)
*/
#include "../system.h"
*
* The parameters for this system call are:
* m1_i1: PR_PROC_NR (slot number of exiting process)
- *
- * Changes:
- * Sep 09, 2004 updated to allow services to exit (Jorrit N. Herder)
*/
#include "../system.h"
* m1_i1: I_VAL_LEN (maximum length expected, optional)
* m1_p2: I_VAL_PTR2 (second, optional pointer)
* m1_i2: I_VAL_LEN2 (second length or process nr)
- *
- * Changes:
- * May 24, 2004 Created. (Jorrit N. Herder)
*/
#include "../system.h"
* The parameters for this system call are:
* m2_i1: SIG_PROC # process with pending signals
* m2_l1: SIG_MAP # bit map with pending signals
- *
- * Changes:
- * Oct 24, 2004 Created. (Jorrit N. Herder)
*/
#include "../system.h"
*
* The parameters for this system call are:
* m1_p1: INT86_REG86
- *
- * Changes:
- * Jul 30, 2005 created to support BIOS driver (Philip Homburg)
*/
#include "../system.h"
* m5_i1: IRQ_POLICY (irq policy allows reenabling interrupts)
* m5_l3: IRQ_HOOK_ID (provides index to be returned on interrupt)
* ,, ,, (returns index of irq hook assigned at kernel)
- *
- * Changes:
- * Feb 24, 2004 Created to support user-space drivers (Jorrit N. Herder)
*/
#include "../system.h"
* The parameters for this system call are:
* m2_i1: SIG_PROC # process to signal/ pending
* m2_i2: SIG_NUMBER # signal number to send to process
- *
- * Changes:
- * Jul 09, 2005 updated to signal system processes (Jorrit N. Herder)
*/
#include "../system.h"
* m2_p1: MEM_PTR (virtual address)
* m2_l1: MEM_COUNT (returns physical address)
* m2_l2: MEM_PATTERN (size of datastructure)
- *
- * Changes:
- * Jun 21, 2005 created to speed up exec(2) (Ben J. Gras)
*/
#include "../system.h"
* The parameters for this system call are:
* m1_i1: PR_PROC_NR process number to change priority
* m1_i2: PR_PRIORITY the new priority
- *
- * Changes:
- * Jun 21, 2005 created for nice(2) system call (Ben J. Gras)
*/
#include "../system.h"
*
* The parameters for this system call are:
* m1_i1: PR_PROC_NR (process number of caller)
- *
- * Changes:
- * Jul 13, 2005 created to dynamically start services (Jorrit N. Herder)
*/
#include "../system.h"
* m2_p1: DIO_VEC_ADDR (virtual address of buffer)
* m2_l2: DIO_VEC_SIZE (number of elements)
* m2_i2: DIO_VEC_PROC (process where buffer is)
- *
- * Changes:
- * May 24, 2004 Created to support user-space drivers (Jorrit N. Herder)
*/
#include "../system.h"
* m4_l1: SEG_SELECT (return segment selector here)
* m4_l2: SEG_OFFSET (return offset within segment here)
* m4_l5: SEG_INDEX (return index into remote memory map here)
- *
- * Changes:
- * Jul 13, 2004 created to support user-space drivers (Jorrit N. Herder)
*/
#include "../system.h"
#include "../protect.h"
* m2_l1: ALRM_EXP_TIME (alarm's expiration time)
* m2_i2: ALRM_ABS_TIME (expiration time is absolute?)
* m2_l1: ALRM_TIME_LEFT (return seconds left of previous)
- *
- * Changes:
- * Aug 25, 2004 fully rewritten to clean up code (Jorrit N. Herder)
*/
#include "../system.h"
/* This file provides a catch-all handler for unused system calls. A system
* call may be unused when it is not defined or when it is disabled in the
* kernel's configuration.
- *
- * Changes:
- * Oct 10, 2004 created (Jorrit N. Herder)
*/
#include "../system.h"
message *m; /* pointer to request message */
{
kprintf("SYSTEM: got unused request %d from %d", m->m_type, m->m_source);
- return(EBADREQUEST); /* illegal message type */
+ return(EBADREQUEST); /* illegal message type */
}
* m1_i3: VCP_VEC_SIZE size of copy request vector
* m1_p1: VCP_VEC_ADDR address of vector at caller
* m1_i2: VCP_NR_OK number of successfull copies
- *
- * Changes:
- * Apr 12, 2005 updated to use new virtual_copy() (Jorrit N. Herder)
*/
#include "../system.h"
* m2_i1: DIO_TYPE (flag indicating byte, word, or long)
* m2_p1: DIO_VEC_ADDR (pointer to port/ value pairs)
* m2_i2: DIO_VEC_SIZE (number of ports to read or write)
- *
- * Changes:
- * Apr 18, 2004 created to support user-space drivers (Jorrit N. Herder)
*/
#include "../system.h"