題 可以強制所有磁盤活動到RAM?


我想告訴操作系統停止使用我的硬盤,而只使用RAM作為緩存。

最理想的是,我想告訴Windows:

a)將可執行映像和必要的引導數據預先緩存到RAM中,以及 b)緩衝所有磁盤寫入RAM。

這可能嗎?

背景:

我的筆記本電腦硬盤很響,當我知道我不需要它時我想讓它進入睡眠狀態(例如,“hdparm -Y”)。

一個典型的用例是僅啟動Win 7以與遠程系統建立遠程桌面連接,因此僅將筆記本電腦用作啞終端。沒有必要打開HD,因為所有內容都發生在內存,局域網等。

我基本上試過了 一切 在系統空閒時關閉磁盤活動:幾乎所有進程都被殺死,在高級模式下使用Process Monitor來嘗試查找哪個進程負責執行磁盤活動,但沒有成功。

我能夠達到目標的最接近的是XP,當我安裝了由Microsoft製造並專為Windows Embedded測試而設計的RAM覆蓋驅動程序時。這實際上有效:所有磁盤操作都被截獲,這阻止了物理HD活動。

不幸的是,WinCE RAM覆蓋驅動程序非常難以使用,我設法在最後破壞磁盤,因為我應該卸載和刷新東西的順序是非常特殊的。 :-(

我現在已經在我的Win7盒子上安裝了一個RAM磁盤(RamDisk Plus)並嘗試在其上安裝便攜式應用程序,但我認為即使在RAM磁盤上安裝用戶配置文件,將所有臨時文件放在那裡等也不會足夠:有一些源自Windows內核級別的磁盤活動,最終想要寫入物理磁盤,從而喚醒硬盤驅動器。

此需求還有其他一些用例:保持系統冷卻,以更低的功耗運行筆記本電腦,延長物理和固態驅動器的使用壽命等。

建議?


7
2017-11-08 12:00


起源




答案:


我不相信你能夠做到這一點。 Windows是圍繞系統分區始終可用的概念而設計的,而您對RAM覆蓋的實驗表明它不是為您的想法而設計的。

而是,更改系統分區。使用非硬盤驅動器啟動分區 - LiveCD或USB密鑰。您當然可以禁用Windows對非系統分區的訪問權限,因此將系統分區從硬盤驅動器上移開可以讓您關閉所有連接的硬盤驅動器。

更新
在審查了EWF上的資料後, , 這個有可能。

我仍然認為這是一個不是什麼設計的案例,但......

您在WinXP中使用的EWF來自嵌入式XP。 Win-7的模擬是 Windows Embedded Standard 2009,確實包含了 增強的寫過濾器。我不知道你是否能夠將EWF變為Win-7,但現在的版本比舊的嵌入式XP版本更好。

它看起來像你想要的 “EWF RAM Reg模式”,它將您的EWF配置數據放在系統註冊表中,並且不需要驅動器上的單獨分區。其他模式(EWF磁盤和EWF RAM模式)至少需要一個單獨的分區才能運行。

您將需要查看techdoc EWF性能注意事項特別是 禁用NTFS上的最後訪問時間戳禁用系統還原,和 更改頁面文件的大小 (儘管似乎最好禁用它,如果可能的話)。

考慮 設計自己的運行時映像 作為您的操作系統基礎通過這樣做,您可以消除在嵌入式靜態配置中可能存在問題的Win-7組件(這基本上就是您所描述的)。您可能還希望使用已檢查的構建(如果可用),至少在您按預期工作之前。

即使這樣, 最好,有教養的猜測。這種方法似乎是LiveCD用來實現其魔力的方法,所以你可能會有更多的運氣來研究它們。即使LiveCD不是您的最終目標,他們用於構建系統映像的方法也可能有助於您的努力。祝你好運!


5
2017-11-09 05:56



我有興趣大多數預防 數據寫道 去物理光盤。為此,像增強型寫過濾器這樣的解決方案(請參閱: msdn.microsoft.com/en-us/library/...)是完全可行的。 Windows和應用程序 做 具有對系統分區的完全訪問權限,但寫入緩衝到RAM覆蓋。假設所有程序和配置數據都被預先緩存到內存中,我認為沒有任何物理磁盤訪問的真正需要。我可以忍受在系統關閉後不保存任何修改的事實 - 出於測試目的,這實際上非常方便。 - htalvitie
別忘了你需要防止 數據讀取 同樣,為了關閉驅動器...不僅僅是預先到目前為止所需要的,而是你(或系統) 威力 也需要。預測需要預先處理的數據似乎是全面的Win-7安裝中的噩夢。使用精簡版或構建自己的sys-image版本會更容易。 - quack quixote


如果錢不是對象,你可以用一個替換嘈雜的硬盤 SSD。我有一台帶有SSD的MacBook,它完全沉默(而且速度更快)。


3
2017-12-17 19:09