De Linux kernel laadt device drivers en is de kern van het besturingssysteem in alle Linux- versies . Stuurprogramma's worden automatisch geladen voor ondersteunde hardware in de meeste APT - en RPM - gebaseerde distributies . Als de hardware niet automatisch wordt geladen en de fabrikant levert een device driver , kunt u deze handmatig installeren . Gecompileerde modules kunnen worden geladen en toegevoegd aan de kernel configuratie onmiddellijk . Broncode moet eerst worden opgesteld op basis van de kernel headers of volledige broncode . Instructies samenstellen van een Module 1 Download de broncode van de kernel module Type 2 het volgende commando in een terminal venster om de kernel headers installeren. : RPM gebaseerde distributies : su - c ' yum install kernel - devel ' aPT gebaseerde distributies : sudo apt - get install linux - headers - $ ( uname - r ) op Twitter Gebruik de juiste opdracht voor uw versie van Linux . Zorg ervoor dat u het commando precies zoals afgebeeld , waaronder enkele aanhalingstekens typt Type 3 de volgende opdracht om naar de directory van de broncode : . Cd /home . /myuser /modulecode Change " /home /myuser /modulecode " om de locatie van de module broncode 4 Typ de volgende opdracht om een " makefile : " creëren < br > vi Makefile Dit opent de vi tekstverwerker en creëert de makefile . Het "make" commando gebruikt de makefile aan de module te compileren 5 Voer de volgende zes regels code in de teksteditor : . Obj - m = mymodule.o < br KVERSION > = $ ( shell uname - r ) op alles : make - C /lib /modules /$ ( KVERSION ) /build M = $ ( PWD ) modules < br schoon > : make - C /lib /modules /$ ( KVERSION ) /build M = $ ( PWD ) schoon Vervang " MyModule " met de naam van de module die u ' re samenstellen . Sla het bestand op en verlaat vi 6 Typ de volgende opdracht om de module te compileren : . Maken Type 7 de volgende opdrachten te laden en lossen van de module : Load : su - c ' insmod mymodule.ko ' unload : su - c ' rmmod MyModule ' Vervang " MyModule " met de naam van de module wordt geladen of gelost Loading Modules automatisch bij het opstarten Type 8 het volgende commando in een terminal venster : . su - c ' mkdir - p /lib /modules /$ ( uname - r ) /kernel /drivers /MyModule ' Vervang " MyModule " met de naam van de module . Deze opdracht maakt een directory om de module te slaan type 9 de volgende opdracht om de module te kopiëren naar de nieuwe map : . Su - c ' cp /modulepath /mymodule.ko /lib /modules /$ ( uname - r ) /kernel /drivers /MyModule /' Vervang " modulepath " en " MyModule " met het juiste pad en de naam voor de module . 10 Typ de volgende opdracht : su - c ' vi /etc /modules ' Deze opdracht opent het hele systeem module configuratiebestand te bewerken 11 Voeg de volgende aan het einde van het bestand : MyModule Vervang " MyModule " met de naam van de module . Sluit en sla het bestand op . De wijzigingen worden van kracht de volgende keer dat het systeem opnieuw wordt opgestart . Het zal niet langer nodig zijn om handmatig laden en lossen van de module .
|