History log of /haiku/src/system/kernel/arch/x86/paging/32bit/X86PagingMethod32Bit.h
Revision Date Author Comments
# 2e3cbcfa 01-Dec-2013 Pawel Dziepak <pdziepak@quarnos.org>

x86: Allocate as much initial physical page pools as needed


# 077c84eb 05-Nov-2013 Pawel Dziepak <pdziepak@quarnos.org>

kernel: atomic_*() functions rework

* No need for the atomically changed variables to be declared as
volatile.
* Drop support for atomically getting and setting unaligned data.
* Introduce atomic_get_and_set[64]() which works the same as
atomic_set[64]() used to. atomic_set[64]() does not return the
previous value anymore.


# e276cc04 05-Jul-2012 Alex Smith <alex@alex-smith.me.uk>

Finished implementation of x86_64 paging.

* vm_init now runs up until create_preloaded_image_areas(), which needs
fixing to handle ELF64.
* Not completely tested. I know Map(), Unmap() and Query() work fine, the
other methods have not been tested as the kernel doesn't boot far enough
for any of them to be called yet. As far as I know they're correct, though.
* Not yet implemented the destructor for X86VMTranslationMap64Bit or Init()
for a user address space.


# 1c7fda89 08-Jun-2010 Ingo Weinhold <ingo_weinhold@gmx.de>

* Moved X86VMTranslationMap32Bit to its own source file.
* Made all helper function operating on paging structures static methods of
X86PagingMethod32Bit.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37064 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 2434bdc4 08-Jun-2010 Ingo Weinhold <ingo_weinhold@gmx.de>

* Introduced global variable gX86PagingMethod, so the paging method can be
accessed from anywhere. Added static X86PagingMethod32Bit::Method()
returning it as the subtype pointer -- to be used in the code related to
that method only, of course.
* Made a bunch of static variables non-static members of
X86PagingMethod32Bit and added accessors for them. This makes them
accessible in other source files (allowing for more refactoring) and saves
memory, when we actually have another paging method implementation.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37062 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f0675bf7 08-Jun-2010 Ingo Weinhold <ingo_weinhold@gmx.de>

Moved X86PagingStructures32Bit into its own source/header pair.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37061 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 1b3e83ad 08-Jun-2010 Ingo Weinhold <ingo_weinhold@gmx.de>

Moved paging related files to new subdirectories paging and paging/32bit.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37060 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 2e3cbcfa8a455f6d0ac65f51e795e42ccfbf9eb3 01-Dec-2013 Pawel Dziepak <pdziepak@quarnos.org>

x86: Allocate as much initial physical page pools as needed


# 077c84eb27b25430428d356f3d13afabc0cc0d13 05-Nov-2013 Pawel Dziepak <pdziepak@quarnos.org>

kernel: atomic_*() functions rework

* No need for the atomically changed variables to be declared as
volatile.
* Drop support for atomically getting and setting unaligned data.
* Introduce atomic_get_and_set[64]() which works the same as
atomic_set[64]() used to. atomic_set[64]() does not return the
previous value anymore.


# e276cc0457a4ddb3f137504e220ee5e839f132d4 05-Jul-2012 Alex Smith <alex@alex-smith.me.uk>

Finished implementation of x86_64 paging.

* vm_init now runs up until create_preloaded_image_areas(), which needs
fixing to handle ELF64.
* Not completely tested. I know Map(), Unmap() and Query() work fine, the
other methods have not been tested as the kernel doesn't boot far enough
for any of them to be called yet. As far as I know they're correct, though.
* Not yet implemented the destructor for X86VMTranslationMap64Bit or Init()
for a user address space.


# 1c7fda897e52591c6f2ada9a2a16f33e6e127b32 08-Jun-2010 Ingo Weinhold <ingo_weinhold@gmx.de>

* Moved X86VMTranslationMap32Bit to its own source file.
* Made all helper function operating on paging structures static methods of
X86PagingMethod32Bit.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37064 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 2434bdc4d9e08c5adab979d84f07cc3734e655a8 08-Jun-2010 Ingo Weinhold <ingo_weinhold@gmx.de>

* Introduced global variable gX86PagingMethod, so the paging method can be
accessed from anywhere. Added static X86PagingMethod32Bit::Method()
returning it as the subtype pointer -- to be used in the code related to
that method only, of course.
* Made a bunch of static variables non-static members of
X86PagingMethod32Bit and added accessors for them. This makes them
accessible in other source files (allowing for more refactoring) and saves
memory, when we actually have another paging method implementation.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37062 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f0675bf7571235ecdedb5cf4fda90ade6b4598f6 08-Jun-2010 Ingo Weinhold <ingo_weinhold@gmx.de>

Moved X86PagingStructures32Bit into its own source/header pair.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37061 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 1b3e83addefd97925b84cebaf4003d14c9062781 08-Jun-2010 Ingo Weinhold <ingo_weinhold@gmx.de>

Moved paging related files to new subdirectories paging and paging/32bit.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37060 a95241bf-73f2-0310-859d-f6bbb57e9c96