1 |
2/* 3 * Copyright (c) 1991, 1993 4 * The Regents of the University of California. All rights reserved. 5 * 6 * This code is derived from software contributed to Berkeley by 7 * The Mach Operating System project at Carnegie-Mellon University. 8 * 9 * Redistribution and use in source and binary forms, with or without --- 65 unchanged lines hidden (view full) --- 75 76/* 77 * vm_init initializes the virtual memory system. 78 * This is done only by the first cpu up. 79 * 80 * The start and end address of physical memory is passed in. 81 */ 82 |
83void 84vm_mem_init() |
85{ 86 extern vm_offset_t avail_start, avail_end; 87 extern vm_offset_t virtual_avail, virtual_end; 88 89 /* 90 * Initializes resident memory structures. 91 * From here on, all physical memory is accounted for, 92 * and we use only virtual addresses. 93 */ |
94 |
95 vm_set_page_size(); 96 virtual_avail = vm_page_startup(avail_start, avail_end, virtual_avail); |
97 /* 98 * Initialize other VM packages 99 */ 100 vm_object_init(virtual_end - VM_MIN_KERNEL_ADDRESS); 101 vm_map_startup(); 102 kmem_init(virtual_avail, virtual_end); 103 pmap_init(avail_start, avail_end); 104 vm_pager_init(); 105} |