Перемещение MTP в пределах одного раздела занимает много времени

У меня есть устройство Android 4.3 (Samsung Galaxy SIII LTE со стандартным ПЗУ), которое подключается к компьютеру по протоколу MTP (Media Transfer Protocol).

Я хотел организовать несколько файлов, и я создавал подпапки и перемещал подмножества файлов в эти подпапки. Это все в одном разделе (внешняя SD-карта установлена ​​на телефоне).

Один такой шаг включал в себя большой файл размером чуть более 2 ГБ. На обычном жестком диске или флэш-накопителе этот шаг был бы очень быстрым, занимая не более пары секунд. Данные самого файла не перемещаются - только ссылочный указатель (метаданные файла) изменяется из старой папки в новую папку.

Однако, используя MTP, этот ход занял 17 минут! (Оценка составляла 29 минут.) Похоже, компьютер Windows 7 временно скопировал файл на локальный жесткий диск, а затем повторно скопировал файл на устройство в новой папке. Либо так, либо он попросил устройство скопировать файл в новую папку, а затем удалить исходный файл.

Это нормальное поведение MTP? Или что-то не так с моим компьютером или используемой версией протокола?

Если это нормально, что является причиной выбора такого неэффективного метода перемещения файлов в пределах одного раздела? Если нет, как я могу это исправить?

1 ответ

Решение

Это нормальное поведение MTP?

Да. Кажется, что MTP - это довольно простой протокол, который не был разработан для поддержки прямой модификации объектов - на мой взгляд, это довольно нелепая халатность. Согласно Википедии:

Стандарты MTP и PTP не поддерживают прямую модификацию объектов. Модифицированные объекты должны быть скопированы из устройства и полностью загружены, что может занять много времени для больших объектов. Реализация Google MTP в Android включает в себя расширения, чтобы справиться с этим ограничением; однако эти расширения должны поддерживаться операционной системой хоста и по умолчанию недоступны. - Википедия

Почему Android переключился на MTP?

Android перешел от монтирования в качестве дискового хранилища к MTP, чтобы решить проблему доступа к файловой системе, а также сделать ее доступной для компьютера. Похоже, что при первоначальном монтировании диска у вас должны были быть отдельные разделы, в результате чего на устройствах было огромное пользовательское хранилище, но все еще не хватало места для приложений и хранилища приложений (и пользователь задается вопросом, почему, когда все еще достаточно свободного места)). С MTP больше не нужно разделять разделы, и один и тот же раздел может использоваться как приложениями, так и пользователем, что приводит к большому объему памяти как для системы, так и для пользователя.

Но при постоянном переходе на MTP Android перешел от надежного, проверенного временем, многофункционального метода доступа к файловой системе (монтирование дискового хранилища) к довольно элементарному, малофункциональному, но довольно новому методу (MTP). Кроме того, устройства Samsung не используют реализацию MTP от Google, и поэтому у них нет возможности преодолеть ограничения первоначальной реализации MTP с помощью таких расширений.

Возможное решение

Кажется, что лучший вариант при перемещении больших файлов - это использовать приложение " Диспетчер файлов" (такое как ES File Explorer) на телефоне или планшете, а не пытаться перемещать их с помощью компьютера, подключенного к устройству через MTP.

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