next up previous contents
Next: A driver hibaüzenetei Up: A STREAMS driverek Previous: További hasznos tanácsok

Megjegyzések a példadriverhez

A driverben csak a write queue-hoz tartozó put eljárás van implementálva - a többi szolgáltatás helyén a nulldev eljárás címe van. Ez az eljárás a kernelben egy üres eljárás. C nyelven kb. a következo lehet :

  nulldev()
  {
  }
A kernelt disassemblálva a következo assembly sorok tartoznak ehhez az eljáráshoz (INTERACTIVE 3.2 UNIX alapján) :
  nulldev()
     pushl %ebp
     movl %esp,%ebp
     leave
     ret
A nulldev eljárás mellett létezik egy nodev nevu is, amit hasonló esetekben használhatunk. A ketto között a különbség az, hogy a nulldev- vel kódolt szolgáltatást kiváltó rendszerhívás a sikeres végrehajtásának megfelelo visszatérési értéket ad vissza, míg a nodev-vel jelölt szolgáltatásokat igénybe vevo rendszerhívások hibakóddal térnek vissza.



Csizmazia Balazs
Tue Apr 2 00:06:27 MET DST 1996