diff options
| author | reinoud <reinoud@NetBSD.org> | 2011-08-22 15:36:23 +0000 |
|---|---|---|
| committer | reinoud <reinoud@NetBSD.org> | 2011-08-22 15:36:23 +0000 |
| commit | 5eab7aaf5747e98f43d2bf2ec9bd2cb8f3727abf (patch) | |
| tree | 99e055af409d33544982dd138b556771921525d3 /sys/arch/usermode/include/vmparam.h | |
| parent | e6ac74a08798ab61a4ff90576e7296858bd0655d (diff) | |
Start NetBSD/usermode's pmap. Its using a temp file as a physical memory
backup and that should be documented in the code. A physical address is thus a
file offset(!) and a virtual address is a `normal' accesible address.
Still to do: various misc functions and pmap_extract() in special.
Credits also go to Ben Harris for his work on the Acorn26 pmap that followed
the Daemon Book recommendation for systems without real page tables on wich
this implementation is modelled after.
Diffstat (limited to 'sys/arch/usermode/include/vmparam.h')
| -rw-r--r-- | sys/arch/usermode/include/vmparam.h | 24 |
1 files changed, 15 insertions, 9 deletions
diff --git a/sys/arch/usermode/include/vmparam.h b/sys/arch/usermode/include/vmparam.h index 4cb39eb0550..6129f706921 100644 --- a/sys/arch/usermode/include/vmparam.h +++ b/sys/arch/usermode/include/vmparam.h @@ -1,4 +1,4 @@ -/* $NetBSD: vmparam.h,v 1.3 2009/10/21 16:06:59 snj Exp $ */ +/* $NetBSD: vmparam.h,v 1.4 2011/08/22 15:36:23 reinoud Exp $ */ /*- * Copyright (c) 2007 Jared D. McNeill <jmcneill@invisible.ca> @@ -30,21 +30,27 @@ #define _ARCH_USERMODE_INCLUDE_VMPARAM_H #include </usr/include/machine/vmparam.h> +#include <machine/pmap.h> #include "opt_memsize.h" -#undef VM_MIN_ADDRESS -#define VM_MIN_ADDRESS 0 - -#undef VM_MAX_ADDRESS -#define VM_MAX_ADDRESS (MEMSIZE*1024) +extern paddr_t kmem_k_start, kmem_k_end; +extern paddr_t kmem_data_start, kmem_data_end; +extern paddr_t kmem_ext_start, kmem_ext_end; +extern paddr_t kmem_user_start, kmem_user_end; #undef VM_MIN_KERNEL_ADDRESS -#define VM_MIN_KERNEL_ADDRESS 0 +#define VM_MIN_KERNEL_ADDRESS kmem_k_start #undef VM_MAX_KERNEL_ADDRESS -#define VM_MAX_KERNEL_ADDRESS (MEMSIZE*1024) +#define VM_MAX_KERNEL_ADDRESS kmem_ext_end + +#undef VM_MIN_ADDRESS +#define VM_MIN_ADDRESS kmem_k_start + +#undef VM_MAX_ADDRESS +#define VM_MAX_ADDRESS kmem_user_end #undef VM_MAXUSER_ADDRESS -#define VM_MAXUSER_ADDRESS (MEMSIZE*1024) +#define VM_MAXUSER_ADDRESS kmem_user_end #endif /* !_ARCH_USERMODE_INCLUDE_VMPARAM_H */ |
