Android nào chạy kernel Linux nào?


Câu trả lời:


57

Phiên bản Linux trong AOSP

    Android Version    |API Level  |Linux Version in AOSP                    |Header Version
    ----------------------------------------------------------------------------------------
    1.5   Cupcake      |3          |(2.6.27)                                 |
    1.6   Donut        |4          |(2.6.29)                                 |2.6.18
    2.0/1 Eclair       |5-7        |(2.6.29)                                 |2.6.18
    2.2.x Froyo        |8          |(2.6.32)                                 |2.6.18
    2.3.x Gingerbread  |9, 10      |(2.6.35)                                 |2.6.18
    3.x.x Honeycomb    |11-13      |(2.6.36)                                 |2.6.18
    4.0.x Ice Cream San|14, 15     |(3.0.1)                                  |2.6.18
    4.1.x Jelly Bean   |16         |(3.0.31)                                 |2.6.18
    4.2.x Jelly Bean   |17         |(3.4.0)                                  |2.6.18
    4.3   Jelly Bean   |18         |(3.4.39)                                 |2.6.18
    4.4   Kit Kat      |19, 20     |(3.10)                                   |2.6.18
    5.x   Lollipop     |21, 22     |(3.16.1)                                 |3.14.0
    6.0   Marshmallow  |23         |(3.18.10)                                |3.18.10
    7.0   Nougat       |24         | 3.18.48 4.4.0                           |4.4.1
    7.1   Nougat       |25         | ?                                       |4.4.1
    8.0   Oreo         |26         | 3.18.72 4.4.83  4.9.44                  |4.10.0
    8.1   Oreo         |27         | 3.18.70 4.4.88  4.9.56                  |4.10.0
    9.0   Pie          |28         |         4.4.146 4.9.118 4.14.61         |4.15.0
   10.0   Q            |29         |                 4.9.191 4.14.142 4.19.71|5.0.3

Bảng tổng hợp từ:

Lưu ý: các bản phân phối khác của YouTube, Android của Android có thể chạy các phiên bản kernel khác nhau.

Bất cứ ai cũng được chào đón để sửa chữa và mở rộng bảng này. Hãy giữ định dạng.

Tại sao phiên bản hệ điều hành / nhân Android không khớp

Các OEM có xu hướng gửi các bản cập nhật Android chính của họ với một hạt nhân tương tự với bản mà thiết bị được phát hành ban đầu. Điều này rất có thể để tránh các vấn đề không tương thích về phần cứng và trình điều khiển với kernel mới hơn. Ví dụ: một thiết bị đã được cập nhật để chạy Android 8.0 Oreo nhưng ban đầu được phát hành với 6.0 Marshmallow vẫn có thể chạy Linux 3.18.x thay vì Linux 4.10.x.

Các yêu cầu của Bộ kiểm tra nhà cung cấp (VTS) trên phiên bản Linux

Theo một bài viết năm 2017 về XDA-Developers (rút ngắn):

Một khía cạnh đã được lên đến OEM là phiên bản nhân Linux nhưng điều này đang thay đổi với Android Oreo.

Miễn là OEM có thể vượt qua các bài kiểm tra chứng nhận mà Google đưa ra, thì họ không quan tâm phiên bản kernel nào được sử dụng trong một thiết bị mới. Điều này thường không phải là vấn đề vì hầu hết các OEM sẽ sử dụng cùng một phiên bản kernel cho thế hệ đó mà các OEM khác đang sử dụng, vì nó gắn chặt với những gì trình điều khiển phần cứng hỗ trợ. Tuy nhiên, một số đã rơi vào vết nứt và điều này bắt đầu gây ra vấn đề an ninh. Đây là điều mà Google đã thực hiện nghiêm túc gần đây vì vậy có ý nghĩa rằng họ sẽ muốn bắt đầu thực hiện điều này.

Bắt đầu từ năm nay với các điện thoại thông minh được cài sẵn Android Oreo, Google yêu cầu tất cả các SoC được sản xuất trong năm 2017 phải khởi chạy với kernel 4.4 hoặc mới hơn.

Hiện tại các thiết bị hiện có được nâng cấp lên Android Oreo chỉ được yêu cầu chạy phiên bản kernel 3.18 trở lên và sẽ không phải nâng cấp để hỗ trợ Project Treble.

Theo https://android.googlesource.com/pl platform / test / vts-testcase / kernel /, đã có một yêu cầu trên phiên bản Linux, VtsKernelConfigTest hoặc VtsKernelVersionTest, trên 8.0, 8.1 và 9.0, nhưng sau đó đã bị xóa vào ngày 10.0. Đối với 8.0 và 8.1, nó yêu cầu phiên bản phải là 3.18, 4.4 hoặc 4.9. Đối với 9.0, nó yêu cầu phiên bản tối thiểu là 4.4.107, 4.9.84 hoặc 4.14.42.

Thêm thông tin kỹ thuật và gần đây có sẵn trực tiếp từ trang web AOSP: https://source.android.com/devices/arch architecture / kernel / core-kernel-reqs


7
Không có quy tắc nhanh khó liên quan! Chẳng hạn, ICS / JB trên Zte Blade đã sử dụng kernel 2.6,35, ICS trên Sony Xperia Mini là 2,6,32 ... hãy lấy điều này bằng một nhúm muối làm hướng dẫn duy nhất :)
t0mm13b

3
Tôi hoàn toàn có thể thấy lý do tại sao các thiết bị khác nhau chạy cùng một phiên bản Android sẽ chạy các hạt nhân khác nhau, nhưng bảng này chỉ là quy tắc ngón tay cái và vâng tôi muốn một hạt muối với quy tắc ngón tay cái của tôi =)
John

3
Hãy giới hạn bảng ở đây để AOSP Android!
Robert Siemer

3
Ngoài ra, khi một thiết bị được phát hành với phiên bản Android và kernel cụ thể, và sau đó phiên bản Android được nhà sản xuất cập nhật, phiên bản kernel chủ yếu được giữ ở phiên bản ban đầu với các bản vá.
Bharat G

1
Lưu ý rằng ngay cả Google cũng không tuân theo điều này. Chỉ cần kiểm tra trình giả lập với API 26 và kernel là 3.18.56+
Roy Falk
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.