• 3

[教學] 多顆硬碟加速遊戲讀取

為什麼我看他的樣子是捷徑,而不是硬連結
是不是一樣的??
comela wrote:
如果和以下圖一樣會5會令到整個系統好快??

...(恕刪)


應該不會變快

我看不懂你創那些連結的用意,但判斷應該不會變快。


要變快,是要把遊戲的 map 地圖檔(目錄)、資料檔...之類的,連結到別顆硬碟去。

如此一來,當遊戲運行時,讀地圖、讀資料時,就可以多顆硬碟同時讀取,類似於 RAID0 加速的效果。

註:須別顆硬碟,非同一顆硬碟切割好幾個磁碟區。若是同一顆硬碟,不同分割區的,那沒有加速效果。


此外這個方法還有一個妙用,如果 C: 槽空間不夠用了,不想把軟體移除重裝。那只要把軟體目錄移動到別的磁碟槽,然後原地建一個軟連結,就可以欺騙作業系統,OS 會以為軟體的目錄還在原先位置,實際則已經移到別處去。


comela wrote:
還有,這是什麼??

...(恕刪)


那個 shll link 就是 windows 中的「捷徑」

它有那個按鈕,但沒什麼用處就是了。
因為要建捷徑,直接在 windows 下操作就可以建。

比較重要的是那個:Create NTFS Junction 按鈕
(建 NTFS 軟連結)


*********************************************************

其實這個 Winbolic Link 軟體

就是 mklink 指令的 GUI 圖形界面版,如前面網友說的 windows 底下有內建的指令可以作到一樣的功能。


但打指令的比較囉唆麻煩,還要去記指令怎麼打。在哪裡 CD 來 CD 去的,目錄切來切去,切到來天黑了。且目錄名稱要打一大串字也容易打錯。

而用這種圖形化界面的操作,滑鼠按一按就好了,比較直覺、方便、快速。



上圖:打指令的方式。

功能一樣,作用一樣,但方便性與圖形界面的無法相提並論。

這篇 M01 站內的討論,也可以延伸閱讀,參考一下:
可以把單一檔案LINK到別的地方嗎?



comela wrote:
為什麼我看他的樣子是捷徑,而不是硬連結
是不是一樣的??...(恕刪)


「軟連結」 (SYMLINK),在檔案總管中,
圖案會和「捷徑」(SHEL LINK)一模一樣。

所以從檔案總管中,無法辨別。

須在 CMD 命令提示字元底下,DIR 才能看出差別。



上圖:使用 DIR 觀察「軟連結」 與「捷徑」的差異

軟連結 的型態是:SYMLINK(symbolic link,對岸叫:符號連結)

普通的"捷徑"(shell link),屬於一般檔案,沒有特殊型態,而副檔名是 .lnk(這種的無法欺騙軟體)



或者安裝第三方檔案總管加強軟體,才能在檔案總管中看出差別。

比如安裝 HardLinkShellExt 這個軟體



右鍵內容,會多出一個標籤頁,就可以看出差別
我c曹的game硬連結到F,F曹會不曹生產一樣的檔案??
有沒有程式可以測試速度?

你說:如果 C: 槽空間不夠用了,不想把軟體移除重裝。那只要把軟體目錄移動到別的磁碟槽,然後原地建一個軟連結,就可以欺騙作業系統,OS 會以為軟體的目錄還在原先位置,實際則已經移到別處去。

是不是這個game的還在C槽,但容量就轉移到其他槽
comela wrote:
我c曹的game硬連結到F,F曹會不曹生產一樣的檔案??
有沒有程式可以測試速度?
..(恕刪)


這個要看你 F 槽,有沒有比 C槽快

但這並不是我發這篇教學的本意

這篇 多顆硬碟加速遊戲讀取,是要把遊戲的內容拆解,分別存放在多顆硬碟,同時讀取,才能達到加速的效果。


比方舉例: CS 絕對武力 這個遊戲

它裡面目錄檔案很多,其中有一個 map 目錄,專門存放地圖資料的

如果把那個 map 目錄拆解出來,放在別顆硬碟,那跑遊戲時,比方說 C: 讀主程式、模型檔,同時 F: 讀 map 地圖檔,兩顆硬碟同時讀取,就能達到稍微加速的效果。


comela wrote:
你說:如果 C: 槽空間不夠用了,不想把軟體移除重裝。那只要把軟體目錄移動到別的磁碟槽,然後原地建一個軟連結,就可以欺騙作業系統,OS 會以為軟體的目錄還在原先位置,實際則已經移到別處去。

是不是這個game的還在C槽,但容量就轉移到其他槽...(恕刪)


NO,不是這樣

是要先把 C槽 中,那個軟體的目錄,整個移動到 F: 槽
(從 C: 剪下那個目錄,到 F: 貼上)

註:運行中的軟體,可能無法移動,要先把軟體徹底關閉。在去移。


這樣一來,軟體就由 C: 移動到 F: ,那 C: 的容量自然就會空出來。

但是這樣子,當然軟體就讀不到了。

所以要製造一個 「軟連結」,去欺騙作業系統,讓 OS 以為軟體還在 C: 原先的位置。

軟連結 = 任意門

就是在 C: 擺放一個任意門,進入那個任意門,會跑到 F:。


比方說:

C:\Program Files 底下,有一個 XXX 的軟體目錄

直接把那個 XXX 目錄剪下,到 F:\ 貼上

然後 在 C:\Program Files\ 位置,
建立一個 XXX 同名的軟連結(任意門),
連結到 F:\XXX

如此就可以欺騙作業系統,就好像什麼事都沒有發生。

註:「軟連結」 才能欺騙作業系統。「捷徑」 不行。
謝謝你很耐性教我。


原來要C: 剪下那個目錄,到 F: 貼上
才能多顆硬碟加速遊戲讀取

如果個game沒有地圖檔目錄,模組目錄,音效檔目錄等等
應如何設定??

fedora wrote:
[教學] 多顆硬碟...(恕刪)


樓主你好,請問右邊的「目標」資料夾,可以是NAS上的資料夾嗎?

因為我使用這個圖形介面軟體,如果目標資料夾是在「本機」就沒有問題,如果是在「區網」就不成功,是不是無法用在網路資料夾?

例如,我想把C槽的音樂資料夾導入到NAS的音樂資料夾,就出現錯誤了


而且Link Shell Extension外掛軟體,我安裝以後似乎也沒有反應,檔案總管還是沒有顯示。


我使用的是Win10系統。
紫米飯糰 wrote:
樓主你好,請問右邊...(恕刪)


更正,原來Link Shell Extension這個軟體,除了要安裝vcredist_x86.exe以外,還要安裝HardLinkShellExt_win32.exe這個檔案才算完成。
紫米飯糰 wrote:
樓主你好,請問右邊的「目標」資料夾,可以是NAS上的資料夾嗎?
...(恕刪)


直接用是無法用的,NTFS Junction 軟連結,「目標」只能是本機磁碟機的目錄,無法連結網路磁碟機。

必須用特殊方法(虛擬層),騙過系統,就能用了

相關知識,參考:
[教學] 將PC遊戲封裝成img檔,掛載為虛擬磁碟


實際測試:


↑ 有一個 映像檔(虛擬磁碟 檔),放在遠端目錄上



↑ 將它掛載為 Z:



↑ 製作 junction 軟連結

軟連結檔:F:\TEST

連結目標:Z:\
(就是 \\192.168.0.254\mv\100M.game 裡面的東西)



↑ 連結成功。實際可以進入,可讀寫。


*******************************

不過用這種 掛載 虛擬磁碟 的方式,要注意 重開機 後,掛載就不存在了,要重新掛載,才能用。(不必重新連結,那個連結檔重開機後仍在。只是 Z: 會不見,要重新掛載 Z:)

若每次重開機都要重新掛載,覺的麻煩。可以寫個 bat 腳本,放在 [啟動] 目錄。讓它自動運行。


自動掛載 腳本範例:

掛載虛擬磁碟.bat
--------------------------------
net start imdisk

imdisk -a -f "\\192.168.0.254\AAA\xxxx.img" -m L:
--------------------------------

註:這只是範例,內容要自行更改。

藍色部份是:映像檔的位置(虛擬磁碟檔)

紅色部份是:要掛載成為 本機哪個磁碟機代號


把 bat 腳本,丟到 [啟動] 目錄,它就會在登入桌面的時自動運行

我還滿好奇有沒有量化數據可以參考讀取速度提升多少?

第一次看到這種類似RAID0概念的軟體


fedora wrote:
直接用是無法用的,NTFS...(恕刪)


感謝樓主教會我這個好方法,認識「軟連結」這種東西後,除了遊戲還可以應用在很多面向。樓主貼心地介紹圖形化介面軟體,對我這種入門者來說很實用,如果有更進一步需求,再去學習mklink語法也可以,謝謝。
  • 3
內文搜尋
X
評分
評分
複製連結
Mobile01提醒您
您目前瀏覽的是行動版網頁
是否切換到電腦版網頁呢?