Dalvik 캐시 란 무엇입니까?


27

사용자 정의 ROM을 설치할 때는 Dalvik 캐시를 지우는 것이 좋습니다. Dalvik 캐시 란 정확히 무엇입니까?

답변:


27

Dalvik 캐시는 저장된 .dex 파일 세트입니다. .dex 파일은 기본적으로 Android 앱이 실행되는 Dalvik Virtual Machine 용으로 작성된 컴파일 된 바이트 코드 버전의 앱입니다. Java Virtual Machine과 유사하며 .class 파일을 저장했습니다.


Dalvik 캐시를 지운 상태로 새로 설치된 ROM 이 처음 부팅하는 데 시간 이 오래 걸리는 것이 정상 입니까? ParanoidAndroid는 확실히 달콤한 시간을 보내고 있기 때문입니다. 5 분 이요
badp

1
@ badp Yep, 내 첫 번째 부츠는 종종 다양한 ROM이있는 오래되었습니다. 뭔가 잘못되었다고 가정하기 전에 너무 오래주지 않았습니다.
Matthew 읽기

4

에서 찾을 매우 통찰력있는 정보 dalvik-cache에서 유래 평판 소스 (달빅 가상 머신 플랫폼에서 일 구글의 직원)에서.

아래는 (단순히) 간단한 단어로 안드로이드 사용자의 관점에서 더 요약됩니다.

dalvik-cache는 내 Android 기기에서 어디에 있습니까?

일반적인 Android 기기에는이라는 디렉토리가 dalvik-cache있습니다. Android는 Linux를 기반으로하므로 Linux 커널의 파일 시스템 구조를 사용합니다. 따라서이 디렉토리는 /data폴더에 있습니다. 따라서 Android 기기에서이 Dalvik 캐시에 액세스하는 경로는/data/dalvik-cache

Dalvik 캐시의 목적은 무엇입니까?

사용자가 Android에 새 애플리케이션을 설치하면 Android는 해당 애플리케이션 dex파일 ( 애플리케이션의 모든 달빅 바이트 코드가 포함 된 파일) 에서 일부 수정 및 최적화를 수행합니다 . 그런 다음 디렉토리 odex에 결과 (최적화 된 dex) 파일 을 캐시 /data/dalvik-cache하므로 애플리케이션을로드 할 때마다 최적화 프로세스를 수행 할 필요가 없습니다.

Dalvik Cache를 지우면 어떻게됩니까?

앱이 다시 빌드 될 때 앱의 다음로드 시간을 늘리는 것 외에 다른 효과는 없습니다. 따라서 애플리케이션은 Dalvik Cache를 다시 빌드해야하므로로드하는 데 시간이 더 걸립니다. 따라서, dalvik-cache시스템이 새로운 파티션으로이를 재 구축 할 것이기 때문에, 커스텀 ROM을 설치할 때 지워도됩니다.

추가 참고 사항 인 Android 4.4 (KitKat) 부터 Google은 ART 라는 새로운 Android 런타임을 도입 하여 궁극적으로 Dalvik Virtual 시스템을 대체 할 것입니다. 출처

동일한 바이트 코드와 .dex파일 을 사용하는 ART 는 dex 파일을 기본 코드로 컴파일합니다. 컴파일 된 코드는 현재 저장되어 있습니다dalvik-cache

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.