pmap.h (8876) | pmap.h (9507) |
---|---|
1/* 2 * Copyright (c) 1991 Regents of the University of California. 3 * All rights reserved. 4 * 5 * This code is derived from software contributed to Berkeley by 6 * the Systems Programming Group of the University of Utah Computer 7 * Science Department and William Jolitz of UUNET Technologies Inc. 8 * --- 28 unchanged lines hidden (view full) --- 37 * Derived from hp300 version by Mike Hibler, this version by William 38 * Jolitz uses a recursive map [a pde points to the page directory] to 39 * map the page tables using the pagetables themselves. This is done to 40 * reduce the impact on kernel virtual memory for lots of sparse address 41 * space, and to reduce the cost of memory to each process. 42 * 43 * from: hp300: @(#)pmap.h 7.2 (Berkeley) 12/16/90 44 * from: @(#)pmap.h 7.4 (Berkeley) 5/12/91 | 1/* 2 * Copyright (c) 1991 Regents of the University of California. 3 * All rights reserved. 4 * 5 * This code is derived from software contributed to Berkeley by 6 * the Systems Programming Group of the University of Utah Computer 7 * Science Department and William Jolitz of UUNET Technologies Inc. 8 * --- 28 unchanged lines hidden (view full) --- 37 * Derived from hp300 version by Mike Hibler, this version by William 38 * Jolitz uses a recursive map [a pde points to the page directory] to 39 * map the page tables using the pagetables themselves. This is done to 40 * reduce the impact on kernel virtual memory for lots of sparse address 41 * space, and to reduce the cost of memory to each process. 42 * 43 * from: hp300: @(#)pmap.h 7.2 (Berkeley) 12/16/90 44 * from: @(#)pmap.h 7.4 (Berkeley) 5/12/91 |
45 * $Id: pmap.h,v 1.25 1995/03/26 23:42:55 davidg Exp $ | 45 * $Id: pmap.h,v 1.26 1995/05/30 08:00:48 rgrimes Exp $ |
46 */ 47 48#ifndef _MACHINE_PMAP_H_ 49#define _MACHINE_PMAP_H_ 50 51#include <machine/pte.h> 52 53typedef unsigned int *pd_entry_t; --- 89 unchanged lines hidden (view full) --- 143 * Pmap stuff 144 */ 145 146struct pmap { 147 pd_entry_t *pm_pdir; /* KVA of page directory */ 148 boolean_t pm_pdchanged; /* pdir changed */ 149 short pm_dref; /* page directory ref count */ 150 short pm_count; /* pmap reference count */ | 46 */ 47 48#ifndef _MACHINE_PMAP_H_ 49#define _MACHINE_PMAP_H_ 50 51#include <machine/pte.h> 52 53typedef unsigned int *pd_entry_t; --- 89 unchanged lines hidden (view full) --- 143 * Pmap stuff 144 */ 145 146struct pmap { 147 pd_entry_t *pm_pdir; /* KVA of page directory */ 148 boolean_t pm_pdchanged; /* pdir changed */ 149 short pm_dref; /* page directory ref count */ 150 short pm_count; /* pmap reference count */ |
151 simple_lock_data_t pm_lock; /* lock on pmap */ | |
152 struct pmap_statistics pm_stats; /* pmap statistics */ 153 long pm_ptpages; /* more stats: PT pages */ 154}; 155 156typedef struct pmap *pmap_t; 157 158#ifdef KERNEL 159extern pmap_t kernel_pmap; --- 63 unchanged lines hidden --- | 151 struct pmap_statistics pm_stats; /* pmap statistics */ 152 long pm_ptpages; /* more stats: PT pages */ 153}; 154 155typedef struct pmap *pmap_t; 156 157#ifdef KERNEL 158extern pmap_t kernel_pmap; --- 63 unchanged lines hidden --- |