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]

  1. a b Writing a Linux Kernel Module — Part 1: Introduction derekmolloy.ie. Viitattu 16.2.2020. (englanniksi) 
  2. Silberschatz & Galvin & Gagne: Operating System Concepts Essentials (PDF) cs.columbia.edu. Arkistoitu 28.6.2016. Viitattu 10.11.2017.
  3. Nitesh Dhanjani & Gustavo Rodriguez: Loadable Kernel Module Programming and System Call Interception 1.2.2001. Linux Journal. Viitattu 22.11.2017.
  4. Writing a kernel module for FreeBSD freesoftwaremagazine.com. Viitattu 12.8.2019. (englanniksi)
  5. Benedikt Meurer: Introduction to NetBSD loadable kernel modules home.unix-ag.org. Viitattu 12.8.2019. (englanniksi)
  6. Loadable Kernel Modules source.android.com. Viitattu 16.2.2020. (englanniksi) 
  7. a b 2. Introduction to Linux Loadable Kernel Modules tldp.org. Viitattu 16.2.2020. (englanniksi) 
  8. What Determines When a Driver Is Loaded 20.4.2017. Microsoft. Viitattu 16.2.2020. (englanniksi) 
  9. Introduction developer.apple.com. Viitattu 16.2.2020. (englanniksi)

From Wikipedia, the free encyclopedia · View on Wikipedia

Developed by razib.in