2010-01-26 13 views
2

alt text http://www.freeimagehosting.net/uploads/67f98ad782.png我可以在我的.NET應用程序的地址空間中重新排列dll圖像以使更多的連續可用空間可用嗎?

此圖顯示了我應用程序地址空間中的碎片。有沒有辦法強制(第三方)dll圖像(紫色)一起消除(或減輕)碎片?

此應用程序將在32位XP上運行;很顯然,當我們最終轉向64位Windows 7時,這個問題就會消失。

謝謝!

+0

真棒問題。你指的是程序集,非託管DLL還是兩者? – 2010-01-26 15:48:34

+1

你是想解決一個真正的問題,或者你只是想做到這一點,所以它「看起來」更清潔? – 2010-01-26 15:48:45

+0

這是一個非常現實的問題。 – Chris 2010-01-26 15:50:42

回答

4

是的,你可以重新綁定你的.NET程序集,但效果是相當有限的,因爲JIT編譯代碼將被放置在代碼堆上,並且不會受到重新綁定的影響。另外,從Vista and forward the image loader randomizes loading可以防止某些類型的攻擊,因此即使您重新綁定了程序集也會隨機加載地址。

相關問題