Linux
Το Linux (Λίνουξ) είναι ένας πυρήνας λειτουργικού συστήματος που μοιάζει με τον πυρήνα του AT&T UNIX. Είναι μία πρωτότυπη υλοποίηση πυρήνα λειτουργικού συστήματος και δεν χρησιμοποιεί κώδικα του UNIX. Μπορεί να θεωρηθεί κλώνος του UNIX, αφού διαθέτει τις περισσότερες εντολές του, ενώ η φιλοσοφία της σχεδίασής του πλησιάζει περισσότερο το UNIX από οποιοδήποτε άλλο λειτουργικό σύστημα. Το Linux αναπτύσσεται με βάση το POSIX πρότυπο, το οποίο είναι μία προσπάθεια τυποποίησης όλων των κλώνων του UNIX.
Παρ' όλο που το Linux είναι ο πυρήνας του λειτουργικού συστήματος, πολλές φορές αναφερόμαστε σε αυτό εννοώντας όλο το λειτουργικό σύστημα, που περιλαμβάνει και το περιβάλλον εργασίας, και το συνοδευτικό λογισμικό (κάτι το οποίο συνήθως οδηγεί σε παρανοήσεις).
Ανάπτυξη
Η ανάπτυξη του πυρήνα Linux ξεκίνησε περίπου το 1991 από τον Φινλανδό Linus Torvalds (τότε φοιτητή ακόμη), ο οποίος με βοήθεια πολλών εθελοντών προγραμματιστών (από χόμπι ή επαγγελματίες) μέσω του Internet, κατάφερε να δημιουργήσει έναν πυρήνα που ανταγωνίζεται πυρήνες λογισμικού μεγάλων εταιριών. Αρχικά είχε σαν πρότυπο το Minix, ένα άλλο λειτουργικό τύπου Unix, το οποίο είχε αναπτύξει ο Άντριου Τάνενμπαουμ για εκπαιδευτικούς σκοπούς. Ο τελευταίος δεν επέτρεψε την τροποποίηση και επέκταση του Minix και για το λόγο αυτό, ο Τόρβαλντς δημιούργησε εξαρχής έναν πυρήνα για το αντικαταστήσει. Αρχικά ο πυρήνας αυτός ονομάστηκε FreaX (από τους όρους free και freak, με την κατάληξη X να υποδηλώνει ένα σύστημα τύπου Unix) αλλά αργότερα έλαβε την ονομασία Linux, ένα όρο που επινόησε ο Άρι Λέμκε (Ari Lemmke).
Σήμερα το Linux παρέχει όλα όσα θεωρούνται αναγκαία για ένα σύγχρονο πυρήνα λειτουργικού, όπως:
* υποστήριξη πολυεπεξεργαστικών συστημάτων (SMP)
* πραγματική πολυδιεργασία
* εικονική μνήμη
* διαμοιραζόμενες βιβλιοθήκες
* σωστή διαχείριση μνήμης
* δικτύωση μέσω TCP/IP κ.α.
* Ο πυρήνας Linux αρχικά σχεδιάστηκε για επεξεργαστές της οικογένειας x86 (386/486/Pentium), αλλά σήμερα τρέχει σε πολύ μεγάλη ποικιλία επεξεργαστών, όπως οι Alpha (64 bit), οι Motorola 68000 (Amiga), PowerPC, MIPS κ.α.
Αν και η προσπάθεια δημιουργίας του Linux πυρήνα άρχισε το 1990, η δημιουργία ενός ελεύθερου λειτουργικού συστήματος χωρίς περιορισμούς στον τελικό χρήστη, είχε ξεκινήσει παλαιότερα από τον Ρίτσαρντ Στώλλμαν, ιδρυτή του Free Software Foundation και του GNU project. Έτσι, το Linux είχε στο ξεκίνημά του ένα ολόκληρο σύστημα να βασιστεί. Το GNU σχέδιο είχε ήδη δημιουργήσει ένα C μεταγλωττιστή (τον gcc) και μια πλειάδα υψηλής ποιότητας προγραμματιστικών εργαλείων, ενώ είχε έτοιμα προγράμματα που αντικαθιστούσαν όλα τα βασικά προγράμματα σε ένα *NIX σύστημα. Το μόνο που έλειπε ήταν ένας σταθερός πυρήνας. Έτσι το GNU βρήκε έναν πυρήνα για να λειτουργήσει, και το Linux βρήκε έτοιμη μια μεγάλη ποικιλία προγραμμάτων. (Το GNU σχέδιο συνεχίζει σήμερα και με το υπό κατασκευή λειτουργικό σύστημα, Hurd, το οποίο βασίζεται στον μικροπυρήνα Mach)
Διανομές
Το Linux είναι το πιο επιτυχημένο από τα ελεύθερα λειτουργικά συστήματα με βάση τη δημοτικότητα και τον αριθμό των εφαρμογών που αναπτύσσονται για αυτό. Στην καθιέρωσή του βοήθησε το γεγονός ότι ο πυρήνας του λειτουργικού συστήματος συνοδεύτηκε από τα GNU tools, μια συλλογή ελεύθερων εργαλείων αναπτυγμένων από το πρόγραμμα GNU για το λειτουργικό GNU Hurd που δεν ολοκληρώθηκε, προσφέροντας έτσι ένα σχετικά ολοκληρωμένο περιβάλλον εφαρμογών.
Έκτοτε, διάφορες εταιρείες και εθελοντές κατασκεύασαν και οργάνωσαν διανομές, δηλαδή συλλογές προγραμμάτων που συνοδεύουν έναν πυρήνα Linux. Μια διανομή αποτελείται συνήθως:
* από έναν πυρήνα Linux, το τμήμα του λειτουργικού δηλαδή που αναλαμβάνει το καθαρά "υπολογιστικό" μέρος της λειτουργίας και την επικοινωνία hardware-software
* ένα γραφικό περιβάλλον, συνήθως το X Window System, για την "παραθυροποίηση" της λειτουργίας του υπολογιστή
* ένα περιβάλλον εργασίας χρήστη όπως Gnome, KDE, Xfce κλπ που οργανώνει την αλληλεπίδραση χρήστη-υπολογιστή
* μια συλλογή εφαρμογών και προγραμμάτων
Σήμερα υπάρχουν πολλές διαφορετικές διανομές που καλύπτουν διαφορετικές ανάγκες. Ορισμένες υποστηρίζονται στην ανάπτυξη και την τεχνική υποστήριξη από εταιρίες, (όπως π.χ. το Suse από τη Novell, το Ubuntu από την Canonical) ενώ άλλες μπορεί να βασίζονται στη δουλειά ακόμα και ενός ατόμου (όπως π.χ. το Sabayon Linux). Σχεδόν όλες οι διανομές όμως, ανεξάρτητα από τον κύριο υποστηρικτή, διαθέτουν κοινότητες εθελοντών χρηστών που ασχολούνται με την ανάπτυξη και την βελτιστοποίηση της κάθε διανομής.
Μερικές χαρακτηριστικές διανομές είναι:
* Debian GNU/Linux: Οργανωμένο από μια ομάδα εθελοντών, και είναι η διανομή με τα περισσότερα πακέτα σήμερα. Η διανομή που αποτελείται μόνο από ελεύθερα πακέτα.
* Ubuntu : Από τις πιο δημοφιλείς διανομές αυτή τη στιγμή. Βασίζεται στο Debian και είναι πολύ φιλική προς το χρήστη, ενώ επιτρέπει και την εγκατάσταση μη-ελεύθερων προγραμμάτων οδήγησης.
* PClinuxOS: Δομημένο ούτως ώστε να προσφέρει ευκολότερο χειρισμό. Έχει αρχίσει να γίνεται πολύ δημοφιλές στην κοινότητα του Λίνουξ.
* Knoppix Linux: Live διανομή, που δεν χρειάζεται εγκατάσταση αλλά λειτουργεί απ'ευθείας από το CD, που βασίζεται στο Debian. Πολύ χρήσιμη διανομή σε περιπτώσεις ανάκτησης δεδομένων όταν το κυρίως λειτουργικό σύστημα του υπολογιστή δεν μπορεί να ξεκινήσει. Η ελληνική διανομή βασισμένη στο Knoppix Linux είναι το Knoppel Linux.
* Damn Small Linux: Ακόμα μια διανομή βασισμένη στο Knoppix Linux που καταλαμβάνει μόνο 50MB χώρου και περιλαμβάνει πλήρες σετ εφαρμογών. Λόγω της ταχύτητας της μπορεί να χρησιμοποιηθεί άνετα σε παλιούς υπολογιστές.
* Slackware Linux: Το αγαπημένο αυτών που ξεκίνησαν με το Linux στις αρχές της δεκαετίας του '90. Είναι η διανομή που έκανε το Linux αγαπητό στους διαχειριστές συστημάτων.
* Redhat Linux: μία από τις πρώτες εταιρείες που αντιμετώπισαν σοβαρά το Linux. Σήμερα κατέχει ένα μεγάλο ποσοστό της αγοράς. Διατίθεται μόνο σε εμπορική, μη-ελεύθερη έκδοση.
* Fedora Core: Διανομή που προήλθε από το Redhat Linux και υποστηρίζεται από τη Redhat. Λειτουργεί ως δοκιμαστικό πεδίο για τις σταθερές εκδόσεις του Redhat Linux αλλά αποτελεί και η ίδια μια πολύ σταθερή και στιβαρή διανομή. Σε αντίθεση με το Redhat Linux διατίθεται ελεύθερα προς χρήση.
* SuSe Linux: Έγινε ιδιαίτερα δημοφιλής λόγω της φιλικότητάς της προς τον χρήστη και των πολλών πακέτων που διαθέτει.
* Mandriva Linux: Βασισμένο στο Redhat, αλλά με ιδιαίτερα προσεγμένο γραφικό περιβάλλον. Μέχρι πρότινος ήταν γνωστό ως Mandrake.
* Gentoo Linux: Διανομή που μπορεί να παραμετροποιηθεί στο έπακρο αφού όλα τα προγράμματα, αλλά και το ίδιο το λειτουργικό, μπορούν να "χτίζονται" κατά την εγκατάσταση τους. Γι' αυτό το λόγο αποτελεί μια από τις ταχύτερες διανομές.