分塊 (電腦)
在電腦編程中,分塊具有多種含義。
在主記憶體管理方面
典型的現代軟體系統從稱為堆的結構中動態分配主記憶體。呼叫堆管理常式用來分配和釋放主記憶體。堆管理引入了一些計算時間,可能是一個效能問題。分塊是指通過使用特殊的情況知識來匯總相關的主記憶體分配請求從而提高效能的策略。例如,如果知道某種對象通常需要8個為一組使用,那麼與其單獨分配和釋放每個對象,對堆管理器進行16次呼叫,不如分配和釋放由8個對象組成的陣列,從而將呼叫次數減少到2次。
在HTTP訊息傳輸方面
分塊是HTTP1.1協定[1]的一個特殊功能。這裡,其含義與主記憶體管理中的含義相反。它指的是一種能力,允許將不方便的大訊息分解成更便於使用的小「塊」。
在重複資料刪除、資料同步和遠端資料壓縮等方面
在重複資料刪除、資料同步和遠端資料壓縮中,分塊是通過分塊演算法將檔案分割成更小塊的過程。它可以幫助消除儲存上重複資料的重複拷貝,或者通過只選擇被更改的塊來減少通過網路上傳送的資料量。諸如旋轉雜湊及其變種的基於內容分塊演算法(英語:Content-Defined Chunking,CDC)在過去15年中一直是最流行的資料重複刪除演算法[2]。
參見
參考文獻
- ^ HTTP/1.1: Protocol Parameters. [2019-12-10]. (原始內容存檔於2020-12-12) (英語).
- ^ FastCDC: a Fast and Efficient Content-Defined Chunking Approach for Data Deduplication (PDF). USENIX ATC 』16. 2016 [2019-12-10]. (原始內容存檔 (PDF)於2020-11-12) (英語).