wesley_cch wrote:你直接把 page file 關掉不就好了麼? 但是有些程式完全沒有page file給他用時會有問題.如果沒有用到這些搞怪的軟體, 倒是也有很多人把page file關掉然後用的很快樂的.
strawinsky wrote:應該是說有些程式就算...(恕刪) 唉呦,不是這樣Ramdisk早在DOS 2.0那個年代就出現啦!當時PC x0286盛起,主流的作業系統像是MS-DOS 3.X搭載640KB主記憶體+20MB的龜速硬碟就能跑的嚇嚇叫.但受到DOS系統的限制,只能在640KB下運跑主程式.後來,隨著軟硬體技術的成熟,MS-DOS 4.0 開始支援EMM/XMS記憶體技術,令MS-DOS作業系統可以使用1MB以上的記憶體.發展至MS-DOS 5加入了許多記憶體管理的程式,如 EMM386、MEM 等等,當時,許多軟體都以如何設定MS-DOS記憶體配置為應用發展的方向(ex. Qemm386). 許多電腦玩家也因此日夜鑽研如何從有限的640KB下榨出更多的記憶體出來執行程式/遊戲軟體,但是就算軟體怎麼跑,就是塞不滿記憶體,剩下的記憶體不用就太可惜了,於是乎...在當時,RamDisk最常被玩家們拿來掛載進開機片,讓你的電腦一開機,便多一顆神級速度的硬碟.它的出現,適時地造福廣大的DOS使用者.Ramdisk 在Win95那個年代多數也是拿來掛進開機片裡頭,作救援使用.到了XP,Ramdisk的技術已經被玩家進化來製作一顆高速的"閃碟(Flash Disk)",可以用於讀取快取資料,因為這些快取資料往往是暫時性的,用過即丟或著是需要反覆存取的,玩家們使用Ramdisk來掛載page file,讓資料在記憶體中直接快速交換的同時也延長了硬碟磁頭的壽命.Pagefile是可以關閉的,Windows XP本身也會自動保留一些記憶體讓作業系統使用,但是管理程式寫得不是很好.而偏偏某些軟體只要一執行就會預先佔用大量的記憶體空間,為了避免系統變慢甚至崩潰,才會有FreeRAM這類軟體的需求出現.
OS裡面有學到關於這一部份我也有特地去再問老師首先,無論什麼程式,都分為code body和 data seqmentcode body是不會被更改的,data seqment可能會被更改如果你要從硬碟取出來一個程式,你就要注意他的哪部份是需要被寫回去,哪些是不用當我們要執行程式時以前的作法是,一次就要load全部上去,然後跑到程式的頭,開始run雖然小程式可以,但是效率很差,而且遇到大程式>ram size怎麼辦?虛擬記憶體(Visual memory)的使用,也就是鑒於以上的因素,發展出來的技術如果我們有一個50mb的程式,但是只有25mb的ram以上面的技術(一次要將程式整個放上去),因為放不下,所以就沒辦法了故以前在寫程式的人,多半有限制程式的大小所以說這個虛擬記憶體的解決方式是如果主記憶體上面程式滿了,移到硬碟上虛擬記憶體去,所以記憶體又變成空的一塊再load 程式上去,這樣就可以再執行下去了,這個動作稱為(Swapping)又後來因為這個swap一次要swap那麼多的程式那一定很慢而且沒有效率所以又有了Page table的技術首先你要知道三個東西,TLB、PageTable和disk速度上TLB>>PageTable>>>diskTLB是PageTable的 cache首先將主記憶體拿一塊作為Page table並且將剩下的以page為單位當我們需要執行程式時就到先到TLB看有沒有我們要的A沒有,就再看PageTable有沒有我們要的A再沒有,就到硬碟去抓A,然後放到主記憶上面接著將對映資訊存入TLB和PageTable我沒有細講很多有興趣請去看OS恐龍本…另外我回答一下那個Gavotte的問題我用的有兩套ramdisk你所說的pagefie開機總是會回到c槽只發生在這套另一套SuperSpeed RamDisk Plus就沒有這個問題(這家還有另一個產品叫super cache)我試了十幾次的結果我覺得是這套軟體"建置Ramdisk動作" 在"winxp 建pagefile"之後所以會有這種後果發生我的文章有提到這兩個軟體http://www.mobile01.com/topicdetail.php?f=233&t=552760&last=5399969
> Ramdisk早在DOS 2.0那個年代就出現啦!回想那時用 ramdisk 跑真是爽度一百,以前的 floppy 跟 hd 存取真的是太慢了,ms-dos 時是在 config.sys 掛 ramdrive.sys,那有沒朋友知道現在的 windows ramdisk 是 "藏" 在哪啊?! 找不到 ...
wesley_cch wrote:> Ramdi...(恕刪) 應該沒有附在裡頭,要去這裡下載但是最大只能設定32MB, 而且需要搭配development tools.其他的免費ramdisk,參考1參考2,最大上限2GB
原來在這, 感謝, 怪了, 我之前用 "搜尋" 怎麼沒搜到 ...對了, 剛又試了一下,直接進去看是有這檔,但在 C: 槽上按右鍵搜尋 rramdisk.sys 這個關鍵字還是搜不到,可是直接在 C:\windows 目錄上按右鍵搜尋又找的到,訥悶 .... 搜尋 C: 跟 C:\windows 居然結果不一樣.......第一次遇到....算了, 不研究了, 無關緊要 ...
> 大概是你沒有把搜尋的進階選項裡面 "搜尋子資料夾"給打勾吧有啊, 不然找 c:\windows 就不會找到嘍....呵...什麼系統, 隱藏什麼都都有開 ...為了找這東西我突然想到,他用 driver 的型式在跑,所以從程序還有開機與服務, system.ini, win.ini, boot.ini 中都找不到影子,如果是病毒或木馬也這樣安裝的話,就挺麻煩了, 一般比較少會去注意到這種 driver ...