MPQ檔案系統優化

2021-08-23 11:53:49 字數 546 閱讀 5414

上次用解析字串的方式來列舉目錄和檔案, 速度太慢

尤其像common.mpq這樣乙個mpq的listfile就幾兆的情況下, 速度簡直不能忍受

再想想zipfilesystem中的fileentry和direntry, 我想它們是用來快取檔案目錄樹的吧

在記憶體中進行查詢肯定比讀檔案快, 更不用說去解析字串了

還是加入進去好了

與zip不同的是, 我沒有把檔案一次性讀入記憶體. 因為mpq本身就支援seek, 不需要讀到記憶體去模擬. 如果想對映到記憶體進行快速訪問, 可以用map()和unmap().

呵呵, visual paradigm畫圖就是爽, 個人自己用可以申請乙個免費的授權

以後要慢慢學著自己設計東西了, 這也算乙個瓶頸吧, 過去就好了^_^

n3的io模組預設是跟主線程不在同乙個執行緒裡的, 這點比較頭疼.....看來能只做一下簡單的測試了, 或者自己在主線程裡也開乙個ioserver, 唉~~路漫漫

檔案系統 why檔案系統

為什麼需要檔案系統,可否由作業系統直接寫裸裝置?裸裝置是一種沒有經過格式化的磁碟或分割槽,即讓作業系統直接管理操作磁碟設定,進行資料讀寫等。通過檔案系統的方式組織磁碟儲存和資料管理有很多好處,比如 1.資料讀取 管理等操作變得簡單便捷 檔案系統給使用者提供了乙個簡單的操作介面,只需簡單的操作就能實現...

Linux檔案系統效能優化

由於各種的i o負載情形各異,linux系統中檔案系統的預設配置一般來說都比較中庸,強調普遍適用性。然而在特定應用下,這種配置往往在i o效能方面不能達到最優。因此,如果應用對i o效能要求較高,除了採用效能更高的硬體 如磁碟 hba卡 cpu mem等 外,我們還可以通過對檔案系統進行效能調優,來...

MPQ檔案結構和Partial MPQ檔案結構

mpq 檔案結構 mpq header hashtable blocktable extendtable file 注 1 file 由很多block 組成,file 可能被壓縮或者加密,如果這樣的話,那麼在每個 file 開始的地方有乙個每項是 32位的陣列,用來指明每個 block 的offse...