Ο πυρήνας του Linux είναι 31 ετών

Στις 25 Αυγούστου 1991, μετά από πέντε μήνες ανάπτυξης, ο 21χρονος φοιτητής Linus Torvalds ανακοίνωσε στην τηλεδιάσκεψη comp.os.minix ότι είχε ολοκληρωθεί ένα λειτουργικό πρωτότυπο ενός νέου λειτουργικού συστήματος Linux, το οποίο έφερε το bash 1.08 και το gcc 1.40 έχει ολοκληρωθεί. Η πρώτη δημόσια έκδοση του πυρήνα Linux παρουσιάστηκε στις 17 Σεπτεμβρίου. Ο πυρήνας 0.0.1 ήταν συμπιεσμένος 62 KB και περιείχε περίπου 10 γραμμές πηγαίου κώδικα. Ο σύγχρονος πυρήνας Linux έχει πάνω από 30 εκατομμύρια γραμμές κώδικα. Σύμφωνα με μια μελέτη που ανατέθηκε από την Ευρωπαϊκή Ένωση το 2010, το κατά προσέγγιση κόστος ανάπτυξης από την αρχή ενός έργου παρόμοιου με τον σύγχρονο πυρήνα Linux θα ήταν πάνω από ένα δισεκατομμύριο δολάρια ΗΠΑ (ο υπολογισμός έγινε όταν ο πυρήνας είχε 13 εκατομμύρια γραμμές κώδικα) , σύμφωνα με άλλες εκτιμήσεις - περισσότερα από 3 δισεκατομμύρια.

Ο πυρήνας του Linux εμπνεύστηκε από το λειτουργικό σύστημα MINIX, το οποίο δεν ταίριαζε στη Linus με την περιορισμένη άδεια χρήσης του. Στη συνέχεια, όταν το Linux έγινε ένα πολύ γνωστό έργο, οι επικριτές προσπάθησαν να κατηγορήσουν τον Linus ότι αντιγράφει απευθείας τον κώδικα ορισμένων υποσυστημάτων MINIX. Η επίθεση αποκρούστηκε από τον Andrew Tanenbaum, συγγραφέα του MINIX, ο οποίος ανέθεσε σε έναν μαθητή να κάνει μια λεπτομερή σύγκριση του κώδικα Minix και των πρώτων δημόσιων εκδόσεων του Linux. Τα αποτελέσματα της μελέτης έδειξαν την παρουσία μόνο τεσσάρων δευτερευουσών αντιστοιχιών μπλοκ κώδικα, λόγω των απαιτήσεων του POSIX και του ANSI C.

Ο Linus αρχικά σκέφτηκε να ονομάσει τον πυρήνα Freax, από τις λέξεις "free", "freak" και X (Unix). Αλλά το όνομα "Linux" δόθηκε στον πυρήνα από τον Ari Lemmke, ο οποίος, κατόπιν αιτήματος του Linus, τοποθέτησε τον πυρήνα στον διακομιστή FTP του πανεπιστημίου, ονομάζοντας τον κατάλογο με το αρχείο όχι "freax", όπως ζήτησε ο Torvalds, αλλά "linux ". Αξίζει να σημειωθεί ότι ο επιχειρηματίας William Della Croce (William Della Croce) κατάφερε να καταχωρήσει το εμπορικό σήμα Linux και ήθελε να εισπράξει δικαιώματα με την πάροδο του χρόνου, αλλά αργότερα άλλαξε γνώμη και μεταβίβασε όλα τα δικαιώματα του εμπορικού σήματος στη Linus. Η επίσημη μασκότ του πυρήνα του Linux, ο πιγκουίνος Tux, επιλέχθηκε ως αποτέλεσμα ενός διαγωνισμού που πραγματοποιήθηκε το 1996. Το όνομα Tux σημαίνει Torvalds UniX.

Δυναμική ανάπτυξης της βάσης κώδικα (αριθμός γραμμών πηγαίου κώδικα) του πυρήνα:

  • 0.0.1 - Σεπτέμβριος 1991, 10 χιλιάδες γραμμές κώδικα.
  • 1.0.0 - Μάρτιος 1994, 176 χιλιάδες γραμμές κώδικα.
  • 1.2.0 - Μάρτιος 1995, 311 χιλιάδες γραμμές κώδικα.
  • 2.0.0 - Ιούνιος 1996, 778 χιλιάδες γραμμές κώδικα.
  • 2.2.0 - Ιανουάριος 1999, 1.8 εκατομμύρια γραμμές κώδικα.
  • 2.4.0 - Ιανουάριος 2001, 3.4 εκατομμύρια γραμμές κώδικα.
  • 2.6.0 - Δεκέμβριος 2003, 5.9 εκατομμύρια γραμμές κώδικα.
  • 2.6.28 - Δεκέμβριος 2008, 10.2 εκατομμύρια γραμμές κώδικα.
  • 2.6.35 - Αύγουστος 2010, 13.4 εκατομμύρια γραμμές κώδικα.
  • 3.0 - Αύγουστος 2011, 14.6 εκατομμύρια γραμμές κώδικα.
  • 3.5 - Ιούλιος 2012, 15.5 εκατομμύρια γραμμές κώδικα.
  • 3.10 - Ιούλιος 2013, 15.8 εκατομμύρια γραμμές κώδικα.
  • 3.16 - Αύγουστος 2014, 17.5 εκατομμύρια γραμμές κώδικα.
  • 4.1 - Ιούνιος 2015, 19.5 εκατομμύρια γραμμές κώδικα.
  • 4.7 - Ιούλιος 2016, 21.7 εκατομμύρια γραμμές κώδικα.
  • 4.12 - Ιούλιος 2017, 24.1 εκατομμύρια γραμμές κώδικα.
  • 4.18 - Αύγουστος 2018, 25.3 εκατομμύρια γραμμές κώδικα.
  • 5.2 - Ιούλιος 2019, 26.55 εκατομμύρια γραμμές κώδικα.
  • 5.8 - Αύγουστος 2020, 28.4 εκατομμύρια γραμμές κώδικα.
  • 5.13 - Ιούνιος 2021, 29.2 εκατομμύρια γραμμές κώδικα.
  • 5.19 - Αύγουστος 2022, 30.5 εκατομμύρια γραμμές κώδικα.

Βασική πρόοδος ανάπτυξης:

  • Linux 0.0.1 - Σεπτέμβριος 1991, πρώτη δημόσια έκδοση που υποστηρίζει μόνο i386 CPU και εκκίνηση από δισκέτα.
  • Linux 0.12 - Ιανουάριος 1992, ο κώδικας άρχισε να διανέμεται με την άδεια GPLv2.
  • Linux 0.95 - Μάρτιος 1992, πρόσθεσε τη δυνατότητα εκτέλεσης του συστήματος X Window, υλοποίησε υποστήριξη για εικονική μνήμη και ένα διαμέρισμα ανταλλαγής.
  • Linux 0.96-0.99 - 1992-1993, ξεκίνησαν οι εργασίες στη στοίβα δικτύωσης. Εισήχθη το σύστημα αρχείων Ext2, προστέθηκε υποστήριξη για τη μορφή αρχείου ELF, εισήχθησαν προγράμματα οδήγησης για κάρτες ήχου και ελεγκτές SCSI, φόρτωση μονάδων πυρήνα και υλοποιήθηκε το σύστημα αρχείων /proc.
  • Το 1992 εμφανίστηκαν οι πρώτες διανομές SLS και Yggdrasil. Το καλοκαίρι του 1993 ιδρύθηκαν τα έργα Slackware και Debian.
  • Linux 1.0 - Μάρτιος 1994, πρώτη επίσημα σταθερή έκδοση.
  • Linux 1.2 - Μάρτιος 1995, σημαντική αύξηση στον αριθμό των προγραμμάτων οδήγησης, υποστήριξη για τις πλατφόρμες Alpha, MIPS και SPARC, εκτεταμένες δυνατότητες στοίβας δικτύου, εμφάνιση φίλτρου πακέτων, υποστήριξη NFS.
  • Linux 2.0 - Ιούνιος 1996, υποστήριξη για συστήματα πολλαπλών επεξεργαστών.
  • Μάρτιος 1997: Ιδρύθηκε η LKML, λίστα αλληλογραφίας για προγραμματιστές πυρήνα Linux.
  • 1998: Κυκλοφόρησε το πρώτο σύμπλεγμα βασισμένο σε Linux Top500, το οποίο αποτελείται από 68 κόμβους με επεξεργαστές Alpha.
  • Linux 2.2 - Ιανουάριος 1999, βελτιωμένη απόδοση του συστήματος διαχείρισης μνήμης, προσθήκη υποστήριξης για IPv6, εφαρμογή νέου τείχους προστασίας, εισαγωγή νέου υποσυστήματος ήχου.
  • Linux 2.4 - Φεβρουάριος 2001, υποστήριξη για συστήματα 8 επεξεργαστών και 64 GB μνήμης RAM, σύστημα αρχείων Ext3, υποστήριξη USB, ACPI.
  • Linux 2.6 - Δεκέμβριος 2003, υποστήριξη SELinux, εργαλεία αυτόματης ρύθμισης παραμέτρων πυρήνα, sysfs, επανασχεδιασμένο σύστημα διαχείρισης μνήμης.
  • Το 2005, εισήχθη ο Xen hypervisor, ο οποίος εγκαινίασε την εποχή της εικονικοποίησης.
  • Τον Σεπτέμβριο του 2008, δημιουργήθηκε η πρώτη έκδοση της πλατφόρμας Android που βασίζεται στον πυρήνα του Linux.
  • Τον Ιούλιο του 2011, μετά από 10 χρόνια ανάπτυξης του κλάδου 2.6.x, έγινε η μετάβαση στην αρίθμηση 3.x. Ο αριθμός των αντικειμένων στο αποθετήριο Git έχει φτάσει τα 2 εκατομμύρια.
  • Το 2015 πραγματοποιήθηκε η κυκλοφορία του πυρήνα Linux 4.0. Ο αριθμός των αντικειμένων git στο αποθετήριο έχει φτάσει τα 4 εκατομμύρια.
  • Τον Απρίλιο του 2018, ξεπεράστηκε το ορόσημο των 6 εκατομμυρίων αντικειμένων git στο αποθετήριο πυρήνα.
  • Τον Ιανουάριο του 2019, δημιουργήθηκε ο κλάδος του πυρήνα Linux 5.0. Το αποθετήριο έχει φτάσει στο επίπεδο των 6.5 εκατομμυρίων αντικειμένων git.
  • Δημοσιεύθηκε τον Αύγουστο του 2020, ο πυρήνας 5.8 ήταν ο μεγαλύτερος όσον αφορά τον αριθμό αλλαγών όλων των πυρήνων σε όλη τη διάρκεια ζωής του έργου.
  • Στον πυρήνα 5.13, σημειώθηκε ρεκόρ για τον αριθμό των προγραμματιστών (2150), των οποίων οι αλλαγές συμπεριλήφθηκαν στον πυρήνα.
  • Το 2021, ο κώδικας για την ανάπτυξη προγραμμάτων οδήγησης στο Rust προστέθηκε στον κλάδο του επόμενου πυρήνα του Linux. Γίνονται εργασίες για τη συμπερίληψη εξαρτημάτων για την υποστήριξη του Rust στο κύριο μέρος του πυρήνα.
  • Τον Αύγουστο του 2022, δημιουργήθηκε ο κλάδος πυρήνα Linux 6.0, καθώς υπήρχαν αρκετές εκδόσεις στον κλάδο 5.x για να αλλάξει ο πρώτος αριθμός στον αριθμό έκδοσης.

Το 68% όλων των βασικών αλλαγών έγιναν από τις 20 κορυφαίες εταιρείες. Για παράδειγμα, κατά την ανάπτυξη του πυρήνα 5.19, το 10.9% όλων των αλλαγών προετοιμάστηκε από την Intel, 5.7% από τη Linaro, 5.5% από την AMD, 5.2% από τη Red Hat, 4.1% από την Google, 3.5% από τη Meta, 3.1% από τη SUSE, 2.9 % από Huawei, 2.8% - NVIDIA, 2.7% - Oracle. Το 11.8% των αλλαγών προετοιμάστηκαν από ανεξάρτητους συνεργάτες ή προγραμματιστές που δεν δήλωσαν ρητά την εργασία τους για ορισμένες εταιρείες. Με 5.19 γραμμές κώδικα που έχουν προστεθεί στον πυρήνα, η AMD είναι ηγέτιδα, με μερίδιο 37.9% (το πρόγραμμα οδήγησης amdgpu έχει πάνω από 4 εκατομμύρια γραμμές κώδικα, οι περισσότερες από τις οποίες δημιουργούνται αυτόματα αρχεία κεφαλίδας με δεδομένα για καταχωρητές GPU).

Πηγή: opennet.ru

Προσθέστε ένα σχόλιο