Αρχική σελίδα » πως να » Το Android βασίζεται στο Linux, αλλά τι σημαίνει αυτό;

    Το Android βασίζεται στο Linux, αλλά τι σημαίνει αυτό;

    Το Android μπορεί να βασίζεται στο Linux, αλλά δεν βασίζεται στον τύπο του συστήματος Linux που ίσως έχετε χρησιμοποιήσει στον υπολογιστή σας. Δεν μπορείτε να εκτελέσετε εφαρμογές Android σε τυπικές διανομές Linux και δεν μπορείτε να εκτελέσετε τα προγράμματα Linux που γνωρίζετε στο Android.

    Το Linux αποτελεί το βασικό μέρος του Android, αλλά η Google δεν έχει προσθέσει όλα τα τυπικά λογισμικά και βιβλιοθήκες που θα βρείτε σε μια διανομή Linux, όπως το Ubuntu. Αυτό κάνει όλη τη διαφορά.

    "Linux" εναντίον του Linux Kernel

    Η μεγάλη διαφορά εδώ καταλήγει σε αυτό που εννοούμε με το Linux. Οι άνθρωποι χρησιμοποιούν τον όρο "Linux" για να εννοούν πολλά διαφορετικά πράγματα. Στα βασικά του, το Linux σημαίνει τον πυρήνα του Linux. Ένας πυρήνας είναι το βασικό μέρος κάθε λειτουργικού συστήματος.

    Αναφέρουμε επίσης τις διανομές Linux ως απλώς "Linux". Ωστόσο, οι διανομές του Linux δεν είναι μόνο ο πυρήνας του Linux. Περιέχουν πολλά άλλα κομμάτια λογισμικού, όπως βοηθητικά εργαλεία κελύφους GNU, γραφικό διακομιστή Xorg, επιφάνεια εργασίας GNOME, πρόγραμμα περιήγησης ιστού Firefox κ.ο.κ. Αυτός είναι ο λόγος για τον οποίο ορισμένοι πιστεύουν ότι ο όρος GNU / Linux πρέπει να χρησιμοποιείται για "διανομές Linux" όπως το Ubuntu, το Mint, το Debian, το Fedora, το Arch, το openSUSE και άλλα.

    Το Android χρησιμοποιεί τον πυρήνα του Linux κάτω από την κουκούλα. Επειδή το Linux είναι ανοικτού κώδικα, οι προγραμματιστές Android της Google θα μπορούσαν να τροποποιήσουν τον πυρήνα του Linux ώστε να ταιριάζουν στις ανάγκες τους. Το Linux δίνει στους προγραμματιστές Android έναν προ-χτισμένο, ήδη συντηρημένο πυρήνα λειτουργικού συστήματος για να ξεκινήσει έτσι ώστε να μην χρειάζεται να γράφουν τον δικό τους πυρήνα. Αυτός είναι ο τρόπος που κατασκευάζονται πολλές διαφορετικές συσκευές - για παράδειγμα, το PlayStation 4 χρησιμοποιεί τον πυρήνα FreeBSD ανοιχτού κώδικα, ενώ το Xbox One χρησιμοποιεί τον πυρήνα των Windows NT που βρίσκεται στις σύγχρονες εκδόσεις των Windows.

    Θα δείτε ακόμη και την έκδοση του πυρήνα του Linux που εκτελείται στη συσκευή σας στο πλαίσιο Πληροφορίες για το τηλέφωνο ή Σχετικά με το tablet στο Ρυθμίσεις του Android.

    Οι διαφορές

    Υπάρχει κάποια συζήτηση για το εάν το Android χαρακτηρίζεται ως "διανομή Linux". Χρησιμοποιεί τον πυρήνα του Linux και άλλο λογισμικό, αλλά δεν περιλαμβάνει μεγάλο μέρος του λογισμικού που συνήθως περιλαμβάνουν οι διανομές Linux.

    Όταν ξεκινάτε μια συσκευή Android, ο πυρήνας του Linux φορτώνεται όπως ακριβώς και σε μια διανομή Linux. Ωστόσο, μεγάλο μέρος του άλλου λογισμικού είναι διαφορετικό. Το Android δεν περιλαμβάνει τη βιβλιοθήκη GNU C (glibc) που χρησιμοποιείται σε τυπικές διανομές Linux, ούτε περιλαμβάνει όλες τις βιβλιοθήκες GNU που θα βρείτε σε μια τυπική διανομή Linux. Επίσης, δεν περιλαμβάνει διακομιστή X, όπως το Xorg, έτσι δεν μπορείτε να εκτελέσετε τυπικές γραφικές εφαρμογές Linux.

    Αντί να τρέχει τυπικές εφαρμογές Linux, το Android χρησιμοποιεί την εικονική μηχανή Dalvik για να εκτελεί ουσιαστικά εφαρμογές γραμμένες σε Java. Αυτές οι εφαρμογές απευθύνονται σε συσκευές Android και οι διεπαφές προγραμματισμού εφαρμογών (API) Android παρέχουν αντί να στοχεύουν γενικά στο Linux.

    Γιατί δεν μπορείτε να εκτελέσετε το λογισμικό Desktop Linux στο Android

    Επειδή το Android δεν περιλαμβάνει έναν γραφικό διακομιστή X ή όλες τις τυπικές βιβλιοθήκες GNU, δεν μπορείτε απλά να εκτελέσετε εφαρμογές Linux στο Android. Πρέπει να εκτελείτε εφαρμογές γραμμένες ειδικά για το Android.

    Το Android έχει ένα κέλυφος όπως αυτό που θα βρείτε στο Linux. Δεν υπάρχει τρόπος να αποκτήσετε πρόσβαση σε αυτό εκτός από το κιβώτιο, αλλά μπορείτε να εγκαταστήσετε μια εφαρμογή όπως το Emulator Terminal για να αποκτήσετε πρόσβαση σε αυτό το τερματικό περιβάλλον.

    Από προεπιλογή, δεν μπορείτε να κάνετε πολλά εδώ. Το τερματικό θα εξακολουθεί να εκτελείται σε περιορισμένο περιβάλλον, επομένως δεν μπορείτε να αποκτήσετε ένα πλήρες ριζικό κέλυφος χωρίς να ριχτείτε στη συσκευή σας Android. Πολλές τυποποιημένες εντολές που μπορεί να χρειαστείτε δεν είναι διαθέσιμες - γι 'αυτό οι άνθρωποι που ρίζα τη συσκευή γενικά εγκαθιστούν την εφαρμογή BusyBox, η οποία εγκαθιστά πολλά βοηθητικά προγράμματα γραμμής εντολών. Αυτά τα βοηθητικά προγράμματα χρησιμοποιούνται από τις εφαρμογές για να κάνουν τα πράγματα με την πρόσβαση ρίζας τους.

    Γιατί δεν μπορείτε να εκτελέσετε λογισμικό Android στο Desktop Linux

    Το Linux δεν περιλαμβάνει την εικονική μηχανή Dalvik, επομένως δεν μπορεί να εκτελεί εφαρμογές Android. Η εικονική μηχανή Dalvik και όλο το άλλο λογισμικό της Android δεν μπορούν απλά να πέσουν σε μια μηχανή Linux για υπολογιστές - θα πρέπει να κάνετε περισσότερη δουλειά για να μεταφέρετε τις εφαρμογές Android σε ένα παράθυρο σε μια τυπική επιφάνεια εργασίας μέσω του Xorg, για παράδειγμα. Θεωρητικά, με αρκετή δουλειά, οι προγραμματιστές θα μπορούσαν να κάνουν τον Dalvik να τρέχει σε επιτραπέζιο Linux, έτσι ώστε οι χρήστες desktop Linux να μπορούν να εκτελούν εφαρμογές Android στους επιτραπέζιους υπολογιστές τους. Το τώρα-αδρανές προϊόν Ubuntu για Android επιχείρησε να κάνει κάτι τέτοιο, ενσωματώνοντας το Ubuntu και το Android σε ένα τηλέφωνο και επιτρέποντας σε αυτές τις εφαρμογές Android να τρέχουν στον υπολογιστή του Ubuntu.

    Το BlueStacks και άλλοι εξομοιωτές εφαρμογών Android επιχειρούν να το κάνουν αυτό για τα Windows και Mac. Εκτελούν Android σε εικονικό υλικό σε μια εικονική μηχανή, επιτρέποντάς τους να εκτελούν εφαρμογές Android - με ποινή απόδοσης - στην επιφάνεια εργασίας σας. Αυτές οι λύσεις δεν έχουν αποδειχθεί πολύ δημοφιλείς.


    Το Chrome OS της Google βασίζεται επίσης στο Linux. Όπως το Android, το Chrome OS δεν παρέχει ένα τυπικό σύστημα παραθύρων X, επομένως οι τυπικές εφαρμογές Linux δεν μπορούν να εκτελούνται στο Chrome OS. Σε αντίθεση με το Android, το Chrome OS είναι πιο κοντά στις συνήθεις διανομές Linux για υπολογιστές, ώστε να μπορείτε να χρησιμοποιήσετε τη λειτουργία προγραμματιστών για να εγκαταστήσετε το ελλιπές λογισμικό desktop Linux.

    Image Credit: ranti στο Flickr, ανατομία και φυσιολογία του Android