vm_init.c (3449) | vm_init.c (5455) |
---|---|
1 2/* | 1/* |
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 10 * modification, are permitted provided that the following conditions --- 25 unchanged lines hidden (view full) --- 36 * 37 * from: @(#)vm_init.c 8.1 (Berkeley) 6/11/93 38 * 39 * 40 * Copyright (c) 1987, 1990 Carnegie-Mellon University. 41 * All rights reserved. 42 * 43 * Authors: Avadis Tevanian, Jr., Michael Wayne Young | 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 9 * modification, are permitted provided that the following conditions --- 25 unchanged lines hidden (view full) --- 35 * 36 * from: @(#)vm_init.c 8.1 (Berkeley) 6/11/93 37 * 38 * 39 * Copyright (c) 1987, 1990 Carnegie-Mellon University. 40 * All rights reserved. 41 * 42 * Authors: Avadis Tevanian, Jr., Michael Wayne Young |
44 * | 43 * |
45 * Permission to use, copy, modify and distribute this software and 46 * its documentation is hereby granted, provided that both the copyright 47 * notice and this permission notice appear in all copies of the 48 * software, derivative works or modified versions, and any portions 49 * thereof, and that both notices appear in supporting documentation. | 44 * Permission to use, copy, modify and distribute this software and 45 * its documentation is hereby granted, provided that both the copyright 46 * notice and this permission notice appear in all copies of the 47 * software, derivative works or modified versions, and any portions 48 * thereof, and that both notices appear in supporting documentation. |
50 * 51 * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS" 52 * CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND | 49 * 50 * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS" 51 * CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND |
53 * FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE. | 52 * FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE. |
54 * | 53 * |
55 * Carnegie Mellon requests users of this software to return to 56 * 57 * Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU 58 * School of Computer Science 59 * Carnegie Mellon University 60 * Pittsburgh PA 15213-3890 61 * 62 * any improvements or extensions that they make and grant Carnegie the 63 * rights to redistribute these changes. 64 * | 54 * Carnegie Mellon requests users of this software to return to 55 * 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 * |
65 * $Id: vm_init.c,v 1.3 1994/08/02 07:55:21 davidg Exp $ | 64 * $Id: vm_init.c,v 1.4 1994/10/09 01:52:09 phk Exp $ |
66 */ 67 68/* 69 * Initialize the Virtual Memory subsystem. 70 */ 71 72#include <sys/param.h> 73#include <sys/systm.h> --- 7 unchanged lines hidden (view full) --- 81 * This is done only by the first cpu up. 82 * 83 * The start and end address of physical memory is passed in. 84 */ 85 86void 87vm_mem_init() 88{ | 65 */ 66 67/* 68 * Initialize the Virtual Memory subsystem. 69 */ 70 71#include <sys/param.h> 72#include <sys/systm.h> --- 7 unchanged lines hidden (view full) --- 80 * This is done only by the first cpu up. 81 * 82 * The start and end address of physical memory is passed in. 83 */ 84 85void 86vm_mem_init() 87{ |
89 extern vm_offset_t avail_start, avail_end; 90 extern vm_offset_t virtual_avail, virtual_end; | 88 extern vm_offset_t avail_start, avail_end; 89 extern vm_offset_t virtual_avail, virtual_end; |
91 92 /* | 90 91 /* |
93 * Initializes resident memory structures. 94 * From here on, all physical memory is accounted for, 95 * and we use only virtual addresses. | 92 * Initializes resident memory structures. From here on, all physical 93 * memory is accounted for, and we use only virtual addresses. |
96 */ 97 98 vm_set_page_size(); 99 virtual_avail = vm_page_startup(avail_start, avail_end, virtual_avail); 100 /* 101 * Initialize other VM packages 102 */ 103 vm_object_init(virtual_end - VM_MIN_KERNEL_ADDRESS); 104 vm_map_startup(); 105 kmem_init(virtual_avail, virtual_end); 106 pmap_init(avail_start, avail_end); 107 vm_pager_init(); 108} | 94 */ 95 96 vm_set_page_size(); 97 virtual_avail = vm_page_startup(avail_start, avail_end, virtual_avail); 98 /* 99 * Initialize other VM packages 100 */ 101 vm_object_init(virtual_end - VM_MIN_KERNEL_ADDRESS); 102 vm_map_startup(); 103 kmem_init(virtual_avail, virtual_end); 104 pmap_init(avail_start, avail_end); 105 vm_pager_init(); 106} |