mirror of
https://github.com/ApfelTeeSaft/reactos.git
synced 2026-09-03 12:23:25 +00:00
- Major changes to HAL/kernel loading and freeldr hacks:
- Add PE routines for traversing the import table and fixing up the imports. - Add routine for getting the LOADER_MODULE for a freeldr module by name. - Add the ability to load a not-yet-loaded-driver that's in an import entry (ie: dependencies). Only used for HAL now. - Map HAL in the same was as the kernel, instead of relocating it as a hack from within the kernel. - Refactor some routines to better share code. Don't read freed memory anymore. - Use LdrRelocateImageWithBias instead of quintuplicating relocation code. - Parse kernel and HAL imports while PE-loading from within freeldr. - Remove dozens of freeldr.c hacks from the kernel. Remove slow code which was making two copies of the parameter block and wasting over 30KB in static strings that were immediately copied to other strings... - Don't use HalModuleObject and NtoskrnlModuleObject anymore. Remove LdrSafePEProcessModule and other similar boot-time hacks. Reimplement MmGetSystemRoutineAddress. - NDK/DDK fixes. - Add KDCOM to bootcd/installation. svn path=/trunk/; revision=24778
This commit is contained in:
@@ -395,6 +395,7 @@ extern POBJECT_TYPE NTSYSAPI IoFileObjectType;
|
||||
extern POBJECT_TYPE NTSYSAPI PsThreadType;
|
||||
extern POBJECT_TYPE NTSYSAPI LpcPortObjectType;
|
||||
extern POBJECT_TYPE NTSYSAPI SeTokenObjectType;
|
||||
extern POBJECT_TYPE NTSYSAPI PsProcessType;
|
||||
|
||||
#if (NTDDI_VERSION >= NTDDI_LONGHORN)
|
||||
extern volatile CCHAR NTSYSAPI KeNumberProcessors;
|
||||
|
||||
@@ -41,8 +41,8 @@ Author:
|
||||
//
|
||||
#ifndef NTOS_MODE_USER
|
||||
|
||||
extern NTSYSAPI struct _EPROCESS* PsInitialSystemProcess;
|
||||
extern NTSYSAPI POBJECT_TYPE PsProcessType;
|
||||
//extern NTSYSAPI struct _EPROCESS* PsInitialSystemProcess;
|
||||
//extern NTSYSAPI POBJECT_TYPE PsProcessType;
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
@@ -2495,7 +2495,7 @@ DbgPrintEx(
|
||||
ULONG
|
||||
NTAPI
|
||||
DbgPrompt(
|
||||
IN PCH PromptString,
|
||||
IN PCCH PromptString,
|
||||
OUT PCH OutputString,
|
||||
IN ULONG OutputSize
|
||||
);
|
||||
|
||||
@@ -29,14 +29,14 @@ typedef struct _ROS_LOADER_PARAMETER_BLOCK
|
||||
ULONG MemLower;
|
||||
ULONG MemHigher;
|
||||
ULONG BootDevice;
|
||||
ULONG CommandLine;
|
||||
PCHAR CommandLine;
|
||||
ULONG ModsCount;
|
||||
ULONG ModsAddr;
|
||||
PLOADER_MODULE ModsAddr;
|
||||
UCHAR Syms[12];
|
||||
ULONG MmapLength;
|
||||
ULONG MmapAddr;
|
||||
ULONG DrivesCount;
|
||||
ULONG DrivesAddr;
|
||||
PARC_DISK_SIGNATURE DrivesAddr;
|
||||
ULONG ConfigTable;
|
||||
ULONG BootLoaderName;
|
||||
ULONG PageDirectoryStart;
|
||||
|
||||
Reference in New Issue
Block a user