[Kos-dev] Libblockio

kos-dev@enix.org kos-dev@enix.org
Fri, 25 Apr 2003 16:44:06 CEST


>De: Thomas Petazzoni <thomas.petazzoni=40enix.org>

>Hello,

Hi again :)

>> Vi j'avait compris, mais je trouve ca une peu limite d'une lib juste po=
ur les acces par blocks mais pkoi pas.
>
>Un peu limite ? Je dirais plut=F4t : librairie au r=F4le clair et d=E9lim=
it=E9,
>avec peu de code, et du code simple. Bref, du bonheur, non ? ;-)

c'est une tournure qui me plait :)

>> =22raw=22 pour moi signifie acces direct donc non bufferise.
>
>Si tu dois acc=E9der par block =E0 un device, et que tu veux en donner un=
e
>repr=E9sentation sous forme de fichier, l'acc=E8s sera *forcement*
>bufferis=E9. (dans le cas des lectures ou =E9critures de blocs partiels).

pas necessairement, meme si c'est fortement conseille. =

Je suis presque certain que certains peripheriques ne peuvent reelement et=
re coherents dans leurs donnes que sans bufferisation (du genre des disque=
s partages entre plusieurs instances d'os)

>> ok donc en clair elle permet le =22raw=22 -> =22block=22 et facilite la=
 gestion des =22blocks=22 ?
>
>Tout =E0 fait.
>
>> Donc libkio n'est clairement pas parlant plus adapte serait qquechose d=
u genre libkutil=5Fblockio.
>
>Peu importe son nom, c'est vrai que je ne suis pas fort pour le nommage.
> Le libblockio du d=E9but me semble pas mal ;)

:)

>> Je partait d'un niveau d'abstraction plus eleve. Si tu te limite aux bl=
ocks le probleme ne se posera pas mais les differentes implementations d'a=
cces par blocks auront comme dependance d'avoir acces a l'ensemble des int=
erfaces d'io. Donc de nombreuses autres libs de plus haut nivo que blockio
>
>Je dois =EAtre b=EAte, j'ai relu trois fois ta phrase, et j'ai toujours r=
ien
>compris, peux-tu r=E9expliquer pour le neuneu que je suis ?

lolol, j'avoue que j'etait pas tres clair
d'ou le fait que je decrive ceci avec l'exemple simpliste ci-dessous :)

>> Ce n'est pas a un driver de disque dur USB de gerer le protocole USB. I=
l doit avoir acces aux APIs du driver USB et lui ne fait que de l'utiliser=
 pour implementer les acces par blocks du disque dur USB non ?
>
>Oui, il y aura un driverusb et un driverdiskusb qui pourra utiliser le
>driverusb pour faire les magouilles n=E9cessaires =E0 USB et libblockio p=
our
>transformer les requetes byte-grained en requetes block-grained (ce que
>j'appelle fragmentation/defragmentation).

Enfin ca sera un peu plus complique que ca car,
driverdiskusb devra utiliser: =

- driver=5Fusb, =

- kernel=5Fio (scheduler des ios), =

- block=5Fio, =

- kernel=5Fdisk (gestions/enregistrement de peripheriques dans le noyau), =

- kernel=5Fhotplug, =

- ... =


Mais je chipotte :)

>=5B Sur un tout autre sujet : c'est quoi le MUA de d*ube que tu utilises

Ben comme tu la deja dis, j'utilise bien l'interface web de club-internet =
:(
Pcqu'au boulot la cochonnerie de firewall/proxy qui est installe ne laisse=
 rien faire (meme pas des emails en dehors de lotus notes) :(

>Bonne journ=E9e,
De meme

>Thomas
Raphael