Linux gadījuma lietotājiem un nedaudz hardcore faniem ir operētājsistēma. Tomēr purists, nosaukums "Linux" ir rezervēts kodolam, kas pilnvaro operētājsistēmu. Ja jums ir interese par to, kas ir Linux kodols, ļaujim atbildēt uz šo jautājumu, pievēršoties jaunam lietotājam.
Režīmi
Pirms izskaidrojam, kas ir kodols, ir svarīgi saprast terminus "lietotāja režīms" un "kodola režīms". Lietotāja režīms ir tas, ka, izpildot kodu, nav spējas tieši piekļūt aparatūrai vai etalondegvielai. Lai piekļūtu aparatūrai un atmiņai, lietotāja režīmā ievadītajam kodam jāiesniedz norādes uz sistēmas lietojumprogrammu saskarnēm (API). Kodola režīms ir tad, kad koda izpildei ir neierobežota piekļuve visai aparatūrai un ir rezervēta visticamāk uzticamām operētājsistēmas funkcijām.
Kas ir kodols?
Katrai operētājsistēmai ir kodols. Katrā Windows, MacOS, iOS, Android, Chrome OS un Linux ir zema līmeņa sistēma, kas ir atbildīga par visu lietojumprogrammu saskarni ar datora fizisko aparatūru. Bez kodola neviens no jūsu lietojumprogrammām nevarētu izmantot fizisko datoru; progr, piemēram, Firefox, Chrome, LibreOffice, MS Office vai Outlook nedarbosies. Kodols ir arī atbildīgs par to, lai procesi varētu apmainīties ar informāciju, izmantojot tā saukto starpprocesu komunikāciju (IPC).
Ir (vispārīgi runājot) trīs veidu kodoli:
- Monolīti kodi: šie kodoli ietver CPU, atmiņu, IPC, ierīces draiverus, failu sistēmu vadību un sistēmas servera zvanus. Tā ir arī atbildīga par bezmaksas sistēmas atmiņas nodošanu lietojumprogrammām. Šiem kodola tipiem parasti ir labāka pieeja aparatūras un daudzuzdevumu veikšanai.
- Mikrokerneles: Mikrokodiem ir minimālisma pieeja, un tie var pārvaldīt tikai CPU, atmiņu un IPC.
- Hibrīda kodoli: Hibrīda kodoliem ir iespēja izlemt, ko viņi vēlas palaist vai nu Lietotāja vai Kernel režīmā. Lai gan tas nodrošina vislabāko no abām pasaulēm, no aparatūras ražotājiem ir nepieciešams daudz vairāk, lai izveidotu draiverus, kas kalpo saskarnei starp darbošanās kodu un aparatūru.
Linux izmanto atklātu kodolu, monolītu kodolu, bet MacOS un Windows izmanto gan Hybrid kodolu. Linux kodolu 1991. gadā ieguva Linus Torvalds. Līdz šim Torvalds turpina būt Linux kodola vadošais izstrādātājs, bet izstrādātāji no visas pasaules piedalās Linux kodolā. Patiesībā tiek lēsts, ka gandrīz 10000 izstrādātāji no vairāk nekā 1000 uzņēmumiem ir veicinājuši Linux kodolu (kopš izsekošanas sākās 2005. gadā).
Kur ir kodols?
Ja atverat termināla logu un izsniedzat komandu ls / boot, jūs redzēsit failu, ko sauc vmlinuz-VERSION (Ja VERSION ir izlaiduma nosaukums vai numurs). Vmlinuz fails ir faktiskais bootable Linux kodols, un "z" ir norādīt, ka kodols ir saspiests; tā vietā vmlinux mums ir vmlinuz.

Šajā / boot direktorijā ir citi svarīgie kodola faili, piemēram, initrd.img-VERSION, system.map-VERSION un config-VERSION (ja VERSION ir vai nu nosaukums vai izlaiduma numurs). Šie citi faili ir paredzēti šādiem mērķiem:
- initrd: izmanto kā nelielu RAM disku, kas ekstrakts un izpilda faktisko kodola failu.
- system.map: izmanto atmiņas pārvaldībai pirms kodola ielādes.
- konfigurācija: uzdod kodolam par to, kādas iespējas un moduļus ielādēt.
Moduļi
Bez moduļiem kodols nebūtu daudz izmantot. Moduļi efektīvi ieslēdz draiverus, kas nepieciešami, lai sazinātos ar aparatūru, neizmantojot visu jūsu sistēmas atmiņu. Moduļi arī pievieno kodola funkcionalitāti, piemēram, sazinoties ar perifērijas ierīcēm, pārvaldot failu sistēmas, drošību utt. Ir iespējams sarakstus, pievienot un noņemt moduļus kodolam ar šādām komandām:
- lsmod uzskaitīs visus pašreiz ielādētos kodola moduļus.
- insmod ielādēs kodola moduli darbināmajā kodolā.
- rmmod izlems moduli no darbības kodola.
Tātad, redzot, ar dažu vienkāršu komandu palīdzību Linux kodols var būt diezgan elastīgs.
Pašreizējā kodola
Sākot ar šo rakstīšanu, stabils Linux kodols ir 4.18.5, bet ne visos Linux sadalījumos būs iekļauts jaunākais kodols. Patiesībā atjauninātais elementārā OS darbvirsmas izplatīšana darbojas ar kodolu 4.15.0-30. Ko tas nozīmē? Attiecībā uz jaunāko kodolu elementārajā operētājsistēmā tas nozīmē:
- 4 ir lielākā versija
- 15 ir maza versija
- 0-30 ir pārskatīšana
Ir arī iespējams lejupielādēt dažādas Linux kodola versijas no kernel.org un apkopot to pats. Linux kodola apkopošana ir vislabākais uzdevums tiem, kas tiešām zina, ko viņi dara. Nepareizi apkopots kodols var padarīt sistēmu neiespējamu. Tātad, ja vien neesat gatavs ienirt skaistā uzdevumā apkopot kodu šajā līmenī, izmantojiet noklusējuma kodolu, kas piegādā un atjaunina jūsu izvēlēto izplatīšanu.













