Author: fireball Date: Fri Oct 12 00:40:38 2007 New Revision: 29518
URL: http://svn.reactos.org/svn/reactos?rev=29518&view=rev Log: - Mm-rewrite: * Get rid of a hack-based heap allocation in FreeLdr, which makes real data interleaved with temporary data, all that unfreeable and unmanageable. * Introduce new APIs MmHeapAlloc / MmHeapFree to alloc/free memory from a pre-allocated heap. * Add BGET (public domain heap implementation), hook it up to the MmHeapAlloc / MmHeapFree APIs. * MmAllocateMemory still is a backward-compatibility API, will be removed soon. - Change most of allocations to the heap-based routines, add frees where necessary (I must admit Brian already used MmFreeMemory in a lot of places, so I just had to change those to the corresponding MmHeapFree API). - Remove unneeded and wrong IDT filling, which was commented out. - Temporary disable caching support, because it needs a standalone place to keep its data in. For compatibility's sake it's better to leave it when WinLdr is more mature.
Added: branches/winldr/include/bget.h (with props) branches/winldr/rtl/bget.c (with props) Modified: branches/winldr/arch/i386/hardware.c branches/winldr/cache/blocklist.c branches/winldr/freeldr_base.rbuild branches/winldr/fs/fat.c branches/winldr/include/freeldr.h branches/winldr/include/mm.h branches/winldr/mm/meminit.c branches/winldr/mm/mm.c branches/winldr/reactos/binhive.c branches/winldr/reactos/registry.c branches/winldr/rtl/libsupp.c branches/winldr/ui/ui.c branches/winldr/windows/peloader.c branches/winldr/windows/winldr.c branches/winldr/windows/wlmemory.c branches/winldr/windows/wlregistry.c
[This mail would be too long, it was shortened to contain the URLs only.]
Modified: branches/winldr/arch/i386/hardware.c URL: http://svn.reactos.org/svn/reactos/branches/winldr/arch/i386/hardware.c?rev=...
Modified: branches/winldr/cache/blocklist.c URL: http://svn.reactos.org/svn/reactos/branches/winldr/cache/blocklist.c?rev=295...
Modified: branches/winldr/freeldr_base.rbuild URL: http://svn.reactos.org/svn/reactos/branches/winldr/freeldr_base.rbuild?rev=2...
Modified: branches/winldr/fs/fat.c URL: http://svn.reactos.org/svn/reactos/branches/winldr/fs/fat.c?rev=29518&r1...
Added: branches/winldr/include/bget.h URL: http://svn.reactos.org/svn/reactos/branches/winldr/include/bget.h?rev=29518&...
Modified: branches/winldr/include/freeldr.h URL: http://svn.reactos.org/svn/reactos/branches/winldr/include/freeldr.h?rev=295...
Modified: branches/winldr/include/mm.h URL: http://svn.reactos.org/svn/reactos/branches/winldr/include/mm.h?rev=29518&am...
Modified: branches/winldr/mm/meminit.c URL: http://svn.reactos.org/svn/reactos/branches/winldr/mm/meminit.c?rev=29518&am...
Modified: branches/winldr/mm/mm.c URL: http://svn.reactos.org/svn/reactos/branches/winldr/mm/mm.c?rev=29518&r1=...
Modified: branches/winldr/reactos/binhive.c URL: http://svn.reactos.org/svn/reactos/branches/winldr/reactos/binhive.c?rev=295...
Modified: branches/winldr/reactos/registry.c URL: http://svn.reactos.org/svn/reactos/branches/winldr/reactos/registry.c?rev=29...
Added: branches/winldr/rtl/bget.c URL: http://svn.reactos.org/svn/reactos/branches/winldr/rtl/bget.c?rev=29518&...
Modified: branches/winldr/rtl/libsupp.c URL: http://svn.reactos.org/svn/reactos/branches/winldr/rtl/libsupp.c?rev=29518&a...
Modified: branches/winldr/ui/ui.c URL: http://svn.reactos.org/svn/reactos/branches/winldr/ui/ui.c?rev=29518&r1=...
Modified: branches/winldr/windows/peloader.c URL: http://svn.reactos.org/svn/reactos/branches/winldr/windows/peloader.c?rev=29...
Modified: branches/winldr/windows/winldr.c URL: http://svn.reactos.org/svn/reactos/branches/winldr/windows/winldr.c?rev=2951...
Modified: branches/winldr/windows/wlmemory.c URL: http://svn.reactos.org/svn/reactos/branches/winldr/windows/wlmemory.c?rev=29...
Modified: branches/winldr/windows/wlregistry.c URL: http://svn.reactos.org/svn/reactos/branches/winldr/windows/wlregistry.c?rev=...