⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dmasample.map

📁 WDM类型的DMA驱动程序,有的同学在写驱动的时候,可能没有DMA硬件支持,所以,此DMA程序仿真了DMA的请求过程,可以不用硬件的支持,里面用了一个计数器中断来表示DMA请求,然后由DMA驱动来完成
💻 MAP
📖 第 1 页 / 共 4 页
字号:
 0001:0000a0e0       ??0KMemory@@QAE@PAXKPAU_MDL@@@Z 0001a3e0 f i vdw_wdm:kadapter.obj
 0001:0000a180       ?RequiredMdlStorage@KMemory@@SGHPAXK@Z 0001a480 f i vdw_wdm:kadapter.obj
 0001:0000a1a0       ?SetPageArray@KMemory@@QAEPAKXZ 0001a4a0 f i vdw_wdm:kadapter.obj
 0001:0000a1d0       ?Information@KIrp@@QAEAAKXZ 0001a4d0 f i vdw_wdm:kadapter.obj
 0001:0000a1d0       ?GetPageArray@KMemory@@QAEPAKXZ 0001a4d0 f i vdw_wdm:kadapter.obj
 0001:0000a1f0       ?FreeCommonBuffer@KCommonDmaBuffer@@IAEXPAU_DMA_ADAPTER@@KT_LARGE_INTEGER@@PAXE@Z 0001a4f0 f i vdw_wdm:kadapter.obj
 0001:0000a230       ??0KCommonDmaBuffer@@QAE@XZ 0001a530 f   vdw_wdm:kadapter.obj
 0001:0000a2cd       ?Initialize@KCommonDmaBuffer@@QAEXPAVKDmaAdapter@@KE@Z 0001a5cd f   vdw_wdm:kadapter.obj
 0001:0000a340       ?Invalidate@KCommonDmaBuffer@@QAEXXZ 0001a640 f   vdw_wdm:kadapter.obj
 0001:0000a473       ?TestAndSetCancelRoutine@KIrp@@QAEEP6GXPAU_DEVICE_OBJECT@@PAU_IRP@@@Z2AAPAU3@@Z 0001a773 f   vdw_wdm:kirp.obj
 0001:0000a520       ?_lock@KDeviceQueue@@QAEEE@Z 0001a820 f i vdw_wdm:kdevque.obj
 0001:0000a550       ??0KSpinLock@@QAE@PAK@Z    0001a850 f i vdw_wdm:kdevque.obj
 0001:0000a570       ?_lock@KSpinLock@@QAEEE@Z  0001a870 f i vdw_wdm:kdevque.obj
 0001:0000a5b0       ?_unlock@KDeviceQueue@@QAEXE@Z 0001a8b0 f i vdw_wdm:kdevque.obj
 0001:0000a5e0       ?_unlock@KSpinLock@@QAEXE@Z 0001a8e0 f i vdw_wdm:kdevque.obj
 0001:0000a620       ?Head@KDeviceQueue@@QAEPAU_IRP@@XZ 0001a920 f i vdw_wdm:kdevque.obj
 0001:0000a640       ?Tail@KDeviceQueue@@QAEPAU_IRP@@XZ 0001a940 f i vdw_wdm:kdevque.obj
 0001:0000a660       ?Next@KDeviceQueue@@QAEPAU_IRP@@PAU2@@Z 0001a960 f i vdw_wdm:kdevque.obj
 0001:0000a6a0       ?Container@KDeviceQueue@@IAEPAU_IRP@@PAU_KDEVICE_QUEUE_ENTRY@@@Z 0001a9a0 f i vdw_wdm:kdevque.obj
 0001:0000a6d0       ?PnpCleanUp@KDeviceQueue@@QAEXPAVKPnpDevice@@PAU_FILE_OBJECT@@@Z 0001a9d0 f   vdw_wdm:kdevque.obj
 0001:0000a850       ??0KDmaTransfer@@QAE@PAVKDevice@@PAVKDmaAdapter@@PAVKCommonDmaBuffer@@@Z 0001ab50 f   vdw_wdm:kdmaxfer.obj
 0001:0000a990       ?Description@KDmaAdapter@@QAEPAU_DEVICE_DESCRIPTION@@XZ 0001ac90 f i vdw_wdm:kdmaxfer.obj
 0001:0000a9c0       ??1KDmaTransfer@@QAE@XZ    0001acc0 f   vdw_wdm:kdmaxfer.obj
 0001:0000aaaf       ?Initiate@KDmaTransfer@@QAEJPAU_MDL@@W4DMA_DIRECTION@@P6GXPAVKDevice@@VKIrp@@PAV1@@ZPAXE@Z 0001adaf f   vdw_wdm:kdmaxfer.obj
 0001:0000ac80       ?Size@KMemory@@QAEKXZ      0001af80 f i vdw_wdm:kdmaxfer.obj
 0001:0000aca0       ?VirtualAddress@KMemory@@QAEPAXXZ 0001afa0 f i vdw_wdm:kdmaxfer.obj
 0001:0000acc0       ?MapToSystemSpaceSafe@KMemory@@QAEPAXW4_MM_PAGE_PRIORITY@@@Z 0001afc0 f i vdw_wdm:kdmaxfer.obj
 0001:0000ad10       ?MaxRegisters@KDmaAdapter@@QAEKXZ 0001b010 f i vdw_wdm:kdmaxfer.obj
 0001:0000adb6       ?Initiate@KDmaTransfer@@QAEJPAVKDevice@@PAVKDmaAdapter@@PAU_MDL@@W4DMA_DIRECTION@@P6GX0VKIrp@@PAV1@@ZPAVKCommonDmaBuffer@@PAXE@Z 0001b0b6 f   vdw_wdm:kdmaxfer.obj
 0001:0000ae90       ?Continue@KDmaTransfer@@QAEXW4TRANSFER_COUNT_TYPE@@K@Z 0001b190 f   vdw_wdm:kdmaxfer.obj
 0001:0000af30       ?SequenceTransferDescriptors@KDmaTransfer@@QAEEPAPAUTRANSFER_DESCRIPTOR@@@Z 0001b230 f   vdw_wdm:kdmaxfer.obj
 0001:0000b090       ?Terminate@KDmaTransfer@@QAEXXZ 0001b390 f   vdw_wdm:kdmaxfer.obj
 0001:0000b180       ?ReleaseRegisters@KDmaAdapter@@QAEXPAXK@Z 0001b480 f i vdw_wdm:kdmaxfer.obj
 0001:0000b1e0       ?AdapterAllocated@KDmaTransfer@@KG?AW4_IO_ALLOCATION_ACTION@@PAU_DEVICE_OBJECT@@PAU_IRP@@PAX2@Z 0001b4e0 f   vdw_wdm:kdmaxfer.obj
 0001:0000b220       ?OnAdapterAllocated@KDmaTransfer@@IAE?AW4_IO_ALLOCATION_ACTION@@PAX@Z 0001b520 f   vdw_wdm:kdmaxfer.obj
 0001:0000b340       ?SetupNextTransfer@KDmaTransfer@@IAEXXZ 0001b640 f   vdw_wdm:kdmaxfer.obj
 0001:0000b670       ?OffsetFromPageBase@KMemory@@QAEKXZ 0001b970 f i vdw_wdm:kdmaxfer.obj
 0001:0000b690       ?Mdl@KCommonDmaBuffer@@QAE?AVKMemory@@XZ 0001b990 f i vdw_wdm:kdmaxfer.obj
 0001:0000b6b0       ??0KMemory@@QAE@AAV0@@Z    0001b9b0 f i vdw_wdm:kdmaxfer.obj
 0001:0000b6e0       ?Size@KCommonDmaBuffer@@QAEKXZ 0001b9e0 f i vdw_wdm:kdmaxfer.obj
 0001:0000b6e0       ??BKEvent@@QAEPAU_KEVENT@@XZ 0001b9e0 f i vdw_wdm:kdmaxfer.obj
 0001:0000b6e0       ?Object@KDispatcherObject@@QAEPAXXZ 0001b9e0 f i vdw_wdm:kdmaxfer.obj
 0001:0000b6e0       ?DriverObject@KDriver@@QAEPAU_DRIVER_OBJECT@@XZ 0001b9e0 f i vdw_wdm:kdmaxfer.obj
 0001:0000b700       ?LogicalAddress@KCommonDmaBuffer@@QAE?AT_LARGE_INTEGER@@XZ 0001ba00 f i vdw_wdm:kdmaxfer.obj
 0001:0000b7fe       ?CompleteLastTransfer@KDmaTransfer@@IAEXW4TRANSFER_COUNT_TYPE@@K@Z 0001bafe f   vdw_wdm:kdmaxfer.obj
 0001:0000b990       ?ReadCounter@KDmaAdapter@@QAEKXZ 0001bc90 f i vdw_wdm:kdmaxfer.obj
 0001:0000b9d0       ?Set@KTimer@@UAEET_LARGE_INTEGER@@@Z 0001bcd0 f   vdw_wdm:ktimer.obj
 0001:0000ba00       ?Set@KTimer@@UAEE_J@Z      0001bd00 f   vdw_wdm:ktimer.obj
 0001:0000ba40       ?SetPeriodic@KTimer@@UAEET_LARGE_INTEGER@@J@Z 0001bd40 f   vdw_wdm:ktimer.obj
 0001:0000ba70       ?SetPeriodic@KTimer@@UAEE_JJ@Z 0001bd70 f   vdw_wdm:ktimer.obj
 0001:0000bab0       ?Set@KTimedCallback@@UAEET_LARGE_INTEGER@@P6GXPAU_KDPC@@PAX22@Z2@Z 0001bdb0 f   vdw_wdm:ktimer.obj
 0001:0000baf0       ?Set@KTimedCallback@@UAEE_JP6GXPAU_KDPC@@PAX22@Z2@Z 0001bdf0 f   vdw_wdm:ktimer.obj
 0001:0000bb40       ?SetPeriodic@KTimedCallback@@UAEET_LARGE_INTEGER@@JP6GXPAU_KDPC@@PAX22@Z2@Z 0001be40 f   vdw_wdm:ktimer.obj
 0001:0000bb90       ?SetPeriodic@KTimedCallback@@UAEE_JJP6GXPAU_KDPC@@PAX22@Z2@Z 0001be90 f   vdw_wdm:ktimer.obj
 0001:0000bbe0       ??0KUstring@@QAE@GW4_POOL_TYPE@@@Z 0001bee0 f   vdw_wdm:kustring.obj
 0001:0000bc50       ?Assign@KUstring@@QAEJAAV1@@Z 0001bf50 f   vdw_wdm:kustring.obj
 0001:0000bcb0       ?Assign@KUstring@@QAEJPBG@Z 0001bfb0 f   vdw_wdm:kustring.obj
 0001:0000bd20       ?GrowMaxBy@KUstring@@QAEJGW4_POOL_TYPE@@@Z 0001c020 f   vdw_wdm:kustring.obj
 0001:0000bde0       ?ustrlen@@YGKPBG@Z         0001c0e0 f   vdw_wdm:util.obj
 0001:0000be20       ?ustrsiz@@YGKPBG@Z         0001c120 f   vdw_wdm:util.obj
 0001:0000be40       ?GetObjectName@@YGPAU_UNICODE_STRING@@PAX@Z 0001c140 f   vdw_wdm:util.obj
 0001:0000be80       ??0KLowerDevice@@QAE@XZ    0001c180 f   vdw_wdm:klower.obj
 0001:0000beb0       ??0KLowerDevice@@QAE@PBGK@Z 0001c1b0 f   vdw_wdm:klower.obj
 0001:0000bfa8       ?CallWaitComplete@KLowerDevice@@QAEJVKIrp@@EPAK@Z 0001c2a8 f   vdw_wdm:klower.obj
 0001:0000c0d0       ?SynchCallCompletionRoutine@KLowerDevice@@KGJPAU_DEVICE_OBJECT@@PAU_IRP@@PAX@Z 0001c3d0 f   vdw_wdm:klower.obj
 0001:0000c180       ?DeviceIoControl@KLowerDevice@@QAEJKPAXK0KEPAK@Z 0001c480 f   vdw_wdm:klower.obj
 0001:0000c2a0       ?Invalidate@KEvent@@QAEXXZ 0001c5a0 f   vdw_wdm:kevent.obj
 0001:0000c2f0       ??0_listcore@@IAE@K@Z      0001c5f0 f   vdw_wdm:klist.obj
 0001:0000c320       ?_head@_listcore@@QAEPAXXZ 0001c620 f   vdw_wdm:klist.obj
 0001:0000c350       ?Container@_listcore@@QAEPAXPAU_LIST_ENTRY@@@Z 0001c650 f i vdw_wdm:klist.obj
 0001:0000c380       ?_insertTail@_listcore@@QAEXPAX@Z 0001c680 f   vdw_wdm:klist.obj
 0001:0000c3f0       ?ListEntryPointer@_listcore@@QAEPAU_LIST_ENTRY@@PAX@Z 0001c6f0 f i vdw_wdm:klist.obj
 0001:0000c410       ?_next@_listcore@@QAEPAXPAX@Z 0001c710 f   vdw_wdm:klist.obj
 0001:0000c460       ?_remove@_listcore@@QAEPAXPAX@Z 0001c760 f   vdw_wdm:klist.obj
 0001:0000c4b0       ?_isEmpty@_listcore@@QAEEXZ 0001c7b0 f   vdw_wdm:klist.obj
 0001:0000c4d0       ?_removeHead@_listcore@@QAEPAXXZ 0001c7d0 f   vdw_wdm:klist.obj
 0001:0000c52e       _memmove                   0001c82e f   wdm:NTOSKRNL.EXE
 0001:0000c534       _DbgBreakPoint@0           0001c834 f   wdm:NTOSKRNL.EXE
 0001:0000c53a       _strchr                    0001c83a f   wdm:NTOSKRNL.EXE
 0001:0000c540       __vsnprintf                0001c840 f   wdm:NTOSKRNL.EXE
 0002:00000000       ?____CR@@3PADA             0001c860     DMASample.obj
 0002:00000004       ?DefaultPoolTag@@3KA       0001c864     DMASample.obj
 0002:00000008       ?DMASampleDevice_Guid@@3U_GUID@@A 0001c868     DMASampleDevice.obj
 0002:00000024       ?IrpDispatchTable@@3PAP8KDevice@@AEJVKIrp@@@ZA 0001c884     vdw_wdm:kdevice.obj
 0002:00000094       ?ScratchBufferIndex@@3JA   0001c8f4     vdw_wdm:ktrace.obj
 0002:00000110       ?m_TheDriver@KDriver@@1PAV1@A 0001c970     DMASample.obj
 0002:00000114       ?m_bFilterDispatch@KDriver@@1EA 0001c974     DMASample.obj
 0002:00000118       ?m_DriverClass@KDriver@@2U_UNICODE_STRING@@A 0001c978     DMASample.obj
 0002:00000120       ?_bWindows98_@@3EA         0001c980     DMASample.obj
 0002:00000128       ?t@@3VKTrace@@A            0001c988     DMASampleDevice.obj
 0002:00000150       ?DriverInstance@BoundsChecker@@3PAVKDriver@@A 0001c9b0     vdw_wdm:kchecker.obj
 0002:00000158       ?BchkdInfo@BoundsChecker@@3UBchkdInfo_t@@A 0001c9b8     vdw_wdm:kchecker.obj
 0002:0000016c       ?m_ListHead@AtExitCall@@2PAV1@A 0001c9cc     vdw_wdm:cpprt.obj
 0002:00000170       ?m_Status@AtExitCall@@2JA  0001c9d0     vdw_wdm:cpprt.obj
 0002:00000178       ?ScratchBuffers@@3PAUKTRACESCRATCHBUFFER@@A 0001c9d8     vdw_wdm:ktrace.obj
 0002:00000578       ?m_Open@KTrace@@1P6GPAXPAU_UNICODE_STRING@@PAU_KINTERRUPT@@K@ZA 0001cdd8     vdw_wdm:ktrace.obj
 0002:0000057c       ?m_Post@KTrace@@1P6GXPAXPAD@ZA 0001cddc     vdw_wdm:ktrace.obj
 0002:00000580       ?m_Close@KTrace@@1P6GXPAX@ZA 0001cde0     vdw_wdm:ktrace.obj
 0002:00000588       ?m_DummyEvent@KLowerDevice@@1U_KEVENT@@A 0001cde8     vdw_wdm:klower.obj
 0002:00000598       ?m_PreviousState@CancelSpinLock@@1EA 0001cdf8     vdw_wdm:kspin.obj
 0003:00000000       ?___StartInitCalls__@@3PAP6GXXZA 0001ce00     vdw_wdm:cpprt.obj
 0003:00000008       ?___EndInitCalls__@@3PAP6GXXZA 0001ce08     vdw_wdm:cpprt.obj
 0004:00000000       ?___StlStartInitCalls__@@3PAP6GXXZA 0001ce20     vdw_wdm:cpprt.obj
 0004:00000004       ?___StlEndInitCalls__@@3PAP6GXXZA 0001ce24     vdw_wdm:cpprt.obj
 0004:00000008       ?___StlStartTerminateCalls__@@3PAP6GXXZA 0001ce28     vdw_wdm:cpprt.obj
 0004:0000000c       ?___StlEndTerminateCalls__@@3PAP6GXXZA 0001ce2c     vdw_wdm:cpprt.obj
 0005:00000067       ?UnloadDispatch@KDriver@@KGXPAU_DRIVER_OBJECT@@@Z 0001cea7 f   DMASample.obj
 0005:000000f0       ?Unload@KDriver@@UAEXXZ    0001cf30 f   DMASample.obj
 0005:00000110       ?_DeleteDeviceChain@@YGXPAU_DEVICE_OBJECT@@@Z 0001cf50 f   DMASample.obj
 0005:00000150       ?DeleteDevices@KDriver@@QAEXXZ 0001cf90 f   DMASample.obj
 0005:00000170       ??0KDevice@@QAE@XZ         0001cfb0 f   vdw_wdm:kdevice.obj
 0005:000001d0       ?CatNames@@YGJAAVKUstring@@PBG1W4_POOL_TYPE@@@Z 0001d010 f   vdw_wdm:kdevice.obj
 0005:00000250       ??1KDevice@@QAE@XZ         0001d090 f   vdw_wdm:kdevice.obj
 0005:00000390       ??2KDevice@@SAPAXIPBGK0KK@Z 0001d1d0 f   vdw_wdm:kdevice.obj
 0005:000003e0       ??3KDevice@@SAXPAX@Z       0001d220 f   vdw_wdm:kdevice.obj
 0005:00000486       ?__construct@KDevice@@KGPAV1@PAV1@KPBGK1KKAAJ@Z 0001d2c6 f   vdw_wdm:kdevice.obj
 0005:00000850       ?CheckDriverFunctions@KDevice@@IAEXXZ 0001d690 f   vdw_wdm:kdevice.obj
 0005:000008d0       ?SubscribeShutdownNotification@KDevice@@QAEJXZ 0001d710 f   vdw_wdm:kdevice.obj
 0005:000008f0       ?CancelShutdownNotification@KDevice@@QAEXXZ 0001d730 f   vdw_wdm:kdevice.obj
 0005:00000900       ??0KUnitizedName@@QAE@PBGKK@Z 0001d740 f   vdw_wdm:kunitnam.obj
 0005:00000a6c       ?__construct@KUnitizedName@@IAEXPAU_UNICODE_STRING@@@Z 0001d8ac f   vdw_wdm:kunitnam.obj
 0005:00000b90       ?Invalidate@KUnitizedName@@QAEXXZ 0001d9d0 f   vdw_wdm:kunitnam.obj
 0005:00000bd0       ?NextUnit@KUnitizedName@@QAEXXZ 0001da10 f   vdw_wdm:kunitnam.obj
 0005:00000cc8       ??0KRegistryKey@@QAE@W4__registryRoot@@PBGEKKK@Z 0001db08 f   vdw_wdm:kregkey.obj
 0005:00000df2       ?Reconstruct@KRegistryKey@@QAEJPAU_UNICODE_STRING@@0KKEK@Z 0001dc32 f   vdw_wdm:kregkey.obj
 0005:000012e6       ?GetRootPath@KRegistryKey@@SGPAU_UNICODE_STRING@@PAU2@W4__registryRoot@@@Z 0001e126 f   vdw_wdm:kregkey.obj
 0005:00001408       ??0KEvent@@QAE@W4_EVENT_TYPE@@E@Z 0001e248 f   vdw_wdm:kevent.obj
 0005:000014e8       ??0KMutex@@QAE@K@Z         0001e328 f   vdw_wdm:kmutex.obj
 0006:00000000       ?__create_driver_class_instance@@YGXXZ 0001e3a0 f   DMASample.obj
 0006:00000040       ??0DMASample@@QAE@XZ       0001e3e0 f i DMASample.obj
 0006:00000060       ?DriverEntry@DMASample@@UAEJPAU_UNICODE_STRING@@@Z 0001e400 f   DMASample.obj
 0006:0000013e       _DriverEntry@8             0001e4de f   DMASample.obj
 0006:00000314       ??0KDriver@@QAE@XZ         0001e6b4 f   DMASample.obj
 0006:00000360       ?DriverInit@KDriver@@SGJPAU_DRIVER_OBJECT@@PAU_UNICODE_STRING@@@Z 0001e700 f   DMASample.obj
 0006:00000500       ?SetUpDispatchCalls@KDriver@@IAEXXZ 0001e8a0 f   DMASample.obj
 0006:000005d4       __IMPORT_DESCRIPTOR_NTOSKRNL 0001e974     wdm:NTOSKRNL.EXE
 0006:000005e8       __IMPORT_DESCRIPTOR_HAL    0001e988     wdm:HAL.DLL
 0006:000005fc       __NULL_IMPORT_DESCRIPTOR   0001e99c     wdm:NTOSKRNL.EXE

 entry point at        0000:00000000

 Static symbols

 0001:00000d60       _$E14                      00011060 f   DMASampleDevice.obj
 0001:00000d70       _$E11                      00011070 f   DMASampleDevice.obj
 0001:00000d90       _$E13                      00011090 f   DMASampleDevice.obj
 0001:00000db0       _$E12                      000110b0 f   DMASampleDevice.obj
 0001:00003d18       ?GetIrpName@@YGPADK@Z      00014018 f   vdw_wdm:ktrace.obj

 1485 bytes saved through ICF

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -