home *** CD-ROM | disk | FTP | other *** search
/ NeXTSTEP 3.2 (Developer) / NS_dev_3.2.iso / NextDeveloper / Headers / mach / mach_traps.h < prev    next >
Text File  |  1993-10-19  |  3KB  |  112 lines

  1. /* 
  2.  * Mach Operating System
  3.  * Copyright (c) 1989 Carnegie-Mellon University
  4.  * Copyright (c) 1988 Carnegie-Mellon University
  5.  * Copyright (c) 1987 Carnegie-Mellon University
  6.  * All rights reserved.  The CMU software License Agreement specifies
  7.  * the terms and conditions for use and redistribution.
  8.  */
  9. /*
  10.  * HISTORY
  11.  * $Log:    mach_traps.h,v $
  12.  * 23-Apr-90  Morris Meyer (mmeyer) at NeXT
  13.  *    Converted all macros to conform to the ANSI standard.
  14.  *    Cannot have nested ifdef's inside of defined macros in ANSI C.
  15.  *
  16.  * Revision 2.6  89/10/11  14:38:46  dlb
  17.  *     Add host traps.
  18.  *     [89/01/25            dlb]
  19.  * 
  20.  * Revision 2.5  89/03/09  20:20:46  rpd
  21.  *     More cleanup.
  22.  * 
  23.  * Revision 2.4  89/02/25  18:37:15  gm0w
  24.  *     Changes for cleanup.
  25.  * 
  26.  * Revision 2.3  89/02/19  12:57:44  rpd
  27.  *     Moved from kern/ to mach/.
  28.  * 
  29.  * Revision 2.2  89/01/15  16:24:46  rpd
  30.  *     Updated includes for the new mach/ directory.
  31.  *     [89/01/15  15:03:03  rpd]
  32.  * 
  33.  * 18-Jan-88  David Golub (dbg) at Carnegie-Mellon University
  34.  *    Add thread_reply.  Leave in task_data as an alternate name -
  35.  *    they are functionally indistinguishable.
  36.  *
  37.  * 15-Oct-86  Avadis Tevanian (avie) at Carnegie-Mellon University
  38.  *    Include ../kern/mach_types.h instead of <kern/mach_types.h> when
  39.  *    building for the kernel.
  40.  *
  41.  *  1-Sep-86  Michael Young (mwyoung) at Carnegie-Mellon University
  42.  *    Created, mostly to help build the lint library.
  43.  *    Should eventually include this in "syscall_sw.c".
  44.  *
  45.  */
  46. /*
  47.  *    Definitions of general Mach system traps.
  48.  *
  49.  *    IPC traps are defined in <mach/message.h>.
  50.  *    Kernel RPC functions are defined in <mach/mach_interface.h>.
  51.  */
  52.  
  53. #ifndef    _MACH_MACH_TRAPS_H_
  54. #define _MACH_MACH_TRAPS_H_
  55.  
  56. #define _MACH_INIT_    1
  57.  
  58. #import <mach/mach_types.h>
  59.  
  60. #ifdef    KERNEL
  61. port_t        task_self();
  62. port_t        task_data();
  63. port_t        task_notify();
  64. port_t        thread_self();
  65. port_t        thread_reply();
  66. port_t        host_self();
  67. port_t        host_priv_self();
  68. #if NeXT
  69. port_t        device_master_self();
  70. port_t        _event_port_by_tag();
  71. port_t        _lookupd_port();
  72. #endif
  73. #else   KERNEL
  74. #if    NeXT
  75. task_t        (task_self)(void);
  76. port_t        task_notify(void);
  77. thread_t    thread_self(void);
  78. port_t        thread_reply(void);
  79. host_t        host_self(void);
  80. host_priv_t    host_priv_self(void);
  81. port_t        device_master_self(void);
  82. port_t        _event_port_by_tag(int tag);
  83. port_t        _lookupd_port(port_t);
  84. task_t        task_by_pid(int pid);
  85. kern_return_t    init_process(void);
  86. kern_return_t    map_fd(
  87.             int        fd,
  88.             vm_offset_t    offset,
  89.             vm_offset_t    *va,
  90.             boolean_t    findspace,
  91.             vm_size_t    size);
  92. boolean_t    swtch(void);
  93. boolean_t    swtch_pri(int pri);
  94. kern_return_t    thread_switch(
  95.             thread_t    thread_name,
  96.             int    option,
  97.             int    option_time);
  98. #else    NeXT
  99. task_t        task_self();
  100. port_t        task_data();
  101. port_t        task_notify();
  102. thread_t    thread_self();
  103. port_t        thread_reply();
  104. host_t        host_self();
  105. host_priv_t    host_priv_self();
  106. port_t        device_master_self();
  107. port_t        _event_port_by_tag();
  108. #endif    NeXT
  109. #endif    KERNEL
  110.  
  111. #endif    _MACH_MACH_TRAPS_H_
  112.