Ladattava ytimen moduuli
Ladattava ytimen moduuli on käyttöjärjestelmän ytimen tukema toiminto, jolla ytimen toimintoja voidaan lisätä tai poistaa siitä ajon aikana kääntämättä ydintä uudelleen lähdekoodista.[1] Ytimen moduulit suoritetaan ytimen osoiteavaruudessa kun taas käyttäjän sovellukset suoritetaan käyttäjän osoiteavaruudessa, joissa ei ole päällekkäisyyksiä.[1]
Muun muassa Linux ja Solaris toteuttavat ladattavia moduuleja ytimen osoiteavaruuteen.[2][3] Myös FreeBSD ja NetBSD tukevat ladattavia moduuleja.[4][5] Androidissa ladattavien moduulien tuki on vaadittu ominaisuus.[6]
Joissakin käyttöjärjestelmissä ytimen moduulia kutsutaan "laajennukseksi".[7] Windows NT:ssä käytetään termiä ydin-moodin ajuri (engl. kernel-mode driver).[8] macOS:ssä ytimen moduuleja kutsutaan ytimen laajennukseksi (engl. kernel extension).[9]
Ladattavia moduuleja voidaan tehdä muun muassa laiteajureille, tiedostojärjestelmätuelle, verkkoprotokollille, uusille järjestelmäkutsuille ja niin edelleen.[7]
Lähteet
[muokkaa | muokkaa wikitekstiä]- ↑ a b Writing a Linux Kernel Module — Part 1: Introduction derekmolloy.ie. Viitattu 16.2.2020. (englanniksi)
- ↑ Silberschatz & Galvin & Gagne: Operating System Concepts Essentials (PDF) cs.columbia.edu. Arkistoitu 28.6.2016. Viitattu 10.11.2017.
- ↑ Nitesh Dhanjani & Gustavo Rodriguez: Loadable Kernel Module Programming and System Call Interception 1.2.2001. Linux Journal. Viitattu 22.11.2017.
- ↑ Writing a kernel module for FreeBSD freesoftwaremagazine.com. Viitattu 12.8.2019. (englanniksi)
- ↑ Benedikt Meurer: Introduction to NetBSD loadable kernel modules home.unix-ag.org. Viitattu 12.8.2019. (englanniksi)
- ↑ Loadable Kernel Modules source.android.com. Viitattu 16.2.2020. (englanniksi)
- ↑ a b 2. Introduction to Linux Loadable Kernel Modules tldp.org. Viitattu 16.2.2020. (englanniksi)
- ↑ What Determines When a Driver Is Loaded 20.4.2017. Microsoft. Viitattu 16.2.2020. (englanniksi)
- ↑ Introduction developer.apple.com. Viitattu 16.2.2020. (englanniksi)
Aiheesta muualla
[muokkaa | muokkaa wikitekstiä]- The Linux Kernel Module Programming Guide (PDF) (englanniksi)