Give RS a page table.

This commit is contained in:
Cristiano Giuffrida
2010-06-28 21:53:37 +00:00
parent 869a223d43
commit 06700d05d1
16 changed files with 205 additions and 45 deletions

View File

@@ -49,6 +49,7 @@
#include "glo.h" /* global variables */
#include "ipc.h" /* IPC constants */
#include "profile.h" /* system profiling */
#include "perf.h" /* performance-related definitions */
#include "debug.h" /* debugging, MUST be last kernel header */
#endif /* __ASSEMBLY__ */

View File

@@ -23,8 +23,6 @@
#define MEM_TOP 0xFFFFFFFFUL
#define USE_COW_SAFECOPY 0
FORWARD _PROTOTYPE(int safecopy, (struct proc *, endpoint_t, endpoint_t,
cp_grant_id_t, int, int, size_t, vir_bytes, vir_bytes, int));
@@ -240,7 +238,7 @@ int access; /* CPF_READ for a copy from granter to grantee, CPF_WRITE
endpoint_t new_granter, *src, *dst;
struct proc *granter_p;
int r;
#if USE_COW_SAFECOPY
#if PERF_USE_COW_SAFECOPY
vir_bytes size;
#endif
@@ -290,7 +288,7 @@ int access; /* CPF_READ for a copy from granter to grantee, CPF_WRITE
}
/* Do the regular copy. */
#if USE_COW_SAFECOPY
#if PERF_USE_COW_SAFECOPY
if(v_offset % CLICK_SIZE != addr % CLICK_SIZE || bytes < CLICK_SIZE) {
/* Give up on COW immediately when offsets are not aligned
* or we are copying less than a page.

View File

@@ -46,7 +46,11 @@
PUBLIC char *t_stack[TOT_STACK_SPACE / sizeof(char *)];
/* Define boot process flags. */
#define BVM_F (PROC_FULLVM) /* boot processes with VM */
#define BVM_F (PROC_FULLVM) /* boot processes with VM */
#define OVM_F (PERF_SYS_CORE_FULLVM ? PROC_FULLVM : 0) /* critical boot
* processes with
* optional VM.
*/
/* The system image table lists all programs that are part of the boot image.
* The order of the entries here MUST agree with the order of the programs
@@ -74,9 +78,9 @@ PUBLIC struct boot_image image[] = {
{DS_PROC_NR, BVM_F, 50, 4, 0, "ds" },
{RS_PROC_NR, 0, 50, 4, 0, "rs" },
{PM_PROC_NR, 0,500, 4, 0, "pm" },
{SCHED_PROC_NR, 0,500, 4, 0, "sched" },
{VFS_PROC_NR, 0,500, 5, 0, "vfs" },
{PM_PROC_NR, OVM_F,500, 4, 0, "pm" },
{SCHED_PROC_NR,OVM_F,500, 4, 0, "sched" },
{VFS_PROC_NR, OVM_F,500, 5, 0, "vfs" },
{MEM_PROC_NR, BVM_F, 50, 3, 0, "memory"},
{LOG_PROC_NR, BVM_F, 50, 2, 0, "log" },
{TTY_PROC_NR, BVM_F, 50, 1, 0, "tty" },