Βασικά για το Linux

Από Κοινότητα Ελεύθερου Λογισμικού ΕΜΠ
Μετάβαση σε: πλοήγηση, αναζήτηση

Τι είναι το Linux;

Το Linux (προφέρεται Λίνουξ και όχι στον πληθυντικό) είναι ένας ελεύθερος πυρήνας λειτουργικού συστήματος τύπου UNIX. Αρχικά δημιουργήθηκε από τον Linus Torvalds στο Πανεπιστήμιο του Helsinki το 1991 και αναπτύσσεται από εθελοντές που συνεργάζονται μέσω του διαδικτύου. Συνήθως με τον όρο Linux αναφερόμαστε σε ένα πλήρες λειτουργικό σύστημα χτισμένο γύρω από αυτόν τον πυρήνα.

Τι είναι όμως πυρήνας και ποια η διαφορά του από το λειτουργικό;

O πυρήνας είναι η καρδιά του λειτουργικού συστήματος. Μεσολαβεί μεταξύ των υπόλοιπων προγραμμάτων και του hardware. Μοιράζει τον επεξεργαστή μεταξύ των διεργασιών που εκτελούνται, διαχειρίζεται τη μνήμη, είναι υπεύθυνος για το δίκτυο, το σύστημα αρχείων, επικοινωνεί με τα μέσα αποθήκευσης και τις περιφερειακές συσκευές.

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

Το GNU πάλι τι είναι;

Το GNU (GNU 's Not Unix) (προφέρεται "γκνου") ξεκίνησε από τον Richard Stallman ως μια προσπάθεια να γραφτεί ένα πλήρες, ελεύθερο λειτουργικό σύστημα τύπου UNIX, εκ του μηδενός. Τα βασικά του τμήματα με εξαίρεση τον πυρήνα είχαν υλοποιηθεί όταν εμφανίστηκε το Linux. Ο πυρήνας Linux σε συνδυασμό με κομμάτια του GNU, όπως ο compiler GCC, η Glibc (βιβλιοθήκη της C), το κέλυφος Bash και αρκετά μικρότερα αποτελούν ένα πλήρες λειτουργικό σύστημα. Πολλοί επιμένουν στην ονομασία GNU/Linux για το λειτουργικό για τεχνικούς και πολιτικούς λόγους. Το σύστημα στη μορφή που οραματίστηκε αρχικά ο Stallman υλοποιείται με τη βοήθεια ενός άλλου (ακόμα ανολοκλήρωτου) πυρήνα, του GNU Hurd∞.

Γιατί υπάρχουν πολλά Linux;

Στην πραγματικότητα υπάρχουν πολλές διανομές του Linux. Η διανομή περιλαμβάνει το λειτουργικό σύστημα (στην συντριπτική πλειοψηφεία GNU/Linux) αλλά και εφαρμογές που δεν ανήκουν αυστηρά σε αυτό, όπως ένα γραφικό περιβάλλον, ένας web browser, μια σουίτα γραφείου. Η διανομή παρέχει έναν εύκολο τρόπο αρχικής εγκατάστασης, αναβάθμισης και διαχείρισης του λειτουργικού και τον προγραμμάτων.

Υπάρχουν πολλές διανομές του Linux γιατί υπάρχουν διαφορετικοί άνθρωποι και διαφορετικές ανάγκες. Απευθύνονται σε desktop συστήματα ή σε εξυπηρετητές, σε αρχάριους ή έμπειρους χρήστες, έχουν διαφορετικό προεπιλεγμένο περιβάλλον, περιλαμβάνουν διαφορετικά προγράμματα στη βασική εγκατάσταση και παρέχουν διαφορετικό τρόπο εγκατάστασης προγραμμάτων - διαχείρισης πακέτων (για παράδειγμα από πηγαίο κώδικα ή έτοιμα binary πακέτα).

Φυσικά οποιοδήποτε πρόγραμμα μπορεί να τρέξει σε οποιαδήποτε διανομή αρκεί να καλύπτονται οι εξαρτήσεις, να υπάρχουν δηλαδή οι απαιτούμενες βιβλιοθήκες. Δεν πρόκειται δηλαδή για διαφορετικά λειτουργικά συστήματα.

Έχει γραφικό περιβάλλον;

Το Linux από μόνο του όχι γιατί είναι μόνο ένας πυρήνας. Πάνω από αυτόν ωστόσο μπορεί να εκτελεστεί γραφικό περιβάλλον, με πιο διαδεδομένο το X11 Window System (απλά Χ), στις περισσότερες διανομές η υλοποίηση της ομάδας Xorg. Το X είναι εκ φύσεως κατασκευασμένο για δικτυακή λειτουργία, δηλαδή ένα πρόγραμμα μπορεί να εκτελείται σε διαφορετικό υπολογιστή από αυτόν στον οποίο εμφανίζεται.

To X ωστόσο περιλαμβάνει μόνο τις χαμηλού επιπέδου λειτουργίες. Το κενό καλύπτεται σε πρώτη φάση από τους διαχειριστές παραθύρων (window managers) και έπειτα από τα διαφορετικά περιβάλλοντα εργασίας (desktop environments) που παρέχουν λειτουργίες όπως οι γραμμές εργασιών, τα εικονίδια στην επιφάνεια εργασίας ή ο διαχειριστής αρχείων. Δημοφιλέστερα περιβάλλοντα είναι το Gnome, το KDE και το XFCE, τα οποία έχουν ξεπεράσει σε φιλικότητα και δυνατότητες τα περιβάλλοντα των εμπορικών λειτουργικών συστημάτων.

Σε ποιόν ανήκει;

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

Σε ποιον απευθύνεται;

Είναι διαδεδομένη η εντύπωση ότι το GNU/Linux δεν ενδείκνυται για χρήστες χωρίς ιδιαίτερες γνώσεις υπολογιστών, λόγω της δυσχρηστίας του και της έλλειψης εφαρμογών και υποστήριξης υλικού. Τα παραπάνω ίσως είχαν κάποια βάση στο παρελθόν αλλά δεν ισχύουν πλέον και το GNU/Linux είναι πλέον ολοκληρωμένο desktop λειτουργικό σύστημα.

Φυσικά οι δυνατότητες του δεν περιορίζονται εκεί. Το Linux είναι κατάλληλο για σταθμούς εργασίας, εξυπηρετητές (web, mail, ftp κλπ), routers, firewalls κλπ λόγω της πληθώρας δικτυακών χαρακτηριστικών, συστοιχίες υπολογιστών (clusters), embedded εφαρμογές. Μπορεί να χρησιμοποιηθεί σε πάνω από 20 αρχιτεκτονικές υπολογιστών (x86, x86-64, ppc, sparc, alpha, mips κλπ).

Ταυτόχρονα δίνει τη δυνατότητα στον έμπειρο χρήστη να επέμβει σε κάθε πλευρά της λειτουργίας του (ακόμα και στον πηγαίο κώδικα) και να το παραμετροποιήσει σύμφωνα με τα γούστα ή τις ανάγκες του.

Τι είναι το UNIX και τι σχέση έχει με το Linux;

Το UNIX είναι ένα λειτουργικό σύστημα η εξέλιξη του οποίου ξεκίνησε στα τέλη της δεκαετίας του 1960 από τα Bell Labs. Είχε επαναστατικά για την εποχή του χαρακτηριστικά, όπως υποστήριξη για πολλούς χρήστες (multi-user) και πολλές διεργασίες ταυτόχρονα (multi-tasking), ενώ είναι άρρηκτα δεμένο με τη γλώσσα C. Το UNIX αναπτύχθηκε από πανεπιστήμια (κυρίως το Βerkeley) και εταιρίες (AT&T). Κατά τη δεκαετία του 80 υπήρχαν δύο βασικές παραλλαγές, το BSD (Berkeley Software Distribution) και το ΑΤ&Τ. Από τα δύο αυτά συστήματα προέκυψε η τωρινή πολυάριθμη οικογένεια UNIX συστημάτων, με πλέον διαδεδομένα τους ελεύθερους απογόνους του BSD (FreeBSD, OpenBSD, NetBSD) και το Solaris.

Σήμερα ο όρος UNIX αναφέρεται κυρίως σε ένα πρότυπο για τις κλήσεις συστήματος (Unix API) και άλλα στοιχεία του λειτουργικού (POSIX) και σε ένα trademark του Open Group. Το Linux είναι κλώνος του UNIX, μοιράζεται τα περισσότερα χαρακτηριστικά του, υπακούει στο POSIX πρότυπο σε πολύ μεγάλο ποσοστό, αλλά δεν είναι UNIX με την έννοια ότι έχει γραφτεί εκ του μηδενός και δεν μοιράζεται κώδικα με αυτό. Είναι συμβατό με άλλα UNIX λειτουργικά σε επίπεδο API∞.

Το Linux δημιουργήθηκε για να αντικαταστήσει τα Windows;

Όχι, αυτό θα είναι απλά μια ευχάριστη συνέπεια. :)