Implement kernel-mode range lists.

Install target must not rebuild executables.

svn path=/trunk/; revision=9486
This commit is contained in:
Eric Kohl 2004-05-24 12:08:55 +00:00
parent 82a4c658f4
commit b718b8e348
3 changed files with 63 additions and 37 deletions

View file

@ -1,4 +1,4 @@
# $Id: Makefile,v 1.118 2004/03/13 18:21:56 dwelch Exp $ # $Id: Makefile,v 1.119 2004/05/24 12:08:55 ekohl Exp $
# #
# ReactOS Operating System # ReactOS Operating System
# #
@ -94,14 +94,15 @@ OBJECTS_NT = \
nt/nttimer.o \ nt/nttimer.o \
nt/plugplay.o \ nt/plugplay.o \
nt/profile.o \ nt/profile.o \
nt/zw.o \ nt/vdm.o \
nt/vdm.o nt/zw.o
# Run-Time Library (Rtl) # Run-Time Library (Rtl)
OBJECTS_RTL = \ OBJECTS_RTL = \
rtl/atom.o \ rtl/atom.o \
rtl/bit.o \ rtl/bit.o \
rtl/bitmap.o \ rtl/bitmap.o \
rtl/capture.o \
rtl/compress.o \ rtl/compress.o \
rtl/ctype.o \ rtl/ctype.o \
rtl/dos8dot3.o \ rtl/dos8dot3.o \
@ -113,6 +114,7 @@ OBJECTS_RTL = \
rtl/nls.o \ rtl/nls.o \
rtl/purecall.o \ rtl/purecall.o \
rtl/random.o \ rtl/random.o \
rtl/rangelist.o \
rtl/regio.o \ rtl/regio.o \
rtl/sprintf.o \ rtl/sprintf.o \
rtl/stdlib.o \ rtl/stdlib.o \
@ -122,8 +124,7 @@ OBJECTS_RTL = \
rtl/timezone.o \ rtl/timezone.o \
rtl/unicode.o \ rtl/unicode.o \
rtl/version.o \ rtl/version.o \
rtl/wstring.o \ rtl/wstring.o
rtl/capture.o
OBJECTS_RTL := $(filter-out $(RTL_EXCLUDE_FILTER), $(OBJECTS_RTL)) OBJECTS_RTL := $(filter-out $(RTL_EXCLUDE_FILTER), $(OBJECTS_RTL))
@ -138,46 +139,46 @@ OBJECTS_KE = \
ke/error.o \ ke/error.o \
ke/event.o \ ke/event.o \
ke/kqueue.o \ ke/kqueue.o \
ke/kthread.o \
ke/main.o \ ke/main.o \
ke/mutex.o \ ke/mutex.o \
ke/process.o \ ke/process.o \
ke/queue.o \
ke/sem.o \ ke/sem.o \
ke/spinlock.o \ ke/spinlock.o \
ke/timer.o \ ke/timer.o \
ke/wait.o \ ke/wait.o
ke/kthread.o \
ke/queue.o
# Memory Manager (Mm) # Memory Manager (Mm)
OBJECTS_MM = \ OBJECTS_MM = \
mm/anonmem.o \
mm/aspace.o \ mm/aspace.o \
mm/balance.o \
mm/cont.o \ mm/cont.o \
mm/drvlck.o \ mm/drvlck.o \
mm/freelist.o \ mm/freelist.o \
mm/iospace.o \ mm/iospace.o \
mm/kmap.o \
mm/marea.o \ mm/marea.o \
mm/mdl.o \ mm/mdl.o \
mm/mm.o \ mm/mm.o \
mm/mminit.o \
mm/mpw.o \
mm/ncache.o \ mm/ncache.o \
mm/npool.o \ mm/npool.o \
mm/pagfault.o \ mm/pagfault.o \
mm/pagefile.o \ mm/pagefile.o \
mm/pageop.o \
mm/pager.o \
mm/paging.o \ mm/paging.o \
mm/pool.o \ mm/pool.o \
mm/ppool.o \ mm/ppool.o \
mm/section.o \ mm/region.o \
mm/virtual.o \
mm/pager.o \
mm/wset.o \
mm/mminit.o \
mm/kmap.o \
mm/mpw.o \
mm/pageop.o \
mm/balance.o \
mm/rmap.o \ mm/rmap.o \
mm/section.o \
mm/slab.o \ mm/slab.o \
mm/anonmem.o \ mm/virtual.o \
mm/region.o mm/wset.o
# I/O Subsystem (Io) # I/O Subsystem (Io)
OBJECTS_IO = \ OBJECTS_IO = \
@ -242,24 +243,24 @@ OBJECTS_OB = \
# Process Manager (Ps) # Process Manager (Ps)
OBJECTS_PS = \ OBJECTS_PS = \
ps/create.o \ ps/create.o \
ps/debug.o \
ps/idle.o \ ps/idle.o \
ps/kill.o \ ps/kill.o \
ps/locale.o \ ps/locale.o \
ps/process.o \ ps/process.o \
ps/psmgr.o \ ps/psmgr.o \
ps/suspend.o \
ps/thread.o \ ps/thread.o \
ps/tinfo.o \ ps/tinfo.o \
ps/debug.o \
ps/suspend.o \
ps/win32.o \ ps/win32.o \
ps/w32call.o ps/w32call.o
# Executive Subsystem (Ex) # Executive Subsystem (Ex)
OBJECTS_EX = \ OBJECTS_EX = \
ex/btree.o \ ex/btree.o \
ex/callback.o \ ex/callback.o \
ex/fmutex.o \ ex/fmutex.o \
ex/hashtab.o \ ex/hashtab.o \
ex/init.o \ ex/init.o \
ex/interlck.o \ ex/interlck.o \
ex/list.o \ ex/list.o \
@ -268,7 +269,7 @@ OBJECTS_EX = \
ex/power.o \ ex/power.o \
ex/resource.o \ ex/resource.o \
ex/time.o \ ex/time.o \
ex/stree.o \ ex/stree.o \
ex/sysinfo.o \ ex/sysinfo.o \
ex/win32k.o \ ex/win32k.o \
ex/work.o \ ex/work.o \
@ -304,11 +305,11 @@ OBJECTS_SE = \
# Configuration Manager (Registry) # Configuration Manager (Registry)
OBJECTS_CM = \ OBJECTS_CM = \
cm/import.o \ cm/import.o \
cm/registry.o \
cm/ntfunc.o \ cm/ntfunc.o \
cm/rtlfunc.o \
cm/regfile.o \ cm/regfile.o \
cm/regobj.o cm/registry.o \
cm/regobj.o \
cm/rtlfunc.o
# Debugger Support (Dbg) # Debugger Support (Dbg)
OBJECTS_DBG = \ OBJECTS_DBG = \
@ -342,23 +343,24 @@ OBJECTS_LPC = \
lpc/send.o lpc/send.o
# Power Management (Po) # Power Management (Po)
OBJECTS_PO = po/power.o OBJECTS_PO = \
po/power.o
# Cache Manager (Cc) # Cache Manager (Cc)
OBJECTS_CC = \ OBJECTS_CC = \
cc/cacheman.o \ cc/cacheman.o \
cc/view.o \
cc/copy.o \ cc/copy.o \
cc/pin.o \ cc/pin.o \
cc/misc.o cc/misc.o \
cc/view.o
# Kernel Debugger Support (Kd) # Kernel Debugger Support (Kd)
OBJECTS_KD = \ OBJECTS_KD = \
kd/kdebug.o \
kd/service.o \
kd/dlog.o \ kd/dlog.o \
kd/gdbstub.o \ kd/gdbstub.o \
kd/mda.o kd/kdebug.o \
kd/mda.o \
kd/service.o
# Boot video (Inbv) # Boot video (Inbv)
OBJECTS_INBV = \ OBJECTS_INBV = \
@ -712,12 +714,12 @@ clean:
ifneq ($(BOOTCD_INSTALL),) ifneq ($(BOOTCD_INSTALL),)
install: $(TARGETNAME).exe $(TARGETNAME).sym $(TARGETNAME).nostrip.exe install:
- $(CP) $(TARGETNAME).exe $(INSTALL_DIR)/$(TARGETNAME).exe - $(CP) $(TARGETNAME).exe $(INSTALL_DIR)/$(TARGETNAME).exe
else # BOOTCD_INSTALL else # BOOTCD_INSTALL
install: $(TARGETNAME).exe $(TARGETNAME).sym $(TARGETNAME).nostrip.exe install:
- $(CP) $(TARGETNAME).exe $(INSTALL_DIR)/system32/$(TARGETNAME).exe - $(CP) $(TARGETNAME).exe $(INSTALL_DIR)/system32/$(TARGETNAME).exe
- $(CP) $(TARGETNAME).sym $(INSTALL_DIR)/symbols/$(TARGETNAME).sym - $(CP) $(TARGETNAME).sym $(INSTALL_DIR)/symbols/$(TARGETNAME).sym

View file

@ -1,4 +1,4 @@
; $Id: ntoskrnl.def,v 1.181 2004/05/20 12:42:51 ekohl Exp $ ; $Id: ntoskrnl.def,v 1.182 2004/05/24 12:08:55 ekohl Exp $
; ;
; reactos/ntoskrnl/ntoskrnl.def ; reactos/ntoskrnl/ntoskrnl.def
; ;
@ -688,6 +688,7 @@ RtlAbsoluteToSelfRelativeSD@12
RtlAddAccessAllowedAce@16 RtlAddAccessAllowedAce@16
RtlAddAce@20 RtlAddAce@20
RtlAddAtomToAtomTable@12 RtlAddAtomToAtomTable@12
RtlAddRange@36
;RtlAllocateAndInitializeSid ;RtlAllocateAndInitializeSid
;RtlAllocateHeap ;RtlAllocateHeap
RtlAnsiCharToUnicodeChar@4 RtlAnsiCharToUnicodeChar@4
@ -717,6 +718,7 @@ RtlConvertLongToLargeInteger@4
RtlConvertSidToUnicodeString@12 RtlConvertSidToUnicodeString@12
RtlConvertUlongToLargeInteger@4 RtlConvertUlongToLargeInteger@4
RtlCopyLuid@8 RtlCopyLuid@8
RtlCopyRangeList@8
RtlCopySid@12 RtlCopySid@12
RtlCopyString@8 RtlCopyString@8
RtlCopyUnicodeString@8 RtlCopyUnicodeString@8
@ -734,6 +736,8 @@ RtlDecompressFragment@32
RtlDeleteAtomFromAtomTable@8 RtlDeleteAtomFromAtomTable@8
;RtlDeleteElementGenericTable ;RtlDeleteElementGenericTable
;RtlDeleteNoSplay ;RtlDeleteNoSplay
RtlDeleteOwnersRanges@8
RtlDeleteRange@24
RtlDeleteRegistryValue@12 RtlDeleteRegistryValue@12
RtlDescribeChunk@20 RtlDescribeChunk@20
RtlDestroyAtomTable@4 RtlDestroyAtomTable@4
@ -763,12 +767,14 @@ RtlFindLongestRunClear@8
RtlFindLongestRunSet@8 RtlFindLongestRunSet@8
RtlFindMessage@20 RtlFindMessage@20
RtlFindMostSignificantBit@8 RtlFindMostSignificantBit@8
RtlFindRange@48
RtlFindSetBits@12 RtlFindSetBits@12
RtlFindSetBitsAndClear@12 RtlFindSetBitsAndClear@12
;RtlFindUnicodePrefix ;RtlFindUnicodePrefix
RtlFormatCurrentUserKeyPath@4 RtlFormatCurrentUserKeyPath@4
RtlFreeAnsiString@4 RtlFreeAnsiString@4
;RtlFreeHeap ;RtlFreeHeap
RtlFreeRangeList@4
RtlFreeOemString@4 RtlFreeOemString@4
RtlFreeUnicodeString@4 RtlFreeUnicodeString@4
RtlGenerate8dot3Name@16 RtlGenerate8dot3Name@16
@ -777,7 +783,9 @@ RtlGetCompressionWorkSpaceSize@12
RtlGetDaclSecurityDescriptor@16 RtlGetDaclSecurityDescriptor@16
RtlGetDefaultCodePage@8 RtlGetDefaultCodePage@8
;RtlGetElementGenericTable ;RtlGetElementGenericTable
RtlGetFirstRange@12
RtlGetGroupSecurityDescriptor@12 RtlGetGroupSecurityDescriptor@12
RtlGetNextRange@12
RtlGetOwnerSecurityDescriptor@12 RtlGetOwnerSecurityDescriptor@12
RtlGetVersion@4 RtlGetVersion@4
RtlImageNtHeader@4 RtlImageNtHeader@4
@ -788,13 +796,16 @@ RtlInitString@8
RtlInitUnicodeString@8 RtlInitUnicodeString@8
RtlInitializeBitMap@12 RtlInitializeBitMap@12
;RtlInitializeGenericTable ;RtlInitializeGenericTable
RtlInitializeRangeList@4
RtlInitializeSid@12 RtlInitializeSid@12
;RtlInitializeUnicodePrefix ;RtlInitializeUnicodePrefix
;RtlInsertElementGenericTable ;RtlInsertElementGenericTable
;RtlInsertUnicodePrefix ;RtlInsertUnicodePrefix
RtlIntegerToChar@16 RtlIntegerToChar@16
RtlIntegerToUnicodeString@12 RtlIntegerToUnicodeString@12
RtlInvertRangeList@8
RtlIsNameLegalDOS8Dot3@12 RtlIsNameLegalDOS8Dot3@12
RtlIsRangeAvailable@40
RtlLargeIntegerAdd@16 RtlLargeIntegerAdd@16
RtlLargeIntegerArithmeticShift@12 RtlLargeIntegerArithmeticShift@12
RtlLargeIntegerDivide@20 RtlLargeIntegerDivide@20
@ -808,6 +819,7 @@ RtlLengthSid@4
RtlLookupAtomInAtomTable@12 RtlLookupAtomInAtomTable@12
;RtlLookupElementGenericTable ;RtlLookupElementGenericTable
RtlMapGenericMask@8 RtlMapGenericMask@8
RtlMergeRangeLists@16
RtlMoveMemory@12 RtlMoveMemory@12
RtlMultiByteToUnicodeN@20 RtlMultiByteToUnicodeN@20
RtlMultiByteToUnicodeSize@12 RtlMultiByteToUnicodeSize@12

View file

@ -1,4 +1,4 @@
; $Id: ntoskrnl.edf,v 1.167 2004/05/20 12:42:51 ekohl Exp $ ; $Id: ntoskrnl.edf,v 1.168 2004/05/24 12:08:55 ekohl Exp $
; ;
; reactos/ntoskrnl/ntoskrnl.def ; reactos/ntoskrnl/ntoskrnl.def
; ;
@ -689,6 +689,7 @@ RtlAbsoluteToSelfRelativeSD=RtlAbsoluteToSelfRelativeSD@12
RtlAddAccessAllowedAce=RtlAddAccessAllowedAce@16 RtlAddAccessAllowedAce=RtlAddAccessAllowedAce@16
RtlAddAce=RtlAddAce@20 RtlAddAce=RtlAddAce@20
RtlAddAtomToAtomTable=RtlAddAtomToAtomTable@12 RtlAddAtomToAtomTable=RtlAddAtomToAtomTable@12
RtlAddRange=RtlAddRange@36
;RtlAllocateAndInitializeSid ;RtlAllocateAndInitializeSid
;RtlAllocateHeap ;RtlAllocateHeap
RtlAnsiCharToUnicodeChar=RtlAnsiCharToUnicodeChar@4 RtlAnsiCharToUnicodeChar=RtlAnsiCharToUnicodeChar@4
@ -718,6 +719,7 @@ RtlConvertLongToLargeInteger=RtlConvertLongToLargeInteger@4
RtlConvertSidToUnicodeString=RtlConvertSidToUnicodeString@12 RtlConvertSidToUnicodeString=RtlConvertSidToUnicodeString@12
RtlConvertUlongToLargeInteger=RtlConvertUlongToLargeInteger@4 RtlConvertUlongToLargeInteger=RtlConvertUlongToLargeInteger@4
RtlCopyLuid=RtlCopyLuid@8 RtlCopyLuid=RtlCopyLuid@8
RtlCopyRangeList=RtlCopyRangeList@8
RtlCopySid=RtlCopySid@12 RtlCopySid=RtlCopySid@12
RtlCopyString=RtlCopyString@8 RtlCopyString=RtlCopyString@8
RtlCopyUnicodeString=RtlCopyUnicodeString@8 RtlCopyUnicodeString=RtlCopyUnicodeString@8
@ -735,6 +737,8 @@ RtlDecompressFragment=RtlDecompressFragment@32
RtlDeleteAtomFromAtomTable=RtlDeleteAtomFromAtomTable@8 RtlDeleteAtomFromAtomTable=RtlDeleteAtomFromAtomTable@8
;RtlDeleteElementGenericTable ;RtlDeleteElementGenericTable
;RtlDeleteNoSplay ;RtlDeleteNoSplay
RtlDeleteOwnersRanges=RtlDeleteOwnersRanges@8
RtlDeleteRange=RtlDeleteRange@24
RtlDeleteRegistryValue=RtlDeleteRegistryValue@12 RtlDeleteRegistryValue=RtlDeleteRegistryValue@12
RtlDescribeChunk=RtlDescribeChunk@20 RtlDescribeChunk=RtlDescribeChunk@20
RtlDestroyAtomTable=RtlDestroyAtomTable@4 RtlDestroyAtomTable=RtlDestroyAtomTable@4
@ -764,12 +768,14 @@ RtlFindLongestRunClear=RtlFindLongestRunClear@8
RtlFindLongestRunSet=RtlFindLongestRunSet@8 RtlFindLongestRunSet=RtlFindLongestRunSet@8
RtlFindMessage=RtlFindMessage@20 RtlFindMessage=RtlFindMessage@20
RtlFindMostSignificantBit=RtlFindMostSignificantBit@8 RtlFindMostSignificantBit=RtlFindMostSignificantBit@8
RtlFindRange=RtlFindRange@48
RtlFindSetBits=RtlFindSetBits@12 RtlFindSetBits=RtlFindSetBits@12
RtlFindSetBitsAndClear=RtlFindSetBitsAndClear@12 RtlFindSetBitsAndClear=RtlFindSetBitsAndClear@12
;RtlFindUnicodePrefix ;RtlFindUnicodePrefix
RtlFormatCurrentUserKeyPath=RtlFormatCurrentUserKeyPath@4 RtlFormatCurrentUserKeyPath=RtlFormatCurrentUserKeyPath@4
RtlFreeAnsiString=RtlFreeAnsiString@4 RtlFreeAnsiString=RtlFreeAnsiString@4
;RtlFreeHeap ;RtlFreeHeap
RtlFreeRangeList=RtlFreeRangeList@4
RtlFreeOemString=RtlFreeOemString@4 RtlFreeOemString=RtlFreeOemString@4
RtlFreeUnicodeString=RtlFreeUnicodeString@4 RtlFreeUnicodeString=RtlFreeUnicodeString@4
RtlGenerate8dot3Name=RtlGenerate8dot3Name@16 RtlGenerate8dot3Name=RtlGenerate8dot3Name@16
@ -778,7 +784,9 @@ RtlGetCompressionWorkSpaceSize=RtlGetCompressionWorkSpaceSize@12
RtlGetDaclSecurityDescriptor=RtlGetDaclSecurityDescriptor@16 RtlGetDaclSecurityDescriptor=RtlGetDaclSecurityDescriptor@16
RtlGetDefaultCodePage=RtlGetDefaultCodePage@8 RtlGetDefaultCodePage=RtlGetDefaultCodePage@8
;RtlGetElementGenericTable ;RtlGetElementGenericTable
RtlGetFirstRange=RtlGetFirstRange@12
RtlGetGroupSecurityDescriptor=RtlGetGroupSecurityDescriptor@12 RtlGetGroupSecurityDescriptor=RtlGetGroupSecurityDescriptor@12
RtlGetNextRange=RtlGetNextRange@12
RtlGetOwnerSecurityDescriptor=RtlGetOwnerSecurityDescriptor@12 RtlGetOwnerSecurityDescriptor=RtlGetOwnerSecurityDescriptor@12
RtlGetVersion=RtlGetVersion@4 RtlGetVersion=RtlGetVersion@4
RtlImageNtHeader=RtlImageNtHeader@4 RtlImageNtHeader=RtlImageNtHeader@4
@ -789,13 +797,16 @@ RtlInitString=RtlInitString@8
RtlInitUnicodeString=RtlInitUnicodeString@8 RtlInitUnicodeString=RtlInitUnicodeString@8
RtlInitializeBitMap=RtlInitializeBitMap@12 RtlInitializeBitMap=RtlInitializeBitMap@12
;RtlInitializeGenericTable ;RtlInitializeGenericTable
RtlInitializeRangeList=RtlInitializeRangeList@4
RtlInitializeSid=RtlInitializeSid@12 RtlInitializeSid=RtlInitializeSid@12
;RtlInitializeUnicodePrefix ;RtlInitializeUnicodePrefix
;RtlInsertElementGenericTable ;RtlInsertElementGenericTable
;RtlInsertUnicodePrefix ;RtlInsertUnicodePrefix
RtlIntegerToChar=RtlIntegerToChar@16 RtlIntegerToChar=RtlIntegerToChar@16
RtlIntegerToUnicodeString=RtlIntegerToUnicodeString@12 RtlIntegerToUnicodeString=RtlIntegerToUnicodeString@12
RtlInvertRangeList=RtlInvertRangeList@8
RtlIsNameLegalDOS8Dot3=RtlIsNameLegalDOS8Dot3@12 RtlIsNameLegalDOS8Dot3=RtlIsNameLegalDOS8Dot3@12
RtlIsRangeAvailable=RtlIsRangeAvailable@40
RtlLargeIntegerAdd=RtlLargeIntegerAdd@16 RtlLargeIntegerAdd=RtlLargeIntegerAdd@16
RtlLargeIntegerArithmeticShift=RtlLargeIntegerArithmeticShift@12 RtlLargeIntegerArithmeticShift=RtlLargeIntegerArithmeticShift@12
RtlLargeIntegerDivide=RtlLargeIntegerDivide@20 RtlLargeIntegerDivide=RtlLargeIntegerDivide@20
@ -809,6 +820,7 @@ RtlLengthSid=RtlLengthSid@4
RtlLookupAtomInAtomTable=RtlLookupAtomInAtomTable@12 RtlLookupAtomInAtomTable=RtlLookupAtomInAtomTable@12
;RtlLookupElementGenericTable ;RtlLookupElementGenericTable
RtlMapGenericMask=RtlMapGenericMask@8 RtlMapGenericMask=RtlMapGenericMask@8
RtlMergeRangeLists=RtlMergeRangeLists@16
RtlMoveMemory=RtlMoveMemory@12 RtlMoveMemory=RtlMoveMemory@12
RtlMultiByteToUnicodeN=RtlMultiByteToUnicodeN@20 RtlMultiByteToUnicodeN=RtlMultiByteToUnicodeN@20
RtlMultiByteToUnicodeSize=RtlMultiByteToUnicodeSize@12 RtlMultiByteToUnicodeSize=RtlMultiByteToUnicodeSize@12