diff options
author | Roland McGrath <roland@gnu.org> | 1995-10-25 19:59:19 +0000 |
---|---|---|
committer | Roland McGrath <roland@gnu.org> | 1995-10-25 19:59:19 +0000 |
commit | 1d9a2d12a59460a3cd8036dc7f8fb3ee3ed24bd9 (patch) | |
tree | e1240060dfed310d994490753aa48f6a3323ad52 /hurd/exec_startup.defs | |
parent | b9448845da0556f24920881c1b3414abfda32750 (diff) |
Initial revision
Diffstat (limited to 'hurd/exec_startup.defs')
-rw-r--r-- | hurd/exec_startup.defs | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/hurd/exec_startup.defs b/hurd/exec_startup.defs new file mode 100644 index 00000000..9dfb79aa --- /dev/null +++ b/hurd/exec_startup.defs @@ -0,0 +1,46 @@ +/* Interface definitions for process startup. + Copyright (C) 1995 Free Software Foundation, Inc. + +This file is part of the GNU Hurd. + +The GNU Hurd is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +The GNU Hurd is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with the GNU Hurd; see the file COPYING. If not, write to +the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ + +/* Written by Roland McGrath. */ + +subsystem exec_startup 30500; + +#include <hurd/hurd_types.defs> + +/* This call is made by a new task to its bootstrap port to get its + startup ports and information. */ + +routine exec_startup_get_info ( + bootstrap: mach_port_t; + /* These describe the entry point and program header data + of the user program loaded into the task. */ + out user_entry: vm_address_t; + out phdr_data: vm_address_t; + out phdr_size: vm_size_t; + /* These are the base address and size of the initial stack + allocated by the exec server. */ + out stack_base: vm_address_t; + out stack_size: vm_size_t; + /* The rest of the information is that passed by exec_exec. */ + out flags: int; + out argv: data_t, dealloc; + out envp: data_t, dealloc; + out dtable: portarray_t, dealloc; + out portarray: portarray_t, dealloc; + out intarray: intarray_t, dealloc); |