複製10G的單文件視頻,複製6.5G的過程中斷複製。Windows複製粘貼(剪切)機制是怎麼樣的?

大概是這幾種情況,Windows系統是哪一種機制呢?

macOS又是怎麼樣的、謝謝大神

1、複製文件佔10G,播放時6.5G處自動關閉

2、複製文件佔6.5G,播放完畢自動關閉

3、複製文件佔10G,無法播放

4、複製文件佔6.5G,無法播放


這跟操作系統(文件系統驅動)有一定關係,但不是絕對相關,跟複製文件的工具有很大關係。

複製文件實際上是一種用戶態的應用程序行為,具體的做法就是讀文件-&>寫文件。

如果複製工具在用戶中斷複製時就刪除目標文件,那麼你就看不到目標文件。
如果複製工具在用戶中斷複製時不刪除目標文件,那麼你就可能看到半個文件。
如果複製工具是先創建一個跟源文件一樣大的空文件,再慢慢填充(實際情況中很少有工具這麼干),那麼你就看到一個10G但實際內容不全的文件。

中斷複製的後續動作是用戶態的複製工具的行為,跟操作系統無關。

跟操作系統有關的是複製時掉電,但這個要分析起來就很麻煩了,也要看複製工具的代碼具體怎麼寫的,有些工具可能開了一個巨大的cache,寫滿以後flush一下,有的則是一小塊一小塊的寫。

對於使用了巨大的cache的複製工具,如果文件系統沒有採用自動修復的動作,那麼你可能看到一個長度是0或者長度是10G或者長度是一個cache倍數之類的文件,但內容未必全寫進去。

如果是一小塊一小塊的寫,看到的文件大小跟寫進去的內容基本上差不太多,對於視頻來說,可能是可以放出一部分的。

掉電時的文件系統行為跟文件系統格式、文件系統驅動行為有關係。

至於你的視頻能不能看,那是還要跟視頻本身的格式有關係。


Win: 先佔全地方

Linux: 寫多少佔多少

Mac 沒有估計和L 一樣

至於能不能播放要看文件格式……


視頻可以看。如果是H264格式,你應該可以一直看到6.5GB中斷處之前的最後一個P幀。


windows應該是那個文件就沒了


兩三年前試過類似的事,我當時從別人的電腦複製一部3G左右的電影到U盤,我忘記了電腦操作系統是XP還是win7。。。視頻格式是mp4,當時以為複製完了,強拔了U盤,然後拿回家複製到我自己的電腦,win7的,我電腦顯示視頻大小也是3G,視頻能正常播放,但播放到八九十分鐘就沒了,視頻時長是兩小時左右,我還把這視頻複製到一台XP的電腦,情況也是一樣。然後我就知道我沒完整複製下來,第二天重新去別人家複製了一遍,確認複製完後,拿回去,這次能正常播完了。

最後,機制是怎樣,我也不知道。。。


當我們將文件往其他地方複製時,在不同的文件系統中有著不同的操作邏輯。

在Apple最新的文件系統中,你的複製實質上只是得到了一個指向文件實際存儲地址的鏈接。文件本身並沒有複製,回到你的問題中,由於是秒引用,不存在複製6g中斷的情況,視頻的播放是正常的。

在windows中,你的複製操作會產生一個與原文件大小相同的二進位副本。未能完整複製的情況下,會得到一個不完整的副本。

至於能否播放,這隻與視頻本身採用的編碼格式有關。如果格式支持,則會在播放到未複製部分時卡住。已複製的部分,能照常播放。


我來寫個真實的案例。

當年用迅雷下載日語學習視頻,然後下載了一半迫不及待就用暴風影音打開看。視頻文件當然是不完整的,但是文件大小標註的倒是完整大小,播放後發現並不是從頭開始連續的一段視頻,而是好多零碎的片段的集合體。就是比如一開始是好的,快進到10分鐘就播放不了,但是快進到15分鐘又是可以播放的,但播放到17分鐘又放不了了。

額文筆不好希望看的明白。


推薦閱讀:

OS X 為什麼沒有自帶畫圖工具?
Mac 上適合碼農用的 Markdown 編輯器是什麼?
為什麼OS X下同一應用、遊戲定價要比iOS高几倍?
Pages 不如 Word 嗎?不能代替 Word 嗎?
在周圍的人都使用Windows的情況下使用OS X,會遇到什麼不便?

TAG:Mac | macOS | MicrosoftWindows | Windows8 | Windows10 |