시더 엔트로피 생성기를 사용하여 Nexus 7 및 기타 기기의 게임 지연을 줄입니다.

업데이트: 의심스러운 이익과 본질적인 단점으로 인해 사용자가 읽어볼 것을 권장합니다. 이 설명 계속하기 전에.

일부 최고 수준의 하드웨어에도 불구하고 일부 고급 Android 장치 여전히 일부 게임에 문제가 있는 것 같습니다.. 이러한 지연 문제를 해결하기 위한 모드가 있습니다. 근본적인 원인은 일반적으로 프로세서가 전체 용량으로 작동하지 않는 일부 문제와 동일하기 때문입니다. 이제 새로운 수정 사항이 있습니다. 넥서스 7 게임 지연을 줄이는 데 도움이 되는 장치입니다.

XDA 수석 회원 Lambgx02 원래는 다양한 Android 기기에서 지연을 막기 위해 Seeder Entropy Generator를 게시했습니다. 실행 전제는 대부분의 게임 지연이 엔트로피로 인해 발생한다는 것입니다. Lambgx02는 다음과 같이 설명합니다.

그래서 저는 우리 모두가 때때로 그렇듯이 상당한 지연을 경험했고, 그 원인을 파악하기로 결정했습니다.

몇 시간 동안 추적하고 디버깅한 끝에 Android 지연의 90% 원인을 발견했습니다. 한마디로 엔트로피(또는 엔트로피 부족)입니다.

Sun과 마찬가지로 Google의 JVM도 /dev/random에서 읽습니다. 모든 무작위 데이터의 경우. 예, 매우 제한된 엔트로피 풀을 사용하는 /dev/random입니다.

무작위 데이터는 모든 종류의 작업에 사용됩니다. UUID 생성, 세션 키, SSL.. 엔트로피가 부족하면 프로세스가 차단됩니다. 이는 지연으로 나타납니다. 커널이 더 높은 품질의 무작위 데이터를 생성할 때까지 프로세스를 계속할 수 없습니다.

그래서 rngd를 크로스 컴파일하고 이를 사용하여 1초 간격으로 /dev/urandom을 /dev/random에 공급했습니다.

이 문제를 해결한 결과 게임이 훨씬 더 원활하게 실행됩니다. XDA 인정 기여자 브래드먼117 테스트를 거쳐 Nexus 7에서 작동하는지 확인했으며 더 많은 사용자가 볼 수 있는 곳에 게시했습니다. 지금까지 사용자들은 훌륭한 결과를 보고했습니다. 복구 시 플래시하는 간단한 zip이므로 설치도 쉽습니다.

그러나 실제로 시도하기로 결정했다면 다음 사항에 유의하십시오. 아주 현실적인 주의사항 열악한 난수 생성으로 인해 보안이 저하되고, 배터리 수명도 단축됩니다. Lambgx02에 명시된 바와 같이 :

  • /dev/urandom을 /dev/urandom으로 시드하면 무작위 데이터의 품질이 저하된다는 점에서 (이론적인) 보안 위험이 있습니다. 실제로 이것이 암호학적으로 악용될 가능성은 다음과 같습니다. 멀리 누군가가 OS 자체를 공격할 확률보다 낮습니다(훨씬 간단한 문제).
  • 매초마다 깨어나므로 배터리 수명에 부정적인 영향을 미칠 수 있습니다. wakelock을 유지하지 않으므로 큰 영향은 없지만 문제가 발생한다고 생각되면 알려주시기 바랍니다. 화면이 켜져 있는 동안에만 실행되도록 코드에 차단 읽기를 추가할 수 있습니다. 반면에 우리 중 많은 사람들은 지연이 CPU 성능 부족 때문이라고 생각합니다. 이 해킹은 거의 모든 지연을 제거하므로 오버클럭할 필요가 적어 잠재적으로 배터리 소모가 줄어듭니다.

Lambgx02는 다음과 같은 이유로 악용될 위험이 있다고 명시하고 있습니다. 무작위 -> 무작위의 시딩이 낮고, 우리 책에 나오는 일일 구동 장치에는 위험 증가가 너무 큽니다. 하지만 관심 있는 모든 분들은 잠재적인 위험 때문에 다시 생각해 보시길 권합니다. 그러나 우리는 암호화 강도가 그다지 중요하지 않은 엄격하게 통제된 환경에서 일부 사람들이 이 기능을 시도하려는 이유를 이해합니다. 더 많은 내용을 보려면 다음을 확인하세요. 넥서스 7 스레드 뿐만 아니라 원래 스레드.