1/* 2 * Copyright (c) 1991, 1993 3 * The Regents of the University of California. All rights reserved. 4 * 5 * This code is derived from software contributed to Berkeley by 6 * The Mach Operating System project at Carnegie-Mellon University. 7 * 8 * Redistribution and use in source and binary forms, with or without --- 47 unchanged lines hidden (view full) --- 56 * Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU 57 * School of Computer Science 58 * Carnegie Mellon University 59 * Pittsburgh PA 15213-3890 60 * 61 * any improvements or extensions that they make and grant Carnegie the 62 * rights to redistribute these changes. 63 * |
64 * $Id: vm_object.h,v 1.12 1995/03/12 12:42:00 bde Exp $ |
65 */ 66 67/* 68 * Virtual memory object module definitions. 69 */ 70 71#ifndef _VM_OBJECT_ 72#define _VM_OBJECT_ 73 |
74#ifdef KERNEL 75#include <sys/proc.h> /* XXX for wakeup() */ 76#endif 77 |
78#include <vm/vm_page.h> 79#include <vm/vm_pager.h> 80 81/* 82 * Types defined: 83 * 84 * vm_object_t Virtual memory object. 85 */ --- 33 unchanged lines hidden (view full) --- 119struct vm_object_hash_entry { 120 TAILQ_ENTRY(vm_object_hash_entry) hash_links; /* hash chain links */ 121 vm_object_t object; /* object represened */ 122}; 123 124typedef struct vm_object_hash_entry *vm_object_hash_entry_t; 125 126#ifdef KERNEL |
127extern int vm_object_cache_max; 128 |
129TAILQ_HEAD(object_q, vm_object); 130 131struct object_q vm_object_cached_list; /* list of objects persisting */ 132int vm_object_cached; /* size of cached list */ 133simple_lock_data_t vm_cache_lock; /* lock for object cache */ 134 135struct object_q vm_object_list; /* list of allocated objects */ 136long vm_object_count; /* count of all objects */ --- 52 unchanged lines hidden --- |