Cosa si intende per sistema operativo basato su Linux? In che modo Android OS è basato su Linux?

I termini sono ambigui per cominciare.

Un sistema operativo basato su Linux ha una visione centrata sul kernel della piattaforma, che per la maggior parte è ragionevole, ma sostenendo che ci sono sistemi operativi basati su XOrg o Wayland (che hanno una visione centrata su X-Windows).

Android è la piattaforma, si dà il caso che abbia Linux come kernel. Non c'è un sistema operativo Android.

Quindi, per rispondere direttamente alla tua domanda, Linux è solo un kernel. È l'astrazione in cima all'hardware che presenta un'API relativamente standard al software superiore.

La maggior parte delle API di Linux sono lì, così di conseguenza si può prendere un dispositivo Android e distribuire applicazioni Linux su di esso. Questo rende Android molto familiare agli sviluppatori Linux che possono eseguire strumenti come strace.

Le vere API centrate sull'utente di Android non sono le API a livello di chiamata di sistema di Linux, sono i framework delle applicazioni, che sono effettivamente Java.

main-qimg-77493a00beabdf02ab27488dd46bfab1.webp

Quindi le applicazioni sono fortemente astratte dal kernel Linux. La maggior parte degli ambienti "Linux" operano al primo livello blu e giallo. cioè: parlano nativamente con il kernel per alcune operazioni e nativamente con varie librerie.

Arguably Android potrebbe essere portato su Gnu Hurd o BSD altrettanto facilmente di Linux. E per i primi giorni di Android, si potrebbe sostenere che le parti critiche di Android' il kernel Linux era davvero un fork (per esempio wakelocks).