Документация init.rc сэндвича с мороженым

Поведение init.*.rc в Ice Cream Sandwich, похоже, изменилось. Раньше я мог запускать службу при загрузке с записью вроде:

service my_kool_service /system/bin/my_kool_service

Я нашел эту запись, которая дал подсказку изменить на:

service my_kool_service /system/bin/my_kool_service
    class main

Так что же такое class main и зачем он нужен?

В этой документации действительно говорится о class "варианте", но не предоставляет подробностей о поведении по умолчанию или наблюдаемых изменениях.

Задокументирован ли текущий язык ICS init rc где-либо, формально или нет?

Спасибо.


person Jameson    schedule 21.04.2012    source источник
comment
не могли бы вы сказать мне местоположение init.rc в программном обеспечении для мороженого?   -  person Jeegar Patel    schedule 17.05.2012


Ответы (3)


Как уже было сказано, init.rc задокументировано в этом файле readme . Опция службы class используется для группировки служб и запуска и остановки их вместе соответственно с командами class_start и class_stop.

В частности, классы core, main и late_start используются в Android 3.0 и более поздних версиях для шифрования (см. раздел «Как работает шифрование Android» в Примечания по реализации шифрования в Android 3.0). В частности, цитируя этот документ:

Основные службы никогда не останавливаются после запуска. основные службы отключаются, а затем перезапускаются после ввода пароля диска. Службы late_start не запускаются до тех пор, пока /data не будет расшифрован и смонтирован.

person Diego    schedule 17.10.2013

Если вы добавляете службу в определенный класс, вы можете запустить службу, вызвав start_class. Например. Если у вас есть 10 служб, находящихся в тестовом классе, то, вызвав start_class test, вы можете запустить все 10 служб, находящихся в тестовом классе, если они еще не запущены. То же самое применимо и для остановки всех служб...

См. следующую ссылку для получения более подробной информации о языке init.rc https://github.com/android/platform_system_core/blob/master/init/readme.txt

Надеюсь, это поможет..:)

person Paritosh    schedule 29.06.2012

class core — всегда запускается первым и в большинстве случаев не может быть остановлен без серьезных последствий. class main — отвечает за службы. Можно перезапустить, но только в случае крайней необходимости класс позднего старта — происходит непосредственно перед полной загрузкой системы и становится доступным для пользователя.

person dorin.canepa    schedule 17.02.2016