Hacker News new | past | comments | ask | show | jobs | submit login

Hardly, given how the Linux kernel is an implementation detail, Linux drivers are considered legacy (all modern drivers should be in userspace since Treble, written in Java/C++/Rust), and the NDK doesn't expose Linux APIs as stable interface.

So not something to build GNU/Linux distributions on top of.




The drivers in userspace are part of the GKI initiative[0], not Treble [1]. Treble deals with separation between Vendor, System and OEM. It establishes a process (CTS & VTS tests) to ensure system components (HALs) stay compatible with whatever updates Google makes to Android, but it deals with the base Android, not the Kernel specifically.

[0] - https://source.android.com/docs/core/architecture/kernel/gen...

[1] - https://android-developers.googleblog.com/2017/05/here-comes...


Historically, Treble predates GKI, created after OEMs disregarded Treble, as Google had the clever idea to leave Treble updates as optional for OEMs.

> Binderized HALs. HALs expressed in HAL interface definition language (HIDL) or Android interface definition language (AIDL). These HALs replace both conventional and legacy HALs used in earlier versions of Android. In a Binderized HAL, the Android framework and HALs communicate with each other using binder inter-process communication (IPC) calls. All devices launching with Android 8.0 or later must support binderized HALs only.

https://source.android.com/docs/core/architecture/hal

GKI only became a thing in Android 12 to fix Treble adoption issues, as you can also easily check, and GSI was introduced in Android 9, after userspace drivers became a requirement in Android 8 as per link above.

https://arstechnica.com/gadgets/2017/05/ars-talks-android-go...

https://arstechnica.com/gadgets/2021/11/android-12-the-ars-t...




Consider applying for YC's Summer 2025 batch! Applications are open till May 13

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: