Mikä on Linux-ydin? Määritelmä, ominaisuudet ja GPLv2-lisenssi
Tutustu Linux-ydin:in määritelmään, keskeisiin ominaisuuksiin ja GPLv2-lisenssiin — selkeä opas ytimen toimintaan, kehitykseen ja käytäntöihin.
Linux on käyttöjärjestelmän ydin, joka toiminnallisuudeltaan vastaa laitteiston hallinnasta ja resurssien jakamisesta käyttöjärjestelmässä. Ydin tarjoaa järjestelmäkutsut, laitteistoabstrahoinnin, prosessien ajoituksen, muistin hallinnan, laitteiden ajurit sekä virtuaalisen tiedostojärjestelmän rajapinnan. Monet erilaiset Unixin kaltaiset käyttöjärjestelmät käyttävät tätä ydintä; tällaisia järjestelmiä kutsutaan yleisesti Linux-käyttöjärjestelmiksi.
Linux-ydin on julkaistu GNU General Public License version 2 (GPLv2) -lisenssillä, ja sen koodia kehittävät ja ylläpitävät ohjelmoijat, laitevalmistajat ja yritykset ympäri maailmaa. Ytimen kehitys tapahtuu hajautetusti git-versionhallinnan kautta, ja Linus Torvalds toimii ytimen yhteisen kehityshaaran ylläpitäjänä yhdessä lukuisten alajoukkueiden ja ylläpitäjien kanssa.
Linux-ytimen keskeisiä ominaisuuksia ja toimintoja ovat muun muassa:
- Laitteistoabstrahointi ja ajurit: laaja tuki erilaisille laitteille ja mahdollisuus lisätä latautuvia moduuleja ajureita varten.
- Prosessinhallinta ja ajoitus: moniprosessointi, monisäikeisyys ja kehittyneet ajoitusalgoritmit suorituskyvyn optimointiin.
- Muistin hallinta: virtuaalimuistin tuki, sivutus, muistinhallinnan optimoinnit ja suurten muistikokojen hallinta.
- Tiedostojärjestelmät ja VFS: abstraktio eri tiedostojärjestelmille (esim. ext4, XFS, btrfs) ja verkon yli toimivat järjestelmät.
- Verkko-ominaisuudet: tehokas verkkopino, tuet monille protokollille ja suorituskykyä parantavat ominaisuudet palvelimille ja reitittimille.
- Turva- ja eristystoiminnot: LSM-laajennukset (esim. SELinux, AppArmor), palomuurit ja karkeammat käyttöoikeuksien hallintamekanismit.
- Säiliöt ja virtualisointi: nimiavaruudet (namespaces), cgroups ja KVM-tuki mahdollistavat konttiteknologiat ja virtualisoinnin.
- Skalautuvuus ja siirrettävyys: ytimen arkkitehtuuri tukee kaikkea sulautetuista järjestelmistä suuriin palvelinympäristöihin ja supertietokoneisiin useilla eri prosessoriarkkitehtuureilla.
Ytimen kehitys- ja julkaisumalli on nopea ja hierarkkinen: päivitykset, korjaukset ja uudet ominaisuudet käsitellään avoimesti kehittäjäyhteisössä, ja säännölliset julkaisut (stable-, longterm- ja integraatioversiot) antavat sekä turvallisuuspäivityksiä että uusia ominaisuuksia jakeluille ja loppukäyttäjille. Kehitys on erittäin modulaarista siten, että eri alajoukkueet vastaavat esimerkiksi verkosta, tiedostojärjestelmistä ja laiteajureista.
GPLv2-lisenssin merkitys Linux-ytimelle:
- Vapaus käyttää ja muokata: kuka tahansa voi käyttää, tutkia ja muokata ytimen lähdekoodia.
- Lähdekoodin saatavuus: jos muokattua tai alkuperäistä ytimen binäärimuotoa jaetaan eteenpäin, jakajan on tarjottava myös lähdekoodi tai kirjallinen tarjous lähdekoodin toimittamisesta.
- Copyleft-vaikutus: GPLv2 vaatii, että johdannaisteokset (eli tyypillisesti muutokset itse ytimeen) pysyvät samalla lisenssillä, mikä varmistaa vapauden säilymisen jatkossakin.
- Vastuuvapaus: lisenssi sisältää normaalisti vastuuvapauslausekkeet (ei takuuta), mikä on tärkeä sekä kehittäjille että jakelijoille.
On syytä huomata, että GPLv2:n soveltaminen käytäntöön voi olla monimutkaista: esimerkiksi moduulien lisenssiasema ja sen katsominen johdannaisteokseksi vai ei on oikeudellinen ja tekninen kysymys, jota eri osapuolet ovat tulkinneet eri tavoin. Käytännössä monet laitevalmistajat ja jakelijat noudattavat kuitenkin GPLv2:n periaatteita tarjotakseen lähdekoodin, kun he laittavat ytimen tai siihen perustuvan ohjelmiston jakeluun.
Jos haluat tutustua Linux-ytimen lähdekoodiin, rakentaa oman ytimen tai seurata kehitystä, saat lähdekoodipaketit ja lisätiedot julkisista arkistoista ja kehitysyhteisön kanavista. Ytimen laaja dokumentaatio, kehittäjäohjeet ja jakeluissa käytetyt konfiguraatiot auttavat aloittamaan ja ymmärtämään, miten juuri sinun laitteellesi sopiva ydin kootaan ja mukautetaan.

Linux-ydin on eri laitteistoissa. Sitä tukevat monet ilmaiset, avoimen lähdekoodin ja omat ohjelmistot.
Historia
Huhtikuussa 1991 Linus Torvalds, tuolloin 21-vuotias, alkoi työstää joitakin yksinkertaisia ideoita käyttöjärjestelmää varten. Elokuun 25. päivänä 1991 Torvalds kirjoitti comp.os.minix:
| " | Olen tekemässä (vapaata) käyttöjärjestelmää (vain harrastus, siitä ei tule suurta ja ammattimaista kuten gnu) 386(486) AT-kloonille. Tämä on hautunut huhtikuusta asti, ja alkaa olla valmis. Haluaisin palautetta asioista, joista ihmiset pitävät/halveksivat minixissä, koska käyttöjärjestelmäni muistuttaa sitä jonkin verran (mm. sama tiedostojärjestelmän fyysinen ulkoasu (käytännön syistä)). | " |
Julkaisun jälkeen monet ihmiset osallistuivat projektiin koodin avulla. Syyskuuhun 1991 mennessä julkaistiin Linuxin versio 0.01. Siinä oli 10 239 riviä koodia. Lokakuussa 1991 julkaistiin Linuxin versio 0.02.
Uutisryhmä alt.os.linux perustettiin, ja 19. tammikuuta 1992 tehtiin ensimmäinen viesti alt.os.linuxiin. Maaliskuun 31. päivänä 1992 alt.os.linuxista tuli comp.os.linux.
X Window System siirrettiin pian Linuxiin. Maaliskuussa 1992 Linuxin versio 0.95 oli ensimmäinen, joka pystyi käyttämään X:ää. Tämä suuri versionumerohyppy (0.1x:stä 0.9x:ään) johtui siitä, että tuntui siltä, että pian julkaistaisiin versio 1.0, josta ei puuttuisi suuria osia.
14. maaliskuuta 1994 julkaistiin Linux 1.0.0, jossa oli 176 250 riviä koodia. Maaliskuussa 1995 julkaistiin Linux 1.2.0 (310 950 riviä koodia).
Linus päätti 9. toukokuuta 1996 ottaa Tux-pingviinin Linuxin maskotiksi.
Linuxin versio 2, joka julkaistiin 9. kesäkuuta 1996, oli merkkipaalu. Vahva kehitys jatkui:
- 25. tammikuuta 1999 - Linux 2.2.0 julkaistiin (1 800 847 riviä koodia).
- 18. joulukuuta 1999 - IBM:n suurkoneiden 2.2.13:n korjaukset julkaistiin, mikä mahdollistaa Linuxin käytön yritysluokan koneissa.
- 4. tammikuuta 2001 - Linux 2.4.0 julkaistiin (3 377 902 riviä koodia).
- 17. joulukuuta 2003 - Linux 2.6.0 julkaistiin (5 929 913 riviä koodia).
- 16. huhtikuuta 2008 - Linux 2.6.25 julkaistiin (9 232 484 riviä koodia).
- 31. toukokuuta 2019 - Linux 5.1.6 julkaistiin.
Tällä hetkellä uusi ytimen versio julkaistaan 2 3/4 kuukauden välein.
Oikeudelliset näkökohdat
Lisenssiehdot
Aluksi Torvalds julkaisi Linuxin lisenssillä, joka ei sallinut kenenkään myydä sitä. Tämä muutettiin pian GNU General Public License (GPL) -lisenssiksi version 0.12 aikana. Tämä lisenssi sallii Linuxin muokattujen ja muokkaamattomien versioiden jakelun ja myynnin, mutta edellyttää, että kaikki nämä kopiot julkaistaan samalla lisenssillä ja että niiden mukana on täydellinen vastaava lähdekoodi.
Torvalds on sanonut Linuxin lisensointia GPL:n alaisuuteen "parhaaksi asiaksi, jonka olen koskaan tehnyt".
Aiheeseen liittyvät sivut
- menuconfig
- Git (ohjelmisto)
- Modprobe
- System.map
- Käyttäjän tila
- Käyttäjäalueen otsikko
Etsiä