我想知道python hashlib庫如何處理稀疏文件。如果文件有很多零塊,那麼不是在讀取零塊時浪費CPU和內存,而是執行任何優化,比如掃描inode塊映射並只讀取分配的塊來計算散列值?Python hashlib和稀疏文件
如果它沒有這樣做,最好的辦法是自己做什麼。
PS:不確定在StackOverflow Meta中發佈此問題是否合適。
謝謝。
我想知道python hashlib庫如何處理稀疏文件。如果文件有很多零塊,那麼不是在讀取零塊時浪費CPU和內存,而是執行任何優化,比如掃描inode塊映射並只讀取分配的塊來計算散列值?Python hashlib和稀疏文件
如果它沒有這樣做,最好的辦法是自己做什麼。
PS:不確定在StackOverflow Meta中發佈此問題是否合適。
謝謝。
hashlib
模塊甚至不能使用文件。你必須讀取數據並將塊傳遞給哈希對象,所以我不知道爲什麼你認爲它會處理稀疏文件。
I/O層對稀疏文件沒有特別的作用,但這是操作系統的工作;如果它知道文件是稀疏的,那麼「讀取」操作不需要執行I/O操作,它只需用零填充緩衝區,而不需要I/O。
感謝您的澄清.. – CodeWithPride
如果您將備用文件複製到不支持稀疏文件的不同文件系統(或具有不同的塊大小,以便省略不同的塊集合),您是否真的希望它具有不同的散列? – jasonharper