haiku/headers/private/kernel/arch
Ingo Weinhold d40a935560 Boot loader (x86 mmu.cpp):
* Made the page table allocation more flexible. Got rid of sMaxVirtualAddress
  and added new virtual_end address to the architecture specific kernel args.
* Increased the virtual space we reserve for the kernel to 16 MB. That
  should suffice for quite a while. The previous 2 MB were too tight when
  building the kernel with debug info.
* mmu_init(): The way we were translating the BIOS' extended memory map to
  our physical ranges arrays was broken. Small gaps between usable memory
  ranges would be ignored and instead marked allocated. This worked fine for
  the boot loader and during the early kernel initialization, but after the
  VM has been fully set up it frees all physical ranges that have not been
  claimed otherwise. So those ranges could be entered into the free pages
  list and would be used later. This could possibly cause all kinds of weird
  problems, probably including ACPI issues. Now we add only the actually
  usable ranges to our list.

Kernel:
* vm_page_init(): The pages of the ranges between the usable physical memory
  ranges are now marked PAGE_STATE_UNUSED, the allocated ranges
  PAGE_STATE_WIRED.
* unmap_and_free_physical_pages(): Don't free pages marked as unused.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35726 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-03-02 18:13:06 +00:00
..
alpha It is accomplished ... 2002-07-09 12:24:59 +00:00
arm * Moved the VM headers into subdirectory vm/. 2009-12-02 18:05:10 +00:00
m68k * Moved the VM headers into subdirectory vm/. 2009-12-02 18:05:10 +00:00
mipsel Added and modified kernel stubs and headers for arch mipsel. Correctness not included. 2009-08-23 02:52:09 +00:00
ppc Added missing include. 2010-02-03 18:47:07 +00:00
sh4 Removed unused <arch>_switch_stack_and_call() and 2010-01-09 15:09:02 +00:00
sparc Removed execute property that was set accidently (since CVS days). 2005-03-18 01:50:45 +00:00
x86 Boot loader (x86 mmu.cpp): 2010-03-02 18:13:06 +00:00
cpu.h memory barrier functions available for drivers. 2008-04-26 15:18:04 +00:00
debug_console.h * Added the opportunity to add temporary debug interrupt handlers for 2006-06-12 22:24:53 +00:00
debug.h * arch_debug_get_stack_trace(): 2009-12-22 15:15:07 +00:00
elf.h Symbol resolution functions in the kernel: Removed the unused parameter 2009-05-13 15:25:27 +00:00
int.h Fully inline {disable,restore}_interrupts() and friends when including 2008-10-01 14:33:10 +00:00
platform.h Implemented first basic APM driver. Only tested with QEMU so far, that's why 2006-01-28 18:11:20 +00:00
real_time_clock.h The real_time_data structure contains an architecture specific 2006-01-04 02:17:59 +00:00
smp.h Applied NewOS change 1914: moved APIC setup into the kernel due to a 2004-03-14 22:54:00 +00:00
system_info.h Added our first x86-only syscall for get_cpuid(). 2004-12-01 03:54:23 +00:00
thread_types.h Replaced arch/thread_struct.h with arch/thread_types.h, and renamed 2005-12-20 16:07:27 +00:00
thread.h Removed unused <arch>_switch_stack_and_call() and 2010-01-09 15:09:02 +00:00
timer.h Replaced timer.h with a cpp safe version. 2004-03-14 21:08:25 +00:00
user_debugger.h * Always include the public arch_debugger.h headers. The structures defined 2009-07-21 22:18:39 +00:00
vm_translation_map.h Refactored vm_translation_map: 2010-01-14 03:26:12 +00:00
vm_types.h Preparation for MTRR support, code is completely untested, though. 2005-12-12 17:04:36 +00:00
vm.h vm_area -> VMArea 2009-12-01 17:40:04 +00:00