Apa itu modul kernel Linux?

1

Saya bertanya-tanya apakah seseorang dapat menjelaskan apa modul kernel Linux untuk seseorang yang berasal dari Windows?

Phenom
sumber

Jawaban:

3

Ini adalah cara memuat kode secara dinamis ke dalam kernel Linux, yang merupakan bagian level terendah dari sistem operasi GNU / Linux. Driver perangkat Windows sering digunakan untuk tujuan serupa. Anda dapat membaca FAQ yang agak lama ini . Beberapa hal telah berubah, tetapi ide dasarnya tetap sama.

Matthew Flaschen
sumber
Jadi, apakah itu seperti driver perangkat Windows?
Phenom
Ya, banyak modul digunakan untuk driver perangkat. Namun, ada tujuan lain, seperti sistem file.
Matthew Flaschen
2

Modul kernel adalah bagian kode yang berdiri sendiri yang dimuat ke dalam kernel untuk memberikan dukungan untuk perangkat keras tertentu.

Misalnya kernel Linux itu sendiri tidak dapat menggunakan port serial (RS-232), tetapi ketika Anda memuat modul kernel yang sesuai, itu bisa.

The lsmodperintah akan menampilkan daftar modul kernel dimuat.

Kenny Rasschaert
sumber
1

Modul kernel Linux setara dalam konsepnya dengan driver perangkat Windows.

Agar perangkat keras berfungsi, Anda memerlukan driver untuknya di Windows, dan Anda memerlukan modul kernel driver perangkat di Linux.

Driver perangkat harus secara langsung mengakses perangkat keras dan karenanya dijalankan dalam mode kernel. Aplikasi pengguna normal dijalankan dalam mode pengguna. Program mode pengguna memiliki perlindungan terhadap MMU CPU dan tidak dapat mengganggu pengoperasian program mode pengguna lain atau apapun yang berjalan dalam mode kernel. Hal-hal yang berjalan dalam mode kernel tidak memiliki perlindungan ini, tetapi dapat mengakses perangkat keras secara langsung. Jadi ini sebabnya mereka disebut modul kernel.

Anda dapat membangun kernel Linux Anda sendiri, dan memasukkan modul ke dalam kernel. Mereka kemudian berhenti menjadi modul pada saat itu dan merupakan bagian dari kernel. Biasanya bermanfaat jika hanya membangun sejumlah kecil driver yang diperlukan untuk mem-boot dan membiarkan deteksi perangkat keras memuat sisa dari apa yang dibutuhkan, meskipun Anda dapat membangun kernel "statis" yang sepenuhnya tidak mengandalkan memuat modul apa pun jika Anda mau.

LawrenceC
sumber