Почему это более чем половина медленнее к CP файл вместо того, чтобы использовать копию GUI Наутилуса? (Протокол AFC)

У меня есть взломанный iPod Touch, и у меня есть afc2add пакет. Когда я включаю его в свой ноутбук человечности, это автомонтирует каталог Media моего iPod, а также папки совместного использования файла приложения также. Когда я использую Наутилус для передачи файла в папку Media, он достигает максимума приблизительно в 5MB/s. Однако, когда я использую терминал для копирования файла в ~/.gvfs/Matt's iPod папка [В Наутилусе, это обнаруживается как iPod "Matt"], я только видел, что он подходит о 2MB/s.

Кто-либо может дать какой-либо ключ к разгадке относительно того, почему это более чем половина медленнее к CP файл вместо того, чтобы использовать копию GUI Наутилуса?

Между прочим, я может сказать, как быстро он идет с терминальной копией, у меня есть сценарий с объемом плазмы [Короче говоря это: pv $1 > $2], и это шло о 1.5MB/s. Таким образом, я также попробовал CP и настроил цикл к du файл каждую секунду, и это подпрыгивало где-нибудь около 2 МБ каждую секунду.

9
задан 8 September 2011 в 08:04

1 ответ

Наутилус прошел бы меньше слоев косвенности, которая могла составлять различие.

Наутилус является собственным gvfs приложением, таким образом, он общается с gvfs бэкендами непосредственно.

Напротив, cp говорит с ядром через файловую систему FUSE, смонтированную в ~/.gvfs, который обрабатывается gvfs-fuse-daemon процесс, который в свою очередь говорит с gvfs бэкендами. Несоответствия импеданса между API POSIX и gvfs могли бы составлять менее эффективные передачи.

Вы смогли получать подобную производительность на командной строке с помощью gvfs-copy команда от gvfs-bin пакет, копируя в соответствующий URL.

15
ответ дан 23 November 2019 в 04:54

Другие вопросы по тегам:

Похожие вопросы: