分塊 (電腦)
外觀
![本頁使用了標題或全文手工轉換](http://upload.wikimedia.org/wikipedia/commons/thumb/c/cd/Zh_conversion_icon_m.svg/35px-Zh_conversion_icon_m.svg.png)
在電腦編程中,分塊具有多種含義。
在內存管理方面[編輯]
典型的現代軟件系統從稱為堆的結構中動態分配內存。呼叫堆管理常式用來分配和釋放內存。堆管理引入了一些計算時間,可能是一個效能問題。分塊是指通過使用特殊的情況知識來匯總相關的內存分配請求從而提高效能的策略。例如,如果知道某種對象通常需要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) (英語).