Android SDK Manager를 사용하여 Android M Preview 용 시스템 이미지를 설치하고 있습니다. 그러나 x86 플랫폼에 대해 두 개의 개별 이미지가 있음을 알았습니다.
이 둘의 차이점은 무엇이며 64 비트 Ubuntu 15.04 설치를 위해 어떤 것을 선택해야합니까? (내 CPU에는 AMD-V가 포함되어 있으며 차이가있을 경우 BIOS에서 활성화됩니다.)
Android SDK Manager를 사용하여 Android M Preview 용 시스템 이미지를 설치하고 있습니다. 그러나 x86 플랫폼에 대해 두 개의 개별 이미지가 있음을 알았습니다.
이 둘의 차이점은 무엇이며 64 비트 Ubuntu 15.04 설치를 위해 어떤 것을 선택해야합니까? (내 CPU에는 AMD-V가 포함되어 있으며 차이가있을 경우 BIOS에서 활성화됩니다.)
답변:
이 기사 에 따르면
Google의 최신 x86 64 비트 Android 5.0 에뮬레이터 이미지 릴리스를 통해 개발자는 Intel Atom 프로세서 기반 장치 용 64 비트 앱을 만들 수 있습니다.
Android 32 비트 대 64 비트
오늘날 Solaris, AIX *, HP-UX *, Linux *, OS X *, BSD 및 IBM z / OS *를 포함한 많은 64 비트 플랫폼은 LP64 모델을 사용합니다. Android는 Linux 커널을 기반으로하기 때문에 Android 64 비트 플랫폼도 LP64 모델을 사용합니다.
Intel 64 비트 CPU에는 32 비트 호환 모드가 있습니다. 32 비트 애플리케이션은 64 비트 프로세서에서 실행되지만 64 비트 최적화 컴파일러로 컴파일하면 64 비트 환경의 아키텍처 이점을 활용할 수 있습니다 .
에뮬레이터에서 64 비트 앱을 실행하는 방법
Intel Atom 프로세서 64 비트 시스템 이미지를 기반으로 새 AVD (Android Virtual Device)를 만들고 SDK Manager 또는 ADT에서 AVD Manager를 엽니 다. 그런 다음 '생성'을 클릭하고 그림과 같이 필드를 채 웁니다. 이제 64 비트 AVD 에뮬레이터를 실행할 준비가되었습니다.
기본적으로 모든 32 비트 응용 프로그램은 64 비트 프로세서에서 결함없이 실행되지만 64 비트 프로세서에서 실행되도록 조정 된 응용 프로그램보다 느리게 실행될 수 있습니다.
32 비트에서 64 비트 칩으로 전환 할 때 얻을 수있는 주요 이점 중 하나는 현재 거의 이론적입니다. 즉, 단순한 기가 바이트가 아닌 엑사 바이트의 RAM 지원입니다. 그러나 64 비트 칩이 메모리를 처리하는 방식은 일부 작업에서 성능을 향상시킬 수도 있습니다.
요약
Intel Atom 프로세서 기반 플랫폼을위한 64 비트 기술이 적용된 Android는 개발자가 현재 애플리케이션 을 최적화하는 데 도움이 될 수 있습니다 . 64 비트 용 Android 애플리케이션을 빌드하는 것은 기존의 32 비트 Android 애플리케이션을 빌드하는 것만 큼 쉽습니다. 이제 공식 Android 64 비트 에뮬레이터를 사용하여 64 비트 앱을 실행하고 디버깅 할 수 있습니다.
이 기사가이 시스템 이미지의 차이점을 이해하는 데 도움이 될 수 있습니다.
최신 정보
Google은 이제이 이미지에서 볼 수있는 것처럼 x86 에뮬레이터를 사용하는 것이 좋습니다.
차이점은 x86 이미지를 사용할 때 이제 올바른 조건 ( HAXM ) 에서 빠른 하드웨어 가속 가상화를 사용 하므로 더 이상 중간 계층이없는 것처럼 느껴지지 않습니다.
intel x86 atom system image
에뮬레이터 속도를 높이기 위해 AVD로 개발 하는 동안 사용해야 합니까?
참고 : 공식 Android Studio 문서 에는 "x86 시스템 이미지가 에뮬레이터에서 가장 빠르게 실행됩니다."라고 나와 있습니다.
나는 64 비트를 시도하지 않았기 때문에 그것에 대해 정말로 언급 할 수 없다. 다른 사람이 할 수 있습니다.
나는 둘 다 시도했고 x86_64는 x86보다 약간 느립니다. 약간의 연구 끝에 x86은 32 비트 기반 명령어 세트와 64 비트 기반에서 실행될 수있는 반면 x86_64는 64 비트에서만 실행되며 더 많은 디코딩이 필요하다는 것을 알게되었습니다.
자세한 내용은 https://developer.android.com/ndk/guides/x86-64.html 에서 확인할 수도 있습니다 .