Some clean-up in ntoskrnl/mm. MmAllocateSection prototype moved in

internal/mm.h.

svn path=/trunk/; revision=1081
This commit is contained in:
Emanuele Aliberti 2000-03-19 09:14:52 +00:00
parent 56132bfb44
commit bc30557a61
12 changed files with 427 additions and 228 deletions

View file

@ -63,28 +63,17 @@ extern inline unsigned int ADDRESS_AND_SIZE_TO_SPAN_PAGES(PVOID Va,
*/ */
#define BYTES_TO_PAGES(size) (?) #define BYTES_TO_PAGES(size) (?)
/* PVOID
* FUNCTION: Allocates a range of physically contiguous cache aligned STDCALL
* memory from the non-paged pool MmAllocateContiguousMemory (
* ARGUMENTS: IN ULONG NumberOfBytes,
* NumberOfBytes = Size of the memory block to allocate IN PHYSICAL_ADDRESS HighestAcceptableAddress
* HighestAcceptableAddress = Highest address valid for the caller );
* RETURNS: The virtual address of the memory block on success PVOID
* NULL on error STDCALL
*/ MmAllocateNonCachedMemory (
PVOID MmAllocateContiguousMemory(ULONG NumberOfBytes, IN ULONG NumberOfBytes
PHYSICAL_ADDRESS HighestAcceptableAddress); );
/*
* FUNCTION: Allocates a virtual address range of noncached and cache
* aligned memory
* ARGUMENTS:
* NumberOfBytes = Size of region to allocate
* RETURNS: The base address of the range on success
* NULL on failure
*/
PVOID MmAllocateNonCachedMemory(ULONG NumberOfBytes);
/* /*
* FUNCTION: Fills in the corresponding physical page array for a given MDL * FUNCTION: Fills in the corresponding physical page array for a given MDL
* for a buffer in nonpaged system space * for a buffer in nonpaged system space
@ -102,24 +91,17 @@ VOID MmBuildMdlForNonPagedPool(PMDL MemoryDescriptorList);
* RETURNS: A pointer to the initalized MDL * RETURNS: A pointer to the initalized MDL
*/ */
PMDL MmCreateMdl(PMDL MemoryDescriptorList, PVOID Base, ULONG Length); PMDL MmCreateMdl(PMDL MemoryDescriptorList, PVOID Base, ULONG Length);
VOID
/* STDCALL
* FUNCTION: Releases a range of physically contiguous memory allocated MmFreeContiguousMemory (
* with MmAllocateContiguousMemory IN OUT PVOID BaseAddress
* ARGUMENTS: );
* BaseAddress = Vritual address of the memory to be freed VOID
*/ STDCALL
VOID MmFreeContiguousMemory(PVOID BaseAddress); MmFreeNonCachedMemory (
IN PVOID BaseAddress,
/* IN ULONG NumberOfBytes
* FUNCTION: Releases a range of noncached memory allocated with );
* MmAllocateNonCachedMemory
* ARGUMENTS:
* BaseAddress = Virtual address to be freed
* NumberOfBytes = size of the region to be freed
*/
VOID MmFreeNonCachedMemory(PVOID BaseAddress, ULONG NumberOfBytes);
/* /*
* FUNCTION: Returns the length in bytes of a buffer described by an MDL * FUNCTION: Returns the length in bytes of a buffer described by an MDL
* ARGUMENTS: * ARGUMENTS:
@ -212,17 +194,19 @@ PVOID MmLockPagableDataSection(PVOID AddressWithinSection);
*/ */
VOID MmLockPagableSectionByHandle(PVOID ImageSectionHandle); VOID MmLockPagableSectionByHandle(PVOID ImageSectionHandle);
/* PVOID
* FUNCTION: Maps a physical memory range into system space STDCALL
* ARGUMENTS: MmMapIoSpace (
* PhysicalAddress = First physical address to map PHYSICAL_ADDRESS PhysicalAddress,
* NumberOfBytes = Number of bytes to map ULONG NumberOfBytes,
* CacheEnable = TRUE if the range can be cached BOOLEAN CacheEnable
* RETURNS: The base virtual address which maps the region );
*/ VOID
PVOID MmMapIoSpace(PHYSICAL_ADDRESS PhysicalAddress, ULONG NumberOfBytes, STDCALL
BOOLEAN CacheEnable); MmUnmapIoSpace (
PVOID BaseAddress,
ULONG NumberOfBytes
);
/* /*
* FUNCTION: Maps the pages described by a given MDL * FUNCTION: Maps the pages described by a given MDL
* ARGUMENTS: * ARGUMENTS:
@ -299,6 +283,5 @@ VOID MmUnlockPages(PMDL Mdl);
*/ */
VOID MmUnlockPagableImageSection(PVOID ImageSectionHandle); VOID MmUnlockPagableImageSection(PVOID ImageSectionHandle);
VOID MmUnmapIoSpace(PVOID BaseAddress, ULONG NumberOfBytes);
VOID MmUnmapLockedPages(PVOID BaseAddress, PMDL MemoryDescriptorList); VOID MmUnmapLockedPages(PVOID BaseAddress, PMDL MemoryDescriptorList);
PVOID MmAllocateSection(ULONG Length);

View file

@ -35,11 +35,6 @@ LdrpMapSystemDll (
HANDLE ProcessHandle, HANDLE ProcessHandle,
PVOID * LdrStartupAddress PVOID * LdrStartupAddress
); );
PIMAGE_NT_HEADERS
STDCALL
RtlImageNtHeader (
IN PVOID BaseAddress
);
PVOID PVOID
LdrpGetSystemDllEntryPoint ( LdrpGetSystemDllEntryPoint (
VOID VOID

View file

@ -59,6 +59,13 @@ typedef struct
} MEMORY_AREA, *PMEMORY_AREA; } MEMORY_AREA, *PMEMORY_AREA;
/* FUNCTIONS */
PVOID
STDCALL
MmAllocateSection (
IN ULONG Length
);
NTSTATUS MmCreateMemoryArea(KPROCESSOR_MODE Mode, NTSTATUS MmCreateMemoryArea(KPROCESSOR_MODE Mode,
PEPROCESS Process, PEPROCESS Process,
ULONG Type, ULONG Type,
@ -78,7 +85,7 @@ NTSTATUS MmLockMemoryArea(MEMORY_AREA* MemoryArea);
NTSTATUS MmUnlockMemoryArea(MEMORY_AREA* MemoryArea); NTSTATUS MmUnlockMemoryArea(MEMORY_AREA* MemoryArea);
NTSTATUS MmInitSectionImplementation(VOID); NTSTATUS MmInitSectionImplementation(VOID);
void VirtualInit(boot_param* bp); /*void VirtualInit(boot_param* bp);*/
#define MM_LOWEST_USER_ADDRESS (4096) #define MM_LOWEST_USER_ADDRESS (4096)

View file

@ -1,4 +1,4 @@
/* $Id: loader.c,v 1.49 2000/03/17 21:02:56 jfilby Exp $ /* $Id: loader.c,v 1.50 2000/03/19 09:14:50 ea Exp $
* *
* COPYRIGHT: See COPYING in the top level directory * COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS kernel * PROJECT: ReactOS kernel
@ -24,6 +24,7 @@
#include <internal/linkage.h> #include <internal/linkage.h>
#include <internal/module.h> #include <internal/module.h>
#include <internal/ntoskrnl.h> #include <internal/ntoskrnl.h>
#include <internal/mm.h>
#include <internal/mmhal.h> #include <internal/mmhal.h>
#include <internal/ob.h> #include <internal/ob.h>
#include <internal/ps.h> #include <internal/ps.h>

View file

@ -1,4 +1,4 @@
# $Id: makefile_rex,v 1.61 2000/03/18 15:12:18 ea Exp $ # $Id: makefile_rex,v 1.62 2000/03/19 09:14:49 ea Exp $
# #
# ReactOS Operating System # ReactOS Operating System
# #
@ -35,8 +35,10 @@ KE_OBJECTS = ke/head.o ke/main.o ke/timer.o ke/error.o ke/catch.o \
KE_I386_OBJECTS = ke/i386/thread.o ke/i386/usercall.o ke/i386/exp.o KE_I386_OBJECTS = ke/i386/thread.o ke/i386/usercall.o ke/i386/exp.o
MM_OBJECTS = mm/mm.o mm/freelist.o mm/pool.o mm/virtual.o \ MM_OBJECTS = mm/mm.o mm/freelist.o mm/pool.o mm/virtual.o \
mm/mdl.o mm/zone.o mm/special.o mm/paging.o \ mm/mdl.o mm/zone.o mm/paging.o mm/section.o \
mm/section.o mm/marea.o mm/ppool.o mm/npool.o mm/pagefile.o mm/marea.o mm/ppool.o mm/npool.o mm/pagefile.o \
mm/cont.o mm/iospace.o mm/ncache.o
MM_I386_OBJECTS = mm/i386/page.o mm/i386/memsafe.o MM_I386_OBJECTS = mm/i386/page.o mm/i386/memsafe.o
@ -192,7 +194,8 @@ $(TARGET).exe: $(OBJECTS) $(TARGET).def
--dllname $(TARGET).exe \ --dllname $(TARGET).exe \
--base-file base.tmp \ --base-file base.tmp \
--output-exp temp.exp \ --output-exp temp.exp \
--def $(TARGET).edf --def $(TARGET).edf \
--kill-at
- $(RM) base.tmp - $(RM) base.tmp
$(CC) \ $(CC) \
$(TARGET).o \ $(TARGET).o \

View file

@ -1,4 +1,5 @@
/* /* $Id: cont.c,v 1.3 2000/03/19 09:14:51 ea Exp $
*
* COPYRIGHT: See COPYING in the top level directory * COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS kernel * PROJECT: ReactOS kernel
* FILE: ntoskrnl/mm/cont.c * FILE: ntoskrnl/mm/cont.c
@ -16,13 +17,74 @@
/* FUNCTIONS *****************************************************************/ /* FUNCTIONS *****************************************************************/
PVOID MmAllocateContiguousMemory(ULONG NumberOfBytes,
PHYSICAL_ADDRESS HighestAcceptableAddress) /**********************************************************************
* NAME EXPORTED
* MmAllocateContiguousMemory@12
*
* DESCRIPTION
* Allocates a range of physically contiguous cache aligned
* memory from the non-paged pool.
*
* ARGUMENTS
* NumberOfBytes
* Size of the memory block to allocate;
*
* HighestAcceptableAddress
* Highest address valid for the caller.
*
* RETURN VALUE
* The virtual address of the memory block on success;
* NULL on error.
*
* NOTE
* Description taken from include/ddk/mmfuncs.h.
* Code taken from ntoskrnl/mm/special.c.
*
* REVISIONS
*
*/
PVOID
STDCALL
MmAllocateContiguousMemory (
IN ULONG NumberOfBytes,
IN PHYSICAL_ADDRESS HighestAcceptableAddress
)
{ {
UNIMPLEMENTED; UNIMPLEMENTED;
} }
VOID MmFreeContiguousMemory(PVOID BaseAddress)
/**********************************************************************
* NAME EXPORTED
* MmFreeContiguousMemory@4
*
* DESCRIPTION
* Releases a range of physically contiguous memory allocated
* with MmAllocateContiguousMemory.
*
* ARGUMENTS
* BaseAddress
* Virtual address of the memory to be freed.
*
* RETURN VALUE
* None.
*
* NOTE
* Description taken from include/ddk/mmfuncs.h.
* Code taken from ntoskrnl/mm/special.c.
*
* REVISIONS
*
*/
VOID
STDCALL
MmFreeContiguousMemory (
IN OUT PVOID BaseAddress
)
{ {
UNIMPLEMENTED; UNIMPLEMENTED;
} }
/* EOF */

View file

@ -1,8 +1,9 @@
/* /* $Id: iospace.c,v 1.2 2000/03/19 09:14:51 ea Exp $
*
* COPYRIGHT: See COPYING in the top level directory * COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS kernel * PROJECT: ReactOS kernel
* FILE: ntoskrnl/mm/iospace.c * FILE: ntoskrnl/mm/iospace.c
* PURPOSE: Mapping io space * PURPOSE: Mapping I/O space
* PROGRAMMER: David Welch (welch@mcmail.com) * PROGRAMMER: David Welch (welch@mcmail.com)
* UPDATE HISTORY: * UPDATE HISTORY:
* Created 22/05/98 * Created 22/05/98
@ -11,19 +12,133 @@
/* INCLUDES *****************************************************************/ /* INCLUDES *****************************************************************/
#include <ddk/ntddk.h> #include <ddk/ntddk.h>
#include <internal/mm.h>
#define NDEBUG
#include <internal/debug.h> #include <internal/debug.h>
/* FUNCTIONS *****************************************************************/ /* FUNCTIONS *****************************************************************/
PVOID MmMapIoSpace(PHYSICAL_ADDRESS PhysicalAddress,
ULONG NumberOfBytes, /**********************************************************************
BOOLEAN CacheEnable) * NAME EXPORTED
* MmMapIoSpace@16
*
* DESCRIPTION
* Maps a physical memory range into system space.
*
* ARGUMENTS
* PhysicalAddress
* First physical address to map;
*
* NumberOfBytes
* Number of bytes to map;
*
* CacheEnable
* TRUE if the range can be cached.
*
* RETURN VALUE
* The base virtual address which maps the region.
*
* NOTE
* Description moved here from include/ddk/mmfuncs.h.
* Code taken from ntoskrnl/mm/special.c.
*
* REVISIONS
*
*/
PVOID
STDCALL
MmMapIoSpace (
IN PHYSICAL_ADDRESS PhysicalAddress,
IN ULONG NumberOfBytes,
IN BOOLEAN CacheEnable
)
{ {
UNIMPLEMENTED; PVOID Result;
MEMORY_AREA * marea;
NTSTATUS Status;
ULONG i;
ULONG Attributes;
Result = NULL;
Status = MmCreateMemoryArea (
KernelMode,
PsGetCurrentProcess (),
MEMORY_AREA_IO_MAPPING,
& Result,
NumberOfBytes,
0,
& marea
);
if (STATUS_SUCCESS != Status)
{
return (NULL);
}
Attributes = ( PA_WRITE
| PA_READ
| PA_EXECUTE
| PA_SYSTEM
);
if (!CacheEnable)
{
Attributes |= (PA_PWT | PA_PCD);
}
for ( i = 0;
(i <= (NumberOfBytes / PAGESIZE));
i ++
)
{
MmSetPage (
NULL,
(Result + (i * PAGESIZE)),
PAGE_READWRITE,
( PhysicalAddress.u.LowPart
+ (i * PAGESIZE)
)
);
}
return ((PVOID) Result);
} }
VOID MmUnmapIoSpace(PVOID BaseAddress, ULONG NumberOfBytes)
/**********************************************************************
* NAME EXPORTED
* MmUnmapIoSpace@8
*
* DESCRIPTION
* Unmaps a physical memory range from system space.
*
* ARGUMENTS
* BaseAddress
* The base virtual address which maps the region;
*
* NumberOfBytes
* Number of bytes to unmap.
*
* RETURN VALUE
* None.
*
* NOTE
* Code taken from ntoskrnl/mm/special.c.
*
* REVISIONS
*
*/
VOID
STDCALL
MmUnmapIoSpace (
IN PVOID BaseAddress,
IN ULONG NumberOfBytes
)
{ {
UNIMPLEMENTED; (VOID) MmFreeMemoryArea (
PsGetCurrentProcess (),
BaseAddress,
NumberOfBytes,
FALSE
);
} }
/* EOF */

View file

@ -1,4 +1,5 @@
/* /* $Id: ncache.c,v 1.3 2000/03/19 09:14:51 ea Exp $
*
* COPYRIGHT: See COPYING in the top level directory * COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS kernel * PROJECT: ReactOS kernel
* FILE: ntoskrnl/mm/cont.c * FILE: ntoskrnl/mm/cont.c
@ -11,17 +12,118 @@
/* INCLUDES *****************************************************************/ /* INCLUDES *****************************************************************/
#include <ddk/ntddk.h> #include <ddk/ntddk.h>
#include <internal/mm.h>
#define NDEBUG
#include <internal/debug.h> #include <internal/debug.h>
/* FUNCTIONS *****************************************************************/ /* FUNCTIONS *****************************************************************/
PVOID MmAllocateNonCachedMemory(ULONG NumberOfBytes)
/**********************************************************************
* NAME EXPORTED
* MmAllocateNonCachedMemory@4
*
* DESCRIPTION
* Allocates a virtual address range of noncached and cache
* aligned memory.
*
* ARGUMENTS
* NumberOfBytes
* Size of region to allocate.
*
* RETURN VALUE
* The base address of the range on success;
* NULL on failure.
*
* NOTE
* Description taken from include/ddk/mmfuncs.h.
* Code taken from ntoskrnl/mm/special.c.
*
* REVISIONS
*
*/
PVOID
STDCALL
MmAllocateNonCachedMemory (
IN ULONG NumberOfBytes
)
{ {
UNIMPLEMENTED; PVOID Result;
MEMORY_AREA * marea;
NTSTATUS Status;
ULONG i;
Result = NULL;
Status = MmCreateMemoryArea (
KernelMode,
PsGetCurrentProcess (),
MEMORY_AREA_NO_CACHE,
& Result,
NumberOfBytes,
0,
& marea
);
if (STATUS_SUCCESS != Status)
{
return (NULL);
}
for ( i = 0;
(i <= (NumberOfBytes / PAGESIZE));
i ++
)
{
MmSetPage (
NULL,
(Result + (i * PAGESIZE)),
PAGE_READWRITE,
(ULONG) MmAllocPage ()
);
}
return ((PVOID) Result);
} }
VOID MmFreeNonCachedMemory(PVOID BaseAddress, ULONG NumberOfBytes)
/**********************************************************************
* NAME EXPORTED
* MmFreeNonCachedMemory@8
*
* DESCRIPTION
* Releases a range of noncached memory allocated with
* MmAllocateNonCachedMemory.
*
* ARGUMENTS
* BaseAddress
* Virtual address to be freed;
*
* NumberOfBytes
* Size of the region to be freed.
*
* RETURN VALUE
* None.
*
* NOTE
* Description taken from include/ddk/mmfuncs.h.
* Code taken from ntoskrnl/mm/special.c.
*
* REVISIONS
*
*/
VOID
STDCALL
MmFreeNonCachedMemory (
IN PVOID BaseAddress,
IN ULONG NumberOfBytes
)
{ {
UNIMPLEMENTED; MmFreeMemoryArea (
PsGetCurrentProcess (),
BaseAddress,
NumberOfBytes,
TRUE
);
} }
/* EOF */

View file

@ -1,4 +1,4 @@
/* $Id: section.c,v 1.23 2000/02/13 16:05:18 dwelch Exp $ /* $Id: section.c,v 1.24 2000/03/19 09:14:51 ea Exp $
* *
* COPYRIGHT: See COPYING in the top level directory * COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS kernel * PROJECT: ReactOS kernel
@ -540,4 +540,65 @@ NTSTATUS STDCALL NtExtendSection(IN HANDLE SectionHandle,
} }
/**********************************************************************
* NAME INTERNAL
* MmAllocateSection@4
*
* DESCRIPTION
*
* ARGUMENTS
* Length
*
* RETURN VALUE
*
* NOTE
* Code taken from ntoskrnl/mm/special.c.
*
* REVISIONS
*
*/
PVOID
STDCALL
MmAllocateSection (
IN ULONG Length
)
{
PVOID Result;
MEMORY_AREA * marea;
NTSTATUS Status;
ULONG i;
DPRINT("MmAllocateSection(Length %x)\n",Length);
Result = NULL;
Status = MmCreateMemoryArea (
KernelMode,
PsGetCurrentProcess (),
MEMORY_AREA_SYSTEM,
& Result,
Length,
0,
& marea
);
if (STATUS_SUCCESS != Status)
{
return (NULL);
}
DPRINT("Result %p\n",Result);
for ( i = 0;
(i <= (Length / PAGESIZE));
i ++
)
{
MmSetPage (
NULL,
(Result + (i * PAGESIZE)),
PAGE_READWRITE,
(ULONG) MmAllocPage ()
);
}
return ((PVOID) Result);
}
/* EOF */ /* EOF */

View file

@ -1,140 +0,0 @@
/*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS kernel
* FILE: ntoskrnl/mm/special.c
* PURPOSE: Special types of memory region
* PROGRAMMER: David Welch (welch@mcmail.com)
* UPDATE HISTORY:
* Created 22/05/98
*/
/* INCLUDES *****************************************************************/
#include <ddk/ntddk.h>
#include <internal/mm.h>
#define NDEBUG
#include <internal/debug.h>
/* FUNCTIONS *****************************************************************/
PVOID MmAllocateSection(ULONG Length)
{
PVOID Result;
MEMORY_AREA* marea;
NTSTATUS Status;
ULONG i;
DPRINT("MmAllocateSection(Length %x)\n",Length);
Result = 0;
Status = MmCreateMemoryArea(KernelMode,
PsGetCurrentProcess(),
MEMORY_AREA_SYSTEM,
&Result,
Length,
0,
&marea);
if (Status!=STATUS_SUCCESS)
{
return(NULL);
}
DPRINT("Result %p\n",Result);
for (i=0;i<=(Length/PAGESIZE);i++)
{
MmSetPage(NULL,
Result+(i*PAGESIZE),
PAGE_READWRITE,
(ULONG)MmAllocPage());
}
return((PVOID)Result);
}
PVOID MmAllocateContiguousMemory(ULONG NumberOfBytes,
PHYSICAL_ADDRESS HighestAcceptableAddress)
{
UNIMPLEMENTED;
}
VOID MmFreeContiguousMemory(PVOID BaseAddress)
{
UNIMPLEMENTED;
}
PVOID MmMapIoSpace(PHYSICAL_ADDRESS PhysicalAddress,
ULONG NumberOfBytes,
BOOLEAN CacheEnable)
{
PVOID Result;
MEMORY_AREA* marea;
NTSTATUS Status;
ULONG i;
ULONG Attributes;
Result = 0;
Status = MmCreateMemoryArea(KernelMode,
PsGetCurrentProcess(),
MEMORY_AREA_IO_MAPPING,
&Result,
NumberOfBytes,
0,
&marea);
if (Status!=STATUS_SUCCESS)
{
return(NULL);
}
Attributes = PA_WRITE | PA_READ | PA_EXECUTE | PA_SYSTEM;
if (!CacheEnable)
{
Attributes = Attributes | PA_PWT | PA_PCD;
}
for (i=0;i<=(NumberOfBytes/PAGESIZE);i++)
{
MmSetPage(NULL,
Result + (i * PAGESIZE),
PAGE_READWRITE,
PhysicalAddress.u.LowPart +
(i * PAGESIZE));
}
return((PVOID)Result);
}
VOID MmUnmapIoSpace(PVOID BaseAddress, ULONG NumberOfBytes)
{
(void)MmFreeMemoryArea(PsGetCurrentProcess(),BaseAddress,NumberOfBytes,
FALSE);
}
PVOID MmAllocateNonCachedMemory(ULONG NumberOfBytes)
{
PVOID Result;
MEMORY_AREA* marea;
NTSTATUS Status;
ULONG i;
Result = 0;
Status = MmCreateMemoryArea(KernelMode,
PsGetCurrentProcess(),
MEMORY_AREA_NO_CACHE,
&Result,
NumberOfBytes,
0,
&marea);
if (Status!=STATUS_SUCCESS)
{
return(NULL);
}
for (i=0;i<=(NumberOfBytes/PAGESIZE);i++)
{
MmSetPage(NULL,
Result+(i*PAGESIZE),
PAGE_READWRITE,
(ULONG)MmAllocPage());
}
return((PVOID)Result);
}
VOID MmFreeNonCachedMemory(PVOID BaseAddress, ULONG NumberOfBytes)
{
MmFreeMemoryArea(PsGetCurrentProcess(),BaseAddress,NumberOfBytes,TRUE);
}

View file

@ -1,4 +1,4 @@
; $Id: ntoskrnl.def,v 1.60 2000/03/18 15:12:18 ea Exp $ ; $Id: ntoskrnl.def,v 1.61 2000/03/19 09:14:49 ea Exp $
; ;
; reactos/ntoskrnl/ntoskrnl.def ; reactos/ntoskrnl/ntoskrnl.def
; ;
@ -227,8 +227,13 @@ KeSetEvent
KeSetTimer KeSetTimer
KeSynchronizeExecution KeSynchronizeExecution
KeWaitForSingleObject KeWaitForSingleObject
MmAllocateContiguousMemory@12
MmAllocateNonCachedMemory@4
MmFreeContiguousMemory@4
MmFreeNonCachedMemory@8
MmGetSystemAddressForMdl MmGetSystemAddressForMdl
MmMapIoSpace MmMapIoSpace@16
MmUnmapIoSpace@8
NlsAnsiCodePage DATA NlsAnsiCodePage DATA
NlsLeadByteInfo DATA NlsLeadByteInfo DATA
NlsMbCodePageTag DATA NlsMbCodePageTag DATA

View file

@ -1,4 +1,4 @@
; $Id: ntoskrnl.edf,v 1.47 2000/03/18 15:12:18 ea Exp $ ; $Id: ntoskrnl.edf,v 1.48 2000/03/19 09:14:50 ea Exp $
; ;
; reactos/ntoskrnl/ntoskrnl.def ; reactos/ntoskrnl/ntoskrnl.def
; ;
@ -227,8 +227,13 @@ KeSetEvent
KeSetTimer KeSetTimer
KeSynchronizeExecution KeSynchronizeExecution
KeWaitForSingleObject KeWaitForSingleObject
MmAllocateContiguousMemory=MmAllocateContiguousMemory@12
MmAllocateNonCachedMemory=MmAllocateNonCachedMemory@4
MmFreeContiguousMemory=MmFreeContiguousMemory@4
MmFreeNonCachedMemory=MmFreeNonCachedMemory@8
MmGetSystemAddressForMdl MmGetSystemAddressForMdl
MmMapIoSpace MmMapIoSpace=MmMapIoSpace@16
MmUnmapIoSpace=MmUnmapIoSpace@8
NlsAnsiCodePage DATA NlsAnsiCodePage DATA
NlsLeadByteInfo DATA NlsLeadByteInfo DATA
NlsMbCodePageTag DATA NlsMbCodePageTag DATA