2013-06-27 3 views
0

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

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

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

Я не уверен, что это связано с программированием ... – m0skit0

+0

Конечно, нам нужно лучше управлять энтропией. Почему, по-вашему, это не связано с программированием? – blganesh101

+0

Ваши вопросы более связаны с ОС, чем собственно связанные с программированием. Вы не спрашиваете об энтропии как таковой, но как управлять энтропией в конкретной ОС. ИМХО такие вопросы не связаны с программированием :) – m0skit0

ответ

0

Ну от чтения партии и помощь я получил следующую полезную информацию

во-первых, за исключением из

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 use/dev/urandom