Kernel-moduler - vad ska de vara bra för?

Permalänk
Medlem

Kernel-moduler - vad ska de vara bra för?

Det rekommenderas ofta att en del saker, (typiskt hårdvara), bör installeras som moduler, istället för att kompileras in i OS-kärnan. Jag undrar lite vad som ska vara meningen med detta. En kompis till mig, (som heller inte visste riktigt), trodde att det kanske gjorde systemet säkrare ur stabilitetssynpunkt och det låter ju vettigt. Själv trodde jag att det kanske var för att man lättare skulle kunna stoppa, starta och byta ut moduler under drift. Fast vad är egentligen nyttan med att, som hemanvändare, köra t.ex. nätverkskortet och ljudkortet som moduler?

Visa signatur

Coola låtar i massor!
http://revolvermen.com

Permalänk
Medlem

Största fördelen som jag ser det är att man inte behöver komplimera om hela kärnan för att byta modul, samt att man kan ladda och ladda ur moduler dynamiskt.

Visa signatur

#apple.se @efnet - Frihet, Jämlikhet, Mac.

Permalänk

Det är väl ganska trevligt att, till exempel, kunna stoppa in ett nytt nätverkskort utan att behöva kompilera om kärnan.

Att ha allt inkompilerat i kärnan är slöseri på systemminne.

Visa signatur

Ubuntu/Fedora-troll, Mono-kodare,
Ogg Vorbis/Theora-fetischist samt FSF-förespråkare.

Permalänk
Hedersmedlem

Jag har allt inkompilerat, orka ha en massa moduler

Visa signatur

Vim
Kinesis Classic Contoured (svart), Svorak (A5)
Medlem i signaturgruppen Vimzealoter.

Permalänk

Som jag ser det finns det två tillfällen som moduler är riktigt användbara. Om man måste boota från floppy för att hålla nere storleken på kärnan och om man vill testa diverse usbprylar (joysticks, digitalkameror osv) som vänner släpar med.

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av m0REc
Jag har allt inkompilerat, orka ha en massa moduler

Permalänk
Medlem

Så kontentan här lyder: Gör som du känner för, pucko!
Rätt?

Visa signatur

Coola låtar i massor!
http://revolvermen.com

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av Ilja
Så kontentan här lyder: Gör som du känner för, pucko!
Rätt?

Så kan man nog sammanfatta det kanske.
Varför ha massa moduler om man ändå inte tänker byta hårdvara

Visa signatur

flippy @ Quakenet

Permalänk

Det tar ju ändå ingen egentlig tid att kompilera om kärnan, så om man inte byter hårdvara en gång i veckan eller nåt så är det ju ändå enklare att kompilera in det man behöver?

Visa signatur

Python-IRC på svenska: #python.se

Permalänk
Citat:

Ursprungligen inskrivet av Sebastianj
Det tar ju ändå ingen egentlig tid att kompilera om kärnan, så om man inte byter hårdvara en gång i veckan eller nåt så är det ju ändå enklare att kompilera in det man behöver?

Det är enklast att kompilera allt som moduler. Det finns ingen anledning till att inte göra det.

Visa signatur

Ubuntu/Fedora-troll, Mono-kodare,
Ogg Vorbis/Theora-fetischist samt FSF-förespråkare.

Permalänk
Medlem

Det är väl en smaksak, ser ingen anledning till att ha allt som moduler heller

Kör man en server så har man samma konfiguration en bra tag

Visa signatur

flippy @ Quakenet

Permalänk
Citat:

Ursprungligen inskrivet av FunkFarfar
Det är enklast att kompilera allt som moduler. Det finns ingen anledning till att inte göra det.

Tar längre tid att kompilera.

Visa signatur

Python-IRC på svenska: #python.se

Permalänk
Citat:

Ursprungligen inskrivet av Sebastianj
Tar längre tid att kompilera.

Fördelen är att du bara behöver kompilera en gång

Visa signatur

Ubuntu/Fedora-troll, Mono-kodare,
Ogg Vorbis/Theora-fetischist samt FSF-förespråkare.

Permalänk
Medlem
Citat:

Ursprungligen inskrivet av FunkFarfar
Fördelen är att du bara behöver kompilera en gång

Du behöver bara kompilera en gång om du inte ändrar nåt :)x2

Visa signatur

flippy @ Quakenet

Permalänk
Medlem

Moduler blir scriptningsbara med hjälp av modules.conf(5)/modprobe.conf(5) vilket kan vara smidigt ibland (används ofta för att sätta volymen på ljudkort efter modulen laddats).

Sparar minne i de fall modulen används sällan (floppy t ex).

Braåha(tm) om man inte vet vad man har för hårdvara (kommer fortfarande inte ihåg vilken/vilka av OHCI/UHCI/EHCI jag använder).

Att se hur många rmmod -f man kan utföra utan att datorn dyker är en kul sport.

Permalänk
Citat:

Ursprungligen inskrivet av FunkFarfar
Fördelen är att du bara behöver kompilera en gång

Nä, jag blir fortfarande tvungen att kompilera om varje gång jag uppgraderar. Och det är inte allt som kan kompileras som moduler.

Visa signatur

Python-IRC på svenska: #python.se

Permalänk
Citat:

Ursprungligen inskrivet av Sebastianj
Nä, jag blir fortfarande tvungen att kompilera om varje gång jag uppgraderar.

Undantaget processor (inte ens det om man är konservativ med processor familiy) så ska du aldrig behöva byta kernel för ny hårdvara. Färdigkompilerade kernels från till exempel red hat, mandrake och debian fungerar på alla datorer med samma arkitektur.

Citat:

Och det är inte allt som kan kompileras som moduler.

Allt som kan bytas ut kan kompileras som modul.

Visa signatur

Ubuntu/Fedora-troll, Mono-kodare,
Ogg Vorbis/Theora-fetischist samt FSF-förespråkare.

Permalänk
Citat:

Ursprungligen inskrivet av FunkFarfar
Allt som kan bytas ut kan kompileras som modul.

Tja, du kan inte riktigt kompilera bootfilsystemsspecifika delar som moduler om du planerar på att kunna boota ditt system...

Permalänk
Citat:

Ursprungligen inskrivet av FunkFarfar
Allt som kan bytas ut kan kompileras som modul.

Finns vissa saker som inte alls funkar som moduler (bl a vissa ACPI-grejor), finns däremot andra saker som oftast kräver att vara moduler för att rulla igång, ljudkort och nätverkskort brukar vara sådana saker.

Permalänk
Citat:

Ursprungligen inskrivet av FunkFarfar
Undantaget processor (inte ens det om man är konservativ med processor familiy) så ska du aldrig behöva byta kernel för ny hårdvara. Färdigkompilerade kernels från till exempel red hat, mandrake och debian fungerar på alla datorer med samma arkitektur.

Behöva? Varför skulle man vilja köra med en gammal och seg 2.4-kernel?
Det är klart man vill byta kernel då och då.

Visa signatur

Python-IRC på svenska: #python.se

Permalänk
Citat:

Ursprungligen inskrivet av Sebastianj
Behöva? Varför skulle man vilja köra med en gammal och seg 2.4-kernel?
Det är klart man vill byta kernel då och då.

Jag menade att kompilera om kerneln för ny hårdvara.

Visa signatur

Ubuntu/Fedora-troll, Mono-kodare,
Ogg Vorbis/Theora-fetischist samt FSF-förespråkare.

Permalänk
Hedersmedlem

Mina erfarenheter säger mig att det är enklast att mosa in allt i kärnan och lämna modulstödet på i de flesta fall. Skulle man vilja ha in något i efterhand utan att starta om datorn så är det bara att kompilera den modulen och ladda den.

Skaffar man ny hårdvara stänger man oftast av datorn och då kan man lika gärna passa på att kompilera en ny kärna. Den enda nyttan jag ser med att kompilera det mesta (som går) som moduler är när man ska köra en och samma kärna på massor med datorer. Det gör inte speciellt många som har de kraven här skulle jag tro.

Om man nu skulle välja en kärna med massor med grejer inkompilerade så förlorar man ändå inte speciellt mycket minne procentuellt sett, så det argumentet håller knappt idag. Minne är billigt.

Permalänk
Medlem

Bör vara en liten större säkerhetsrisk att köra moduler.
Tex ptrace/kmod local root exploiten som kom förut fungerade inte om
man ej hade modulstöd inkompilerat.

Visa signatur

Hej

Permalänk
Medlem

Minns på den tiden jag fortfarande körde mandrake (kör gentoo nu), då med deras default-kernel (allt som moduler) och byggde ny dator och gamla installen rullade igång utan så mycket som ett knyst

Men som många andra redan har sagt så kan man lika gärna kompilera in skiten om man inte byter hårdvara. Enda jag har som modul är ntfs-stödet, änvänds så sällan och laddas ändå automatiskt när man försöker mounta en sådan partition så det vore slöseri med minne att ha det inkompilerat.

Permalänk
Medlem

Det blir iaf inte stabilare, linux är en så kallad monolitisk kärna, alla moduler och sånt lever tillsammans. (t.ex. osx har en mikrokärna där en drivrutin som kraschar i princip ska kunna startas om av kerneln)

Jag tycker ju det är lite pinsamt om en (mindre teknisk) kompis kommer över med sin digitalkamera och så, oops, ska bara kompilera om min kernel så jag har usb-disk stöd...
Smidigt att ha lite diverse moduler liggande, SMB och skumma filsystem och sånt.

Visa signatur

"There are 10 kinds of people, those
that understand binary, and those
that do not"

Permalänk
Medlem

Smartast är väl att kompilera in det du alltid kommer att använda i kärnan och låt t.ex. usb och sådant du bara använder ibland vara moduler.

Kan också vara bekvämt att bara kompilera nån modul om man vill testa något nytt i kärnan.
Så kan man se hur det funkar och sen kompilera in det då man är säker..

Visa signatur