最終更新:2021-10-15 (金) 11:14:37 (896d)
Android/Linuxカーネル
https://android.googlesource.com/
https://source.android.com/devices/architecture/kernel/
カーネル設定
Android 9
- the minimum LTS kernel version requirements are Linux 4.4.107, Linux 4.9.84, and Linux 4.14.42.
- https://source.android.com/devices/architecture/kernel/modular-kernels#core-kernel-requirements
Android/Linuxカーネル/バージョン
- http://forum.xda-developers.com/wiki/Android/Build_Numbers
- Android/Linux 3.10
- Android/Linux 3.4
Linuxのカーネルから増えてる分
- AOSP/Linuxカーネル/android?
AOSP
- Nexusデバイス向けのカーネルはprebuiltのものがAOSPに含まれている。
AOSP/device/asus/flo-kernel Nexus 7 (2013) AOSP/device/htc/flounder-kernel? Nexus 9 AOSP/device/lge/hammerhead-kernel? Nexus 5 AOSP/device/asus/fugu-kernel? Nexus Player
ソースコード
- Androidのソースコードとは別に管理されている (Android/ソースコード)
違い
デバイス別
$ git clone https://android.googlesource.com/kernel/common.git $ git clone https://android.googlesource.com/kernel/exynos.git $ git clone https://android.googlesource.com/kernel/goldfish.git $ git clone https://android.googlesource.com/kernel/msm.git $ git clone https://android.googlesource.com/kernel/omap.git $ git clone https://android.googlesource.com/kernel/samsung.git $ git clone https://android.googlesource.com/kernel/tegra.git
関連
ビルド済み
- ICSではビルド時間削減のためにカーネルのソースコードがツリーになく、あらかじめビルドされたバイナリ形式で提供されている。
- AOSP/deviceのデバイスごとのフォルダに含まれている
Android/Linuxカーネル/ビルド
違い
- AndroidではIPCが禁止され、その代替としてBinderが採用されている (インテントの基礎)
- http://elinux.org/Android_Kernel_Features#List_of_kernel_features_unique_to_Android
- LowMemoryKiller
- logcat
- Binder
- ashmem
- pmem?
- WakeLock
メーカー別
Linaro
Android SDK
- カーネルはLinux 2.6.29ベース
- Android/proc/config.gzでビルドオプションを確認可能。
- Android/APIレベル
- goldfish