2016-04-04 64 views
17

任何人都可以解釋這一點:文件複印速度爲USB連接的磁盤

我想從我的MacBook一些大的文件複製到本地USB磁盤

我可以通過兩種方式做到這一點:

1)cd到我的MacBook上的目錄,然後複製,就像這樣:

$ cd ~/Downloads 
$ cp file /Volume/usb/... 

2)cd到我的U盤和 目標目錄,然後從MacBook的目錄複製,就像這樣:

$ cd /Volume/usb 
    $ cp ~/Downloads/file . 

我偶然發現方法2比方法1)快約4倍 - 任何想法爲什麼是這種情況。這總是如此,或者僅僅是OS-X的一個特徵。對我來說這似乎很奇怪。我已經多次重複了 實驗 - 並且對USB進行復制並將其複製到其他方式要快得多。

OS = El Capitan - 本地磁盤是SSD - 遠程磁盤是一個 USB磁盤。

+0

你能描述更多你正在複製的內容嗎?文件列表,一次一個文件在一個循環中,...? –

+0

我能聽到更多關於爲什麼這是脫離主題嗎?我很失望地看到這個有趣的問題被解決了,而且這看起來似乎與編程有關。 – seewalker

回答

-1

我想你可能會碰到磁盤緩存,而在第一次訪問文件後每次訪問都會大大提高複製速度,因爲它不必從磁盤上再次讀取(完全)。

你能嘗試:

一)無論是在清除磁盤高速緩存(不知道怎麼做,在Mac上,我不使用一個)

B)重啓並嘗試標杆其他方式,即嘗試先複製現在較快的一個,然後再複製另一個。

另外,如果您重複執行1)和2),那麼測量不止一次,是否都在同一個類別中運行的速度始終相同?

-1

我敢打賭,這是因爲在後面的情況下打開目錄(通過將它作爲copuing進程的當前工作目錄)允許cp和系統避免測試每個目錄上(掛載)目錄的可用性阻止寫入。如果它來自cp本身,你可以用strace來檢查它。如果它來自內核,你可以看看源代碼。