Ядро Linux навърши 33 години

На 25 август 1991 година, след пет месеца разработка, 21-годишният студент Линус Торвалдс обяви в телеконференцията comp.os.minix създаването на работен прототип на нова операционна система Linux, за която беше отбелязан завършекът на портването на bash 1.08 и gcc 1.40. Първият публичен релиз на ядрото Linux беше представен на 17 септември. Ядрото 0.0.1 беше с размер 62 Кб в компресирано състояние и съдържаше около 10 хиляди реда изходен код. Съвременното ядро Linux има над 35 млн. реда код. Според проучване, извършено през 2010 година по поръчка на Европейския съюз, приблизителната стойност за разработването от нулата на проект, аналогичен на съвременното ядро Linux, би била над един милиард долара САЩ (изчислението беше направено, когато ядрото имаше 13 млн. реда код), по други оценки — над 3 милиарда.

Linux ядрото беше създадено под впечатлението от операционната система MINIX, която не удовлетворяваше Линус поради ограничената си лицензия. По-късно, когато Linux стана известен проект, злонамерени критици се опитаха да обвинят Линус в директно копиране на кода на някои подсистеми на MINIX. Нападението бе отблъснато от Андрю Таненбаум, автора на MINIX, който възложи на един от студентите да направи подробно сравнение между кода на Minix и първите публични версии на Linux. Резултатите от изследването показаха наличието само на четири незначителни съвпадения на блокове код, обусловени от изискванията на POSIX и ANSI C.

В началото Линус искал да нарече ядрото Freax, от думите "free", "freak" и X (Unix). Но ядро получи името "Linux" с леката помощ на Ари Лемке (Ari Lemmke), който по молба на Линус постави ядрото на FTP-сървъра на университета, наричайки директорията с архива не "freax", както беше поискал Торвалдс, а "linux". Забележително е, че предприемчивият бизнесмен Уилям Делло Крок (William Della Croce) успя да регистрира търговска марка Linux и искаше с времето да събира такси, но по-късно се отказа и прехвърли всички права на търговската марка на Линус. Официалният талисман на ядрото 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 млн. реда код;
  • 6.4 — юни 2023, 32.9 млн. реда код.
  • 6.10 — юли 2024, 35.1 млн. реда код.

Напредък в развитието на ядрото:

  • Linux 0.0.1 — септември 1991, първо публично издание, поддържащо само CPU i386 и зареждащо се от флопи диск;
  • Linux 0.12 — януари 1992, кодът започва да се разпространява под лиценз GPLv2;
  • Linux 0.95 — март 1992, осигурена е възможността за стартиране на X Window System, реализирана е поддръжка на виртуална памет и дял за разширена памет.
  • 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 възела с CPU Alpha;
  • Linux 2.2 — януари 1999 г., увеличена ефективност на управлението на паметта, добавена поддръжка IPv6, реализиран нов междупрограмно защитен софтуер, представена нова аудиосистема;
  • Linux 2.4 — февруари 2001, осигурена е поддръжка на 8-процесорни системи и 64 Гб RAM, файлова система Ext3, поддръжка на USB, ACPI;
  • Linux 2.6 — декември 2003, поддръжка на SELinux, средства за автоматично настройване на параметрите на ядрото, sysfs, преработена система за управление на паметта;
  • През 2005 г. беше представен хипервизорът Xen, който откри ерата на виртуализацията;
  • През септември 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), промени от които влязоха в състава на ядрото.
  • През август 2022 г. беше създаден клон на ядрото Linux 6.0, тъй като в клона 5.x се натрупаха достатъчно версии, за да се промени първото число в номера на версията.
  • В ядрото 6.1, пуснато през декември 2022 г., беше добавена възможността да се използва езикът Rust като втори език за разработка на драйвери и модули на ядрото.

Около 65% от всички изменения в ядрото са внесени от 20-те най-активни компании. Например, при разработката на ядрото 6.10 от всички изменения 15.3% (в ядрото 6.9 беше 12.9%) са подготвени от компанията Intel, 7.4% (7.1%) — Google, 6.9% (5.6%) — Red Hat, 6.3% (6.4%) — Linaro, 4.6% (5.7%) — AMD, 3.3% (2.2%) — Oracle, 3.2% (2.9%) — Meta, 2.5% (3.2%) — SUSE, 2.4% (2.1%) — IBM, 2.3% (2.4%) — Huawei, 1.9% (2.1%) — Qualcomm, 1.5% (1.7%) — NVIDIA, 1.2% (1.2%) — ARM. 11.9% (в ядрото 6.9 — 14.2%) от измененията са подготвени от независими участници или разработчици, които явно не са заявили работата си за определени компании. По брой на добавените в ядрото 6.10 редове код водят компаниите Intel, Linaro и Red Hat, чийто дял е 13.6%, 13.3% и 7.2% (в ядрото 6.9 водеха AMD, Red Hat и Intel с дялове 21.7%, 11.5% и 8.9%).

Източник: opennet.ru

Купете надежден хостинг за сайтове с защита от DDoS, VPS VDS сървъри 🔥 Купете надежден хостинг за сайтове с защита от DDoS, VPS VDS сървъри | ProHoster