Kernel Linux

Linux

informație
Creator Linus Torvalds
Dezvoltat de Linus Torvalds și mii de colaboratori
Prima versiune 0,01 (17 septembrie 1991)
Ultima versiune 5.12 (25 aprilie 2021)
Depozit

git: //git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
Starea proiectului În continuă dezvoltare
Scris in C , asamblator și C ++
Mediu inconjurator Tip UNIX
Limbi Engleză
Tip Miezul monolitic modular
Politica de distribuție Gratuit
Licență GPLv2 , cu excepția BLOB-urilor proprietare
Site-ul web www.kernel.org

Kernel - ul Linux este un nucleu de UNIX . Este utilizat în mai multe sisteme de operare, inclusiv GNU / Linux (denumit în mod obișnuit „Linux”) și Android . Kernel-ul Linux este software parțial gratuit (conținând BLOB-uri și module non-free - vezi Linux-libre ) dezvoltat în principal în limbajul C de mii de voluntari și angajați care colaborează pe internet .

Nucleul este inima sistemului, el este cel care se ocupă de furnizarea de software cu o interfață de programare pentru a utiliza hardware-ul. Kernel-ul Linux a fost creat în 1991 de către Linus Torvalds pentru computer compatibil . Conceput inițial pentru arhitectura procesorului x86 , ulterior a fost portat la multe altele, inclusiv m68k , PowerPC , ARM , SPARC , MIPS și RISC-V . Este utilizat într-o gamă foarte largă de echipamente, de la sisteme încorporate la supercomputere , inclusiv telefoane mobile și computere personale .

Principalele sale caracteristici sunt să fie multitasking și multi-utilizator . Respectă standardele POSIX , ceea ce îl face un moștenitor demn al sistemelor UNIX . Inițial, nucleul a fost conceput pentru a fi monolitic. Această alegere tehnică a fost prilejul unor dezbateri aprinse între Andrew S. Tanenbaum , profesor la Universitatea Liberă din Amsterdam care dezvoltase Minix , și Linus Torvalds . Andrew Tanenbaum susține că nucleele moderne trebuie să fie micro-nuclee și Linus răspunzând că performanțele micro-nucleelor ​​nu sunt bune. Începând cu versiunea 2.0, nucleul, deși nu este un micro-nucleu, este modular, adică unele funcționalități pot fi adăugate sau eliminate din nucleu din mers (în uz).

Istorie

În 1991 , computerele compatibile domină piața computerelor personale și, în general, funcționează cu sistemele de operare MS-DOS , Windows sau OS / 2 . PC-urile bazate pe microprocesorul Intel 80386 , vândute din 1986, încep să fie accesibile. Dar sistemele obișnuite rămân angajate în compatibilitatea cu procesoarele mai vechi de 16 biți Intel și utilizează în mod greșit capacitățile pe 32 de biți și unitatea de gestionare a memoriei din 80386.

Anul acesta studentul finlandez Linus Torvalds , indispus de disponibilitatea redusă a serverului de computer UNIX de la Universitatea din Helsinki , întreprinde dezvoltarea unui kernel de sistem de operare , care mai târziu va fi numit „Linux”. Linus a dorit apoi mai presus de toate să înțeleagă funcționarea computerului său pe baza unui Intel 80386.

Linus Torvalds a ucenizat cu sistemul de operare Minix . Întrucât designerul Minix - Andrew Tanenbaum - refuză să încorporeze contribuții menite să îmbunătățească Minix, Linus decide să programeze un înlocuitor pentru Minix. Începe prin a dezvolta un emulator de terminal simplu , pe care îl folosește pentru a se conecta printr-un modem la serverul computerului universității sale. După ce a adăugat diverse funcții, inclusiv un sistem de fișiere compatibil cu cel al Minix, Linus își direcționează proiectul către ceva mai ambițios: un nucleu la standardele POSIX . La acest kernel, acesta adaptează multe componente disponibile ale sistemului de operare GNU pentru a obține un sistem de operare mai complet.

25 august 1991, anunță pe forumul de știri Usenet : comp.os.minix că scrie un sistem de operare, dar ca „hobby, care nu va fi la fel de mare și de profesionist ca gnu”. 5 octombrie 1991, anunță disponibilitatea unei versiuni preliminare 0.02 a nucleului său, versiunea 0.01 fiind distribuită mai mult decât confidențială. În cele din urmă înFebruarie 1992, versiunea 0.12 este lansată sub licența publică generală GNU (GNU GPL) în locul licenței ad hoc care anterior interzicea redistribuirea comercială.

Versiunea Linux 1.0.0 a fost lansată pe 14 martie 1994 cu 176.250 de linii de cod.

Numit inițial Freax de către creatorul său, proiectul își găsește numele final datorită lui Ari Lemmke , administratorul serverului FTP ftp.funet.fi , care găzduiește lucrările lui Linus Torvalds într-un director numit Linux . Aceasta a fost prima apariție a unui termen alcătuit din „Linus” și „UNIX”, care va deveni ulterior o marcă comercială înregistrată pe numele lui Linus Torvalds. Pinguinul Tux , proiectat de Larry Ewing în 1996, devine mascota proiectului.

Eliberarea codului Linux a generat mult interes în comunitatea utilizatorilor Minix. De atunci, mii de programatori voluntari din întreaga lume au luat parte la proiect. Modelul de dezvoltare Linux este încă considerat un reprezentant tipic al organizației caracteristic marilor colectivități open source . Astăzi, sute de entuziaști și companii de toate dimensiunile participă la proiect, dintre care Linus Torvalds este în continuare coordonatorul. Eric Raymond descrie în eseul La Cathédrale et le Bazar (2001) modelul de dezvoltare a nucleului Linux și o parte a software-ului liber .

În sistemele încorporate , Linux este frecvent utilizat cu instrumentele uClibc și BusyBox , care au fost dezvoltate pentru hardware cu capacitate de memorie deosebit de limitată. Posibilitatea de a compila kernel-ul Linux cu opțiuni special adaptate hardware-ului țintă oferă dezvoltatorilor multe posibilități de optimizare.

Dezvoltare kernel Linux

Dacă la începutul istoriei sale dezvoltarea kernel-ului Linux a fost realizată de dezvoltatori voluntari, principalii contribuabili astăzi sunt un grup de companii, adesea în competiție, precum Red Hat , Novell , IBM sau Intel .

IBM avea propriul său UNIX, numit AIX, dar trecerea la Linux - pe lângă faptul că permite dezvoltatorilor și întreținătorilor AIX să fie alocați altor proiecte - are, de asemenea, avantajul de a permite o recuperare, fără dificultăți de portare. Aplicații sau instruire nouă pentru echipele IT , de la servere PC Linux la Linux pe seriile sale i, p și z.

Linux kernel Licența este GNU General Public License în versiunea 2. Această licență este gratuit, care vă permite să utilizați, copiați și să modificați codul sursă în funcție de dorințele sau nevoile dumneavoastră. Astfel, oricine are cunoștințele necesare poate participa la testarea și evoluția nucleului .

Ritmul dezvoltării

Între martie și Aprilie 2005, numărul de linii de cod s- a dublat (de la 4,4 milioane la 8,8 milioane). La începutul anului 2009, versiunea 2.6.30 a nucleului Linux era compusă din peste 11,5 milioane de linii de cod în 28.000 de fișiere, în timp ce 2,8 milioane de linii au fost adăugate între Crăciunul 2008 șiianuarie 2010.

Între 2005 și mijlocul anului 2009, 5.000 de dezvoltatori și 500 de companii au participat la scrierea nucleului. Numărul de patch-uri oferite este în creștere, mai ales de la versiunea 2.6.25.

Rolul lui Linus Torvalds

Linus Torvalds , creatorul nucleului Linux, a fost întreținătorul oficial de la înființarea sa în 1991 . El este un fel de „dictator binevoitor”, autoritatea în ceea ce privește alegerile tehnice și organizaționale. Diferitele versiuni ale nucleului publicate de Linus Torvalds sunt numite „mainline” sau „vanilie” în limba engleză. Acestea sunt nucleele de vanilie care sunt integrate de distribuitori, uneori cu adăugarea unor patch-uri de securitate, remedieri de erori sau optimizări.

Proces de dezvoltare

Linus Torvalds a adus o schimbare radicală în modul în care sunt dezvoltate sistemele de operare, utilizând din plin puterea internetului.

Procesul de dezvoltare Linux este public pe internet: sursele kernelului sunt vizibile acolo pentru toată lumea, modificările aduse acestor surse sunt publicate și revizuite pe Internet și sunt, de asemenea, vizibile pentru toată lumea. Un ciclu de dezvoltare rapidă și incrementală a fost adoptat de la început (astăzi o nouă versiune este lansată la fiecare 9 săptămâni sau cam așa), ceea ce a făcut posibilă construirea în jurul Linux și Internet în straturi succesive a unei comunități dinamice formată din dezvoltatori, companii și utilizatori.

Mod de apelare

Numerele versiunii kernel sunt alcătuite din trei numere: primul este numărul major, al doilea este numărul minor. Înainte de lansarea versiunilor 2.6.x, numerele pare minore indicau o versiune stabilă, iar numerele mici impare indicau o versiune de dezvoltare. Astfel, versiunile 2.2, 2.4 sunt stabile, versiunile 2.3 și 2.5 sunt versiuni de dezvoltare. Cu toate acestea, de la versiunea kernel 2.6 acest model de numerotare stabil / de dezvoltare a fost întrerupt și, prin urmare, nu există o semnificație specială pentru numerele impare sau pare minore. Al treilea număr indică o revizuire, care corespunde remediilor de erori, rezolvărilor de securitate sau un plus de funcționalitate, de exemplu 2.2.26, 2.4.30 sau 2.6.11. Trecerea la versiunea 3.0 a fost decisă de Linus Torvalds cu ocazia celor 20 de ani ai nucleului Linux, chiar dacă motivul real a fost destul de arbitrar.

De cand Martie 2005(data lansării miezului 2.6.11), Greg Kroah-Hartman și Chris Wright încearcă să mențină o ramură stabilizată a miezului de vanilie Linus Torvalds. Scopul lor este de a stabiliza și mai mult nucleul, prin integrarea unor corecții simple și concise de corecție a erorilor, securitate sau optimizare care îndeplinesc criterii stricte. Această ramură nu integrează noi funcționalități. Publicațiile lor sunt indicate printr-un al patrulea număr de versiune, de exemplu 2.6.11.1 sau 2.6.11.6. Funcționarea tehnică și organizațională a acestei ramuri va fi testată în timp, pe termen mediu și lung.

Patch-uri

Există o multitudine de patch-uri disponibile pe Internet în cadrul comunității de dezvoltare a nucleului Linux. Cele mai cunoscute sunt cele ale lui Andrew Morton sufixate -mm care integrează patch-uri de funcționalități și optimizări foarte solicitate și WOLK (care lucrează peste kernel încărcat , kernel funcțional supraîncărcat).

Distribuția Ubuntu Studio include, de asemenea, un kernel cu latență scăzută ( Kernel cu latență scăzută ) care asigură o latență mai mică pentru aplicațiile audio, cu costul, totuși, al unei încărcări mai mari pe sistem în sine (datorită buclelor de vigilență, sondaj ) și, prin urmare, o scădere în fluxul său . Acest kernel este puțin folosit în afara creației muzicale, care necesită cât mai puțină întârziere posibilă între lovirea unei taste și producerea efectului corespunzător.

Linux în timp real

Ingo Molnár patch - uri sufixat -rt sunt folosite de distribuții Linux multimedia , cum ar fi DeMuDi  ; oferă performanțe în timp real necesare pentru buna funcționare a unei stații de lucru multimedia profesionale. Ingo Molnar este, de asemenea, inițiatorul debuggerului kernel kgdb .

Cronologie

Cronologia lansării Linux
Versiune Datat Principalele îmbunătățiri
0,01 17 septembrie 1991 Distribuție confidențială (10.000 de linii de coduri).
0,02 5 octombrie 1991 Anunțuri pe usenet, sistemul aproape inutilizabil.
0,03 Octombrie 1991 bash și gcc disponibile în binar.
0,10 Decembrie 1991 Primele contribuții externe, internaționalizarea tastaturii.
0,11 mijlocDecembrie 1991 Driver pentru dischetă, SCSI în curs de dezvoltare.
0,12 5 ianuarie 1992 Memorie virtuală, sistem utilizabil, mai mult hardware suportat, distribuit în GNU GPL , console virtuale.
0,95 7 martie 1992 Init / login, X Window este portat, există un grup de știri : alt.os.linux
0,95a 17 martie 1992 Nou program de întreținere pentru discheta rădăcină Linux  : Jim Winstead .
0,96 - 0,99 patch nivel 15Z 2 ani de dezvoltare, pentru adăugarea de funcționalități și corecții, comp.os.linux. * Forumurile sunt cele mai frecventate din usenet și sunt reorganizate de 3 ori, semn că comunitatea crește și este foarte activă.
1.0 Martie 1994 Kernel-ul Linux este stabil pentru producție și oferă serviciile unui UNIX clasic (176.000 de linii de cod).
1.2 Martie 1995 Multe alte arhitecturi de procesoare, module care pot fi încărcate etc. (311.000 de linii de cod)
2.0 Iulie 1996 PowerPC , multiprocesor , mai mult hardware suportat, gestionare mai completă a rețelei, aspectul mascotei Tux .
2.1.80 Ianuarie 1998 Suport preliminar pentru arhitecturi ARM
2.2 Ianuarie 1999 Framebuffer , NTFS , Joliet , IPv6 , ... (1,8 milioane de linii de cod)
2.4 Ianuarie 2001 USB , PCMCIA , I2O, NFS 3, X86-64 ... (3,378 milioane de linii de coduri)
2.6 decembrie 2003 ALSA , nucleu preemptibil, ACL , NFS 4, ... (5,93 milioane de linii de cod)
2.6.16 LTS 20 martie 2006 Prima versiune cu suport extins, suport OCFS2, suport procesor Cell , 13 apeluri de sistem noi adăugate pentru platformele x86 și x86_64, suport cpufreq pentru Power Mac G5s , gestionare îmbunătățită a energiei pentru unele dispozitive, suport IPv6 pentru protocol DCCP , management ACL pentru sistemul de fișiere CIFS , Gestionarea sistemului de fișiere HFSX , suport pentru executarea executabilelor din sistemul de fișiere plan9,….
2.6.17 17 iunie 2006 Suport pentru procesoarele Sunic Niagara multicore, suport pentru chipset-ul Broadcom 43xx wifi, optimizarea imaginii kernelului la pornire pe x86, nou programator optimizat pentru procesoare multicore ...
2.6.18 19 septembrie 2006 Instrument Lockdep, moștenire prioritară, gestionarea priorităților cu SMPnice, programator CFQ,….
2.6.19 29 noiembrie 2006 Sistem de fișiere GFS2, criptare eCryptfs, subsistem libata etc.
2.6.20 4 februarie 2007 Virtualizare KVM, suport UDP-Lite, scanare SCSI asincronă,….
2.6.21 25 aprilie 2007 Interfață de paravirtualizare VMI (Virtual Machine Interface), Dynticks și Clockevents,….
2.6.22 8 iulie 2007 Toate straturile wifi noi, alocatorul de memorie SLUB, programatorul CFQ I / O , driverele noi ... (8.499 milioane de linii de cod).
2.6.23 9 octombrie 2007 Noul programator de sarcini CFS , mediul de suport pentru driverul de spațiu pentru utilizator UIO integrat în nucleu, alocatorul de memorie implicit SLUB,….
2.6.24 24 ianuarie 2008 Unificarea arhitecturilor i386 și x86-64 , I / O vectorială, autentificarea perifericelor USB, programarea grupurilor cu CFS ,….
2.6.25 16 aprilie 2008 SMACK (alternativă la SELinux ), gestionarea magistralei CAN , reproiectarea timerfd , îmbunătățirea managementului în timp real ….
2.6.26 13 iulie 2008 Integrarea debuggerului kernel kgdb , începutul suportului pentru rețele topologice de rețea unificate, suport pentru ecrane Braille , suport PAT pentru arhitectură x86 , asamblare „--bind” de numai citire, gestionarea drepturilor de securitate prin proces ( securebits ), virtualizare îmbunătățită cu KVM ....
2.6.27 LTS 9 octombrie 2008 Set de drivere webcam GSPCA, strat de rețea cu mai multe fișiere, UBIFS , sistem de  depanare ftrace (ro) ….
2.6.28 24 decembrie 2008 Manager de memorie pentru plăci grafice GEM ( Graphics Execution Manager ), sistem de fișiere ext4 , suport mai bun pentru gestionarea memoriei, gestionarea rețelelor UWB ...
2.6.29 23 martie 2009 Integrarea Btrfs , squashfs , baterie WiMAX , îmbunătățirea eCryptfs  (in) , integrarea KMS , etc.
2.6.30 9 iunie 2009 Integrarea NILFS , un cache local pentru sisteme de fișiere la distanță , modulul de securitate TOMOYO, suport pentru dispozitive de stocare a obiectelor (11,561 milioane de linii de cod).
2.6.31 9 septembrie 2009 Suport pentru USB 3.0, aps fsnotify API pentru notificarea evenimentelor legate de sistemul de fișiere, defragmentarea discului la ext4 , monitor de performanță PerfCounters .
2.6.32 LTS 3 decembrie 2009 Scrierea de date prin BDI, Modificări în planificator CFS, managementul dinamic de putere, TXT de management de integritate , devtmpfs pentru dispozitiv de listare, KSM tehnica pentru reducerea amprentei de memorie a sistemelor virtualizate cu KVM , soclu responsabil de TRIM funcției de Btrfs .
2.6.33 LTS 24 februarie 2010 Sistem de fișiere DRBD , Driver nou , tranzacție TCP prin cookie, controler IO-Block, suport funcție TRIM de ext4 .
2.6.34 LTS 16 mai 2010 Sisteme de fișiere Ceph și LogFS, dispozitiv de așteptare asincron, mecanism de securitate GTSM, Lockdep-RCU, VGA-Switcheroo.
2.6.35 LTS 2 august 2010 Funcția CPU_stop, gestionarea energiei, compresia memoriei, performanța rețelei cu RPS și RFS, calitatea serviciului cu pm_qos, gestionarea întreruperii.
2.6.36 20 octombrie 2010 AppArmor , funcția OOM Killer rescrie , instrument de fanotificare , optimizări VFS .
2.6.37 5 ianuarie 2011 Performanța îmbunătățită a ext4 și a urmăririi mecanismelor ( salt etichetă ) acceptă FITRIM (un TRIM diferit ) pentru ext4 , introducerea repartizorului de memorie memblock pentru înlocuire early_res, baterie PPTP , primul driver WiFi Broadcom (toți constructorii principali de wifi au acum un driver gratuit).
2.6.38 15 martie 2011 Noua gestionare a paginării macroscopice , optimizarea rezoluției căii de acces .
2.6.39 18 mai 2011 Abordare filetată a conectării perifericelor , integrare oficială de ipsets, suport FITRIM (un TRIM întârziat) de către Btrfs , sfârșitul blocării globale ( Big Kernel Lock ).
3,0 LTS 22 iulie 2011 Memorarea în cache a paginii de memorie, îmbunătățiri Btrfs , o nouă interfață de acces la alarma BIOS , eliminarea pre-preluare, compilator on-the-fly pentru instrucțiunile de comparare a stivei de rețea
3.1 24 octombrie 2011 Arhitectura OpenRISC , gestionarea consumului de către cpupower, caracteristici suplimentare pentru KVM , îmbunătățirea gestionării memoriei Xen , gestionarea vitezei discului, Virtual File System , protocol BATMAN , adăugarea de drivere NFC
3.2 LTS 4 ianuarie 2012 Îmbunătățirea CFS , Ext4 , Btrfs , MPI drivere și grafice, extinse module de verificare algoritmi de verificare criptografică și de reducere a ratei de Proporțional pentru TCP stiva , gestionarea digitale generatoare de numere aleatorii și Hexagon și secAMD Bulldozer arhitecturi , dinamice writeback de management , asamblare punerea în aplicare a SHA -1 , Blowfish și Twofish , RAID-5 pentru EXOFS  (ro) , API Dynamic Voltage and Frequency Scaling , citire asincronă pentru SMB . Versiunea 3.2.5 remediază o eroare care a existat de la versiunea 2.6.38 în Active State Power Management (ASPM), care a cauzat un consum excesiv de energie.
3.3 19 martie 2012 Integrarea driverelor Android , libgcrypt , Open vSwitch, un driver de rețea "echipă", arhitectură C6X, adăugarea unui grup pentru resurse de rețea, "naturalizarea" memcg, noi limite de infrastructură "  coadă de octeți  ", tampon DMA , PAE pentru procesoare ARM , Asistență LLCP și NVM Express , nou manager de baterii, îmbunătățirea ext4 și Btrfs , reconstrucție „fierbinte” pentru RAID, ieșire audio prin HDMI
3.4 20 mai 2012 Arhitectura X32 , dm-verity în placa periferică , unificarea managementului ceasului pentru arhitectura ARM, modul de securitate YAMA, îmbunătățirea driverelor ext4 , Btrfs , grafică și perf , suport pentru Universal Flash Storage și HSI, algoritm Camellia în asamblare, domenii IRQ
3.5 21 iulie 2012 Algoritmul CoDel pentru stiva TCP, revizuirea tabelului de excepții x86, o mai bună manevrare a EDAC , NUMA , spații de nume ale utilizatorilor și jurnale de kernel, Btrfs îmbunătățite , ext4 , perf și AMD și drivere grafice Intel , metodă autosleep , filtrarea apelurilor de sistem de către Seccomp, sonde de tip vertical, modul de reparații pentru conexiunile TCP
3.6 30 septembrie 2012 Standby și hibernare combinate, economie de energie pentru ATA și PCIe, îmbunătățiri la TCP , Btrfs și ext4 , generare de entropie și drivere grafice, eliminarea cache-ului de rutare IPv4, swap peste NFS, manevrare mai bună a SSD-urilor în RAID
3.7 11 decembrie 2012 Compilație cross-platform, virtualizare și versiune pe 64 de biți pentru arhitectura ARM, prevenirea accesului la modul de supraveghere, gestionarea modulului de semnătură de către MODSIGN, placa Wii Balance , procesorul SPARC T4  (in) , rescrierea KMS și driverul nou, îmbunătățit Radeon, TCP , perf , sisteme de fișiere Btrfs și ext4 , NAT IPv6 , VXLAN, curățarea anteturilor
3.8 19 februarie 2013 Sfârșitul suportului i386 , suport POWER8 adăugat , planificator NUMA îmbunătățit , drivere grafice Tegra , Intel , Nouveau și Radeon îmbunătățite , noul sistem de fișiere F2FS și Btrfs și ext4 îmbunătățite , Netlink îmbunătățit , criptare algoritmi îmbunătățită , 802.11ac și 802.11ad management Wi-Fi , spații de nume de rețea pentru utilizatori, implementarea RFC5961. S-au adăugat containere LXC .
3.9 29 aprilie 2013 Noul mod de așteptare, regruparea arhitecturilor ARM, îmbunătățirea driverelor grafice Intel , Nouveau și Radeon , RAID 5 și 6 pentru Btrfs , îmbunătățiri ale IPv6 , noul filtru în Netfilter , blocarea filtrelor pe soclu , dispozitiv-maper-cache pentru a utiliza un dispozitiv ca cache al altui algoritm LZO îmbunătățit
3.10 LTS 30 iunie 2013 S-a adăugat suport pentru Unified Video Decoder  (in) , integrare Bcache SSD / HDD , îmbunătățire semnificativă a procesoarelor de suport Intel Haswell , suport îmbunătățit pentru procesoare ARM pe 64 de biți, funcții de virtualizare îmbunătățite și adăugarea de drivere audio. Ca la fiecare versiune nouă, sunt furnizate actualizări pentru sistemele de fișiere ext4 și btrfs
3.11 2 septembrie 2013 Comprimarea paginilor swap, compresia kernel-ului în LZ4 pentru arhitectura ARM, optimizarea creării fișierelor temporare, îmbunătățiri pentru arhitecturile ARM și Aarch64, intel, nVidia și driverele grafice ATI / AMD, reducerea consumului de carduri grafice de către Dynamic Power Management și gestionare activă a energiei de stat , îmbunătățiri la ext4 , Btrfs, XFS, F2FS și Luster
3,12 LTS 3 noiembrie 2013 Performanță îmbunătățită a cpufreq , noduri de redare pentru DRM , gestionarea drepturilor pentru buffere grafice, infoframe HDMI și ultra HD, somn profund pentru procesoare grafice Haswell, oprire automată și decodare hardware VP3-VP4 pentru plăci nVidia, o mai bună gestionare a energiei pentru ATI / AMD carduri, suport pentru nuclee grafice Adreno, performanță îmbunătățită a ext4 și F2FS
3.13 20 ianuarie 2014 Mecanism Înregistrare erori platformă comună UEFI , earlyprintk pentru UEFI , număr de secvențe / secvențe în lockdep, echilibrare automată NUMA, limitare a consumului de intel, driver îmbunătățit pentru plăci GPU Adreno ARM și nVidia, sunet prin HDMI și GPU de gestionare a energiei pentru AMD / ATI, procesoare de management Broadwell (microarhitectură)  (ro) și Display Serial Interface , iptables de înlocuire cu nftables , coadă multiplă pentru scrierea fișierelor prin sisteme multi-core, o mai bună gestionare a loginuidului , îmbunătățirea / dev / urandom
3,14 LTS 31 martie 2014 Suport pentru coprocesoare criptografice AMD , chipset Intel Merrifield și noi procesoare ARM și MIPS, drivere grafice îmbunătățite AMD și Intel, accelerare pentru GPU-uri nVidia GK110 / GK208, adrese IPv6 spațiu utilizator temporar, autocap TCP, depanator pentru filtrul de pachete BSD , îmbunătățirea Btrfs și F2FS , îmbunătățirea virtualizării de către Xen .
3.15 8 iunie 2014 Acceptă modul mixt EFI , acceptă setul de instrucțiuni AVX-512  (în) , planificator îmbunătățit, abandonarea platformelor x86 vechi, gestionare îmbunătățită a tastelor de luminozitate, îmbunătățire a driverelor grafice gratuite, protecție îmbunătățită împotriva atacurilor de refuzare a serviciului , nivel de securitate Bluetooth suportat 4 , sisteme de fișiere ext3 / 4 stabilizate și XFS, Btrfs, F2FS îmbunătățite
3,16 LTS 3 august 2014 Îmbunătățiri ale driverelor grafice gratuite, TCP Fast Open disponibil pentru IPv6, remedieri ale vulnerabilităților, îmbunătățiri ale sistemelor de fișiere XFS, Btrfs, F2FS, Reiser4 și NFS
3.17 5 octombrie 2014 Suportă modul inactiv de generația Broadwell (microarhitectură)  (ro) , suport pentru chips-uri ARM noi, arhitecturi de suport final IBM POWER3 și IBM RS64 , drivere grafice gratuite îmbunătățite, remedieri ale vulnerabilităților, îmbunătățiri sisteme ale fișierelor F2FS, NFS, XFS și Btrfs
3,18 LTS 7 decembrie 2014 Așteptare accelerată, suport CLANG îmbunătățit, îmbunătățiri gratuite ale driverelor grafice, remedieri ale vulnerabilităților, îmbunătățiri ale sistemului de virtualizare Xen și KVM , îmbunătățiri ale sistemului de fișiere C2FS, NFS, OverlayFS , Ceph
3.19 8 februarie 2015 Suporta noi cipuri ARM , suporta tehnologia Intel MPX  (in) , gestionare imbunatatita a problemei din anul 2038 , imbunatatire a driverelor grafice gratuite, remedieri vulnerabilitati, imbunatatiri ale sistemului de fisiere f2fs, NFS, OverlayFS, Ceph, Btrfs si SquashFS , imbunatatiri ale sistemelor de virtualizare Xen
4.0 12 aprilie 2015 Actualizare kernel din mers, suport pentru cip Trusted Platform Module 2.0, îmbunătățire gratuită a driverului grafic, remedieri ale vulnerabilităților, îmbunătățiri ale sistemului de fișiere F2FS, OverlayFS, îmbunătățiri ale sistemului de fișiere Ceph și Btrfs, îmbunătățiri ale sistemului de virtualizare KVM și Virtio
4.1 LTS 21 iunie 2015 Suport pentru noi cipuri (ARM, Xilinx , Qualcomm ), îmbunătățirea managementului energiei, actualizarea majoră a arhitecturii x86 , corectarea vulnerabilităților, îmbunătățirea driverelor grafice gratuite, a sistemelor de fișiere și a sistemelor de virtualizare
4.2 30 august 2015 Suport pentru noi cipuri (ARM, Hitachi H8 ), blocări îmbunătățite , performanță îmbunătățită a rețelei, module de securitate îmbunătățite, vulnerabilități corecte, drivere grafice gratuite îmbunătățite, sisteme de fișiere Btrfs, Ext4, FUSE, F2FS și sisteme de virtualizare KVM și Xen
4.3 1 st luna noiembrie în anul 2015 Grafica Intel Skylake activată implicit, suport AMD Radeon R9 Fury, suport OpenGL pentru VMware, rescriere driver NVIDIA / Nouveau, driver EXT3 dispărut (acceptat de driver EXT4), multe îmbunătățiri pentru XFS, EXT4, F2FS, Btrfs, RAID5 / 6 și TRIM .
4.4 LTS 10 ianuarie 2016 Suport pentru accelerarea grafică în mașina virtuală, îmbunătățirea I / O (directă și asincronă), suport pentru SSD-uri cu canal deschis, înregistrarea RAID5 în stratul MD (RAID / LVM ), programele eBPF pot fi utilizate de utilizatori neprivilegiați, noi piloți .
4.5 13 martie 2016 Îmbunătățește gestionarea consumului de energie. Suport preliminar pentru AMD PowerPlay  (în) . Reelaborare masivă a arhitecturilor ARM v6 și ARM v7.
4.6 15 mai 2016 Adăugarea sistemului de fișiere OrangeFS  (ro) , suport suplimentar pentru USB 3.1, acceptă versiunea 5 a protocolului BATMAN .
4.7 24 iulie 2016 Administrarea controlerelor Microsoft Xbox One, Apple / Intel Thunderbolt (interfață) și USB / IP.
4.8 4 septembrie 2016 Sprijina overclocking de AMDGPU (prin suportul OverDrive).
4,9 LTS 11 decembrie 2016 Îmbunătățiri ale securității kernelului. AMDGPU acceptă AMD PowerPlay  (în) . Compatibil cu Raspberry Pi Zero.
4.10 30 aprilie 2017 Îmbunătățiri (exː Amlogic S905) și remedieri (exː AMD Ryzen ).
4.11 1 st luna mai în 2017 Îmbunătățiri și remedieri.
4.12 2 iulie 2017 Oferă suport pentru USB de tip C și IMSM ( Intel Matrix RAID  (en) Storage Manager).
4.13 3 septembrie 2017 Îmbunătățiri ( ext4 , I / O , accelerație TLS ) și remedieri.
4,14 LTS 12 noiembrie 2017 Creșterea RAM maximă gestionată pe arhitecturi x86_64 , Suport pentru dispozitive ARM noi și remedieri.
4.15 28 ianuarie 2018 Îmbunătățiri în ceea ce privește rezistența la Meltdown (vulnerabilitate) și Spectre (vulnerabilitate) , multe îmbunătățiri în ceea ce privește AMDGPU .
4.16 16 mai 2018 Îmbunătățiri privind rezistența la vulnerabilitățile de securitate din procesoare. Adăugarea celei de-a doua părți a codului privind AMD Secure Encrypted Virtualization  (ro) .
4.17 3 iunie 2018 Îmbunătățiri pentru kernel 4.17.
4.18 12 august 2018 Îmbunătățiri pentru kernel 4.18.
4,19 LTS 22 octombrie 2018 Îmbunătățiri privind nucleul 4.19.
4.20 23 decembrie 2018 Îmbunătățiri pentru kernel 4.20.
5.0 3 martie 2019 Îmbunătățirea driverului gratuit pentru AMD Radeon VIIs, aducând redarea la un nivel atins niciodată de niciun driver GPU gratuit și venind cap la cap cu driverul proprietar pentru Nvidia. .
5.1 5 mai 2019 Îmbunătățiri privind VFS cu adăugarea de fsopen, îmbunătățiri la io asincron cu integrarea io_uring. .


5.2 7 iulie 2019 Îmbunătățiri în kernel 5.2.
5.3 15 septembrie 2019 Îmbunătățiri privind nucleul 5.3.
5.4 24 noiembrie 2019 Îmbunătățiri privind nucleul 5.4.
5.5 26 ianuarie 2020 Îmbunătățiri pentru nucleul 5.5.
5.6 29 martie 2020 Îmbunătățiri pentru nucleul 5.6.
5.7 31 mai 2020 Îmbunătățiri pentru nucleul 5.7.
5.8 2 august 2020 Îmbunătățiri în kernel 5.8.
5.9 11 octombrie 2020 Îmbunătățiri în kernel 5.9.
5.10 13 decembrie 2020 Îmbunătățiri pentru nucleul 5.10.
5.11 14 februarie 2021 Îmbunătățiri pentru nucleul 5.11.


Sursa: www.kernel.org

 

Managementul versiunilor

Nucleul a fost menținut mult timp fără controlul versiunii sistemului , în primul rând pentru că Linus Torvalds nu-i plăcea sistemele de control al versiunilor centralizate.

În 2002 , nucleul a trecut la Bitkeeper , un sistem propriu de control al versiunilor care îndeplinea cerințele tehnice ale Linus Torvalds. Utilizarea acestui software a fost oferită gratuit dezvoltatorilor de nuclee . Cu toate acestea, nefiind software gratuit , alegerea acestui produs a provocat controverse în comunitate. Sistemul nu a fost, de exemplu, interoperabil cu sistemele de control al versiunii open source, cum ar fi CVS și SVN .

În Aprilie 2005, Eforturile lui Andrew Tridgell de inginerie inversă Bitkeeper au determinat BitMover, editorul acelui software, să întrerupă suportul pentru dezvoltarea Linux. Ca răspuns, Linus Torvalds și câțiva alții au dezvoltat un nou sistem de control al versiunilor: Git . O primă versiune a Git a fost scrisă în câteva săptămâni, iar două luni mai târziu, a fost lansată o nouă versiune a nucleului dezvoltat împreună cu Git. Dezvoltarea și întreținerea software-ului Git au fost apoi lăsate rapid în sarcina lui Junio ​​Hamano și a comunității. De atunci a fost adoptat pe scară largă, printre altele, de comunitatea software-ului liber.

Caracteristici tehnice

Compilație de nucleu

La fel ca toate programele de calculator, nucleul Linux este scris ca cod sursă și trebuie transformat într-un binar executabil pentru a fi înțeles de microprocesor.

În măsura în care codul sursă al nucleului Linux conține o cantitate foarte mare de funcționalități, utilizatorul poate alege să integreze doar cele care sunt utile sau cele mai bine adaptate acestuia (multe funcționalități sunt concurente): este etapa de configurare a nucleului.

Marea majoritate a distribuțiilor GNU / Linux instalează un nucleu precompilat care satisface nevoile stațiilor de lucru și serverelor. Prin urmare, este rar ca un utilizator Linux să fie nevoit să compileze un nucleu. Compilația face posibilă adaptarea nucleului la nevoi specifice, cum ar fi suportul hardware-ului neobișnuit, activarea funcționalităților experimentale sau adaptarea la anumite platforme, cum ar fi sistemele încorporate.

Codul sursă al kernel - ului Linux este disponibil la kernel.org , dar distribuții GNU / Linux oferă , de asemenea , surse ambalate la depozitele lor.

Cel mai important pas în construirea unui nucleu personalizat este configurarea nucleului. Opțiunile de configurare sunt declarate în fișier .config, fiecare corespunde unei caracteristici a nucleului, pe care se decide să o folosească sau nu. În general sunt posibile trei opțiuni:

  • Y : funcționalitatea este compilată și implementată în imaginea nucleului
  • M : caracteristica este compilată ca un modul
  • N : caracteristica este ignorată

Unele opțiuni sunt o alegere binară: funcționalitatea este inclusă în imaginea kernelului sau nu este compilată.

Există mai multe instrumente pentru ajustarea configurației:

  • make config : program în modul text care listează toate opțiunile și vă cere să introduceți alegerea
  • make menuconfig : utilitar în modul text scris cu ncurses , permite navigarea mai ușoară în configurație
  • make gconfig : instrument grafic bazat pe GTK +
  • make xconfig : instrument grafic bazat pe Qt
  • make defconfig : instrument folosit pentru recuperarea parametrilor impliciți de configurare a nucleului. Acești parametri sunt dați de dezvoltatorii de nucleu de fiecare dată când nucleul este eliberat.
  • make oldconfig : instrument care permite recuperarea parametrilor de configurare a unei versiuni vechi a nucleului pentru a nu porni din nou configurația de la zero.
  • make olddefconfig : instrument care permite recuperarea parametrilor impliciți de configurare a nucleului și setarea implicită a celorlalți parametri.
  • make localmodconfig : instrument utilizat pentru recuperarea parametrilor de configurare a nucleului care rulează în prezent pe mașină pentru a încărca doar modulele necesare.

Compilarea nucleului și a modulelor se face prin comandă make. Această operațiune poate dura destul de mult, totuși folosirea argumentului -jreduce timpul de compilare. Acest lucru în detrimentul reacției altor programe și, prin urmare, a sistemului de operare. Instalația este automat, comenzile make installși make modules_installpermit , respectiv , pentru a instala imaginea kernel - ului și modulele sale.

Pentru a permite sistemului să pornească cu noua imagine a nucleului, este necesar să configurați încărcătorul de încărcare ( LILO , GRUB ) pentru a rula imaginea nucleului la pornire. Cu ( GRUB , GRUB2 ) comanda update-grub automatizează configurarea.

Distribuția Debian oferă un utilitar, make-kpkgcare automatizează pașii de mai sus și creează pachete Debian. Aceasta permite apoi implementarea ușoară pe un număr mare de mașini. Altfel, încă pentru debian, putem introduce comenzilesudo su ; make menuconfig ; make deb-pkg ; cd ../ ; dpkg -i *deb

Interfețe

Portabilitate

Deși obiectivul inițial al proiectului a fost doar de a furniza un nucleu asemănător UNIX pe arhitecturi x86 , disponibilitatea surselor a permis contribuitorilor să îl adapteze la un număr foarte mare de arhitecturi .

Linux poate rula pe computere de consum, precum și pe supercomputerele de top din Top 500. noiembrie 2011 : în acest clasament, Linux a fost prezent pe 91,4% din mașini.

Nucleul este folosit și pe sistemele încorporate, prevăzute cu hardware mai modest; unele dintre cele mai cunoscute exemple sunt sistemele de navigație prin satelit TomTom sau telefoanele cu distribuție Android Linux .

Codificarea caracterelor

În timp ce majoritatea aplicațiilor sunt dezvoltate pentru a funcționa cu anumite codificări de caractere , proiectarea kernel-ului Linux este de așa natură încât codificarea caracterelor utilizate nu este cunoscută. În special, la fel ca în vechiul Unix, numele fișierelor este considerat ca un șir de octeți, fără a fi posibil să se cunoască într-un mod determinist ce text specific reprezintă, în absența cunoașterii codării caracterelor.

În ceea ce privește shebang-ul , nucleul Linux presupune că scripturile vor fi scrise într-o codificare a caracterelor care extinde ASCII , fără a include un octet de pavilion înainte de primul caracter, așa cum se poate întâmpla în Unicode . Cu toate acestea, textul Unicode poate trece prin nucleu, mai ales atunci când accesează sistemele de fișiere NTFS sau CIFS / Samba .

Conflicte

Un simplu hobby al unui student la început, nucleul Linux a permis apariția sistemelor de operare libere în competiție directă cu alte sisteme de operare comerciale. De la lansarea sa pe multe arhitecturi (după versiunea 1.0), a fost ținta acțiunilor legale  :

  • Pe marcă: în 1995 , când Linux a dobândit deja o anumită notorietate, un individ a avut ideea de a înregistra marca Linux , lucru pe care nimeni nu-l făcuse. Reacția a fost plină de viață în întreaga comunitate, disputa a fost soluționată în afara instanței și Linus a devenit proprietarul numelui Linux (și, prin urmare, liber să-l refuze sau nu unei distribuții considerate prea comerciale).
  • Despre dreptul de autor: un proces opus SCO la IBM pe tema kernel - ului Linux: a se vedea pe acest subiect SCO împotriva Linux .
  • În ceea ce privește brevetele software: incompatibile cu ideea de interoperabilitate esențială pentru succesul software-ului liber, brevetele software constituie o amenințare pentru Linux. Astfel de brevete sunt eliberate în Statele Unite, dar au fost respinse de Parlamentul European .

Recenzii

Brad Spengler , dezvoltator la grsecurity , acuză nucleul Linux că uneori își concentrează eforturile asupra funcționalității în detrimentul securității. El susține că Linus Torvalds i-a spus că nu este interesat să adauge opțiuni de securitate utile pentru a evita depășirile de tampon , deoarece ar încetini încărcarea aplicațiilor .

El critică absența unei persoane responsabile oficial de securitate, cu care ar fi posibil să comunice în privat și în deplină siguranță. În schimb, singura soluție este să trimiteți un e-mail către o listă de corespondență cu probleme de securitate în care vulnerabilitățile descoperite sunt uneori folosite în scopuri rău intenționate înainte de lansarea unei actualizări de securitate, în timp ce utilizatorii Linux nu sunt conștienți de existența acestui defect.

În cele din urmă, pune sub semnul întrebării implementarea sistemului LSM de la versiunea 2.6 a nucleului, care ar fi fost implementat lax și ar fi facilitat inserarea de rootkit-uri invizibile în sistem, trecându-le ca module de securitate. Această revizuire nu mai este relevantă datorită modificărilor făcute de la versiunea 2.6.24.

Note și referințe

  1. (în) „  Este oficial, Linux a fost lansat la 17 septembrie 1991  ” (accesat la 10 aprilie 2018 )
  2. Linus Torvalds , „  Linux 5.12  ” ,25 aprilie 2021(accesat la 26 aprilie 2021 )
  3. (în) Linus Benedict Torvalds , „  comp.os.minix  ” ,August 1991(accesat la 6 septembrie 2009 )
  4. Aceste informații sunt preluate din documentul Nașterea Linux , disponibil pe Wikisource . Conține mesajele în cauză și traducerile acestora.
  5. Note de lansare pentru Linux v0.12
  6. (în) „  Kernel Linux Versiunea 1.0.0 lansată  ” pe www.webdevelopersnotes.com (accesat la 7 decembrie 2017 )
  7. (în) Nate Larkin , Samson și călugării pirat: chemarea bărbaților la frăția autentică , Thomas Nelson,18 februarie 2007, 224  p. ( ISBN  978-1-4185-7769-8 , citit online )
  8. Potrivit lui Lars Wirzeniu într-o prezentare susținută în 1998: Linux Anecdotes
  9. "  US Reg nr: 1916230  " , Statele Unite ale Americii de Brevete și Mărci (accesat la 1 st aprilie 2006 )
  10. Sébastien Broca , Utopia software-ului liber: de la computerizarea la reinvenția socială , Ed. Stowaway,2013( ISBN  978-2-916952-95-6 și 2916952950 , OCLC  867598251 , citiți online )
  11. catedrala și bazarul , de Eric S. Raymond.
  12. [PDF] Fundația Linux, „  Linux Kernel Development  ” ,2009(accesat la 4 februarie 2010 )
  13. „  The Linux Kernel Open Source Project: Languages ​​Languages  ” , pe Open Hub (accesat la 30 septembrie 2015 )
  14. Open Source: 75% din colaboratorii Linux sunt plătiți pe ZDNet
  15. Mesajul lui Linus pe LKML
  16. Lansarea Linux 2.1.80
  17. Kernel 2.6.16 lansat pe LinuxFr.org
  18. Kernel 2.6.17 lansat pe LinuxFr.org
  19. Kernel 2.6.18 lansat pe LinuxFr.org
  20. Kernel 2.6.19 lansat pe LinuxFr.org
  21. Kernel 2.6.20 lansat pe LinuxFr.org
  22. Kernel 2.6.21 lansat pe LinuxFr.org
  23. Kernel 2.6.22 lansat pe LinuxFr.org
  24. Kernel 2.6.23 lansat pe LinuxFr.org
  25. Kernel 2.6.24 lansat pe LinuxFr.org
  26. Kernel 2.6.25 lansat pe LinuxFr.org
  27. Kernel 2.6.26 lansat pe LinuxFr.org
  28. Kernel 2.6.27 lansat pe LinuxFr.org
  29. Kernel 2.6.28 lansat pe LinuxFr.org
  30. Kernel 2.6.29 lansat pe LinuxFr.org
  31. Kernel 2.6.30 lansat pe LinuxFr.org
  32. Kernel 2.6.31 lansat pe LinuxFr.org
  33. Kernel 2.6.32 lansat pe LinuxFr.org
  34. Kernel 2.6.33 lansat pe LinuxFr.org
  35. Kernel 2.6.34 lansat pe LinuxFr.org
  36. Kernel 2.6.35 lansat pe LinuxFr.org
  37. Kernel 2.6.36 lansat pe LinuxFr.org
  38. Kernel 2.6.37 lansat pe LinuxFr.org
  39. Kernel 2.6.38 lansat pe LinuxFr.org
  40. Kernel 2.6.39 lansat pe LinuxFr.org
  41. „  Kernel Linux 3.0 lansat  ” , pe linuxfr.org ,22 iulie 2011(accesat la 22 aprilie 2015 )
  42. „  Linux kernel 3.1 a fost lansat  ” , pe linuxfr.org ,24 octombrie 2011(accesat la 22 aprilie 2015 )
  43. „  Kernel Linux 3.2 lansat  ” , pe linuxfr.org ,5 ianuarie 2012(accesat la 22 aprilie 2015 )
  44. „  Kernel Linux 3.3 lansat  ” , pe linuxfr.org ,19 martie 2012(accesat la 22 aprilie 2015 )
  45. „  Kernel Linux 3.4 lansat  ” , pe linuxfr.org ,21 mai 2015(accesat la 22 aprilie 2015 )
  46. „  Kernel Linux 3.5 lansat  ” , pe linuxfr.org ,22 iulie 2012(accesat la 22 aprilie 2015 )
  47. „  Kernel Linux 3.6 lansat  ” , pe linuxfr.org ,1 st octombrie 2012(accesat la 22 aprilie 2015 )
  48. „  Kernel Linux 3.7 lansat  ” , pe linuxfr.org ,11 decembrie 2012(accesat la 22 aprilie 2015 )
  49. „  Kernel Linux 3.8 lansat  ” , pe linuxfr.org ,19 februarie 2015(accesat la 22 aprilie 2015 )
  50. „  Kernel Linux 3.9 lansat  ” , pe linuxfr.org ,29 aprilie 2013(accesat la 22 aprilie 2015 )
  51. „  Kernel Linux 3.10 lansat  ” , pe linuxfr.org ,3 iulie 2013(accesat la 22 aprilie 2015 )
  52. „  Kernel Linux 3.11 lansat  ” , pe linuxfr.org ,3 septembrie 2013(accesat la 22 aprilie 2015 )
  53. „  Kernel Linux 3.12 lansat  ” , pe linuxfr.org ,6 noiembrie 2013(accesat la 22 aprilie 2015 )
  54. „  Kernel Linux 3.13 lansat  ” , pe linuxfr.org ,21 ianuarie 2015(accesat la 22 aprilie 2015 )
  55. (în) „  Linux 3.14 AMD’s Recording Cryptographic Coprocessor - Phoronix  ” pe phoronix.com (accesat la 24 februarie 2021 ) .
  56. „  Kernel Linux 3.14 lansat  ” , pe linuxfr.org
  57. „  Kernel Linux 3.15 lansat  ” , pe linuxfr.org ,12 iunie 2014(accesat la 22 aprilie 2015 )
  58. „  Kernel Linux 3.16 lansat  ” , pe linuxfr.org ,7 august 2014(accesat la 22 aprilie 2015 )
  59. „  Kernel Linux 3.17 lansat  ” , pe linuxfr.org ,13 octombrie 2014(accesat la 22 aprilie 2015 )
  60. „  Kernel Linux 3.18 lansat  ” , pe linuxfr.org ,17 decembrie 2014(accesat la 22 aprilie 2015 )
  61. „  Kernel Linux 3.19 lansat  ” , pe linuxfr.org ,16 februarie 2015(accesat la 22 aprilie 2015 )
  62. „  Kernel Linux 4.0 lansat  ” , pe linuxfr.org ,22 aprilie 2015(accesat la 22 aprilie 2015 )
  63. „  Kernel Linux 4.1 lansat - LinuxFr.org  ” , pe linuxfr.org (accesat la 26 iulie 2015 )
  64. „  Kernel Linux 4.2 lansat - LinuxFr.org  ” , pe linuxfr.org (accesat la 17 septembrie 2015 )
  65. (în) "  kernel Linux 4.4 lansat - kernelnewbies.org  "
  66. „  Kernel Linux 4.5 lansat - LinuxFr.org  ” , pe linuxfr.org (accesat la 20 aprilie 2016 )
  67. „  Kernel Linux 4.6 lansat - LinuxFr.org  ” , pe linuxfr.org (accesat la 6 iunie 2016 )
  68. „  Kernel Linux 4.7 lansat - LinuxFr.org  ” , pe linuxfr.org (accesat la 28 septembrie 2016 )
  69. „  Kernel Linux 4.8 lansat - LinuxFr.org  ” , pe linuxfr.org (accesat la 16 decembrie 2016 )
  70. „  Kernel Linux 4.9 lansat - LinuxFr.org  ” , la linuxfr.org (accesat la 8 februarie 2017 )
  71. „  Kernel Linux 4.10 lansat - LinuxFr.org  ” , la linuxfr.org (accesat la 8 februarie 2017 )
  72. „  Kernel Linux 4.11 lansat - LinuxFr.org  ” , pe linuxfr.org (accesat la 26 iunie 2020 )
  73. „  Linux_4.12 - Linux Kernel Newbies  ” , la kernelnewbies.org (accesat la 24 februarie 2021 ) .
  74. „  Linux_4.13 - Linux Kernel Newbies  ” , la kernelnewbies.org (accesat la 24 februarie 2021 ) .
  75. „  Linux_4.14 - Linux Kernel Newbies  ” , la kernelnewbies.org (accesat la 24 februarie 2021 ) .
  76. „  Linux_4.15 - Linux Kernel Newbies  ” , la kernelnewbies.org (accesat la 24 februarie 2021 ) .
  77. „  Linux_4.16 - Linux Kernel Newbies  ” , la kernelnewbies.org (accesat la 24 februarie 2021 ) .
  78. „  Linux_4.17 - Linux Kernel Newbies  ” , la kernelnewbies.org (accesat la 24 februarie 2021 ) .
  79. „  Linux_4.18 - Linux Kernel Newbies  ” , la kernelnewbies.org (accesat la 24 februarie 2021 ) .
  80. „  Linux_4.19 - Linux Kernel Newbies  ” , la kernelnewbies.org (accesat la 24 februarie 2021 ) .
  81. „  Linux_4.20 - Linux Kernel Newbies  ” , la kernelnewbies.org (accesat la 24 februarie 2021 ) .
  82. „  Kernel Linux 5.0 lansat - LinuxFr.org  ” , la linuxfr.org (accesat la 24 februarie 2021 ) .
  83. „  Kernel Linux 5.1 lansat - LinuxFr.org  ” , la linuxfr.org (accesat la 24 februarie 2021 ) .
  84. http://lkml.iu.edu/hypermail/linux/kernel/1907.0/05444.html
  85. https://lore.kernel.org/lkml/CAHk-=wiP4K8DRJWsCo=20hn_6054xBamGKF2kPgUzpB5aMaofA@mail.gmail.com/
  86. https://lore.kernel.org/lkml/CAHk-=wjmzaD=BZ1hjUYu+RTnSGDLfCRwCdg99GeQpCjEwo9uzw@mail.gmail.com/
  87. https://lore.kernel.org/lkml/CAHk-=wigRZ6TSJU09bMk3Df2DiOw83B7TrQUq+iXroQCK5EVAQ@mail.gmail.com/
  88. https://lore.kernel.org/lkml/CAHk-=wi9ZT7Stg-uSpX0UWQzam6OP9Jzz6Xu1CkYu1cicpD5OA@mail.gmail.com/
  89. https://lore.kernel.org/lkml/CAHk-=wiZGrCkiBB1V7bxp8NZH6yWi9mPM4ptMW16OzOiNprBFA@mail.gmail.com/
  90. https://lore.kernel.org/lkml/CAHk-=wj+mDPbj8hXspXRAksh+1TmPjubc9RNEbu8EVpYyypX=w@mail.gmail.com/
  91. https://lore.kernel.org/lkml/CAHk-=wi-u86++np80GQvgDuARdt9xpBNho6SjHLmYgm8jibGag@mail.gmail.com/
  92. https://lore.kernel.org/lkml/CAHk-=whCKhxNyKn1Arut8xUDKTwp3fWcCj_jbL5dbzkUmo45gQ@mail.gmail.com/
  93. https://lore.kernel.org/lkml/CAHk-=wg8LpRi9+P2_V+ehJ2_EoJifNh2QmVf47aLXfkCd-1UAQ@mail.gmail.com/
  94. Distribuirea nucleului Linux
  95. „NOTĂ! Detest modelul centralizat SCM” Mesaj de la Torvalds pe lista de corespondență a nucleului
  96. Linux Torvalds, „  Kernel SCM saga ..  ” ,2005(accesat la 5 noiembrie 2009 )
  97. (în) Linux Kernel Mailing List, "  Linux 2.6.12  " ,17 iunie 2005
  98. „  Grafic pe Top500.org  ” ( ArhivăWikiwixArchive.isGoogle • Ce să faci? ) (Accesat la 30 martie 2013 )
  99. Linux Journal 1997
  100. The Computing World 07/07/2005
  101. (în) John P. Mello Jr. „  Developer Raps Linux Security  ” pe LinuxInsider ,1 st ianuarie 2005(accesat pe 13 ianuarie 2013 )
  102. (in) politică față de sistemul LSM grsecurity.net
  103. (în) Articol de lwn.net despre pasajul în API static LSM

Anexe

Articole similare

Filmografie

  • Revolution OS , al lui JTS Moore  (în) 2001
  • Numele codului: Linux , de Hannu Puttonen, 2002

linkuri externe