* child_info.h (CURR_CHILD_INFO_MAGIC): Reset.

(child_info_fork::mount_table): Remove.
(child_info_fork::myself_addr): Remove.
* fork.cc (fork_child): Don't set either of the above.
* dcrt0.cc (dll_crt0_1): Call memory_init as early as possible.
* fhandler_console.cc (console_state): Move to shared_info.h.
(fhandler_console::get_tty_stuff): Reflect open_shared arg change.
* pinfo.cc (myself_addr): Remove definition.
(pinfo::init): Get myself address from open_shared.
* pinfo.h (myself_addr): Remove declaration.
* shared.cc (open_shared): Rework so that known shared memory locations are
protected.  Take shared memory type as fifth argument.
(memory_init): Reflect open_shared arg change.
* shared_info.h (shared_locations): New enum.
(console_state): Move here.
(open_shared): Reflect open_shared arg change in declaration.
This commit is contained in:
Christopher Faylor
2002-10-15 07:03:45 +00:00
parent 54030e2146
commit fdb28b5e5f
9 changed files with 96 additions and 43 deletions

View File

@@ -29,7 +29,7 @@ enum
#define EXEC_MAGIC_SIZE sizeof(child_info)
#define CURR_CHILD_INFO_MAGIC 0x64848c11U
#define CURR_CHILD_INFO_MAGIC 0x8e0899faU
/* NOTE: Do not make gratuitous changes to the names or organization of the
below class. The layout is checksummed to determine compatibility between
@@ -61,8 +61,6 @@ class child_info_fork: public child_info
public:
HANDLE forker_finished;// for synchronization with child
DWORD stacksize; // size of parent stack
mount_info *mount_table;// location of mount table in parent
_pinfo *myself_addr; // where myself shared memory lives in the parent
jmp_buf jmp; // where child will jump to
void *stacktop; // location of top of parent stack
void *stackbottom; // location of bottom of parent stack