Как отложить размонтирование SD-карты на Android, чтобы завершить мой собственный файл IO - PullRequest
1 голос
/ 20 января 2011

Моему приложению требуется гарантированное время для завершения некоторого ввода-вывода на SD-карте, прежде чем SD-карта будет отключена. Мое решение состоит в том, чтобы написать модуль ядра linux, который вставит оболочку вокруг системного вызова umount, которая задержит фактическую umount и перезвонит мне для завершения моей работы.

Мой код может иметь привилегированные корневые компоненты.

Есть ли менее обременительные решения?

1 Ответ

0 голосов
/ 20 января 2011

Хотя я не могу этого гарантировать, я верю, что umount автоматически подождет этого.Это одна из причин использовать umount (вместо непосредственного удаления sdcard).

Также вы не можете «написать модуль ядра linux» и «установить» его на устройство Android.То, что вам нужно будет сделать, это перекомпилировать Android, создать собственное ПЗУ и установить его на желаемое устройство.Каждому устройству потребуется отдельное ПЗУ и т. Д. Я не думаю, что это возможно для вас.

В любом случае, umount должен ждать завершения любой операции ввода-вывода (возможно, с таймаутом).Я не вижу решения, если у вас есть несколько файлов для отправки и что нужно для того, чтобы все они были записаны.

...