Kui olete Linuxi kasutaja olnud pikka aega, siis teate, et Linuxi distributsioonidel on ainulaadsed versioonid ja igal versioonil on konkreetne koodnimi. Linuxi tuumal on ka erinevad versiooninumbrid, mis toimivad selle seeria identifikaatorina, kuhu kernel kuulub. Siiski on erinevus selle vahel, kuidas kerneli versioonid varem moodustati ja kuidas Linus Torvalds neid praegu nimetab.
Lõpuks tunnete Linuxi kerneli versioonide loomise skeemi paremini ja tunnete end paremini mugav lugeda kerneli versiooninumbreid ja tuvastada erinevaid funktsioone, mis on seotud a konkreetne väljalase.
Traditsiooniline Linuxi kerneli versioon
Kui Linus esimest korda kerneli arendama hakkas, koosnes kasutatav versioonisüsteem lihtsalt suurenevast muutujaskeemist, mis algas nulliga (0.x). Algselt oli Linus ainuke, kes projekti kallal töötas ja sellest versioonisüsteemist piisas uute kerneli väljaannete dokumenteerimiseks ja levitamiseks.
Siin on mõned kerneli väljaanded, mis järgisid seda nimetamisskeemi:
Hiljem, kui rohkem arendajaid hakkas projekti panustama ning muudatuste ja paikade arvu märkimisväärselt suurenenud, otsustati, et see versioonimisskeem ei sobi sellise tarkvara jaoks nagu a kernel. Ja alates versioonist 1.0 võttis Linus kasutusele uue skeemi koos mõne täiendava muutujaga.
Kirjeldavama versioonisüsteemi kasutuselevõtt
1994. aastal, pärast Linuxi kerneli versiooni 1.00 väljalaskmist, hakkas Linus kasutama uut versioonisüsteemi, mis kasutas süntaksis kolme muutujat: "a.b.c". Need muutujad (a, b ja c) tähistavad vastavalt põhiväljalaset, väiksemat väljalaset ja versiooni numbrit konkreetse kerneli versiooni jaoks.
Võtke näiteks Linuxi kernel 1.1.95. Saate selle dekodeerida esimese suurema väljalaskena, esimese väikese versioonina ja 95. versioonina.
Tol ajal tähistasid isegi väiksemad versiooninumbrid stabiilseid kerneli väljalaseid, veidrad aga arendusväljalaseid. Eraldi harude olemasolu oli oluline, et arendajad saaksid kernelisse uusi funktsioone lisada ja testida, ilma et see mõjutaks stabiilset haru.
Kerneli arendajad lisavad ja täiustavad arendusharus uusi funktsioone, kuni see muutub LTS-i tuumana vabastamiseks piisavalt stabiilseks. LTS-i kernel 3.2 töötati välja versiooni 3.1 uute funktsioonide stabiliseerimisel ja sarnaselt uue arendustuum 3.3 hargnes 3.2-st välja, et teha ruumi uutele funktsioonidele, mis seejärel kasutusele võetakse Linux 3.4.
Alates Linuxi kernelist 2.4 tähistas neljas muutuja kerneli nimes plaastri väljalaseid. Võib öelda, et versioon 2.4.37.10 on tuuma 2.4.37 kümnes paigaväljalase.
Plaastri väljalase ei tähenda kerneli versioonis paigatud probleemide arvu. Selle asemel loendab see, mitu korda värskendatud kernel pärast leitud probleemide parandamist välja lasti.
Kuni Linux 2.6-ni kasutati seda versioonisüsteemi ja see eristas tõhusalt konkreetset versiooni teistest. Versioonide arvu ja paikade väljalasete lisamine versiooninumbrisse oli kirjeldav, kuid see tähendas pikemate ja keerukamate kerneli versioonide olemasolu. Ja jällegi oli vaja uut ja paremat skeemi.
Kuidas praegu Linuxi tuuma versioone nimetatakse?
Linuxi versiooniga 3.0 jättis Linus neljanda muutuja versiooninumbrist välja. Nüüd moodustatakse kerneli versioon vastavalt süntaksile: a.b.c, kus a, b ja c on vastavalt põhiväljaannete, väiksemate väljaannete ja versioonide arv. See versiooniskeemi skeem sarnaneb 1.0 ja 2.4 kerneli väljaannete vahel kasutatavale.
Tänu edusammudele aastal versioonikontrollisüsteemid, saavad kaasautorid nüüd sujuvalt töötada stabiilsete harudega ja lisada uusi funktsioone, ilma et juba töötavad stabiilsed väljaanded kogemata katkeks. Seetõttu on stabiilsete ja tootmisharude jaoks paaris ja paaritu väiksemate versiooninumbrite kasutamine kernel muutus üleliigseks pärast kerneli versiooni 4.0 kasutuselevõttu ja esimest LTS-i väljalaset (4.1) aastal a 4.x sarjal oli paaritu alaealise versiooni number.
Võite märgata ka mõnda tähemärki versiooninumbri lõpus, näiteks rcX. Ülevaate kandidaadid (või lühidalt "rc") on kerneli eelvaateväljaanded ja paigale eelnevad versioonid, mida arendajad peavad vigade ja muude probleemide eemaldamiseks parandama. Need asendavad arendusväljalaseid, mida varem tähistati paaritu väiksema versiooninumbriga.
Kuigi need väljaanded on reserveeritud spetsiaalselt kerneli arendajatele, et nad saaksid teatatud probleeme parandada ja uusi funktsioone juurutada, saate ka Laadige alla ja testige neid kerneli ülevaatuse kandidaate, kui soovite, kuid üldiselt pole see soovitatav, kuna see on suurem osa arendustegevusest juhtub. Kerneli uusim eelvaateversioon selle kirjutamise ajal on 5.19-rc6.
Uute versioonide loomiseks suurendatakse eelnevat muutujat, kui muutuja väärtus jõuab teatud arvuni. Näiteks põhiversiooni värskendatakse järgmise numbrini, kui kõrvalversioonide arv läheneb 20-le.
Linus mainis tema 5.0 kerneli arenduspost et ta muutis peamise numbri lihtsalt viieks, kuna väiksemate väljalaskmiste arv läks liiga suureks, et seda sõrmedel ja varvastel lugeda (20!). Samamoodi vastavalt kernel.org, suurendatakse peamise versiooni numbrit, kui number pärast esimest punkti hakkab tunduma "liiga suur". Kerneli lõplik versioon 3.x seeria oli 3.19 ja viimane suurem 4.x kerneli seeria oli 4.20, mis seejärel tõsteti 5.0-ni.
Alates versioonist 3.0 Linuxi kernel on järginud seda versioonimisskeemi ja see on osutunud tõhusaks nii kaua kui kolm peamist kerneli väljalaset (versioonid 3.x, 4.xja 5.x).
Linuxi tuuma väljalase tuvastamine versiooninumbrite abil
Arvestades välja antud Linuxi kerneli versioonide tohutut arvu, on vaja korralikku süsteemi, mis tuvastaks ja eristaks konkreetset versiooni teistest. Uue kerneli versioonide loomise skeemi abil saab nüüd tõhusalt tuvastada ja võrrelda tuuma versioone ning on lihtne teada, milline kerneli versioon on uusim ja milline varem välja antud.
Kui soovite kontrollida oma süsteemi praegu installitud Linuxi tuuma versiooni, saate seda teha Linuxi käsu uname abil, mis võimaldab teil loetleda süsteemiga seotud teavet. Olenevalt distrost, mida kasutate, võib uname kuvatav versiooninumber erineda tegelikest Linuxi kerneli versioonidest.