Forum Linux.noyau fichier /dev multiapplication

Posté par  (site web personnel) .
Étiquettes : aucune
-1
5
déc.
2006
Je cherche des infos sur la manière d'écrire un driver multi applicatif. En gros, un même /dev/toto peut être utilisé par plusieurs applications différentes.

J'ai l'impression que cela n'est pas une façon de faire très courante (il suffit de voir les /dev/machinX avec X de zero à n). Connaîtrez-vous un driver qui fonctionne ainsi ? Ou des infos sur la manière de faire ?
  • # Un voyage de mille lieues commence

    Posté par  . Évalué à 2.

    toujours par un premier pas (Lao-Tseu)
    Voici le premier pas a faire pour tout connaitre sur les drivers.
    http://lwn.net/Kernel/LDD3/
    Bonne lecture.
  • # Euh... pas du tout

    Posté par  (site web personnel) . Évalué à 2.

    Non non, pas du tout. Si /dev/hda1, /dev/hda2, /dev/ttyS0, /dev/pts/1, /dev/pts/2, etc. existent avec des numeros differents, c'est pas parce qu'ils peuvent être utilisés par plusieurs applications, c'est parce qu'il s'agit de plusieurs peripheriques differents (/devhda1 c'est le periph "partition 1 du disque IDE0 primaire", /dev/hda2 le periph "partoche 2", /dev/pts/1 le periph "terminal virtuel 1", etc.).

    Dans l'absolu, tout peripherique doit pouvoir etre ouvert et utilisé par plusieurs applications en meme temps. Si certains drivers (ie ce qui est derriere les /dev/machin) ne permettent pas cela, ce n'est /que/ parce que le *driver* ne le permet pas, pas parce que le systeme "en general" ne le permet pas. Par exemple, plusieurs applis peuvent ouvrir /dev/hda1 en meme temps si elles le veulent, et meme ecrire "en meme temps" (il y aura en fait sans doute une serialisation par le noyau, on a rarement vu un HD traiter plusieurs requetes venant du meme systeme en parallele). Il fut un temps ou, effectivement, certains periph tels /dev/audio, ne pouvaient pas etre ouverts par plusieurs applis en meme temps. Il y en a d'autres (je pense aux /dev/ttySX, a verifier). Mais c'est loin d'etre une generalite.

    Et, comme suggere, le LDD est une excellente source pour comprendre comment une telle magie est possible. Une autre source (pub) : http://sos.enix.org .

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.