Annotation of Gnu-Mach/doc/mach.info-2, revision 1.1.1.3

1.1.1.3 ! root        1: This is mach.info, produced by makeinfo version 6.0 from mach.texi.
1.1       root        2: 
                      3: This file documents the GNU Mach microkernel.
                      4: 
1.1.1.3 ! root        5:    This is edition 0.4, last updated on 30 October 2015, of 'The GNU
        !             6: Mach Reference Manual', for version 1.6.
1.1       root        7: 
                      8:    Copyright (C) 2001, 2002, 2006, 2007, 2008 Free Software Foundation,
                      9: Inc.
                     10: 
                     11:      Permission is granted to copy, distribute and/or modify this
                     12:      document under the terms of the GNU Free Documentation License,
                     13:      Version 1.2 or any later version published by the Free Software
                     14:      Foundation; with no Invariant Section, with no Front-Cover Texts,
                     15:      and with no Back-Cover Texts.  A copy of the license is included in
                     16:      the section entitled "GNU Free Documentation License".
                     17: 
                     18:      This work is based on manual pages under the following copyright
                     19:      and license:
                     20: 
                     21:      Mach Operating System
                     22:      Copyright (C) 1991,1990 Carnegie Mellon University
                     23:      All Rights Reserved.
                     24: 
                     25:      Permission to use, copy, modify and distribute this software and
                     26:      its documentation is hereby granted, provided that both the
                     27:      copyright notice and this permission notice appear in all copies of
                     28:      the software, derivative works or modified versions, and any
                     29:      portions thereof, and that both notices appear in supporting
                     30:      documentation.
                     31: 
                     32:      CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
                     33:      CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR
                     34:      ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
                     35: INFO-DIR-SECTION Kernel
                     36: START-INFO-DIR-ENTRY
                     37: * GNUMach: (mach).              Using and programming the GNU Mach microkernel.
                     38: END-INFO-DIR-ENTRY
                     39: 
                     40: 
1.1.1.2   root       41: File: mach.info,  Node: Device Filter,  Prev: Device Status,  Up: Device Interface
                     42: 
                     43: 10.8 Device Filter
                     44: ==================
                     45: 
                     46:  -- Function: kern_return_t device_set_filter (device_t DEVICE,
                     47:           mach_port_t RECEIVE_PORT,
                     48:           mach_msg_type_name_t RECEIVE_PORT_TYPE, int PRIORITY,
                     49:           filter_array_t FILTER, mach_msg_type_number_t FILTER_COUNT)
                     50:      The function 'device_set_filter' makes it possible to filter out
                     51:      selected data arriving at or leaving the device and forward it to a
                     52:      port.  FILTER is a list of filter commands, which are applied to
                     53:      incoming data to determine if the data should be sent to
                     54:      RECEIVE_PORT.  The IPC type of the send right is specified by
                     55:      RECEIVE_PORT_RIGHT, it is either 'MACH_MSG_TYPE_MAKE_SEND' or
                     56:      'MACH_MSG_TYPE_MOVE_SEND'.  The PRIORITY value is used to order
                     57:      multiple filters.
                     58: 
                     59:      There can be up to 'NET_MAX_FILTER' commands in FILTER.  The actual
                     60:      number of commands is passed in FILTER_COUNT.  For the purpose of
                     61:      the filter test, an internal stack is provided.  After all commands
                     62:      have been processed, the value on the top of the stack determines
                     63:      if the data is forwarded or the next filter is tried.
                     64: 
                     65:      The first command is a header which contains two fields: one for
                     66:      flags and the other for the type of interpreter used to run the
                     67:      rest of the commands.
                     68: 
                     69:      Any combination of the following flags is allowed but at least one
                     70:      of them must be specified.
                     71: 
                     72:      'NETF_IN'
                     73:           The filter will be applied to data received by the device.
                     74: 
                     75:      'NETF_OUT'
                     76:           The filter will be applied to data transmitted by the device.
                     77: 
                     78:      Unless the type is given explicitly the native NETF interpreter
                     79:      will be used.  To select an alternative implementation use one of
                     80:      the following types:
                     81: 
                     82:      'NETF_BPF'
                     83:           Use Berkeley Packet Filter.
                     84: 
                     85:      For the listener to know what kind of packet is being received,
                     86:      when the filter code accepts a packet the message sent to
                     87:      RECEIVE_PORT is tagged with either NETF_IN or NETF_OUT.
                     88: 
                     89:      Each word of the command list specifies a data (push) operation
                     90:      (high order NETF_NBPO bits) as well as a binary operator (low order
                     91:      NETF_NBPA bits).  The value to be pushed onto the stack is chosen
                     92:      as follows.
                     93: 
                     94:      'NETF_PUSHLIT'
                     95:           Use the next short word of the filter as the value.
                     96: 
                     97:      'NETF_PUSHZERO'
                     98:           Use 0 as the value.
                     99: 
                    100:      'NETF_PUSHWORD+N'
                    101:           Use short word N of the "data" portion of the message as the
                    102:           value.
                    103: 
                    104:      'NETF_PUSHHDR+N'
                    105:           Use short word N of the "header" portion of the message as the
                    106:           value.
                    107: 
                    108:      'NETF_PUSHIND+N'
                    109:           Pops the top long word from the stack and then uses short word
                    110:           N of the "data" portion of the message as the value.
                    111: 
                    112:      'NETF_PUSHHDRIND+N'
                    113:           Pops the top long word from the stack and then uses short word
                    114:           N of the "header" portion of the message as the value.
                    115: 
                    116:      'NETF_PUSHSTK+N'
                    117:           Use long word N of the stack (where the top of stack is long
                    118:           word 0) as the value.
                    119: 
                    120:      'NETF_NOPUSH'
                    121:           Don't push a value.
                    122: 
                    123:      The unsigned value so chosen is promoted to a long word before
                    124:      being pushed.  Once a value is pushed (except for the case of
                    125:      'NETF_NOPUSH'), the top two long words of the stack are popped and
                    126:      a binary operator applied to them (with the old top of stack as the
                    127:      second operand).  The result of the operator is pushed on the
                    128:      stack.  These operators are:
                    129: 
                    130:      'NETF_NOP'
                    131:           Don't pop off any values and do no operation.
                    132: 
                    133:      'NETF_EQ'
                    134:           Perform an equal comparison.
                    135: 
                    136:      'NETF_LT'
                    137:           Perform a less than comparison.
                    138: 
                    139:      'NETF_LE'
                    140:           Perform a less than or equal comparison.
                    141: 
                    142:      'NETF_GT'
                    143:           Perform a greater than comparison.
                    144: 
                    145:      'NETF_GE'
                    146:           Perform a greater than or equal comparison.
                    147: 
                    148:      'NETF_AND'
                    149:           Perform a bitise boolean AND operation.
                    150: 
                    151:      'NETF_OR'
                    152:           Perform a bitise boolean inclusive OR operation.
                    153: 
                    154:      'NETF_XOR'
                    155:           Perform a bitise boolean exclusive OR operation.
                    156: 
                    157:      'NETF_NEQ'
                    158:           Perform a not equal comparison.
                    159: 
                    160:      'NETF_LSH'
                    161:           Perform a left shift operation.
                    162: 
                    163:      'NETF_RSH'
                    164:           Perform a right shift operation.
                    165: 
                    166:      'NETF_ADD'
                    167:           Perform an addition.
                    168: 
                    169:      'NETF_SUB'
                    170:           Perform a subtraction.
                    171: 
                    172:      'NETF_COR'
                    173:           Perform an equal comparison.  If the comparison is 'TRUE',
                    174:           terminate the filter list.  Otherwise, pop the result of the
                    175:           comparison off the stack.
                    176: 
                    177:      'NETF_CAND'
                    178:           Perform an equal comparison.  If the comparison is 'FALSE',
                    179:           terminate the filter list.  Otherwise, pop the result of the
                    180:           comparison off the stack.
                    181: 
                    182:      'NETF_CNOR'
                    183:           Perform a not equal comparison.  If the comparison is 'FALSE',
                    184:           terminate the filter list.  Otherwise, pop the result of the
                    185:           comparison off the stack.
                    186: 
                    187:      'NETF_CNAND'
                    188:           Perform a not equal comparison.  If the comparison is 'TRUE',
                    189:           terminate the filter list.  Otherwise, pop the result of the
                    190:           comparison off the stack.  The scan of the filter list
                    191:           terminates when the filter list is emptied, or a 'NETF_C...'
                    192:           operation terminates the list.  At this time, if the final
                    193:           value of the top of the stack is 'TRUE', then the message is
                    194:           accepted for the filter.
                    195: 
                    196:      The function returns 'D_SUCCESS' if some data was successfully
                    197:      written, 'D_INVALID_OPERATION' if RECEIVE_PORT is not a valid send
                    198:      right, and 'D_NO_SUCH_DEVICE' if DEVICE does not denote a device
                    199:      port or the device is dead or not completely open.
                    200: 
                    201: 
                    202: File: mach.info,  Node: Kernel Debugger,  Next: Copying,  Prev: Device Interface,  Up: Top
                    203: 
                    204: 11 Kernel Debugger
                    205: ******************
                    206: 
                    207: The GNU Mach kernel debugger 'ddb' is a powerful built-in debugger with
                    208: a gdb like syntax.  It is enabled at compile time using the
                    209: '--enable-kdb' option.  Whenever you want to enter the debugger while
                    210: running the kernel, you can press the key combination <Ctrl-Alt-D>.
                    211: 
                    212: * Menu:
                    213: 
                    214: * Operation::                     Basic architecture of the kernel debugger.
                    215: * Commands::                      Available commands in the kernel debugger.
                    216: * Variables::                     Access of variables from the kernel debugger.
                    217: * Expressions::                   Usage of expressions in the kernel debugger.
                    218: 
                    219: 
                    220: File: mach.info,  Node: Operation,  Next: Commands,  Up: Kernel Debugger
                    221: 
                    222: 11.1 Operation
                    223: ==============
                    224: 
                    225: The current location is called "dot".  The dot is displayed with a
                    226: hexadecimal format at a prompt.  Examine and write commands update dot
                    227: to the address of the last line examined or the last location modified,
                    228: and set "next" to the address of the next location to be examined or
                    229: changed.  Other commands don't change dot, and set next to be the same
                    230: as dot.
                    231: 
                    232:    The general command syntax is:
                    233: 
                    234:      COMMAND[/MODIFIER] ADDRESS [,COUNT]
                    235: 
                    236:    '!!' repeats the previous command, and a blank line repeats from the
                    237: address next with count 1 and no modifiers.  Specifying ADDRESS sets dot
                    238: to the address.  Omitting ADDRESS uses dot.  A missing COUNT is taken to
                    239: be 1 for printing commands or infinity for stack traces.
                    240: 
                    241:    Current 'ddb' is enhanced to support multi-thread debugging.  A break
                    242: point can be set only for a specific thread, and the address space or
                    243: registers of non current thread can be examined or modified if supported
                    244: by machine dependent routines.  For example,
                    245: 
                    246:      break/t mach_msg_trap $task11.0
                    247: 
                    248:    sets a break point at 'mach_msg_trap' for the first thread of task 11
                    249: listed by a 'show all threads' command.
                    250: 
                    251:    In the above example, '$task11.0' is translated to the corresponding
                    252: thread structure's address by variable translation mechanism described
                    253: later.  If a default target thread is set in a variable '$thread', the
                    254: '$task11.0' can be omitted.  In general, if 't' is specified in a
                    255: modifier of a command line, a specified thread or a default target
                    256: thread is used as a target thread instead of the current one.  The 't'
                    257: modifier in a command line is not valid in evaluating expressions in a
                    258: command line.  If you want to get a value indirectly from a specific
                    259: thread's address space or access to its registers within an expression,
                    260: you have to specify a default target thread in advance, and to use ':t'
                    261: modifier immediately after the indirect access or the register reference
                    262: like as follows:
                    263: 
                    264:      set $thread $task11.0
                    265:      print $eax:t *(0x100):tuh
                    266: 
                    267:    No sign extension and indirection 'size(long, half word, byte)' can
                    268: be specified with 'u', 'l', 'h' and 'b' respectively for the indirect
                    269: access.
                    270: 
                    271:    Note: Support of non current space/register access and user space
                    272: break point depend on the machines.  If not supported, attempts of such
                    273: operation may provide incorrect information or may cause strange
                    274: behavior.  Even if supported, the user space access is limited to the
                    275: pages resident in the main memory at that time.  If a target page is not
                    276: in the main memory, an error will be reported.
                    277: 
                    278:    'ddb' has a feature like a command 'more' for the output.  If an
                    279: output line exceeds the number set in the '$lines' variable, it displays
                    280: '--db_more--' and waits for a response.  The valid responses for it are:
                    281: 
                    282: '<SPC>'
                    283:      one more page
                    284: 
                    285: '<RET>'
                    286:      one more line
                    287: 
                    288: 'q'
                    289:      abort the current command, and return to the command input mode
                    290: 
                    291: 
1.1       root      292: File: mach.info,  Node: Commands,  Next: Variables,  Prev: Operation,  Up: Kernel Debugger
                    293: 
                    294: 11.2 Commands
                    295: =============
                    296: 
                    297: 'examine(x) [/MODIFIER] ADDR[,COUNT] [ THREAD ]'
                    298:      Display the addressed locations according to the formats in the
                    299:      modifier.  Multiple modifier formats display multiple locations.
                    300:      If no format is specified, the last formats specified for this
                    301:      command is used.  Address space other than that of the current
                    302:      thread can be specified with 't' option in the modifier and THREAD
                    303:      parameter.  The format characters are
                    304: 
                    305:      'b'
                    306:           look at by bytes(8 bits)
                    307: 
                    308:      'h'
                    309:           look at by half words(16 bits)
                    310: 
                    311:      'l'
                    312:           look at by long words(32 bits)
                    313: 
                    314:      'a'
                    315:           print the location being displayed
                    316: 
                    317:      ','
                    318:           skip one unit producing no output
                    319: 
                    320:      'A'
                    321:           print the location with a line number if possible
                    322: 
                    323:      'x'
                    324:           display in unsigned hex
                    325: 
                    326:      'z'
                    327:           display in signed hex
                    328: 
                    329:      'o'
                    330:           display in unsigned octal
                    331: 
                    332:      'd'
                    333:           display in signed decimal
                    334: 
                    335:      'u'
                    336:           display in unsigned decimal
                    337: 
                    338:      'r'
                    339:           display in current radix, signed
                    340: 
                    341:      'c'
                    342:           display low 8 bits as a character.  Non-printing characters
                    343:           are displayed as an octal escape code (e.g.  '\000').
                    344: 
                    345:      's'
                    346:           display the null-terminated string at the location.
                    347:           Non-printing characters are displayed as octal escapes.
                    348: 
                    349:      'm'
                    350:           display in unsigned hex with character dump at the end of each
                    351:           line.  The location is also displayed in hex at the beginning
                    352:           of each line.
                    353: 
                    354:      'i'
                    355:           display as an instruction
                    356: 
                    357:      'I'
                    358:           display as an instruction with possible alternate formats
                    359:           depending on the machine:
                    360: 
                    361:           'vax'
                    362:                don't assume that each external label is a procedure
                    363:                entry mask
                    364: 
                    365:           'i386'
                    366:                don't round to the next long word boundary
                    367: 
                    368:           'mips'
                    369:                print register contents
                    370: 
                    371: 'xf'
                    372:      Examine forward.  It executes an examine command with the last
                    373:      specified parameters to it except that the next address displayed
                    374:      by it is used as the start address.
                    375: 
                    376: 'xb'
                    377:      Examine backward.  It executes an examine command with the last
                    378:      specified parameters to it except that the last start address
                    379:      subtracted by the size displayed by it is used as the start
                    380:      address.
                    381: 
                    382: 'print[/axzodurc] ADDR1 [ ADDR2 ... ]'
                    383:      Print ADDR's according to the modifier character.  Valid formats
                    384:      are: 'a' 'x' 'z' 'o' 'd' 'u' 'r' 'c'.  If no modifier is specified,
                    385:      the last one specified to it is used.  ADDR can be a string, and it
                    386:      is printed as it is.  For example,
                    387: 
                    388:           print/x "eax = " $eax "\necx = " $ecx "\n"
                    389: 
                    390:      will print like
                    391: 
                    392:           eax = xxxxxx
                    393:           ecx = yyyyyy
                    394: 
                    395: 'write[/bhlt] ADDR [ THREAD ] EXPR1 [ EXPR2 ... ]'
                    396:      Write the expressions at succeeding locations.  The write unit size
                    397:      can be specified in the modifier with a letter b (byte), h (half
                    398:      word) or l(long word) respectively.  If omitted, long word is
                    399:      assumed.  Target address space can also be specified with 't'
                    400:      option in the modifier and THREAD parameter.  Warning: since there
                    401:      is no delimiter between expressions, strange things may happen.
                    402:      It's best to enclose each expression in parentheses.
                    403: 
                    404: 'set $VARIABLE [=] EXPR'
                    405:      Set the named variable or register with the value of EXPR.  Valid
                    406:      variable names are described below.
                    407: 
                    408: 'break[/tuTU] ADDR[,COUNT] [ THREAD1 ... ]'
                    409:      Set a break point at ADDR.  If count is supplied, continues
                    410:      (COUNT-1) times before stopping at the break point.  If the break
                    411:      point is set, a break point number is printed with '#'.  This
                    412:      number can be used in deleting the break point or adding conditions
                    413:      to it.
                    414: 
                    415:      't'
                    416:           Set a break point only for a specific thread.  The thread is
                    417:           specified by THREAD parameter, or default one is used if the
                    418:           parameter is omitted.
                    419: 
                    420:      'u'
                    421:           Set a break point in user space address.  It may be combined
                    422:           with 't' or 'T' option to specify the non-current target user
                    423:           space.  Without 'u' option, the address is considered in the
                    424:           kernel space, and wrong space address is rejected with an
                    425:           error message.  This option can be used only if it is
                    426:           supported by machine dependent routines.
                    427: 
                    428:      'T'
                    429:           Set a break point only for threads in a specific task.  It is
                    430:           like 't' option except that the break point is valid for all
                    431:           threads which belong to the same task as the specified target
                    432:           thread.
                    433: 
                    434:      'U'
                    435:           Set a break point in shared user space address.  It is like
                    436:           'u' option, except that the break point is valid for all
                    437:           threads which share the same address space even if 't' option
                    438:           is specified.  't' option is used only to specify the target
                    439:           shared space.  Without 't' option, 'u' and 'U' have the same
                    440:           meanings.  'U' is useful for setting a user space break point
                    441:           in non-current address space with 't' option such as in an
                    442:           emulation library space.  This option can be used only if it
                    443:           is supported by machine dependent routines.
                    444: 
                    445:      Warning: if a user text is shadowed by a normal user space
                    446:      debugger, user space break points may not work correctly.  Setting
                    447:      a break point at the low-level code paths may also cause strange
                    448:      behavior.
                    449: 
                    450: 'delete[/tuTU] ADDR|#NUMBER [ THREAD1 ... ]'
                    451:      Delete the break point.  The target break point can be specified by
                    452:      a break point number with '#', or by ADDR like specified in 'break'
                    453:      command.
                    454: 
                    455: 'cond #NUMBER [ CONDITION COMMANDS ]'
                    456:      Set or delete a condition for the break point specified by the
                    457:      NUMBER.  If the CONDITION and COMMANDS are null, the condition is
                    458:      deleted.  Otherwise the condition is set for it.  When the break
                    459:      point is hit, the CONDITION is evaluated.  The COMMANDS will be
                    460:      executed if the condition is true and the break point count set by
                    461:      a break point command becomes zero.  COMMANDS is a list of commands
                    462:      separated by semicolons.  Each command in the list is executed in
                    463:      that order, but if a 'continue' command is executed, the command
                    464:      execution stops there, and the stopped thread resumes execution.
                    465:      If the command execution reaches the end of the list, and it enters
                    466:      into a command input mode.  For example,
                    467: 
                    468:           set $work0 0
                    469:           break/Tu xxx_start $task7.0
                    470:           cond #1  (1)  set $work0 1; set $work1 0; cont
                    471:           break/T  vm_fault $task7.0
                    472:           cond #2  ($work0) set $work1 ($work1+1); cont
                    473:           break/Tu xxx_end $task7.0
                    474:           cond #3  ($work0) print $work1 " faults\n"; set $work0 0
                    475:           cont
                    476: 
                    477:      will print page fault counts from 'xxx_start' to 'xxx_end' in
                    478:      'task7'.
                    479: 
                    480: 'step[/p] [,COUNT]'
                    481:      Single step COUNT times.  If 'p' option is specified, print each
                    482:      instruction at each step.  Otherwise, only print the last
                    483:      instruction.
                    484: 
                    485:      Warning: depending on machine type, it may not be possible to
                    486:      single-step through some low-level code paths or user space code.
                    487:      On machines with software-emulated single-stepping (e.g., pmax),
                    488:      stepping through code executed by interrupt handlers will probably
                    489:      do the wrong thing.
                    490: 
                    491: 'continue[/c]'
                    492:      Continue execution until a breakpoint or watchpoint.  If '/c',
                    493:      count instructions while executing.  Some machines (e.g., pmax)
                    494:      also count loads and stores.
                    495: 
                    496:      Warning: when counting, the debugger is really silently
                    497:      single-stepping.  This means that single-stepping on low-level code
                    498:      may cause strange behavior.
                    499: 
                    500: 'until'
                    501:      Stop at the next call or return instruction.
                    502: 
                    503: 'next[/p]'
                    504:      Stop at the matching return instruction.  If 'p' option is
                    505:      specified, print the call nesting depth and the cumulative
                    506:      instruction count at each call or return.  Otherwise, only print
                    507:      when the matching return is hit.
                    508: 
                    509: 'match[/p]'
                    510:      A synonym for 'next'.
                    511: 
                    512: 'trace[/tu] [ FRAME_ADDR|THREAD ][,COUNT]'
                    513:      Stack trace.  'u' option traces user space; if omitted, only traces
                    514:      kernel space.  If 't' option is specified, it shows the stack trace
                    515:      of the specified thread or a default target thread.  Otherwise, it
                    516:      shows the stack trace of the current thread from the frame address
                    517:      specified by a parameter or from the current frame.  COUNT is the
                    518:      number of frames to be traced.  If the COUNT is omitted, all frames
                    519:      are printed.
                    520: 
                    521:      Warning: If the target thread's stack is not in the main memory at
                    522:      that time, the stack trace will fail.  User space stack trace is
                    523:      valid only if the machine dependent code supports it.
                    524: 
                    525: 'search[/bhl] ADDR VALUE [MASK] [,COUNT]'
                    526:      Search memory for a value.  This command might fail in interesting
                    527:      ways if it doesn't find the searched-for value.  This is because
                    528:      'ddb' doesn't always recover from touching bad memory.  The
                    529:      optional count argument limits the search.
                    530: 
                    531: 'macro NAME COMMANDS'
                    532:      Define a debugger macro as NAME.  COMMANDS is a list of commands to
                    533:      be associated with the macro.  In the expressions of the command
                    534:      list, a variable '$argxx' can be used to get a parameter passed to
                    535:      the macro.  When a macro is called, each argument is evaluated as
                    536:      an expression, and the value is assigned to each parameter,
                    537:      '$arg1', '$arg2', ... respectively.  10 '$arg' variables are
                    538:      reserved to each level of macros, and they can be used as local
                    539:      variables.  The nesting of macro can be allowed up to 5 levels.
                    540:      For example,
                    541: 
                    542:           macro xinit set $work0 $arg1
                    543:           macro xlist examine/m $work0,4; set $work0 *($work0)
                    544:           xinit *(xxx_list)
                    545:           xlist
                    546:           ...
                    547: 
                    548:      will print the contents of a list starting from 'xxx_list' by each
                    549:      'xlist' command.
                    550: 
                    551: 'dmacro NAME'
                    552:      Delete the macro named NAME.
                    553: 
                    554: 'show all threads[/ul]'
                    555:      Display all tasks and threads information.  This version of 'ddb'
                    556:      prints more information than previous one.  It shows UNIX process
                    557:      information like 'ps' for each task.  The UNIX process information
                    558:      may not be shown if it is not supported in the machine, or the
                    559:      bottom of the stack of the target task is not in the main memory at
                    560:      that time.  It also shows task and thread identification numbers.
                    561:      These numbers can be used to specify a task or a thread
                    562:      symbolically in various commands.  The numbers are valid only in
                    563:      the same debugger session.  If the execution is resumed again, the
                    564:      numbers may change.  The current thread can be distinguished from
                    565:      others by a '#' after the thread id instead of ':'.  Without 'l'
                    566:      option, it only shows thread id, thread structure address and the
1.1.1.2   root      567:      status for each thread.  The status consists of 6 letters, R(run),
                    568:      W(wait), S(suspended), O(swapped out), N(interruptible), and
                    569:      F(loating) point arithmetic used (if supported by the platform).
                    570:      If the corresponding status bit is off, '.' is printed instead.  If
                    571:      'l' option is specified, more detail information is printed for
                    572:      each thread.
1.1       root      573: 
                    574: 'show task [ ADDR ]'
                    575:      Display the information of a task specified by ADDR.  If ADDR is
                    576:      omitted, current task information is displayed.
                    577: 
                    578: 'show thread [ ADDR ]'
                    579:      Display the information of a thread specified by ADDR.  If ADDR is
                    580:      omitted, current thread information is displayed.
                    581: 
                    582: 'show registers[/tu [ THREAD ]]'
                    583:      Display the register set.  Target thread can be specified with 't'
                    584:      option and THREAD parameter.  If 'u' option is specified, it
                    585:      displays user registers instead of kernel or currently saved one.
                    586: 
                    587:      Warning: The support of 't' and 'u' option depends on the machine.
                    588:      If not supported, incorrect information will be displayed.
                    589: 
                    590: 'show map ADDR'
                    591:      Prints the 'vm_map' at ADDR.
                    592: 
                    593: 'show object ADDR'
                    594:      Prints the 'vm_object' at ADDR.
                    595: 
                    596: 'show page ADDR'
                    597:      Prints the 'vm_page' structure at ADDR.
                    598: 
                    599: 'show port ADDR'
                    600:      Prints the 'ipc_port' structure at ADDR.
                    601: 
                    602: 'show ipc_port[/t [ THREAD ]]'
                    603:      Prints all 'ipc_port' structure's addresses the target thread has.
                    604:      The target thread is a current thread or that specified by a
                    605:      parameter.
                    606: 
                    607: 'show macro [ NAME ]'
                    608:      Show the definitions of macros.  If NAME is specified, only the
                    609:      definition of it is displayed.  Otherwise, definitions of all
                    610:      macros are displayed.
                    611: 
                    612: 'show watches'
                    613:      Displays all watchpoints.
                    614: 
                    615: 'watch[/T] ADDR,SIZE [ TASK ]'
                    616:      Set a watchpoint for a region.  Execution stops when an attempt to
                    617:      modify the region occurs.  The SIZE argument defaults to 4.
                    618:      Without 'T' option, ADDR is assumed to be a kernel address.  If you
                    619:      want to set a watch point in user space, specify 'T' and TASK
                    620:      parameter where the address belongs to.  If the TASK parameter is
                    621:      omitted, a task of the default target thread or a current task is
                    622:      assumed.  If you specify a wrong space address, the request is
                    623:      rejected with an error message.
                    624: 
                    625:      Warning: Attempts to watch wired kernel memory may cause
                    626:      unrecoverable error in some systems such as i386.  Watchpoints on
                    627:      user addresses work best.
                    628: 
                    629: 'dwatch[/T] ADDR [ TASK ]'
                    630:      Clears a watchpoint previously set for a region.  Without 'T'
                    631:      option, ADDR is assumed to be a kernel address.  If you want to
                    632:      clear a watch point in user space, specify 'T' and TASK parameter
                    633:      where the address belongs to.  If the TASK parameter is omitted, a
                    634:      task of the default target thread or a current task is assumed.  If
                    635:      you specify a wrong space address, the request is rejected with an
                    636:      error message.
                    637: 
                    638: 
                    639: File: mach.info,  Node: Variables,  Next: Expressions,  Prev: Commands,  Up: Kernel Debugger
                    640: 
                    641: 11.3 Variables
                    642: ==============
                    643: 
                    644: The debugger accesses registers and variables as $NAME.  Register names
                    645: are as in the 'show registers' command.  Some variables are suffixed
                    646: with numbers, and may have some modifier following a colon immediately
                    647: after the variable name.  For example, register variables can have 'u'
                    648: and 't' modifier to indicate user register and that of a default target
                    649: thread instead of that of the current thread (e.g.  '$eax:tu').
                    650: 
                    651:    Built-in variables currently supported are:
                    652: 
                    653: 'taskXX[.YY]'
                    654:      Task or thread structure address.  XX and YY are task and thread
                    655:      identification numbers printed by a 'show all threads' command
                    656:      respectively.  This variable is read only.
                    657: 
                    658: 'thread'
                    659:      The default target thread.  The value is used when 't' option is
                    660:      specified without explicit thread structure address parameter in
                    661:      command lines or expression evaluation.
                    662: 
                    663: 'radix'
                    664:      Input and output radix
                    665: 
                    666: 'maxoff'
                    667:      Addresses are printed as SYMBOL+OFFSET unless offset is greater
                    668:      than maxoff.
                    669: 
                    670: 'maxwidth'
                    671:      The width of the displayed line.
                    672: 
                    673: 'lines'
                    674:      The number of lines.  It is used by 'more' feature.
                    675: 
                    676: 'tabstops'
                    677:      Tab stop width.
                    678: 
                    679: 'argXX'
                    680:      Parameters passed to a macro.  XX can be 1 to 10.
                    681: 
                    682: 'workXX'
                    683:      Work variable.  XX can be 0 to 31.
                    684: 
                    685: 
                    686: File: mach.info,  Node: Expressions,  Prev: Variables,  Up: Kernel Debugger
                    687: 
                    688: 11.4 Expressions
                    689: ================
                    690: 
                    691: Almost all expression operators in C are supported except '~', '^', and
                    692: unary '&'.  Special rules in 'ddb' are:
                    693: 
                    694: 'IDENTIFIER'
                    695:      name of a symbol.  It is translated to the address(or value) of it.
                    696:      '.' and ':' can be used in the identifier.  If supported by an
                    697:      object format dependent routine, [FILE_NAME:]FUNC[:LINE_NUMBER]
                    698:      [FILE_NAME:]VARIABLE, and FILE_NAME[:LINE_NUMBER] can be accepted
                    699:      as a symbol.  The symbol may be prefixed with 'SYMBOL_TABLE_NAME::'
                    700:      like 'emulator::mach_msg_trap' to specify other than kernel
                    701:      symbols.
                    702: 
                    703: 'NUMBER'
                    704:      radix is determined by the first two letters:
                    705:      '0x'
                    706:           hex
                    707:      '0o'
                    708:           octal
                    709:      '0t'
                    710:           decimal
                    711: 
                    712:      otherwise, follow current radix.
                    713: 
                    714: '.'
                    715:      dot
                    716: 
                    717: '+'
                    718:      next
                    719: 
                    720: '..'
                    721:      address of the start of the last line examined.  Unlike dot or
                    722:      next, this is only changed by 'examine' or 'write' command.
                    723: 
                    724: '�'
                    725:      last address explicitly specified.
                    726: 
                    727: '$VARIABLE'
                    728:      register name or variable.  It is translated to the value of it.
                    729:      It may be followed by a ':' and modifiers as described above.
                    730: 
                    731: 'a'
                    732:      multiple of right hand side.
                    733: 
                    734: '*EXPR'
                    735:      indirection.  It may be followed by a ':' and modifiers as
                    736:      described above.
                    737: 
                    738: 
                    739: File: mach.info,  Node: Copying,  Next: Documentation License,  Prev: Kernel Debugger,  Up: Top
                    740: 
                    741: GNU General Public License
                    742: **************************
                    743: 
                    744:                          Version 2, June 1991
                    745: 
                    746:      Copyright (C) 1989, 1991 Free Software Foundation, Inc.
                    747:      51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
                    748: 
                    749:      Everyone is permitted to copy and distribute verbatim copies
                    750:      of this license document, but changing it is not allowed.
                    751: 
                    752: Preamble
                    753: ========
                    754: 
                    755: The licenses for most software are designed to take away your freedom to
                    756: share and change it.  By contrast, the GNU General Public License is
                    757: intended to guarantee your freedom to share and change free software--to
                    758: make sure the software is free for all its users.  This General Public
                    759: License applies to most of the Free Software Foundation's software and
                    760: to any other program whose authors commit to using it.  (Some other Free
                    761: Software Foundation software is covered by the GNU Lesser General Public
                    762: License instead.)  You can apply it to your programs, too.
                    763: 
                    764:    When we speak of free software, we are referring to freedom, not
                    765: price.  Our General Public Licenses are designed to make sure that you
                    766: have the freedom to distribute copies of free software (and charge for
                    767: this service if you wish), that you receive source code or can get it if
                    768: you want it, that you can change the software or use pieces of it in new
                    769: free programs; and that you know you can do these things.
                    770: 
                    771:    To protect your rights, we need to make restrictions that forbid
                    772: anyone to deny you these rights or to ask you to surrender the rights.
                    773: These restrictions translate to certain responsibilities for you if you
                    774: distribute copies of the software, or if you modify it.
                    775: 
                    776:    For example, if you distribute copies of such a program, whether
                    777: gratis or for a fee, you must give the recipients all the rights that
                    778: you have.  You must make sure that they, too, receive or can get the
                    779: source code.  And you must show them these terms so they know their
                    780: rights.
                    781: 
                    782:    We protect your rights with two steps: (1) copyright the software,
                    783: and (2) offer you this license which gives you legal permission to copy,
                    784: distribute and/or modify the software.
                    785: 
                    786:    Also, for each author's protection and ours, we want to make certain
                    787: that everyone understands that there is no warranty for this free
                    788: software.  If the software is modified by someone else and passed on, we
                    789: want its recipients to know that what they have is not the original, so
                    790: that any problems introduced by others will not reflect on the original
                    791: authors' reputations.
                    792: 
                    793:    Finally, any free program is threatened constantly by software
                    794: patents.  We wish to avoid the danger that redistributors of a free
                    795: program will individually obtain patent licenses, in effect making the
                    796: program proprietary.  To prevent this, we have made it clear that any
                    797: patent must be licensed for everyone's free use or not licensed at all.
                    798: 
                    799:    The precise terms and conditions for copying, distribution and
                    800: modification follow.
                    801: 
                    802: TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
                    803: ===============================================================
                    804: 
                    805:   0. This License applies to any program or other work which contains a
                    806:      notice placed by the copyright holder saying it may be distributed
                    807:      under the terms of this General Public License.  The "Program",
                    808:      below, refers to any such program or work, and a "work based on the
                    809:      Program" means either the Program or any derivative work under
                    810:      copyright law: that is to say, a work containing the Program or a
                    811:      portion of it, either verbatim or with modifications and/or
                    812:      translated into another language.  (Hereinafter, translation is
                    813:      included without limitation in the term "modification".)  Each
                    814:      licensee is addressed as "you".
                    815: 
                    816:      Activities other than copying, distribution and modification are
                    817:      not covered by this License; they are outside its scope.  The act
                    818:      of running the Program is not restricted, and the output from the
                    819:      Program is covered only if its contents constitute a work based on
                    820:      the Program (independent of having been made by running the
                    821:      Program).  Whether that is true depends on what the Program does.
                    822: 
                    823:   1. You may copy and distribute verbatim copies of the Program's source
                    824:      code as you receive it, in any medium, provided that you
                    825:      conspicuously and appropriately publish on each copy an appropriate
                    826:      copyright notice and disclaimer of warranty; keep intact all the
                    827:      notices that refer to this License and to the absence of any
                    828:      warranty; and give any other recipients of the Program a copy of
                    829:      this License along with the Program.
                    830: 
                    831:      You may charge a fee for the physical act of transferring a copy,
                    832:      and you may at your option offer warranty protection in exchange
                    833:      for a fee.
                    834: 
                    835:   2. You may modify your copy or copies of the Program or any portion of
                    836:      it, thus forming a work based on the Program, and copy and
                    837:      distribute such modifications or work under the terms of Section 1
                    838:      above, provided that you also meet all of these conditions:
                    839: 
                    840:        a. You must cause the modified files to carry prominent notices
                    841:           stating that you changed the files and the date of any change.
                    842: 
                    843:        b. You must cause any work that you distribute or publish, that
                    844:           in whole or in part contains or is derived from the Program or
                    845:           any part thereof, to be licensed as a whole at no charge to
                    846:           all third parties under the terms of this License.
                    847: 
                    848:        c. If the modified program normally reads commands interactively
                    849:           when run, you must cause it, when started running for such
                    850:           interactive use in the most ordinary way, to print or display
                    851:           an announcement including an appropriate copyright notice and
                    852:           a notice that there is no warranty (or else, saying that you
                    853:           provide a warranty) and that users may redistribute the
                    854:           program under these conditions, and telling the user how to
                    855:           view a copy of this License.  (Exception: if the Program
                    856:           itself is interactive but does not normally print such an
                    857:           announcement, your work based on the Program is not required
                    858:           to print an announcement.)
                    859: 
                    860:      These requirements apply to the modified work as a whole.  If
                    861:      identifiable sections of that work are not derived from the
                    862:      Program, and can be reasonably considered independent and separate
                    863:      works in themselves, then this License, and its terms, do not apply
                    864:      to those sections when you distribute them as separate works.  But
                    865:      when you distribute the same sections as part of a whole which is a
                    866:      work based on the Program, the distribution of the whole must be on
                    867:      the terms of this License, whose permissions for other licensees
                    868:      extend to the entire whole, and thus to each and every part
                    869:      regardless of who wrote it.
                    870: 
                    871:      Thus, it is not the intent of this section to claim rights or
                    872:      contest your rights to work written entirely by you; rather, the
                    873:      intent is to exercise the right to control the distribution of
                    874:      derivative or collective works based on the Program.
                    875: 
                    876:      In addition, mere aggregation of another work not based on the
                    877:      Program with the Program (or with a work based on the Program) on a
                    878:      volume of a storage or distribution medium does not bring the other
                    879:      work under the scope of this License.
                    880: 
                    881:   3. You may copy and distribute the Program (or a work based on it,
                    882:      under Section 2) in object code or executable form under the terms
                    883:      of Sections 1 and 2 above provided that you also do one of the
                    884:      following:
                    885: 
                    886:        a. Accompany it with the complete corresponding machine-readable
                    887:           source code, which must be distributed under the terms of
                    888:           Sections 1 and 2 above on a medium customarily used for
                    889:           software interchange; or,
                    890: 
                    891:        b. Accompany it with a written offer, valid for at least three
                    892:           years, to give any third party, for a charge no more than your
                    893:           cost of physically performing source distribution, a complete
                    894:           machine-readable copy of the corresponding source code, to be
                    895:           distributed under the terms of Sections 1 and 2 above on a
                    896:           medium customarily used for software interchange; or,
                    897: 
                    898:        c. Accompany it with the information you received as to the offer
                    899:           to distribute corresponding source code.  (This alternative is
                    900:           allowed only for noncommercial distribution and only if you
                    901:           received the program in object code or executable form with
                    902:           such an offer, in accord with Subsection b above.)
                    903: 
                    904:      The source code for a work means the preferred form of the work for
                    905:      making modifications to it.  For an executable work, complete
                    906:      source code means all the source code for all modules it contains,
                    907:      plus any associated interface definition files, plus the scripts
                    908:      used to control compilation and installation of the executable.
                    909:      However, as a special exception, the source code distributed need
                    910:      not include anything that is normally distributed (in either source
                    911:      or binary form) with the major components (compiler, kernel, and so
                    912:      on) of the operating system on which the executable runs, unless
                    913:      that component itself accompanies the executable.
                    914: 
                    915:      If distribution of executable or object code is made by offering
                    916:      access to copy from a designated place, then offering equivalent
                    917:      access to copy the source code from the same place counts as
                    918:      distribution of the source code, even though third parties are not
                    919:      compelled to copy the source along with the object code.
                    920: 
                    921:   4. You may not copy, modify, sublicense, or distribute the Program
                    922:      except as expressly provided under this License.  Any attempt
                    923:      otherwise to copy, modify, sublicense or distribute the Program is
                    924:      void, and will automatically terminate your rights under this
                    925:      License.  However, parties who have received copies, or rights,
                    926:      from you under this License will not have their licenses terminated
                    927:      so long as such parties remain in full compliance.
                    928: 
                    929:   5. You are not required to accept this License, since you have not
                    930:      signed it.  However, nothing else grants you permission to modify
                    931:      or distribute the Program or its derivative works.  These actions
                    932:      are prohibited by law if you do not accept this License.
                    933:      Therefore, by modifying or distributing the Program (or any work
                    934:      based on the Program), you indicate your acceptance of this License
                    935:      to do so, and all its terms and conditions for copying,
                    936:      distributing or modifying the Program or works based on it.
                    937: 
                    938:   6. Each time you redistribute the Program (or any work based on the
                    939:      Program), the recipient automatically receives a license from the
                    940:      original licensor to copy, distribute or modify the Program subject
                    941:      to these terms and conditions.  You may not impose any further
                    942:      restrictions on the recipients' exercise of the rights granted
                    943:      herein.  You are not responsible for enforcing compliance by third
                    944:      parties to this License.
                    945: 
                    946:   7. If, as a consequence of a court judgment or allegation of patent
                    947:      infringement or for any other reason (not limited to patent
                    948:      issues), conditions are imposed on you (whether by court order,
                    949:      agreement or otherwise) that contradict the conditions of this
                    950:      License, they do not excuse you from the conditions of this
                    951:      License.  If you cannot distribute so as to satisfy simultaneously
                    952:      your obligations under this License and any other pertinent
                    953:      obligations, then as a consequence you may not distribute the
                    954:      Program at all.  For example, if a patent license would not permit
                    955:      royalty-free redistribution of the Program by all those who receive
                    956:      copies directly or indirectly through you, then the only way you
                    957:      could satisfy both it and this License would be to refrain entirely
                    958:      from distribution of the Program.
                    959: 
                    960:      If any portion of this section is held invalid or unenforceable
                    961:      under any particular circumstance, the balance of the section is
                    962:      intended to apply and the section as a whole is intended to apply
                    963:      in other circumstances.
                    964: 
                    965:      It is not the purpose of this section to induce you to infringe any
                    966:      patents or other property right claims or to contest validity of
                    967:      any such claims; this section has the sole purpose of protecting
                    968:      the integrity of the free software distribution system, which is
                    969:      implemented by public license practices.  Many people have made
                    970:      generous contributions to the wide range of software distributed
                    971:      through that system in reliance on consistent application of that
                    972:      system; it is up to the author/donor to decide if he or she is
                    973:      willing to distribute software through any other system and a
                    974:      licensee cannot impose that choice.
                    975: 
                    976:      This section is intended to make thoroughly clear what is believed
                    977:      to be a consequence of the rest of this License.
                    978: 
                    979:   8. If the distribution and/or use of the Program is restricted in
                    980:      certain countries either by patents or by copyrighted interfaces,
                    981:      the original copyright holder who places the Program under this
                    982:      License may add an explicit geographical distribution limitation
                    983:      excluding those countries, so that distribution is permitted only
                    984:      in or among countries not thus excluded.  In such case, this
                    985:      License incorporates the limitation as if written in the body of
                    986:      this License.
                    987: 
                    988:   9. The Free Software Foundation may publish revised and/or new
                    989:      versions of the General Public License from time to time.  Such new
                    990:      versions will be similar in spirit to the present version, but may
                    991:      differ in detail to address new problems or concerns.
                    992: 
                    993:      Each version is given a distinguishing version number.  If the
                    994:      Program specifies a version number of this License which applies to
                    995:      it and "any later version", you have the option of following the
                    996:      terms and conditions either of that version or of any later version
                    997:      published by the Free Software Foundation.  If the Program does not
                    998:      specify a version number of this License, you may choose any
                    999:      version ever published by the Free Software Foundation.
                   1000: 
                   1001:   10. If you wish to incorporate parts of the Program into other free
                   1002:      programs whose distribution conditions are different, write to the
                   1003:      author to ask for permission.  For software which is copyrighted by
                   1004:      the Free Software Foundation, write to the Free Software
                   1005:      Foundation; we sometimes make exceptions for this.  Our decision
                   1006:      will be guided by the two goals of preserving the free status of
                   1007:      all derivatives of our free software and of promoting the sharing
                   1008:      and reuse of software generally.
                   1009: 
                   1010:   11. NO WARRANTY
                   1011: 
                   1012:      BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO
                   1013:      WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE
                   1014:      LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS
                   1015:      AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
                   1016:      OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT
                   1017:      LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
                   1018:      FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND
                   1019:      PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE
                   1020:      DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR
                   1021:      OR CORRECTION.
                   1022: 
                   1023:   12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
                   1024:      WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY
                   1025:      MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE
                   1026:      LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL,
                   1027:      INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR
                   1028:      INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
                   1029:      DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU
                   1030:      OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY
                   1031:      OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN
                   1032:      ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
                   1033: 
                   1034:                       END OF TERMS AND CONDITIONS
                   1035: 
                   1036: Appendix: How to Apply These Terms to Your New Programs
                   1037: =======================================================
                   1038: 
                   1039: If you develop a new program, and you want it to be of the greatest
                   1040: possible use to the public, the best way to achieve this is to make it
                   1041: free software which everyone can redistribute and change under these
                   1042: terms.
                   1043: 
                   1044:    To do so, attach the following notices to the program.  It is safest
                   1045: to attach them to the start of each source file to most effectively
                   1046: convey the exclusion of warranty; and each file should have at least the
                   1047: "copyright" line and a pointer to where the full notice is found.
                   1048: 
                   1049:      ONE LINE TO GIVE THE PROGRAM'S NAME AND A BRIEF IDEA OF WHAT IT DOES.
                   1050:      Copyright (C) YYYY  NAME OF AUTHOR
                   1051: 
                   1052:      This program is free software; you can redistribute it and/or modify
                   1053:      it under the terms of the GNU General Public License as published by
                   1054:      the Free Software Foundation; either version 2 of the License, or
                   1055:      (at your option) any later version.
                   1056: 
                   1057:      This program is distributed in the hope that it will be useful,
                   1058:      but WITHOUT ANY WARRANTY; without even the implied warranty of
                   1059:      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
                   1060:      GNU General Public License for more details.
                   1061: 
                   1062:      You should have received a copy of the GNU General Public License
                   1063:      along with this program; if not, write to the Free Software
                   1064:      Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
                   1065: 
                   1066:    Also add information on how to contact you by electronic and paper
                   1067: mail.
                   1068: 
                   1069:    If the program is interactive, make it output a short notice like
                   1070: this when it starts in an interactive mode:
                   1071: 
                   1072:      Gnomovision version 69, Copyright (C) YEAR NAME OF AUTHOR
                   1073:      Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
                   1074:      This is free software, and you are welcome to redistribute it
                   1075:      under certain conditions; type `show c' for details.
                   1076: 
                   1077:    The hypothetical commands 'show w' and 'show c' should show the
                   1078: appropriate parts of the General Public License.  Of course, the
                   1079: commands you use may be called something other than 'show w' and 'show
                   1080: c'; they could even be mouse-clicks or menu items--whatever suits your
                   1081: program.
                   1082: 
                   1083:    You should also get your employer (if you work as a programmer) or
                   1084: your school, if any, to sign a "copyright disclaimer" for the program,
                   1085: if necessary.  Here is a sample; alter the names:
                   1086: 
                   1087:      Yoyodyne, Inc., hereby disclaims all copyright interest in the program
                   1088:      `Gnomovision' (which makes passes at compilers) written by James Hacker.
                   1089: 
                   1090:      SIGNATURE OF TY COON, 1 April 1989
                   1091:      Ty Coon, President of Vice
                   1092: 
                   1093:    This General Public License does not permit incorporating your
                   1094: program into proprietary programs.  If your program is a subroutine
                   1095: library, you may consider it more useful to permit linking proprietary
                   1096: applications with the library.  If this is what you want to do, use the
                   1097: GNU Lesser General Public License instead of this License.
                   1098: 
                   1099: 
                   1100: File: mach.info,  Node: Documentation License,  Next: Concept Index,  Prev: Copying,  Up: Top
                   1101: 
                   1102: Appendix A Documentation License
                   1103: ********************************
                   1104: 
                   1105: This manual is copyrighted and licensed under the GNU Free Documentation
                   1106: license.
                   1107: 
                   1108:    Parts of this manual are derived from the Mach manual packages
                   1109: originally provided by Carnegie Mellon University.
                   1110: 
                   1111: * Menu:
                   1112: 
                   1113: * GNU Free Documentation License:: The GNU Free Documentation License.
                   1114: * CMU License::                   The CMU license applies to the original Mach
                   1115:                                   kernel and its documentation.
                   1116: 
                   1117: 
                   1118: File: mach.info,  Node: GNU Free Documentation License,  Next: CMU License,  Up: Documentation License
                   1119: 
                   1120: A.1 GNU Free Documentation License
                   1121: ==================================
                   1122: 
                   1123:                       Version 1.2, November 2002
                   1124: 
                   1125:      Copyright (C) 2000,2001,2002 Free Software Foundation, Inc.
                   1126:      51 Franklin St, Fifth Floor, Boston, MA  02110-1301, USA
                   1127: 
                   1128:      Everyone is permitted to copy and distribute verbatim copies
                   1129:      of this license document, but changing it is not allowed.
                   1130: 
                   1131:   0. PREAMBLE
                   1132: 
                   1133:      The purpose of this License is to make a manual, textbook, or other
                   1134:      functional and useful document "free" in the sense of freedom: to
                   1135:      assure everyone the effective freedom to copy and redistribute it,
                   1136:      with or without modifying it, either commercially or
                   1137:      noncommercially.  Secondarily, this License preserves for the
                   1138:      author and publisher a way to get credit for their work, while not
                   1139:      being considered responsible for modifications made by others.
                   1140: 
                   1141:      This License is a kind of "copyleft", which means that derivative
                   1142:      works of the document must themselves be free in the same sense.
                   1143:      It complements the GNU General Public License, which is a copyleft
                   1144:      license designed for free software.
                   1145: 
                   1146:      We have designed this License in order to use it for manuals for
                   1147:      free software, because free software needs free documentation: a
                   1148:      free program should come with manuals providing the same freedoms
                   1149:      that the software does.  But this License is not limited to
                   1150:      software manuals; it can be used for any textual work, regardless
                   1151:      of subject matter or whether it is published as a printed book.  We
                   1152:      recommend this License principally for works whose purpose is
                   1153:      instruction or reference.
                   1154: 
                   1155:   1. APPLICABILITY AND DEFINITIONS
                   1156: 
                   1157:      This License applies to any manual or other work, in any medium,
                   1158:      that contains a notice placed by the copyright holder saying it can
                   1159:      be distributed under the terms of this License.  Such a notice
                   1160:      grants a world-wide, royalty-free license, unlimited in duration,
                   1161:      to use that work under the conditions stated herein.  The
                   1162:      "Document", below, refers to any such manual or work.  Any member
                   1163:      of the public is a licensee, and is addressed as "you".  You accept
                   1164:      the license if you copy, modify or distribute the work in a way
                   1165:      requiring permission under copyright law.
                   1166: 
                   1167:      A "Modified Version" of the Document means any work containing the
                   1168:      Document or a portion of it, either copied verbatim, or with
                   1169:      modifications and/or translated into another language.
                   1170: 
                   1171:      A "Secondary Section" is a named appendix or a front-matter section
                   1172:      of the Document that deals exclusively with the relationship of the
                   1173:      publishers or authors of the Document to the Document's overall
                   1174:      subject (or to related matters) and contains nothing that could
                   1175:      fall directly within that overall subject.  (Thus, if the Document
                   1176:      is in part a textbook of mathematics, a Secondary Section may not
                   1177:      explain any mathematics.)  The relationship could be a matter of
                   1178:      historical connection with the subject or with related matters, or
                   1179:      of legal, commercial, philosophical, ethical or political position
                   1180:      regarding them.
                   1181: 
                   1182:      The "Invariant Sections" are certain Secondary Sections whose
                   1183:      titles are designated, as being those of Invariant Sections, in the
                   1184:      notice that says that the Document is released under this License.
                   1185:      If a section does not fit the above definition of Secondary then it
                   1186:      is not allowed to be designated as Invariant.  The Document may
                   1187:      contain zero Invariant Sections.  If the Document does not identify
                   1188:      any Invariant Sections then there are none.
                   1189: 
                   1190:      The "Cover Texts" are certain short passages of text that are
                   1191:      listed, as Front-Cover Texts or Back-Cover Texts, in the notice
                   1192:      that says that the Document is released under this License.  A
                   1193:      Front-Cover Text may be at most 5 words, and a Back-Cover Text may
                   1194:      be at most 25 words.
                   1195: 
                   1196:      A "Transparent" copy of the Document means a machine-readable copy,
                   1197:      represented in a format whose specification is available to the
                   1198:      general public, that is suitable for revising the document
                   1199:      straightforwardly with generic text editors or (for images composed
                   1200:      of pixels) generic paint programs or (for drawings) some widely
                   1201:      available drawing editor, and that is suitable for input to text
                   1202:      formatters or for automatic translation to a variety of formats
                   1203:      suitable for input to text formatters.  A copy made in an otherwise
                   1204:      Transparent file format whose markup, or absence of markup, has
                   1205:      been arranged to thwart or discourage subsequent modification by
                   1206:      readers is not Transparent.  An image format is not Transparent if
                   1207:      used for any substantial amount of text.  A copy that is not
                   1208:      "Transparent" is called "Opaque".
                   1209: 
                   1210:      Examples of suitable formats for Transparent copies include plain
                   1211:      ASCII without markup, Texinfo input format, LaTeX input format,
                   1212:      SGML or XML using a publicly available DTD, and standard-conforming
                   1213:      simple HTML, PostScript or PDF designed for human modification.
                   1214:      Examples of transparent image formats include PNG, XCF and JPG.
                   1215:      Opaque formats include proprietary formats that can be read and
                   1216:      edited only by proprietary word processors, SGML or XML for which
                   1217:      the DTD and/or processing tools are not generally available, and
                   1218:      the machine-generated HTML, PostScript or PDF produced by some word
                   1219:      processors for output purposes only.
                   1220: 
                   1221:      The "Title Page" means, for a printed book, the title page itself,
                   1222:      plus such following pages as are needed to hold, legibly, the
                   1223:      material this License requires to appear in the title page.  For
                   1224:      works in formats which do not have any title page as such, "Title
                   1225:      Page" means the text near the most prominent appearance of the
                   1226:      work's title, preceding the beginning of the body of the text.
                   1227: 
                   1228:      A section "Entitled XYZ" means a named subunit of the Document
                   1229:      whose title either is precisely XYZ or contains XYZ in parentheses
                   1230:      following text that translates XYZ in another language.  (Here XYZ
                   1231:      stands for a specific section name mentioned below, such as
                   1232:      "Acknowledgements", "Dedications", "Endorsements", or "History".)
                   1233:      To "Preserve the Title" of such a section when you modify the
                   1234:      Document means that it remains a section "Entitled XYZ" according
                   1235:      to this definition.
                   1236: 
                   1237:      The Document may include Warranty Disclaimers next to the notice
                   1238:      which states that this License applies to the Document.  These
                   1239:      Warranty Disclaimers are considered to be included by reference in
                   1240:      this License, but only as regards disclaiming warranties: any other
                   1241:      implication that these Warranty Disclaimers may have is void and
                   1242:      has no effect on the meaning of this License.
                   1243: 
                   1244:   2. VERBATIM COPYING
                   1245: 
                   1246:      You may copy and distribute the Document in any medium, either
                   1247:      commercially or noncommercially, provided that this License, the
                   1248:      copyright notices, and the license notice saying this License
                   1249:      applies to the Document are reproduced in all copies, and that you
                   1250:      add no other conditions whatsoever to those of this License.  You
                   1251:      may not use technical measures to obstruct or control the reading
                   1252:      or further copying of the copies you make or distribute.  However,
                   1253:      you may accept compensation in exchange for copies.  If you
                   1254:      distribute a large enough number of copies you must also follow the
                   1255:      conditions in section 3.
                   1256: 
                   1257:      You may also lend copies, under the same conditions stated above,
                   1258:      and you may publicly display copies.
                   1259: 
                   1260:   3. COPYING IN QUANTITY
                   1261: 
                   1262:      If you publish printed copies (or copies in media that commonly
                   1263:      have printed covers) of the Document, numbering more than 100, and
                   1264:      the Document's license notice requires Cover Texts, you must
                   1265:      enclose the copies in covers that carry, clearly and legibly, all
                   1266:      these Cover Texts: Front-Cover Texts on the front cover, and
                   1267:      Back-Cover Texts on the back cover.  Both covers must also clearly
                   1268:      and legibly identify you as the publisher of these copies.  The
                   1269:      front cover must present the full title with all words of the title
                   1270:      equally prominent and visible.  You may add other material on the
                   1271:      covers in addition.  Copying with changes limited to the covers, as
                   1272:      long as they preserve the title of the Document and satisfy these
                   1273:      conditions, can be treated as verbatim copying in other respects.
                   1274: 
                   1275:      If the required texts for either cover are too voluminous to fit
                   1276:      legibly, you should put the first ones listed (as many as fit
                   1277:      reasonably) on the actual cover, and continue the rest onto
                   1278:      adjacent pages.
                   1279: 
                   1280:      If you publish or distribute Opaque copies of the Document
                   1281:      numbering more than 100, you must either include a machine-readable
                   1282:      Transparent copy along with each Opaque copy, or state in or with
                   1283:      each Opaque copy a computer-network location from which the general
                   1284:      network-using public has access to download using public-standard
                   1285:      network protocols a complete Transparent copy of the Document, free
                   1286:      of added material.  If you use the latter option, you must take
                   1287:      reasonably prudent steps, when you begin distribution of Opaque
                   1288:      copies in quantity, to ensure that this Transparent copy will
                   1289:      remain thus accessible at the stated location until at least one
                   1290:      year after the last time you distribute an Opaque copy (directly or
                   1291:      through your agents or retailers) of that edition to the public.
                   1292: 
                   1293:      It is requested, but not required, that you contact the authors of
                   1294:      the Document well before redistributing any large number of copies,
                   1295:      to give them a chance to provide you with an updated version of the
                   1296:      Document.
                   1297: 
                   1298:   4. MODIFICATIONS
                   1299: 
                   1300:      You may copy and distribute a Modified Version of the Document
                   1301:      under the conditions of sections 2 and 3 above, provided that you
                   1302:      release the Modified Version under precisely this License, with the
                   1303:      Modified Version filling the role of the Document, thus licensing
                   1304:      distribution and modification of the Modified Version to whoever
                   1305:      possesses a copy of it.  In addition, you must do these things in
                   1306:      the Modified Version:
                   1307: 
                   1308:        A. Use in the Title Page (and on the covers, if any) a title
                   1309:           distinct from that of the Document, and from those of previous
                   1310:           versions (which should, if there were any, be listed in the
                   1311:           History section of the Document).  You may use the same title
                   1312:           as a previous version if the original publisher of that
                   1313:           version gives permission.
                   1314: 
                   1315:        B. List on the Title Page, as authors, one or more persons or
                   1316:           entities responsible for authorship of the modifications in
                   1317:           the Modified Version, together with at least five of the
                   1318:           principal authors of the Document (all of its principal
                   1319:           authors, if it has fewer than five), unless they release you
                   1320:           from this requirement.
                   1321: 
                   1322:        C. State on the Title page the name of the publisher of the
                   1323:           Modified Version, as the publisher.
                   1324: 
                   1325:        D. Preserve all the copyright notices of the Document.
                   1326: 
                   1327:        E. Add an appropriate copyright notice for your modifications
                   1328:           adjacent to the other copyright notices.
                   1329: 
                   1330:        F. Include, immediately after the copyright notices, a license
                   1331:           notice giving the public permission to use the Modified
                   1332:           Version under the terms of this License, in the form shown in
                   1333:           the Addendum below.
                   1334: 
                   1335:        G. Preserve in that license notice the full lists of Invariant
                   1336:           Sections and required Cover Texts given in the Document's
                   1337:           license notice.
                   1338: 
                   1339:        H. Include an unaltered copy of this License.
                   1340: 
                   1341:        I. Preserve the section Entitled "History", Preserve its Title,
                   1342:           and add to it an item stating at least the title, year, new
                   1343:           authors, and publisher of the Modified Version as given on the
                   1344:           Title Page.  If there is no section Entitled "History" in the
                   1345:           Document, create one stating the title, year, authors, and
                   1346:           publisher of the Document as given on its Title Page, then add
                   1347:           an item describing the Modified Version as stated in the
                   1348:           previous sentence.
                   1349: 
                   1350:        J. Preserve the network location, if any, given in the Document
                   1351:           for public access to a Transparent copy of the Document, and
                   1352:           likewise the network locations given in the Document for
                   1353:           previous versions it was based on.  These may be placed in the
                   1354:           "History" section.  You may omit a network location for a work
                   1355:           that was published at least four years before the Document
                   1356:           itself, or if the original publisher of the version it refers
                   1357:           to gives permission.
                   1358: 
                   1359:        K. For any section Entitled "Acknowledgements" or "Dedications",
                   1360:           Preserve the Title of the section, and preserve in the section
                   1361:           all the substance and tone of each of the contributor
                   1362:           acknowledgements and/or dedications given therein.
                   1363: 
                   1364:        L. Preserve all the Invariant Sections of the Document, unaltered
                   1365:           in their text and in their titles.  Section numbers or the
                   1366:           equivalent are not considered part of the section titles.
                   1367: 
                   1368:        M. Delete any section Entitled "Endorsements".  Such a section
                   1369:           may not be included in the Modified Version.
                   1370: 
                   1371:        N. Do not retitle any existing section to be Entitled
                   1372:           "Endorsements" or to conflict in title with any Invariant
                   1373:           Section.
                   1374: 
                   1375:        O. Preserve any Warranty Disclaimers.
                   1376: 
                   1377:      If the Modified Version includes new front-matter sections or
                   1378:      appendices that qualify as Secondary Sections and contain no
                   1379:      material copied from the Document, you may at your option designate
                   1380:      some or all of these sections as invariant.  To do this, add their
                   1381:      titles to the list of Invariant Sections in the Modified Version's
                   1382:      license notice.  These titles must be distinct from any other
                   1383:      section titles.
                   1384: 
                   1385:      You may add a section Entitled "Endorsements", provided it contains
                   1386:      nothing but endorsements of your Modified Version by various
                   1387:      parties--for example, statements of peer review or that the text
                   1388:      has been approved by an organization as the authoritative
                   1389:      definition of a standard.
                   1390: 
                   1391:      You may add a passage of up to five words as a Front-Cover Text,
                   1392:      and a passage of up to 25 words as a Back-Cover Text, to the end of
                   1393:      the list of Cover Texts in the Modified Version.  Only one passage
                   1394:      of Front-Cover Text and one of Back-Cover Text may be added by (or
                   1395:      through arrangements made by) any one entity.  If the Document
                   1396:      already includes a cover text for the same cover, previously added
                   1397:      by you or by arrangement made by the same entity you are acting on
                   1398:      behalf of, you may not add another; but you may replace the old
                   1399:      one, on explicit permission from the previous publisher that added
                   1400:      the old one.
                   1401: 
                   1402:      The author(s) and publisher(s) of the Document do not by this
                   1403:      License give permission to use their names for publicity for or to
                   1404:      assert or imply endorsement of any Modified Version.
                   1405: 
                   1406:   5. COMBINING DOCUMENTS
                   1407: 
                   1408:      You may combine the Document with other documents released under
                   1409:      this License, under the terms defined in section 4 above for
                   1410:      modified versions, provided that you include in the combination all
                   1411:      of the Invariant Sections of all of the original documents,
                   1412:      unmodified, and list them all as Invariant Sections of your
                   1413:      combined work in its license notice, and that you preserve all
                   1414:      their Warranty Disclaimers.
                   1415: 
                   1416:      The combined work need only contain one copy of this License, and
                   1417:      multiple identical Invariant Sections may be replaced with a single
                   1418:      copy.  If there are multiple Invariant Sections with the same name
                   1419:      but different contents, make the title of each such section unique
                   1420:      by adding at the end of it, in parentheses, the name of the
                   1421:      original author or publisher of that section if known, or else a
                   1422:      unique number.  Make the same adjustment to the section titles in
                   1423:      the list of Invariant Sections in the license notice of the
                   1424:      combined work.
                   1425: 
                   1426:      In the combination, you must combine any sections Entitled
                   1427:      "History" in the various original documents, forming one section
                   1428:      Entitled "History"; likewise combine any sections Entitled
                   1429:      "Acknowledgements", and any sections Entitled "Dedications".  You
                   1430:      must delete all sections Entitled "Endorsements."
                   1431: 
                   1432:   6. COLLECTIONS OF DOCUMENTS
                   1433: 
                   1434:      You may make a collection consisting of the Document and other
                   1435:      documents released under this License, and replace the individual
                   1436:      copies of this License in the various documents with a single copy
                   1437:      that is included in the collection, provided that you follow the
                   1438:      rules of this License for verbatim copying of each of the documents
                   1439:      in all other respects.
                   1440: 
                   1441:      You may extract a single document from such a collection, and
                   1442:      distribute it individually under this License, provided you insert
                   1443:      a copy of this License into the extracted document, and follow this
                   1444:      License in all other respects regarding verbatim copying of that
                   1445:      document.
                   1446: 
                   1447:   7. AGGREGATION WITH INDEPENDENT WORKS
                   1448: 
                   1449:      A compilation of the Document or its derivatives with other
                   1450:      separate and independent documents or works, in or on a volume of a
                   1451:      storage or distribution medium, is called an "aggregate" if the
                   1452:      copyright resulting from the compilation is not used to limit the
                   1453:      legal rights of the compilation's users beyond what the individual
                   1454:      works permit.  When the Document is included in an aggregate, this
                   1455:      License does not apply to the other works in the aggregate which
                   1456:      are not themselves derivative works of the Document.
                   1457: 
                   1458:      If the Cover Text requirement of section 3 is applicable to these
                   1459:      copies of the Document, then if the Document is less than one half
                   1460:      of the entire aggregate, the Document's Cover Texts may be placed
                   1461:      on covers that bracket the Document within the aggregate, or the
                   1462:      electronic equivalent of covers if the Document is in electronic
                   1463:      form.  Otherwise they must appear on printed covers that bracket
                   1464:      the whole aggregate.
                   1465: 
                   1466:   8. TRANSLATION
                   1467: 
                   1468:      Translation is considered a kind of modification, so you may
                   1469:      distribute translations of the Document under the terms of section
                   1470:      4.  Replacing Invariant Sections with translations requires special
                   1471:      permission from their copyright holders, but you may include
                   1472:      translations of some or all Invariant Sections in addition to the
                   1473:      original versions of these Invariant Sections.  You may include a
                   1474:      translation of this License, and all the license notices in the
                   1475:      Document, and any Warranty Disclaimers, provided that you also
                   1476:      include the original English version of this License and the
                   1477:      original versions of those notices and disclaimers.  In case of a
                   1478:      disagreement between the translation and the original version of
                   1479:      this License or a notice or disclaimer, the original version will
                   1480:      prevail.
                   1481: 
                   1482:      If a section in the Document is Entitled "Acknowledgements",
                   1483:      "Dedications", or "History", the requirement (section 4) to
                   1484:      Preserve its Title (section 1) will typically require changing the
                   1485:      actual title.
                   1486: 
                   1487:   9. TERMINATION
                   1488: 
                   1489:      You may not copy, modify, sublicense, or distribute the Document
                   1490:      except as expressly provided for under this License.  Any other
                   1491:      attempt to copy, modify, sublicense or distribute the Document is
                   1492:      void, and will automatically terminate your rights under this
                   1493:      License.  However, parties who have received copies, or rights,
                   1494:      from you under this License will not have their licenses terminated
                   1495:      so long as such parties remain in full compliance.
                   1496: 
                   1497:   10. FUTURE REVISIONS OF THIS LICENSE
                   1498: 
                   1499:      The Free Software Foundation may publish new, revised versions of
                   1500:      the GNU Free Documentation License from time to time.  Such new
                   1501:      versions will be similar in spirit to the present version, but may
                   1502:      differ in detail to address new problems or concerns.  See
                   1503:      <http://www.gnu.org/copyleft/>.
                   1504: 
                   1505:      Each version of the License is given a distinguishing version
                   1506:      number.  If the Document specifies that a particular numbered
                   1507:      version of this License "or any later version" applies to it, you
                   1508:      have the option of following the terms and conditions either of
                   1509:      that specified version or of any later version that has been
                   1510:      published (not as a draft) by the Free Software Foundation.  If the
                   1511:      Document does not specify a version number of this License, you may
                   1512:      choose any version ever published (not as a draft) by the Free
                   1513:      Software Foundation.
                   1514: 
                   1515: ADDENDUM: How to use this License for your documents
                   1516: ====================================================
                   1517: 
                   1518: To use this License in a document you have written, include a copy of
                   1519: the License in the document and put the following copyright and license
                   1520: notices just after the title page:
                   1521: 
                   1522:        Copyright (C)  YEAR  YOUR NAME.
                   1523:        Permission is granted to copy, distribute and/or modify this document
                   1524:        under the terms of the GNU Free Documentation License, Version 1.2
                   1525:        or any later version published by the Free Software Foundation;
                   1526:        with no Invariant Sections, no Front-Cover Texts, and no Back-Cover
                   1527:        Texts.  A copy of the license is included in the section entitled ``GNU
                   1528:        Free Documentation License''.
                   1529: 
                   1530:    If you have Invariant Sections, Front-Cover Texts and Back-Cover
                   1531: Texts, replace the "with...Texts."  line with this:
                   1532: 
                   1533:          with the Invariant Sections being LIST THEIR TITLES, with
                   1534:          the Front-Cover Texts being LIST, and with the Back-Cover Texts
                   1535:          being LIST.
                   1536: 
                   1537:    If you have Invariant Sections without Cover Texts, or some other
                   1538: combination of the three, merge those two alternatives to suit the
                   1539: situation.
                   1540: 
                   1541:    If your document contains nontrivial examples of program code, we
                   1542: recommend releasing these examples in parallel under your choice of free
                   1543: software license, such as the GNU General Public License, to permit
                   1544: their use in free software.
                   1545: 
                   1546: 
                   1547: File: mach.info,  Node: CMU License,  Prev: GNU Free Documentation License,  Up: Documentation License
                   1548: 
                   1549: A.2 CMU License
                   1550: ===============
                   1551: 
                   1552:           Mach Operating System
                   1553:           Copyright (C) 1991,1990,1989 Carnegie Mellon University
                   1554:           All Rights Reserved.
                   1555: 
                   1556:      Permission to use, copy, modify and distribute this software and
                   1557:      its documentation is hereby granted, provided that both the
                   1558:      copyright notice and this permission notice appear in all copies of
                   1559:      the software, derivative works or modified versions, and any
                   1560:      portions thereof, and that both notices appear in supporting
                   1561:      documentation.
                   1562: 
                   1563:      CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
                   1564:      CONDITION.  CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR
                   1565:      ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
                   1566: 
                   1567:      Carnegie Mellon requests users of this software to return to
                   1568: 
                   1569:            Software Distribution Coordinator
                   1570:            School of Computer Science
                   1571:            Carnegie Mellon University
                   1572:            Pittsburgh PA 15213-3890
                   1573: 
                   1574:      or <[email protected]> any improvements or
                   1575:      extensions that they make and grant Carnegie Mellon the rights to
                   1576:      redistribute these changes.
                   1577: 
                   1578: 
                   1579: File: mach.info,  Node: Concept Index,  Next: Function and Data Index,  Prev: Documentation License,  Up: Top
                   1580: 
                   1581: Concept Index
                   1582: *************
                   1583: 
                   1584: [index]
                   1585: * Menu:
                   1586: 
                   1587: * communication between tasks:           Major Concepts.       (line  6)
                   1588: * composing messages:                    Message Format.       (line  6)
                   1589: * device port:                           Device Interface.     (line 13)
                   1590: * FDL, GNU Free Documentation License:   GNU Free Documentation License.
                   1591:                                                                (line  6)
                   1592: * format of a message:                   Message Format.       (line  6)
                   1593: * GPL, GNU General Public License:       Copying.              (line  6)
                   1594: * GRand Unified Bootloader:              Bootloader.           (line 13)
                   1595: * GRUB:                                  Bootloader.           (line 13)
                   1596: * host control port:                     Host Ports.           (line 34)
                   1597: * host interface:                        Host Interface.       (line  6)
                   1598: * host name port:                        Host Ports.           (line  6)
                   1599: * host ports:                            Host Ports.           (line  6)
                   1600: * interprocess communication (IPC):      Major Concepts.       (line  6)
                   1601: * IPC (interprocess communication):      Major Concepts.       (line  6)
                   1602: * IPC space port:                        Port Manipulation Interface.
                   1603:                                                                (line  9)
                   1604: * message composition:                   Message Format.       (line  6)
                   1605: * message format:                        Message Format.       (line  6)
                   1606: * messages:                              Major Concepts.       (line  6)
                   1607: * moving port rights:                    Exchanging Port Rights.
                   1608:                                                                (line  6)
                   1609: * port representing a device:            Device Interface.     (line 13)
                   1610: * port representing a processor:         Processor Interface.  (line  6)
                   1611: * port representing a processor set name: Processor Set Ports. (line  6)
                   1612: * port representing a task:              Task Interface.       (line  6)
                   1613: * port representing a thread:            Thread Interface.     (line  6)
                   1614: * port representing a virtual memory map: Virtual Memory Interface.
                   1615:                                                                (line  6)
                   1616: * port representing an IPC space:        Port Manipulation Interface.
                   1617:                                                                (line  9)
                   1618: * ports representing a host:             Host Ports.           (line  6)
                   1619: * ports representing a processor set:    Processor Set Ports.  (line  6)
                   1620: * processor port:                        Processor Interface.  (line  6)
                   1621: * processor set name port:               Processor Set Ports.  (line  6)
                   1622: * processor set port:                    Processor Set Ports.  (line 12)
                   1623: * processor set ports:                   Processor Set Ports.  (line  6)
                   1624: * receiving memory:                      Memory.               (line  6)
                   1625: * receiving port rights:                 Exchanging Port Rights.
                   1626:                                                                (line  6)
                   1627: * remote procedure calls (RPC):          Major Concepts.       (line  6)
                   1628: * RPC (remote procedure calls):          Major Concepts.       (line  6)
                   1629: * sending memory:                        Memory.               (line  6)
                   1630: * sending messages:                      Message Send.         (line  6)
                   1631: * sending port rights:                   Exchanging Port Rights.
                   1632:                                                                (line  6)
                   1633: * serverboot:                            Modules.              (line  6)
                   1634: * task port:                             Task Interface.       (line  6)
                   1635: * thread port:                           Thread Interface.     (line  6)
                   1636: * virtual memory map port:               Virtual Memory Interface.
                   1637:                                                                (line  6)
                   1638: 
                   1639: 
                   1640: File: mach.info,  Node: Function and Data Index,  Prev: Concept Index,  Up: Top
                   1641: 
                   1642: Function and Data Index
                   1643: ***********************
                   1644: 
                   1645: [index]
                   1646: * Menu:
                   1647: 
                   1648: * catch_exception_raise:                 Exceptions.          (line   6)
                   1649: * device_close:                          Device Close.        (line   6)
                   1650: * device_get_status:                     Device Status.       (line  17)
                   1651: * device_map:                            Device Map.          (line   6)
                   1652: * device_open:                           Device Open.         (line   6)
                   1653: * device_open_request:                   Device Open.         (line  33)
                   1654: * device_read:                           Device Read.         (line   6)
1.1.1.3 ! root     1655: * device_read_inband:                    Device Read.         (line  25)
        !          1656: * device_read_request:                   Device Read.         (line  32)
        !          1657: * device_read_request_inband:            Device Read.         (line  50)
1.1       root     1658: * device_reply_server:                   Device Reply Server. (line  10)
                   1659: * device_set_filter:                     Device Filter.       (line   6)
                   1660: * device_set_status:                     Device Status.       (line   6)
                   1661: * device_t:                              Device Interface.    (line  13)
                   1662: * device_write:                          Device Write.        (line   6)
1.1.1.3 ! root     1663: * device_write_inband:                   Device Write.        (line  22)
        !          1664: * device_write_request:                  Device Write.        (line  29)
        !          1665: * device_write_request_inband:           Device Write.        (line  48)
        !          1666: * ds_device_open_reply:                  Device Open.         (line  37)
        !          1667: * ds_device_read_reply:                  Device Read.         (line  36)
        !          1668: * ds_device_read_reply_inband:           Device Read.         (line  55)
        !          1669: * ds_device_write_reply:                 Device Write.        (line  32)
        !          1670: * ds_device_write_reply_inband:          Device Write.        (line  53)
        !          1671: * evc_wait:                              Exceptions.          (line  18)
        !          1672: * exception_raise:                       Exceptions.          (line  12)
        !          1673: * host_adjust_time:                      Host Time.           (line  41)
1.1       root     1674: * host_basic_info_t:                     Host Information.    (line  74)
                   1675: * host_get_boot_info:                    Host Information.    (line 112)
                   1676: * host_get_time:                         Host Time.           (line  31)
                   1677: * host_info:                             Host Information.    (line   6)
                   1678: * host_kernel_version:                   Host Information.    (line  94)
                   1679: * host_priv_t:                           Host Ports.          (line  34)
                   1680: * host_processors:                       Hosted Processors.   (line   6)
                   1681: * host_processor_sets:                   Processor Set Access.
                   1682:                                                               (line   6)
                   1683: * host_processor_set_priv:               Processor Set Access.
                   1684:                                                               (line  21)
                   1685: * host_reboot:                           Host Reboot.         (line   6)
                   1686: * host_sched_info_t:                     Host Information.    (line  91)
1.1.1.3 ! root     1687: * host_set_time:                         Host Time.           (line  37)
1.1       root     1688: * host_t:                                Host Ports.          (line   6)
                   1689: * ipc_space_t:                           Port Manipulation Interface.
                   1690:                                                               (line   9)
                   1691: * mach_host_self:                        Host Ports.          (line  13)
                   1692: * mach_msg:                              Mach Message Call.   (line   9)
1.1.1.2   root     1693: * MACH_MSGH_BITS:                        Message Format.      (line 103)
1.1.1.3 ! root     1694: * MACH_MSGH_BITS_LOCAL:                  Message Format.      (line 116)
        !          1695: * MACH_MSGH_BITS_OTHER:                  Message Format.      (line 127)
        !          1696: * MACH_MSGH_BITS_PORTS:                  Message Format.      (line 122)
1.1.1.2   root     1697: * MACH_MSGH_BITS_REMOTE:                 Message Format.      (line 110)
1.1       root     1698: * mach_msg_bits_t:                       Message Format.      (line  20)
                   1699: * mach_msg_header_t:                     Message Format.      (line  32)
                   1700: * mach_msg_id_t:                         Message Format.      (line  28)
                   1701: * mach_msg_size_t:                       Message Format.      (line  24)
                   1702: * mach_msg_timeout_t:                    Mach Message Call.   (line  60)
1.1.1.3 ! root     1703: * mach_msg_type_long_t:                  Message Format.      (line 248)
        !          1704: * mach_msg_type_name_t:                  Message Format.      (line 138)
        !          1705: * mach_msg_type_number_t:                Message Format.      (line 148)
        !          1706: * MACH_MSG_TYPE_PORT_ANY:                Message Format.      (line 234)
        !          1707: * MACH_MSG_TYPE_PORT_ANY_RIGHT:          Message Format.      (line 243)
        !          1708: * MACH_MSG_TYPE_PORT_ANY_SEND:           Message Format.      (line 238)
        !          1709: * mach_msg_type_size_t:                  Message Format.      (line 143)
        !          1710: * mach_msg_type_t:                       Message Format.      (line 153)
1.1.1.2   root     1711: * mach_ports_lookup:                     Inherited Ports.     (line  14)
                   1712: * mach_ports_register:                   Inherited Ports.     (line  12)
1.1       root     1713: * mach_port_allocate:                    Port Creation.       (line   6)
                   1714: * mach_port_allocate_name:               Port Creation.       (line  64)
1.1.1.3 ! root     1715: * mach_port_clear_protected_payload:     Receive Rights.      (line 144)
1.1       root     1716: * mach_port_deallocate:                  Port Destruction.    (line   6)
                   1717: * mach_port_destroy:                     Port Destruction.    (line  28)
                   1718: * mach_port_extract_right:               Ports and other Tasks.
1.1.1.3 ! root     1719:                                                               (line  58)
1.1       root     1720: * mach_port_get_receive_status:          Receive Rights.      (line  54)
                   1721: * mach_port_get_refs:                    Port Rights.         (line   6)
                   1722: * mach_port_get_set_status:              Port Sets.           (line   6)
                   1723: * mach_port_insert_right:                Ports and other Tasks.
                   1724:                                                               (line   6)
1.1.1.3 ! root     1725: * mach_port_mod_refs:                    Port Rights.         (line  36)
1.1       root     1726: * mach_port_move_member:                 Port Sets.           (line  26)
                   1727: * mach_port_mscount_t:                   Receive Rights.      (line  10)
                   1728: * mach_port_msgcount_t:                  Receive Rights.      (line  14)
                   1729: * mach_port_names:                       Port Names.          (line   6)
                   1730: * mach_port_rename:                      Port Names.          (line  75)
                   1731: * mach_port_request_notification:        Request Notifications.
                   1732:                                                               (line   6)
                   1733: * mach_port_rights_t:                    Receive Rights.      (line  18)
                   1734: * mach_port_seqno_t:                     Receive Rights.      (line   6)
1.1.1.3 ! root     1735: * mach_port_set_mscount:                 Receive Rights.      (line  73)
        !          1736: * mach_port_set_protected_payload:       Receive Rights.      (line 126)
        !          1737: * mach_port_set_qlimit:                  Receive Rights.      (line  90)
        !          1738: * mach_port_set_seqno:                   Receive Rights.      (line 108)
1.1       root     1739: * mach_port_status_t:                    Receive Rights.      (line  22)
                   1740: * mach_port_t:                           Message Format.      (line  13)
                   1741: * mach_port_type:                        Port Names.          (line  33)
                   1742: * mach_reply_port:                       Port Creation.       (line  47)
                   1743: * mach_task_self:                        Task Information.    (line   6)
                   1744: * mach_thread_self:                      Thread Information.  (line   6)
1.1.1.3 ! root     1745: * mapped_time_value_t:                   Host Time.           (line  50)
1.1       root     1746: * memory_object_change_attributes:       Memory Object Attributes.
1.1.1.3 ! root     1747:                                                               (line  26)
1.1       root     1748: * memory_object_change_completed:        Memory Object Attributes.
1.1.1.3 ! root     1749:                                                               (line  64)
1.1       root     1750: * memory_object_copy:                    Memory Objects and Data.
1.1.1.3 ! root     1751:                                                               (line 209)
1.1       root     1752: * memory_object_create:                  Default Memory Manager.
                   1753:                                                               (line  25)
                   1754: * memory_object_data_error:              Memory Objects and Data.
1.1.1.3 ! root     1755:                                                               (line 159)
1.1       root     1756: * memory_object_data_initialize:         Default Memory Manager.
1.1.1.3 ! root     1757:                                                               (line  73)
1.1       root     1758: * memory_object_data_provided:           Memory Objects and Data.
1.1.1.3 ! root     1759:                                                               (line 298)
1.1       root     1760: * memory_object_data_request:            Memory Objects and Data.
1.1.1.3 ! root     1761:                                                               (line  47)
1.1       root     1762: * memory_object_data_return:             Memory Objects and Data.
                   1763:                                                               (line   6)
                   1764: * memory_object_data_supply:             Memory Objects and Data.
1.1.1.3 ! root     1765:                                                               (line  84)
1.1       root     1766: * memory_object_data_unavailable:        Memory Objects and Data.
1.1.1.3 ! root     1767:                                                               (line 179)
1.1       root     1768: * memory_object_data_unlock:             Memory Object Locking.
1.1.1.3 ! root     1769:                                                               (line  83)
1.1       root     1770: * memory_object_data_write:              Memory Objects and Data.
1.1.1.3 ! root     1771:                                                               (line 266)
1.1       root     1772: * memory_object_default_server:          Memory Object Server.
                   1773:                                                               (line   8)
                   1774: * memory_object_destroy:                 Memory Object Termination.
1.1.1.3 ! root     1775:                                                               (line  39)
1.1       root     1776: * memory_object_get_attributes:          Memory Object Attributes.
                   1777:                                                               (line   6)
                   1778: * memory_object_init:                    Memory Object Creation.
                   1779:                                                               (line   6)
                   1780: * memory_object_lock_completed:          Memory Object Locking.
1.1.1.3 ! root     1781:                                                               (line  56)
1.1       root     1782: * memory_object_lock_request:            Memory Object Locking.
                   1783:                                                               (line   6)
                   1784: * memory_object_ready:                   Memory Object Creation.
1.1.1.3 ! root     1785:                                                               (line  55)
1.1       root     1786: * memory_object_server:                  Memory Object Server.
                   1787:                                                               (line   6)
                   1788: * memory_object_set_attributes:          Memory Object Attributes.
1.1.1.3 ! root     1789:                                                               (line  81)
1.1       root     1790: * memory_object_supply_completed:        Memory Objects and Data.
1.1.1.3 ! root     1791:                                                               (line 125)
1.1       root     1792: * memory_object_terminate:               Memory Object Termination.
                   1793:                                                               (line   6)
                   1794: * processor_assign:                      Processors and Sets. (line   6)
1.1.1.3 ! root     1795: * processor_basic_info_t:                Processor Info.      (line  67)
1.1       root     1796: * processor_control:                     Processor Control.   (line   8)
                   1797: * processor_exit:                        Processor Control.   (line   7)
                   1798: * processor_get_assignment:              Processors and Sets. (line  30)
                   1799: * processor_info:                        Processor Info.      (line   6)
1.1.1.3 ! root     1800: * processor_set_basic_info_t:            Processor Set Info.  (line  75)
1.1       root     1801: * processor_set_create:                  Processor Set Creation.
                   1802:                                                               (line   6)
                   1803: * processor_set_default:                 Processor Set Access.
1.1.1.3 ! root     1804:                                                               (line  34)
1.1       root     1805: * processor_set_destroy:                 Processor Set Destruction.
                   1806:                                                               (line   6)
                   1807: * processor_set_info:                    Processor Set Info.  (line   6)
                   1808: * processor_set_max_priority:            Processor Set Priority.
                   1809:                                                               (line   6)
                   1810: * processor_set_name_t:                  Processor Set Ports. (line   6)
                   1811: * processor_set_policy_disable:          Processor Set Policy.
                   1812:                                                               (line   8)
                   1813: * processor_set_policy_enable:           Processor Set Policy.
                   1814:                                                               (line   6)
1.1.1.3 ! root     1815: * processor_set_sched_info_t:            Processor Set Info.  (line  93)
1.1       root     1816: * processor_set_t:                       Processor Set Ports. (line  12)
                   1817: * processor_set_tasks:                   Tasks and Threads on Sets.
                   1818:                                                               (line   6)
                   1819: * processor_set_threads:                 Tasks and Threads on Sets.
1.1.1.3 ! root     1820:                                                               (line  21)
1.1       root     1821: * processor_start:                       Processor Control.   (line   6)
                   1822: * processor_t:                           Processor Interface. (line   6)
1.1.1.3 ! root     1823: * sampled_pc_flavor_t:                   Profiling.           (line  69)
        !          1824: * sampled_pc_t:                          Profiling.           (line  54)
1.1       root     1825: * seqnos_memory_object_change_completed: Memory Object Attributes.
1.1.1.3 ! root     1826:                                                               (line  67)
1.1       root     1827: * seqnos_memory_object_copy:             Memory Objects and Data.
1.1.1.3 ! root     1828:                                                               (line 217)
1.1       root     1829: * seqnos_memory_object_create:           Default Memory Manager.
1.1.1.3 ! root     1830:                                                               (line  33)
1.1       root     1831: * seqnos_memory_object_data_initialize:  Default Memory Manager.
1.1.1.3 ! root     1832:                                                               (line  78)
1.1       root     1833: * seqnos_memory_object_data_request:     Memory Objects and Data.
1.1.1.3 ! root     1834:                                                               (line  53)
1.1       root     1835: * seqnos_memory_object_data_return:      Memory Objects and Data.
1.1.1.3 ! root     1836:                                                               (line  13)
1.1       root     1837: * seqnos_memory_object_data_unlock:      Memory Object Locking.
1.1.1.3 ! root     1838:                                                               (line  89)
1.1       root     1839: * seqnos_memory_object_data_write:       Memory Objects and Data.
1.1.1.3 ! root     1840:                                                               (line 272)
1.1       root     1841: * seqnos_memory_object_default_server:   Memory Object Server.
1.1.1.3 ! root     1842:                                                               (line  14)
1.1       root     1843: * seqnos_memory_object_init:             Memory Object Creation.
1.1.1.3 ! root     1844:                                                               (line  15)
1.1       root     1845: * seqnos_memory_object_lock_completed:   Memory Object Locking.
1.1.1.3 ! root     1846:                                                               (line  61)
1.1       root     1847: * seqnos_memory_object_server:           Memory Object Server.
1.1.1.3 ! root     1848:                                                               (line  11)
1.1       root     1849: * seqnos_memory_object_supply_completed: Memory Objects and Data.
1.1.1.3 ! root     1850:                                                               (line 132)
1.1       root     1851: * seqnos_memory_object_terminate:        Memory Object Termination.
1.1.1.3 ! root     1852:                                                               (line  13)
1.1       root     1853: * struct host_basic_info:                Host Information.    (line  47)
                   1854: * struct host_sched_info:                Host Information.    (line  77)
1.1.1.3 ! root     1855: * struct processor_basic_info:           Processor Info.      (line  44)
        !          1856: * struct processor_set_basic_info:       Processor Set Info.  (line  51)
        !          1857: * struct processor_set_sched_info:       Processor Set Info.  (line  78)
        !          1858: * struct task_basic_info:                Task Information.    (line  82)
        !          1859: * struct task_events_info:               Task Information.    (line 113)
        !          1860: * struct task_thread_times_info:         Task Information.    (line 144)
        !          1861: * struct thread_basic_info:              Thread Information.  (line  66)
        !          1862: * struct thread_sched_info:              Thread Information.  (line 127)
        !          1863: * swtch:                                 Hand-Off Scheduling. (line  82)
        !          1864: * swtch_pri:                             Hand-Off Scheduling. (line  94)
1.1       root     1865: * task_assign:                           Tasks and Threads on Sets.
1.1.1.3 ! root     1866:                                                               (line  36)
1.1       root     1867: * task_assign_default:                   Tasks and Threads on Sets.
1.1.1.3 ! root     1868:                                                               (line  50)
        !          1869: * task_basic_info_t:                     Task Information.    (line 110)
1.1       root     1870: * task_create:                           Task Creation.       (line   6)
1.1.1.3 ! root     1871: * task_disable_pc_sampling:              Profiling.           (line  21)
1.1       root     1872: * task_enable_pc_sampling:               Profiling.           (line   6)
1.1.1.3 ! root     1873: * task_events_info_t:                    Task Information.    (line 141)
1.1       root     1874: * task_get_assignment:                   Tasks and Threads on Sets.
1.1.1.3 ! root     1875:                                                               (line  61)
        !          1876: * task_get_bootstrap_port:               Task Special Ports.  (line  41)
1.1       root     1877: * task_get_emulation_vector:             Syscall Emulation.   (line   6)
1.1.1.3 ! root     1878: * task_get_exception_port:               Task Special Ports.  (line  35)
        !          1879: * task_get_kernel_port:                  Task Special Ports.  (line  29)
        !          1880: * task_get_sampled_pcs:                  Profiling.           (line  36)
1.1       root     1881: * task_get_special_port:                 Task Special Ports.  (line   6)
1.1.1.3 ! root     1882: * task_info:                             Task Information.    (line  42)
1.1       root     1883: * task_priority:                         Task Execution.      (line  27)
                   1884: * task_ras_control:                      Task Execution.      (line  45)
                   1885: * task_resume:                           Task Execution.      (line  18)
1.1.1.3 ! root     1886: * task_set_bootstrap_port:               Task Special Ports.  (line  78)
        !          1887: * task_set_emulation:                    Syscall Emulation.   (line  21)
1.1       root     1888: * task_set_emulation_vector:             Syscall Emulation.   (line  12)
1.1.1.3 ! root     1889: * task_set_exception_port:               Task Special Ports.  (line  72)
        !          1890: * task_set_kernel_port:                  Task Special Ports.  (line  66)
        !          1891: * task_set_name:                         Task Information.    (line 161)
        !          1892: * task_set_special_port:                 Task Special Ports.  (line  47)
1.1       root     1893: * task_suspend:                          Task Execution.      (line   6)
                   1894: * task_t:                                Task Interface.      (line   6)
                   1895: * task_terminate:                        Task Termination.    (line   6)
                   1896: * task_threads:                          Task Information.    (line  30)
1.1.1.3 ! root     1897: * task_thread_times_info_t:              Task Information.    (line 158)
1.1       root     1898: * thread_abort:                          Thread Execution.    (line  36)
                   1899: * thread_assign:                         Tasks and Threads on Sets.
1.1.1.3 ! root     1900:                                                               (line  73)
1.1       root     1901: * thread_assign_default:                 Tasks and Threads on Sets.
1.1.1.3 ! root     1902:                                                               (line  87)
        !          1903: * thread_basic_info_t:                   Thread Information.  (line 124)
1.1       root     1904: * thread_create:                         Thread Creation.     (line   6)
1.1.1.3 ! root     1905: * thread_depress_abort:                  Hand-Off Scheduling. (line  75)
        !          1906: * thread_disable_pc_sampling:            Profiling.           (line  24)
        !          1907: * thread_enable_pc_sampling:             Profiling.           (line   9)
1.1       root     1908: * thread_get_assignment:                 Tasks and Threads on Sets.
1.1.1.3 ! root     1909:                                                               (line  97)
1.1       root     1910: * thread_get_exception_port:             Thread Special Ports.
                   1911:                                                               (line  25)
                   1912: * thread_get_kernel_port:                Thread Special Ports.
                   1913:                                                               (line  19)
1.1.1.3 ! root     1914: * thread_get_sampled_pcs:                Profiling.           (line  39)
1.1       root     1915: * thread_get_special_port:               Thread Special Ports.
                   1916:                                                               (line   6)
                   1917: * thread_get_state:                      Thread Execution.    (line  98)
                   1918: * thread_info:                           Thread Information.  (line  30)
1.1.1.3 ! root     1919: * thread_max_priority:                   Thread Priority.     (line  37)
1.1       root     1920: * thread_policy:                         Scheduling Policy.   (line   6)
                   1921: * thread_priority:                       Thread Priority.     (line  18)
                   1922: * thread_resume:                         Thread Execution.    (line  27)
1.1.1.3 ! root     1923: * thread_sched_info_t:                   Thread Information.  (line 158)
1.1       root     1924: * thread_set_exception_port:             Thread Special Ports.
                   1925:                                                               (line  50)
                   1926: * thread_set_kernel_port:                Thread Special Ports.
                   1927:                                                               (line  44)
                   1928: * thread_set_special_port:               Thread Special Ports.
                   1929:                                                               (line  31)
1.1.1.3 ! root     1930: * thread_set_state:                      Thread Execution.    (line 123)
1.1       root     1931: * thread_suspend:                        Thread Execution.    (line   6)
                   1932: * thread_switch:                         Hand-Off Scheduling. (line   6)
                   1933: * thread_t:                              Thread Interface.    (line   6)
                   1934: * thread_terminate:                      Thread Termination.  (line   6)
                   1935: * thread_wire:                           Thread Settings.     (line   6)
                   1936: * time_value_add:                        Host Time.           (line  23)
                   1937: * time_value_add_usec:                   Host Time.           (line  19)
                   1938: * time_value_t:                          Host Time.           (line   6)
                   1939: * vm_allocate:                           Memory Allocation.   (line   6)
                   1940: * vm_copy:                               Data Transfer.       (line  50)
                   1941: * vm_deallocate:                         Memory Deallocation. (line   6)
                   1942: * vm_inherit:                            Memory Attributes.   (line  68)
1.1.1.3 ! root     1943: * vm_machine_attribute:                  Memory Attributes.   (line 132)
1.1       root     1944: * vm_map:                                Mapping Memory Objects.
                   1945:                                                               (line   6)
                   1946: * vm_protect:                            Memory Attributes.   (line  34)
                   1947: * vm_read:                               Data Transfer.       (line   6)
                   1948: * vm_region:                             Memory Attributes.   (line   6)
                   1949: * vm_set_default_memory_manager:         Default Memory Manager.
                   1950:                                                               (line   6)
                   1951: * vm_statistics:                         Memory Statistics.   (line  50)
                   1952: * vm_statistics_data_t:                  Memory Statistics.   (line   6)
                   1953: * vm_task_t:                             Virtual Memory Interface.
                   1954:                                                               (line   6)
1.1.1.3 ! root     1955: * vm_wire:                               Memory Attributes.   (line  99)
1.1       root     1956: * vm_write:                              Data Transfer.       (line  31)
                   1957: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.