Ramdisk到底是怎樣處理記憶體區虛擬成硬碟?這個中介關係?
我是認為,不是像一般想像的,和一般記憶體取用一樣,是直接存取。應該是透過ramdisk軟體,做類似轉址的功能,去對應資料位置。
硬碟有晶片控制器,記憶體是由記憶體控制器,ramdsik應該就是再加一層軟體控制。軟體控制可以一次傳輸多少資料?
而且,我試想一下,存區資料時,都要cpu去運算ramdisk軟體。目前看起來ramdisk大都不是用驅動程式掛載的方式,所以應該不會是從ramdisk資料區,直接丟進平常計算的記憶體去,不用經過cpu。而是軟體把這次傳輸的資料,視為程式裡的一串資料。如果這樣的話,用軟體純模擬,會耗費時間在計算和轉換上。這樣反應會慢很多,因為多了很多步驟。
網路上,滿多ramdisk測試,不同家的ramdisk,效能差異很大。如果是直接存取記憶體,同樣平台上,效能應該不會差異很大。
軟體控制,和硬體控制,效能是有差的。