On Thu, Aug 14, 2003 at 08:18:50PM +0200, Marc Mongenet wrote:
> Mais avec cat, c'est toujours bon ?

pas forc�ment, �a d�pend de sa taille de buffer. Les impl�mentations GNU
adorent les buffers gigantesques de multiple de 512 bytes, mais pas
toutes les autres.

En pratique sur SGI/IRIX (O2) j'avais lu un CD-ROM avec `cat'
et celui-ci �tait en 2048 bytes/secteur. Apparemment cat travaillait
en 4096 bytes et donc il y avait des z�ros dans les demi-blocs
sup�rieurs. N'ayant pas de stations SGI sous la main je ne
peux reproduire ni expliquer.

Il y a v�ritablement une diff�rence fondamentale entre l'interface
block-device de Linux et celle des autres syst�mes UNIX.
L'interface direct I/O de Linux ressemble bien plus.

> � quoi dd au fait ? Le seul usage utile que j'aie pu d�duire du
> manuel, c'est pour des acc�s � des p�riph�riques sans syst�me de
> fichier (des bandes). Est-ce que toutes les bandes fonctionnent
> comme cela ?

Non, la plupart des lecteurs de bande peuvent aussi �tre utilis�s
en facteur de blocage non constant (mt -f /dev/nst0 setblk 0).

Mais alors il faut que le programme de lecture connaisse le
facteur de blocage variable � l'avance, sinon c'est diablement
moins efficace. Une alternative fr�quemment employ�e est
32k pour chaque bloc, et le dernier bloc pouvant �tre plus
petit (ce qui marche gr�ce aux propri�t�s de read(2)).

C'est pour cela que oui, on travaille en g�n�ral en facteur de blocage
constant (p.ex. 512 bytes/block logique). Ce qui signifie que
tar, ou tar + gz doivent aligner les donn�es � 512 bytes, en ajoutant
�ventuellement des z�ros, sinon le lecteur refusera l'�criture.

Il n'y a pas que dd(1) qui permet de r�ajuster les facteurs de blocage,
il y a aussi buffer(1), qui avec son option -S permet d'avoir une
indication de performance �galement.

Autres usages utiles de dd:

   - lire une disquette en ignorant les erreurs (rempla�ant par des \0)
        dd if=/dev/fd0 of=floppy bs=512 noerror sync

   - le seek, ignorer des bouts de donn�es, etc. (avec tail ou head,
     suivant l'impl�mentation, la libc peut consommer jusqu'� la
     fin de la `ligne')

   - la conversion EBCDIC (utile parfois sur syst�mes IBM). Sisi,
     j'en ai eu une fois besoin :->

   - le reblocage (cassettes)

_______________________________________________
gull mailing list
[EMAIL PROTECTED]
http://lists.alphanet.ch/mailman/listinfo/gull

Répondre à