Mirror of most important branches of the main Sortix repository
Go to file
Jonas 'Sortie' Termansen d392045559 Extended and documented the memory management API.
Physical paging have been extended with Page::Insert() and Page::GetStats()
which allows the physical paging system to add new pages to the physical page
allocator, and still keep the "free/used pages" count accurate, and providing
this information to the kernel (and user-space at some point).

The virtual memory API has been extended with RemapKernel(), RemapUser(),
MapRangeKernel(), UnmapRangeKernel(), MapRangeUser(), and UnmapRangeUser().
This huge number of related functions have been created in the hope that it
hides the internal complexity of portable virtual memory management and avoid
bugs. It is crucial that the correct group of functions are used when solving
a problem and that they are not mixed in a manner not documented.

I probably overdocumented the code - hopefully it should help avoiding making
stupid or bothersome code.

Another problem is that code calling Page::Get() often should call something
like Page::AlwaysGetPageEvenIfYouHaveToSwap(). I'd be swell to have a function
that always gets a page under heavily-swapping conditions. Possibly Page::Get()
could become that?
2011-08-22 21:05:10 +02:00
debsrc Initial version of Sortix. 2011-08-05 14:25:00 +02:00
hello Hello editor now doesn't require '[' in ANSI escape sequences. 2011-08-21 20:31:17 +02:00
isosrc/boot/grub Initial version of Sortix. 2011-08-05 14:25:00 +02:00
libmaxsi Added a sound api. 2011-08-22 00:25:28 +02:00
mxmpp Initial version of Sortix. 2011-08-05 14:25:00 +02:00
sortix Extended and documented the memory management API. 2011-08-22 21:05:10 +02:00
subsystem Initial version of Sortix. 2011-08-05 14:25:00 +02:00
.gitignore Adding proper .gitignore files. 2011-08-07 01:22:36 +02:00
Makefile Added a line counting make target for statistics. 2011-08-07 03:02:37 +02:00