Minulla on eräs laite jonka mukana tuli kansio jossa .c ja .h ja Makefile tiedostot. Ohjeena :
2. make all // make a new driver.
Ilmeisesti ajurin saisi käännettyä noiden tiedostojen avulla mutta en tiedä käskyjä.
Miten tehdä ajuri?
10
132
Vastaukset
- Anonyymi
Mielestäni parempi lähestymistapa olisi kertoa, mistä laitteesta on kyse. Eli löytyiskö sille jo valmiit jakeluun sopivat ajurit.
Varsin hyvät ohjeet ohjelmien tai ajureiden kääntämiseksi:
https://www.linux.fi/wiki/Kääntäminen- Anonyymi
Ei Linuxiin koodata ajureita, ydin tukee tuen ja ohjelma käyttää.
- Anonyymi
Anonyymi kirjoitti:
Ei Linuxiin koodata ajureita, ydin tukee tuen ja ohjelma käyttää.
Vaan jos ytimessä ei ole tukea?
- Anonyymi
aika rajottatuneelta vaikuttaa toiminee vain yhdessä ja ainoassa kernel vesiossaa.... ja niitä kun tuhansia niin ei onnaa.
Joutuu kirjoittaan itse ajurin haluamalleen kernel versiolle.
Aika hankala hommma.- Anonyymi
Itse asiassa näin huono tilanne ei ole: Ajuri käännetään kerneliä vasten ja riippuu mitä kernelin ominaisuuksia ajuri käyttää minkä verran joutuu tekemään lisätyötä että tämä onnistuu.
Yleensä kernelin rajapinnoista pidetään kiinni kynsin ja hampain ja on täysin mahdollista, ettei muutoksia ajuriin juuri tule vaikka porttaisi kernelistä 2.6 kerneliin 5.x.
Sen sijaan uudemmissa kerneleissä voi olla merkittynä rajapintoja deprekoiduiksi eli poistettaviksi. Tämä tarkoittaa sitä, että ajurin latauksen yhteydessä mm. kernel ilmoittaa ajurin olevan "deprecated" ja vaativan siis jatkossa toimia esim. rajapinnan vaihtamista uudempaan malliin. Tähän löytyy valmiita esimerkkejä kuinka homma tehdään pilvin pimein, koska ajureita on päivitetty uudelle rajapinnalle varmasti.
Homman pihvi on kuitenkin tietoturva: Ajuri käännetään jokaiselle kernel-versiolle nimenomaan tästä syystä erikseen eli vaikka joku löytäisikin ajurista esim. puskurin ylivuoto-virheen, se vaikuttaa vain kyseiseen kerneliin, koska muissa kerneleissä on takuuvarmasti jotain muuta koodia ylivuodon kohdalla ja toiminta täten eri. Itse asiassa kerneli muodostaa nykyiselläänkin uuden lokaatio-taulun muistiin latauksen yhteydessä eli funktioiden paikat eivät säily muistissa - hyökkääjän pitäisi siis kirjoittaa koodinsa jokaisen bootin jälkeen uudestaan.
- Anonyymi
Kyllähän näitä tutoriaaleja löytyy, jos on kiinnostusta alkaa driveria kehittelemään:
https://embetronicx.com/tutorials/linux/device-drivers/linux-device-driver-tutorial-programming/
Tutustuisin useampaan esimerkkiin ja testailisin näitä esimerkkejä. Esim. DMA-siirto on kernelissä valmiiksi tuettuna ja sen käyttöönotto vaatii ymmärrystä ajurin toiminnasta ja tavasta, jolla kerneli ajuria suorittaa. Toinen paikka, joka voi aiheuttaa hankaluutta on timer-funktioiden käyttö eli asioiden ajastaminen tulevaisuuteen. - Anonyymi
Ehkä tossa sulle ohje asentaa se.
https://linuxhint.com/install-make-ubuntu/ - Anonyymi
no kirjoita se "make all" sillähähän tuo hoituu...
- Anonyymi
Tuo tosin vaatii, että koneelle on asennettu kehitystyökalut (kääntäjä, linkkeri yms). Ubuntussa tosin käsittääkseni on yleensä nuo asennettuna valmiiksi. Jos ei niiden asentamisen ei pitäisi olla vaikeaa.
Hieman selitystä tuolle komennolle: lähdekoodimuodossa jaettavien pakettien mukana pitäisi olla tiedosto nimeltään Makefile, joka sisältää työkaluille (ne kääntäjä ja muut) ohjeet siitä, miten lähdekoodeista saadaan aikaan ajettava ohjelma, kirjasto tms. Tuo make-komento lukee Makefilen ja suorittaa sieltä annetun toiminnan (tässä tapauksessa siis all, joka kääntää ohjelman/ajurin).
- Anonyymi
Kaikenlaista kokeilin ja vaan virhettä pukkasi. Menin sitten windowsiin, tuplaklikkasin exeä ja ajuri oli asennettu. Laitekin toimii mainiosti. Ei tarvi enää vastailla.
Ketjusta on poistettu 2 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Persujen VigeIius noIasi taas itsensä
Kun uhriutui vuonna 2024 (siis persujen "vahtivuorolla") Tampereella aloittaneen perheryhmäkodin toiminnasta. ”Leviää k1673549Oli kiva nähdä sut
vaikkakin kaukaa ja nopeasti. Tiedän kyllä tasan tarkkaan missä mennään, joten anteeksi jos pilasin päiväsi, ei ollut mi332684Työeläkkeen saamiseksi olisi tehtävä töitä
Meillä on Suomessa iso joukko ihmisiä, joilla olisi vielä työkykyä jäljellä, mutta joilta puuttuu arjesta mielekäs tekem562651Joulukinkku NYT
Sian kankuista tulee vielä pula. Nyt on oikea aika hankkia joulukinkku.12581Kohtalokas laukaus
IL 20.9.25 "Ihminen kuoli baarin edustalla Kajaanissa Poliisi ei epäile tapauksessa rikosta." "Kajaanin keskustassa on k162457Joko alkaa menemään tajuntaan tämä yliluonnollinen yhteys?
Varmaan pikkuhiljaa. Muista olla kiltisti ❤️232303Vasemmistoliitto peruisi sosiaaliturvan heikennykset
He palauttaisivat työttömyysturvan ja asumstuen suojaosat, eli saisi jälleen tienata 300 euroa kuukaudessa ilman tukien871986Linux Mint asennus kaatuu heti alkuun
Tulee kernel panic BIOS-tekstin jälkeen. Yritän ensimmäistä kertaa asentaa Linux Minttiä vanhalle Windows 10 -läppärill91928Jos voisit kysyä
Kaivatultasi vielä yhden kysymyksen, mikä se olisi? Aloitan: Mitä sinä halusit minusta?1641871Pesäpallo rulettaa
Hehkutin täällä aikaisemmin Mansen naisten joukkueen Suomen mestaruutta. Jostain kumman syystä kirjoitustani ei enää löy31693