有一個PCI卡連接到PC,我們有一個相同的GUI。我們希望在RAM中分配大約400到600 MB物理內存的DMA緩衝區,以便從PCI卡進行讀取/寫入(FPGA在PCI卡中進行讀/寫操作)。我們正在使用JUNGO windows PCI驅動程序。 JUNGO提供了一個WDC_DMAContigBufLock方法,通過連續或分散/聚集方法分配DMA緩衝區。我們可以在RAM中創建多達63MB的緩衝區,並且不能創建超過63MB的緩衝區。操作系統是Windows XP 32位和RAM大小4GB(相對3 GB是免費的)。如何在Windows XP中分配500 MB的DMA緩衝區
應用程序(GUI)是用C#.Net編寫的,嘗試創建400 - 600MB的DMA緩衝區是通過此應用程序。我正在尋找解決方案/想法什麼可能導致/阻止我創建400 - 600MB的緩衝區大小。
謝謝
嗨漢斯,感謝您的回覆!在增加註冊表中的非分頁內存池之前,我只能分配30MB的緩衝區。 Jungo表示可以創建500 MB的內存,但無法從我身邊完成。有沒有什麼方法可以在不使用Jungo API的情況下創建緩衝區? – Venu
你嚴重缺少這個答案的重點。唯一真正的解決辦法是教育你自己,拿起Windows Internals的副本並閱讀談論內核內存池的章節。 –