Preparing to add utcbs at disjoint virtual addresses.

This will help when syscalls have long arguments individual
utcbs can be mapped to server tasks and kept mapped in until the
tasks die, as opposed to map requests every time a server task maps
a different utcb at the same virtual address.

The changes have preparation code to also passing the utcb info
through the stack as part of the environment.

To sum up env and arg regions have also been added above the stack and
env region is to be used to pass on the utcb address information at
task startup.
This commit is contained in:
Bahadir Balban
2008-02-28 00:25:04 +00:00
parent 6e6a92be8b
commit e7b0e46065
10 changed files with 91 additions and 41 deletions

View File

@@ -54,6 +54,13 @@ struct tcb {
unsigned long stack_end; /* Exclusive of last currently mapped page */
unsigned long heap_start;
unsigned long heap_end; /* Exclusive of last currently mapped page */
unsigned long env_start;
unsigned long env_end;
unsigned long args_start;
unsigned long args_end;
/* UTCB address */
unsigned long utcb_addr;
/* Virtual memory areas */
struct list_head vm_area_list;