Native Linux on Android's SOCs



  • I wanted to know for quite some time why linux operating systems are not ported to phones or tablets SOCs with android? Like how they are on desktops and laptops.

    I know linux can run on various devices with different CPU architectures, I use linux daily, and android uses a modified linux kernel so why it is so hard to run some linux OS natively on an android based device?

    We have projects like https://andronix.app/ , https://play.google.com/store/apps/details?id=com.termux and https://github.com/meefik/linuxdeploy but even with chroot that's not natively. I even played with them but they are limited. For example, hardware devices access like GPU is very problematic (e.g. use hardware acceleration).



  • The main reason:

    There is no revenue-generating stream for Linux on smartphones in comparison to Android.


    Technical reasons, which can't be solved without heavy investments

    Just porting Linux to SoC is not enough. Linux is only a kernel.

    • You will need to develop a distro suitable for a smartphone.

    • Android = 1. AOSP + 2. patches and blobs from SoC vendor + 3. user apps`

    Patches and blobs from SoC vendor

    #2 in the equation has restricted access. SoC vendors don't share internal details even with OEMs, only providing a minimum description for available APIs. Typical Android-capable SoC has a lot of proprietary peripheral modules (such as mentioned GPU or Audio, Image processing, radio modules). Some of them require OS drivers, others even specific complex FW with a separate OS. Even for some desktop peripherals, this factor blocks Linux support.


    Existing attempts

    There were attempts to develop an open-source smartphone. As we can see, they didn't get widespread till the moment, and some of the projects were discontinued. The main reason is the same: the model didn't prove its sustainability.




Suggested Topics

  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2