linux_kernel

17/ 09/ 1991 | Linux kernel

ΣΑΝ ΣΗΜΕΡΑ 17 Σεπτεμβρίου 1991, η πρώτη έκδοση 0.01 του Linux kernel (πυρήνα) ανεβαίνει στον FTP server του Πανεπιστημίου του Ελσίνκι. Σχεδιασμένος από τον Λίνους Τόρβαλντς, ο πρωταρχικός πυρήνας του Linux καταλαμβάνει μόλις 64 ΚΒ.

Έτσι, μπαίνουν τα θεμέλια του Linux, του διάσημου «ανοικτού» λειτουργικού συστήματος που είναι βασισμένο στο UNIX, ο σχεδιασμός του οποίου έχει ξεκινήσει ο Τόρβαλντς από τον Απρίλιο του 1991, ως χόμπι! Σύμφωνα με μήνυμα που είχε ανεβάσει ο ίδιος σε ένα newsgroup του Usenet τον Αύγουστο του 1991:

Λίνους Τόρβαλντς

Φτιάχνω ένα (δωρεάν) λειτουργικό σύστημα (μόνο για χόμπι, και δεν θα είναι μεγάλο και επαγγελματικό σαν το GNU) για κλώνους 386(486) ΑΤ. Αυτό μαγειρεύεται από τον Απρίλιο και όπου να’ ναι θα είναι έτοιμο. Ζητώ ενημέρωση για όσα αρέσουν και δεν αρέσουν στο MINIX, καθώς και το δικό μου OS το θυμίζει κάπως (κοινή φυσική διάταξη του συστήματος αρχείων -για πρακτικούς λόγους- ανάμεσα στα άλλα).
(…) Είναι κυρίως προγραμματισμένο σε C και χρησιμοποιεί κάθε χαρακτηριστικό του 386 μπορούσα να βρω, καθώς αποτελεί και μία προσπάθεια να μάθω όσα μπορώ σχετικά με τον 386. Χρησιμοποιεί MMU (Memory Management Unit) τόσο για τη σελιδοποίηση (paging) όσο και την κατάτμηση (segmentation) της μνήμης. Η κατάτμηση είναι που το κάνει πραγματικά εξαρτώμενο από τον 386 (κάθε task έχει έκταση 64ΜΒ για κώδικα και δεδομένα – max 64 tasks σε 4GB).

Όπως δηλώνει και ο ίδιος ο Τόρβαλντς, ο σχεδιασμός του Linux είναι βασισμένος σε μεγάλο βαθμό σε εκείνον του MINIX. Ενός ακόμη ανοικτού κώδικα OS βασισμένου στο UNIX, που σχεδιάστηκε το 1987 σε πανεπιστήμιο του Άμστερνταμ για εκπαιδευτικούς λόγους. Το όνομα του MINIX σημαίνει πρακτικά mini-UNIX. Το MINIX ήταν σχεδιασμένο για να λειτουργεί σε IBM-PC, ενώ το Linux αρχικά για IBM-PC/AT (με επεξεργαστή Intel 80386). Καθώς είχε ήδη αναπτυχθεί κοινότητα προγραμματιστών γύρω από το επίσης ανοικτό MINIX, ο Τόρβαλντς είχε μεγάλη συνεισφορά για την ανάπτυξη του δικού του λειτουργικού συστήματος.

Έτσι, την πρώτη έκδοση kernel 0.01, θα διαδεχτεί η επόμενη 0.02 μόλις ένα μήνα αργότερα, τον Οκτώβρη του 1991 και η επόμενη 0.11 τον Δεκέμβριο της ίδιας χρονιάς. Με την έκδοση 0.12 το Φεβρουάριο του 1992, ο Τόρβαλντς υιοθετεί την άδεια GNU για το πρότζεκτ του (σ.σ. μέχρι τότε χρησιμοποιούσε μία ιδιόχειρη άδεια, που δεν επέτρεπε την εμπορική διανομή του). Τον επόμενο Μάρτιο, και συγκεκριμένα στην έκδοση 0.95, το λειτουργικό παίρνει την τελική του ονομασία Linux, ενώ παράλληλα ενσωματώνει το περιβάλλον X Window.

Επισήμως, η έκδοση 1.0 του πυρήνα ολοκληρώνεται στις 14 Μαρτίου 1994 κι έχει έκταση 176.250 γραμμές κώδικα. Για την ιστορία, ο πρωταρχικός πυρήνας 0.01 αποτελείται από 10.239 γραμμές κώδικα, τη στιγμή που η έκταση της πιο πρόσφατης έκδοσης 3.2 (Απρ. 2012) αγγίζει τις 14.998.651 γραμμές (1.500 φορές μεγαλύτερη).