Низкая энтропия на Android

Всякий раз, когда пул энтропии уменьшается в Android, мы можем легко наблюдать вялость устройства, но я не вижу подобного поведения в Linux (ubuntu). Я использую 2 ГБ оперативной памяти в обоих. Почему пул энтропии так сильно влияет на производительность устройства? И как мы можем убедиться, что пул энтропии всегда высок?

вы можете убедиться в этом, выполнив следующую команду

$adb shell cat /proc/sys/kernel/random/entropy_avail

person blganesh101    schedule 27.06.2013    source источник
comment
Я не уверен, что это связано с программированием...   -  person m0skit0    schedule 27.06.2013
comment
Конечно, нам нужно лучше управлять энтропией. Почему вы думаете, что это не связано с программированием?   -  person blganesh101    schedule 27.06.2013
comment
Ваши вопросы больше связаны с реализацией ОС, чем с программированием. Вы спрашиваете не об энтропии как таковой, а о том, как управлять энтропией в конкретной ОС. ИМХО такие вопросы не связаны с программированием :)   -  person m0skit0    schedule 27.06.2013


Ответы (1)


Что ж, после прочтения и помощи я получил следующую полезную информацию.

во-первых кроме от

http://hackaday.com/2013/01/04/is-entropy-slowing-down-your-android-device/

когда приложение запрашивает случайное число у ядра Linux, работающего на самом низком уровне устройства. Android настроен на использование /dev/random для всех запросов случайных чисел, но [Lambgx02] говорит, что в этом месте имеется очень небольшой пул доступных чисел. Когда они заканчиваются, ядро ​​​​должно перезагружаться с новым начальным числом, и это блокирует продолжение работы приложения, запросившего данные.

Его решение состояло в том, чтобы написать собственное приложение, которое заполняет /dev/random каждую секунду, используя число из /dev/urandom. Он упоминает, что это может привести к уязвимости системы безопасности, поскольку заполнение случайных данных таким образом не является таким случайным. Также могут быть проблемы с временем автономной работы, поэтому обязательно следите за производительностью, если попробуете.

Затем изучите следующую проблему Google

https://code.google.com/p/android/issues/detail?id=42265

Я узнал, что в Gingerbread действительно была проблема, как заявил инженер Google, но позже это было исправлено. И android Random и SecureRandom используют /dev/urandom

person blganesh101    schedule 16.07.2013