2015-06-03 15 views
59

Tôi đang sử dụng Trình quản lý SDK Android để cài đặt hình ảnh hệ thống cho Bản xem trước Android M. Tuy nhiên, tôi nhận thấy rằng có hai hình ảnh riêng biệt cho nền tảng x86.Sự khác nhau giữa hình ảnh hệ thống Intel x86 Atom và Atom_64 là gì?

enter image description here

sự khác biệt giữa hai và cái nào tôi nên chọn cho 64-bit Ubuntu 15.04 cài đặt của tôi là gì? (CPU của tôi bao gồm bộ xử lý AMD-V và nó được kích hoạt trong BIOS, trong trường hợp đó làm cho bất kỳ sự khác biệt.)

+5

AFAIK, chỉ là chúng mô phỏng các kiến ​​trúc CPU khác nhau, giống như ARM, ARM64, MIPS, v.v. – CommonsWare

+2

Không quan trọng bạn đang sử dụng máy nào làm IDE của mình. Điều này phải làm với phần cứng bạn đang mô phỏng. Vì vậy, hình ảnh Atom và Atom_64 là liệu bạn có muốn mô phỏng việc chạy ứng dụng của mình trên một thiết bị có CPU Atom hay CPU Atom 64 bit hay không. – hungryghost

+2

Có vẻ như một trong số đó là một hình ảnh CPU 32 bit, và cái kia là một hình 64 bit, –

Trả lời

47

Theo với điều này article

Với phiên bản gần đây của Google x86 64-bit Android 5.0 giả lập của nó Hình ảnh , nhà phát triển có thể tạo ứng dụng 64 bit cho các thiết bị dựa trên bộ xử lý Intel Atom .

Android 32-bit vs 64-bit

Nhiều nền tảng 64-bit ngày nay, bao gồm Solaris, AIX *, HP-UX *, Linux *, OS X *, BSD, và IBM z/OS *, sử dụng mô hình LP64. Kể từ khi Android dựa trên hạt nhân Linux, nền tảng Android 64-bit cũng sử dụng mô hình LP64.

CPU 64 bit của Intel có chế độ tương thích 32 bit. Trong khi ứng dụng 32 bit sẽ chạy trên bộ xử lý 64 bit, biên dịch với trình biên dịch tối ưu hóa 642 bitcho phép chúng tận dụng lợi thế của lợi ích kiến ​​trúc của môi trường 64 bit.

Làm thế nào để chạy các ứng dụng 64-bit trên giả lập

Tạo một thiết bị ảo Android mới (AVD) dựa trên bộ vi xử lý Atom ảnh Intel 64-bit hệ thống và mở Manager AVD trong SDK Manager hoặc ADT . Sau đó nhấp vào ‘tạo’ và điền vào các trường như trong Hình. Bây giờ bộ mô phỏng AVD 64 bit đã sẵn sàng để chạy.

enter image description here

64-Bit Android* OS

Theo mặc định, tất cả các ứng dụng 32-bit chạy mà không có một trục trặc về bộ vi xử lý 64-bit, nhưng có thể chạy chậm hơn so với các ứng dụng điều chỉnh để chạy trên bộ vi xử lý 64-bit.

Android is ready for 64-bit processing

Một trong những lợi ích chính của việc di chuyển từ 32-bit để chip 64-bit là yếu là lý thuyết ngay bây giờ: hỗ trợ cho exabyte RAM, thay hơn chỉ gigabyte. Nhưng cách xử lý chip 64 bit cũng có thể dẫn đến hiệu suất được cải thiện trong một số tác vụ.

Tóm tắt

Android với công nghệ 64-bit cho Intel Atom nền tảng bộ vi xử lý dựa trên có thể giúp các nhà phát triển để tối ưu hóa các ứng dụng của họ bây giờ. Xây dựng các ứng dụng Android cho 64-bit cũng dễ dàng như xây dựng các ứng dụng Android 32 bit truyền thống. Giờ đây, bạn có thể sử dụng trình giả lập Android 64 bit chính thức để chạy và gỡ lỗi các ứng dụng 64 bit.

Có thể bài viết này có thể giúp bạn hiểu sự khác biệt giữa hình ảnh hệ thống này.

Cập nhật

Giờ đây, Google khuyến khích sử dụng x86 emulator như bạn có thể thấy trong hình ảnh này

enter image description here

Sự khác biệt là khi sử dụng hình ảnh x86, nó bây giờ sử dụng nhanh chóng, phần cứng, ảo hóa tăng tốc trong các điều kiện thích hợp (HAXM) do đó, nó không cảm thấy như có một lớp giữa chất béo nữa.

+1

Bạn đã đề cập đến các ứng dụng "biên dịch với trình biên dịch tối ưu hóa 64 bit". Vì vậy, làm thế nào để biên dịch ứng dụng của tôi với một trình biên dịch 64-bit và đạt được một lợi thế khi chạy trong một môi trường 64-bit? –

+3

@Jorge Casariego chúng ta có nên sử dụng 'hệ thống nguyên tử intel x86' trong khi phát triển bởi AVD để có tốc độ giả lập tốt hơn không? –

9

FYI: Trong Android Studio chính thức documentation nó nói rằng "hình ảnh hệ thống x86 chạy nhanh nhất trong trình giả lập".

Tôi chưa thử 64bit, vì vậy tôi không thể thực sự nhận xét về điều đó. Có thể ai đó khác có thể.

2

tôi đã thử cả hai và x86_64 xảy ra chậm hơn một chút so với x86. những gì tôi phát hiện ra sau khi một nghiên cứu nhỏ là x86 có thể chạy trên 32 bit dựa trên bộ hướng dẫn và 64 bit dựa trong khi x86_64 chỉ chạy trên 64 bit mà cần giải mã thêm ...

bạn cũng có thể kiểm tra tại đây https://developer.android.com/ndk/guides/x86-64.html để biết thêm thông tin ..

Các vấn đề liên quan