diff options
Diffstat (limited to 'fr_FR.ISO8859-1/books/handbook/hw/chapter.sgml')
-rw-r--r-- | fr_FR.ISO8859-1/books/handbook/hw/chapter.sgml | 5780 |
1 files changed, 0 insertions, 5780 deletions
diff --git a/fr_FR.ISO8859-1/books/handbook/hw/chapter.sgml b/fr_FR.ISO8859-1/books/handbook/hw/chapter.sgml deleted file mode 100644 index 8d226e1099..0000000000 --- a/fr_FR.ISO8859-1/books/handbook/hw/chapter.sgml +++ /dev/null @@ -1,5780 +0,0 @@ -<!-- - The FreeBSD Documentation Project - The FreeBSD French Documentation Project - - $FreeBSD$ - Original revision: n.nn ---> - - <chapter id="hw"> - <title>** Compatibilité matérielle</title> - &trans.a.haby; - - - <para>Les questions de compatibilité matérielle sont aujourd'hui - les plus problématiques de l'industrie informatique et FreeBSD - n'en est nullement à l'abri. De ce point de vue, l'avantage qu'a - FreeBSD de pouvoir être utilisé sur du matériel PC courant et - peu coûteux est aussi une difficulté lorsqu'il faut supporter - l'incroyable variété de composants disponibles. - Il est impossible de donner une liste exhaustive des matériels - compatibles avec FreeBSD, mais ce chapitre est un catalogue des - pilotes de périphériques inclus dans FreeBSD et des matériels que - chaque pilote supporte. Si possible et approprié, des notes ont - ajoutées sur les matériels eux-mêmes. Vous pouvez aussi vous - référer au chapitre <link linkend="kernelconfig-config">Configurer - le noyau de FreeBSD</link> de ce manuel pour avoir - la liste des matériels supportés.</para> - - <para>FreeBSD est un projet bénévole qui n'a pas les moyens de financer - un service de tests, nous reposons sur vous, les utilisateurs, pour une - grande part des informations que fournit ce catalogue. Si vous avez - l'expérience personnelle d'un matériel qui fonctionne ou ne fonctionne - pas avec FreeBSD, faites-le nous savoir par courrier électronique - à &a.doc;. Les questions concernant les matériels compatibles doivent - être adressées à &a.questions; (voyez la section - <link linkend="eresources-mail">Listes de diffusion</link> - pour plus d'informations). Quand vous nous faites - parvenir de l'information ou posez une question, n'oubliez pas s'il vous - plaît de préciser exactement quelle version de FreeBSD vous utilisez et - de donner le maximum de détails sur votre configuration - matérielle.</para> - - <sect1> - <title>Ressources Internet</title> - - <para>Les liens donnés ci-dessous se sont avérés utiles pour guider - dans les choix de matériels. Bien que les renseignements qu'ils vous - donnent ne soient pas nécessairement spécifiques (ou même - applicables) à FreeBSD, ils ne dépendent pas, pour la plupart - du système d'exploitation. Vérifiez s'il vous plaît dans le guide - du matériel pour FreeBSD que la configuration que vous avez choisie - soit compatible avec FreeBSD avant d'acheter quoi que ce soit.</para> - - <para> - <itemizedlist> - - <listitem> - <para><ulink url="http://www.tomshardware.com/">The Pentium - Systems Hardware Performance Guide</ulink> - le - guide des performances des systèmes Pentium.</para> - </listitem> - - </itemizedlist> - </para> - - </sect1> - - <sect1 id="hw-configs"> - <title>Exemples de configurations</title> - - <para>La liste de configurations ci-dessous ne constitue en aucun - cas une publicité pour un constructeur ou un produit de la - part du <emphasis>Projet FreeBSD</emphasis>. Ces informations ne - sont données que pour être utiles et rassemblent simplement les - expériences de différentes personnes sur des configurations variées. - Tarifs indicatifs. Chaussée glissante. Attention au chien.</para> - - <sect2 id="hw-jordans-picks"> - <title>La sélection de Jordan</title> - - <para>J'ai obtenu de bons résultats en mettant sur pied des stations - de travail et des serveurs avec les composants ci-dessous. Je ne - peut vous garantir que vous en aurez aussi, ni qu'aucune des marques - citées restera “le meilleur choix”. J'essaierai, si - possible, de tenir cette liste à jour, mais ne peux bien évidemment - vous assurer qu'elle le soit à un moment donné.</para> - - <sect3 id="hw-mb"> - <title>Cartes mères</title> - - <para>Pour les systèmes Pentium Pro (P6), j'aime assez la carte mère - bi-processseurs - <ulink url="http://www.tyan.com/html/products.html">Tyan</ulink> - S1668. Elle fait un sympathique système à un ou deux processeurs - (ce que supporte FreeBSD 3.0) et le prix du Pentium Pro 180/256K - a maintenant baissé à un niveau vraiment abordable. Le Pentium Pro - reste mon processeur favori pour les serveurs (les mégahertzs ne - font pas tout).</para> - - <para>Pour les Pentium II, j'ai un sérieux préjugé en faveur de la - carte mère <ulink url="http://www.asus.com.tw">ASUS</ulink> - <ulink url="http://www.asus.com.tw/Products/Motherboard/Pentiumpro/P2l97-s/index.html">P2l97-S</ulink> - avec contrôleur WIDE SCSI intégré.</para> - - <para>Pour les machines Pentium, la carte mère ASUS - <ulink url="http://www.asus.com.tw/Products/Motherboard/Pentium/P55tp4/index.html">P55T2P4</ulink> - paraît un bon choix pour un serveur ou une station de travail - de taille moyenne à importante. Vous pouvez aussi - regarder du côté de la carte - <ulink url="http://asustek.asus.com.tw/FTP/ASUS/Info/Spec/pvi-486sp3.txt">486SP3G</ulink>, - si vous cherchez une carte mère 486.</para> - - <note> - <para>(Il semble qu'il soit devenu difficile de se procurer ces - dernières, qu'ASUS ne fabrique apparemment plus.) </para> - </note> - - <para>Ceux qui veulent utiliser des systèmes plus tolérants aux - erreurs doivent veiller à employer de la mémoire avec contrôle - de parité, ou ECC, pour des applications non-stop.</para> - - <note> - <para>La mémoire ECC entraîne une petite perte de performances - (que vous remarquerez ou non selon votre application) mais vous - apporte des gains significatifs en termes de tolérance - d'erreur.</para> - </note> - </sect3> - - <sect3> - <title>Contrôleurs de disque</title> - - <para>C'est un point plus délicat. J'utilisais - inconditionnellement des contrôleurs - <ulink url="http://www.buslogic.com">Buslogic</ulink> - pour tout, de l'ISA au PCI, j'incline maintenant plutôt vers - le contrôleur <ulink - url="http://www.adaptec.com">Adaptec</ulink> 1542CF pour l'ISA, - le contrôleur Buslogic Bt747c pour l'EISA et le contrôleur - Adaptec 2940UW pour le PCI.</para> - - <para>J'ai aussi eu de bons résultats avec les cartes - PCI NCR/Symbios, bien qu'il faille s'assurer que - votre carte mère supporte le modèle sans BIOS (s'il n'y - a rien sur votre carte qui ressemble vaguement à une puce - ROM, c'est probablement un modèle qui s'attend à ce que son - BIOS soit sur la carte mère).</para> - - <para>Si vous pensez qu'il vous faut plus d'un contrôleur SCSI, - vous pouvez songer à économiser vos maigres ressources en - emplacements PCI en achetant une carte Adaptec 3940, qui - intègre deux contrôleurs PCI sur un seul connecteur.</para> - - </sect3> - - <sect3 id="hw-disks"> - <title>Disques durs</title> - - <para>Pour cette version particulière de la roulette russe, je - donnerais peu de conseils précis sinon pour recommander - “du SCSI plutôt que de l'IDE dès que vous pouvez vous - l'offrir”. Même sur de petites machines de bureau, le SCSI - est souvent un meilleur choix parce qu'il vous permet de - migrer vos disques du serveur vers la machine de bureau lorsque - les prix en chute des disques en font une solution économiquement - viable. Si vous avez plus d'une machine à administrer, ne pensez - pas seulement en terme de stockage, voyez plutôt cela comme - une chaîne alimentaire!</para> - - <para>Je ne trouve pas que les disques WIDE SCSI représentent - un investissement nécessaire, à moins que vous ne mettiez en place - un serveur NFS ou des forums de discussion - qui devront supporter beaucoup d'accès disque pour de nombreux - utilisateurs.</para> - - </sect3> - - <sect3 id="hw-jordans-picks-cdrom"> - <title>Lecteur de CD-ROMs</title> - - <para>Ma préférence pour le SCSI s'applique aussi aux lecteurs de - CD-ROMs SCSI, et bien que j'ai toujours eu de bons résultats - avec le modèle <ulink url="http://www.toshiba.com">Toshiba</ulink> - XM-3501B (qui existe aussi en version tiroir sous la référence - XM-5401B), je suis maintenant très partisan du lecteur - <ulink url="http://www.plextor.com">Plextor</ulink> PX-12CS. - C'est un lecteur 12x dont les performances et la fiabilité sont - excellentes.</para> - - <para>D'une façon générale, la plupart des lecteurs de CD-ROMs SCSI - que j'ai vus, sont de fabrication robuste et vous ne vous - tromperez pas non plus si vous prenez un modèle HP ou NEC. Le prix - des lecteurs de CD-ROMs SCSI semble avoir aussi considérablement - baissé ces derniers mois et devient compétitif avec celui des - lecteurs IDE, alors qu'ils restent techniquement supérieurs. A - choisir entre les deux, je ne vois pas de raison de se décider - pour un lecteur IDE.</para> - - </sect3> - - <sect3 id="hw-worm"> - <title>Graveurs de CD-ROMs non réinscriptibles</title> - - <para>Au moment où j'écris ceci, FreeBSD supporte trois types de - graveurs de CD-ROMs (bien que je pense qu'ils viennent en fait - tous de chez Phillips): le Phillips CDD 522 (se comporte comme - le Plasmon), le Plasmon RF4100 et le HP 6020i. J'utilise - personnellement le HP 6020i pour graver mes CD-ROMs (avec la - version 2.2-current de FreeBSD - il ne fonctionne pas - avec la version 2.1.5 et les versions antérieures du pilote SCSI) - qui me donne toute satisfaction. Regardez dans le fichier - <ulink url="file:/usr/share/examples/worm">/usr/share/examples/worm</ulink> - sur votre système 2.2 pour avoir des exemples de procédures pour - créer des images au format ISO9660 (avec les extensions RockRidge) - de vos systèmes de fichiers et graver ensuite des CD-ROMs avec un - HP6020i.</para> - - </sect3> - - <sect3 id="hw-tape"> - <title>Lecteurs de bandes</title> - - <para>J'ai obtenu de bons résultats avec les lecteurs - <ulink url="http://www.Exabyte.COM:80/Products/8mm/8505XL/Rfeatures.html">8mm</ulink> - de chez - <ulink url="http://www.exabyte.com">Exabyte</ulink> - et - <ulink url="http://www-dmo.external.hp.com:80/tape/_cpb0001.htm">4mm (DAT)</ulink> - de chez <ulink url="http://www.hp.com">HP</ulink>.</para> - - <para>Pour les sauvegardes, je recommande les Exabytes pour la - robustesse (et la plus grande capacité) des bandes 8mm.</para> - - </sect3> - - <sect3 id="hw-video"> - <title>Cartes graphiques</title> - - <para>Si vous pouvez aussi vous offrir un serveur X commercial - pour 99$ US de chez - <ulink url="http://www.xig.com/">Xi Graphics, Inc. (autrefois, X Inside, Inc)</ulink> - alors je vous recommande vivement la carte - <ulink url="http://www.matrox.com/">Matrox</ulink> - <ulink url="http://www.matrox.com/mgaweb/brochure.htm">Millenium</ulink>. - Cette carte est aussi très bien supportée par le serveur - <ulink url="http://www.xfree86.org/">XFree86</ulink>, - qui en est maintenant à sa version 3.3.2.</para> - - <para>Les cartes - <ulink url="http://www.nine.com/">Number 9</ulink> sont aussi - un excellent choix - leurs cartes Vision 868 et 968 - (la série 9FX) basées sur le circuit S3 sont aussi très rapides - et bien gérées par le pilote S3 du serveur XFree86.</para> - - </sect3> - - <sect3 id="hw-monitors"> - <title>Moniteurs</title> - - <para>J'ai eu d'excellents résultats avec les moniteurs - <ulink url="http://cons3.sel.sony.com/SEL/ccpg/display/ms17se2.html">Sony Multiscan 17seII</ulink>, - et avec le Viewsonic qui utilise le même tube (Trinitron). Pour - des modèles au-delà de 17", tout ce que je peux aujourd'hui - conseiller est de ne pas dépenser moins de 2.500 $ pour - un moniteur 21" ou 1.700 $ pour un 20", si vous en avez - vraiment besoin. Il y de bons écrans dans - la gamme des 20" et plus, - et il y en a aussi de bon marché. Malheureusement, il y en a très - peu qui soient à la fois de bonne qualité et bon marché!</para> - - </sect3> - - <sect3 id="hw-networking"> - <title>Réseau</title> - - <para>Je peux recommander le contrôleur <ulink - url="http://www.smc.com/">SMC</ulink> Ultra 16 pour les - applications ISA et les cartes SMC EtherPower ou Compex ENET32 - pour les réseaux importants basés sur du PCI. Ces deux cartes - PCI sont construites autour de la puce contrôleur Ethernet - DEC DC21041 et les autres cartes qui employent cette puce, telles - que la Zynx ZX432 et la DEC DE435, fonctionneront aussi. Pour - les réseaux 100Mbit, les cartes SMC SMC9332DST 10/100MB ou Intel - Intel EtherExpress Pro/100B font du bon travail, ma préférence - allant à la carte Intel EtherExpress.</para> - - <para>Si d'un autre côté vous cherchez la solution la moins chère - possible, mais qui fonctionne malgré tout raisonnablement, alors - pratiquement n'importe quel clone NE2000 est un bon choix.</para> - - </sect3> - - <sect3 id="hw-serial"> - <title>Série</title> - - <para>Si vous cherchez des solutions pour un réseau série à grande - vitesse, alors <ulink url="http://www.dgii.com/">Digi - International</ulink> fabrique la série <ulink - url="http://www.dgii.com/prodprofiles/profiles-prices/digiprofiles/digispecs/sync570.html">SYNC/570</ulink>, - pour laquelle FreeBSD-current a maintenant des pilotes. - <ulink url="http://www.etinc.com">Emerging Technologies</ulink> - fabrique aussi une carte avec des fonctionnalités T1/E1, - qui utilise du logiciel qu'il fournit. - Je n'ai cependant pas l'expérience personnelle de ces deux - produits.</para> - - <para>Les possibilités de cartes multi-ports sont quelque peu plus - nombreuses, bien que le support par FreeBSD des produits - <ulink url="http://www.cyclades.com/">Cyclades</ulink> soit - réputé le plus complet, essentiellement en raison de - l'engagement pris par cette compagnie de nous fournir du - matériel pour évaluation et des spécifications techniques. J'ai - entendu dire que la Cyclom-16Ye offrait le meilleur rapport - prix/performances, mais je n'ai pas consulté les tarifs récents. - D'autres cartes multi-ports dont j'ai entendu dire du bien - sont les BOCA et les AST, et <ulink - url="http://www.stallion.com/">Stallion - Technologies</ulink> propose apparemment <ulink - url="ftp://ftp.stallion.com/drivers/unsupported/freebsd/stalbsd-0.0.4.tar.gz">ici</ulink> - un pilote non officiel pour ses cartes.</para> - - </sect3> - - <sect3 id="hw-audio"> - <title>Audio</title> - - <para>J'utilise actuellement une AWE32 de <ulink - url="http://www.creaf.com/">Creative Labs</ulink>, bien qu'à peu - près tout ce qui vient de chez Creative Labs marcherait - aujourd'hui. Ce qui ne veut pas dire que d'autres cartes son - ne marchent pas, simplemement je n'en ai qu'une expérience - limitée (j'aimais bien autrefois les cartes GUS, mais la - situation des cartes Gravis est délicate depuis quelque - temps).</para> - - </sect3> - - <sect3 id="hw-vgrabbers"> - <title>Vidéo</title> - - <para>Pour la capture vidéo, il y a deux bons - choix - n'importe - quelle carte à base de puce Brooktree BT848, comme les Hauppauge - ou les WinTV, marchera à merveille avec FreeBSD. Une autre carte - que j'utilise est la - <ulink - url="http://www.matrox.com/">Matrox</ulink> <ulink - url="http://www.matrox.com/imgweb/meteor.htm">Meteor</ulink>. - FreeBSD supporte aussi la carte d'incrustation vidéo plus ancienne - de chez Creative Labs, mais elles deviennent difficiles à trouver. - Notez que la carte Meteor <emphasis>ne fonctionnera pas</emphasis> - avec les cartes mères qui ont un contrôleur 440FX! Consultez - la section - <link linkend="hw-mb">Cartes mères</link> pour plus de - détails. Dans ce cas, il vaut mieux prendre une carte - BT848.</para> - - </sect3> - </sect2> - </sect1> - - <sect1 id="hw-core"> - <title>Composants de base/Processeurs</title> - - <sect2> - <title>Cartes mères, bus et contrôleurs de bus</title> - - <sect3> - <title>* ISA</title> - <para></para> - </sect3> - - <sect3> - <title>* EISA</title> - <para></para> - </sect3> - - <sect3> - <title>* VLB</title> - <para></para> - </sect3> - - <sect3 id="hw-mb-pci"> - <title>PCI</title> - - <para><emphasis>Contribution de &a.rgrimes;.<!-- <br> -->25 Avril - 1995.</emphasis></para> - - <para><emphasis>Mises à jour de &a.jkh;.</emphasis><!-- <br> - -->Dernière mise à jour le <emphasis>26 Août - 1996.</emphasis></para> - - <para>Parmi les contrôleurs INTEL PCI, la liste suivante décrit - différents types de problème connus, et leur gravité, du pire - au meilleur.</para> - - <variablelist> - <varlistentry><term>Mercury:</term> - <listitem> - <para>Problèmes de cohérence du cache, en particulier s'il - y a des contrôleurs de bus ISA en plus du pont ISA/PCI. - C'est un problème matériel, la seule solution consiste - à désactiver le cache.</para> - </listitem> - </varlistentry> - - <varlistentry><term>Saturn-I <emphasis>(i.e., 82424ZX en i - révision 0, 1 ou 2)</emphasis>:</term> - - <listitem> - <para>Problème de cohérence lors de la réécriture dans le - cache. C'est un problème matériel. La seule parade - consiste à configurer le cache externe en mode - transparent. Ou à passer à la version Saturn-II.</para> - </listitem> - </varlistentry> - - <varlistentry><term>Saturn-II <emphasis>(i.e., 82424ZX en - révision 3 ou 4)</emphasis>:</term> - - <listitem> - <para>Fonctionne bien, mais de nombreux fabriquants de - carte mère ne se préoccupent pas du bit SRAM nécessaire - aux opérations de réecriture. On peut y pallier en - utilisant le mode transparent ou en gérant le bit SRAM. - (J'ai fait cela avec une ASUS PCI/I-486SP3G révision 1.6 - et des cartes plus récentes).</para> - </listitem> - </varlistentry> - - <varlistentry><term>Neptune:</term> - - <listitem> - <para>Ne peut gérer plus de deux contrôleurs de bus. C'est - une erreur de conception reconnue par Intel. Parmi les - solutions: ne pas utiliser plus de deux contrôleurs, - matériel spécialement conçu pour remplacer l'arbitre de - bus PCI (apparu avec l'Intel Altair et d'autres cartes - mères pour serveur Intel), et bien sûr la réponse - officielle d'Intel, le remplacer par un Triton, nous - “l'y avons mis”.</para> - </listitem> - </varlistentry> - - <varlistentry><term>Triton <emphasis>(ie, - 430FX)</emphasis>:</term> - - <listitem> - <para>Pas de problème de cohérence du cache ou de contrôle - du bus connu. Mais cette puce n'implémente tout simplement - pas le contrôle de parité. Contournez le problème de - parité. Utilisez des cartes Triton-II si vous avez - le choix.</para> - </listitem> - </varlistentry> - - <varlistentry><term>Triton-II <emphasis>(ie, - 430HX)</emphasis>:</term> - - <listitem> - <para>Tous les échos sur les cartes mères avec cette puce - sont jusqu'ici favorables. Pas de problème connu.</para> - </listitem> - </varlistentry> - - <varlistentry><term>Orion:</term> - - <listitem> - <para>Les premières versions de cette puce souffraient d'un - retard en écriture PCI qui entraînait des dégradations - sensibles de performance des applications gourmandes en - trafic sur le bus PCI. Les versions B0 et ultérieures de - cette puce ont réglé ce problème.</para> - </listitem> - </varlistentry> - - <varlistentry><term><ulink - url="http://developer.intel.com/design/pcisets/desktop.htm#440FX">440FX</ulink>:</term> - - <listitem> - <para>Cette puce pour <ulink - url="http://www.intel.com/procs/ppro/index.htm">Pentium Pro</ulink> - semble fonctionner correctement et ne souffre pas des - problèmes qu'ont connus - les premières puces Orion. Il accepte - aussi une plus grande variété de types de mémoire, y compris - l'ECC et le contrôle de parité. Le seul problème connu est - que la carte d'acquisition vidéo Matrox Meteor ne fonctionne - pas avec.</para> - - </listitem> - </varlistentry> - </variablelist> - - </sect3> - </sect2> - - <sect2> - <title>Processeurs/Coprocesseurs</title> - - <para><emphasis>Contribution de &a.asami;.<!-- <br> -->26 Décembre - 1997.</emphasis></para> - - <sect3> - <title>P6 (Pentium Pro/Pentium II)</title> - - <para>Le Pentium Pro et le Pentium II fonctionnent parfaitement - avec FreeBSD. - De fait, notre site ftp de base <ulink - url="ftp://ftp.freebsd.org/">ftp.freebsd.org</ulink> (aussi - appelé "<filename>ftp.cdrom.com</filename>", le site ftp le plus - important au monde) utilise FreeBSD sur un Pentium Pro. Des <ulink - url="ftp://ftp.cdrom.com/archive-info/wcarchive.txt">Détails de la configuration</ulink> sont disponibles si vous êtes intéressés.</para> - - </sect3> - - <sect3> - <title>Pentium</title> - - <para>Les Pentium Intel (P54C), Pentium MMX (P55C), AMD K6 et - Cyrix/IBM 6x86MX fonctionnent tous avec FreeBSD. Je n'entrerai - pas dans le détail de savoir lequel est plus rapide que l'autre, - il y a des zillions de sites Web sur l'Internet pour vous - l'expliquer à l'endroit et à l'envers. - <!-- smiley --><emphasis>:)</emphasis></para> - - <note> - <para>Les différents processeurs ont besoin d'une alimentation - et d'une ventilation différentes. Assurez-vous que votre carte - mère fournit la tension exacte requise par votre processeur. Par - exemple, de nombreuses puces MMX ont besoin d'une alimentation - dédoublée (e.g., 2.9V pour l'unité centrale, 3.3V pour les - entrées/sorties). Certaines puces AMD et Cyrix/IBM chauffent - plus que les puces Intel. Dans ce cas, vérifiez que vous avez - bien les bons radiateurs et ventilateurs (vous pouvez trouver la - liste des composants certifiés sur leurs pages Web).</para> - </note> - - <sect4> - <title>Vitesses d'horloge</title> - - <para><emphasis>Contribution de &a.rgrimes;.<!-- <br> -->1 - Octobre 1996.</emphasis></para> - - <para><emphasis>Mise à jour de &a.asami;.<!-- <br> -->27 Décembre - 1997.</emphasis></para> - - <para>Les machines de la catégorie Pentium utilisent des vitesses - d'horloge différentes pour leurs différents composants. Il y a - la fréquence du processeur, celle du bus mémoire externe et - celle du bus PCI. Il n'est pas toujours exact qu'un processeur - “plus rapide” compose un système plus rapide - qu'un “plus lent”, du fait de ces différentes - vitesses d'horloge. Voici une table qui donne la liste des - possibilités:</para> - - <informaltable frame="none"> - <tgroup cols="4"> - <thead> - <row> - <entry>Fréquence du processeur (MHz)</entry> - <entry>Horloge externe et fréquence du bus mémoire (mHz) - [a]</entry> - <entry>Coefficient multiplicateur horloge - interne/externe</entry> - <entry>Fréquence du bus PCI (MHz)</entry> - </row> - </thead> - <tbody> - <row> - <entry>60</entry> - <entry>60</entry> - <entry>1.0</entry> - <entry>30</entry> - </row> - - <row> - <entry>66</entry> - <entry>66</entry> - <entry>1.0</entry> - <entry>33</entry> - </row> - - <row> - <entry>75</entry> - <entry>50</entry> - <entry>1.5</entry> - <entry>25</entry> - </row> - - <row> - <entry>90</entry> - <entry>60</entry> - <entry>1.5</entry> - <entry>30</entry> - </row> - - <row> - <entry>100</entry> - <entry>50 [b] - </entry> - <entry>2</entry> - <entry>25</entry> - </row> - - <row> - <entry>100</entry> - <entry>66</entry> - <entry>1.5</entry> - <entry>33</entry> - </row> - - <row> - <entry>120</entry> - <entry>60</entry> - <entry>2</entry> - <entry>30</entry> - </row> - - <row> - <entry>133</entry> - <entry>66</entry> - <entry>2</entry> - <entry>33</entry> - </row> - - <row> - <entry>150</entry> - <entry>60</entry> - <entry>2.5</entry> - <entry>30 (Intel, AMD)</entry> - </row> - - <row> - <entry>150</entry> - <entry>75</entry> - <entry>2</entry> - <entry>37.5 (Cyrix/IBM 6x86MX)</entry> - </row> - - <row> - <entry>166</entry> - <entry>66</entry> - <entry>2.5</entry> - <entry>33</entry> - </row> - - <row> - <entry>180</entry> - <entry>60</entry> - <entry>3</entry> - <entry>30</entry> - </row> - - <row> - <entry>200</entry> - <entry>66</entry> - <entry>3</entry> - <entry>33</entry> - </row> - - <row> - <entry>233</entry> - <entry>66</entry> - <entry>3.5</entry> - <entry>33</entry> - </row> - </tbody> - </tgroup> - </informaltable> - <para>Remarques:</para> - <itemizedlist> - <listitem> - <para>[a] 66MHz peut être en fait 66.667MHz, mais ne pas le - présumer.</para> - </listitem> - <listitem> - <para>[b] Le Pentium 100 peut utiliser une horloge externe à - 50MHz avec un coefficient multiplicateur de 2 ou à 66MHz - avec un coefficient multiplicateur de 1.5.</para> - </listitem> - </itemizedlist> - <para>L'idéal est donc d'avoir un processeur à 100, - 133, 166, 200 ou 233, sinon qu'avec un coefficient - multiplicateur de 3 et plus, le processeur attend après - la mémoire.</para> - - </sect4> - - <sect4> - <title>Le bogue de l'AMD K6</title> - - <para>En 1997, on a rapporté des problèmes d'erreurs d'accès - à la mémoire lors de compilations intensives avec l'AMD K6. - Le problème a été réglé au troisième trimestre 97. D'après - les rapports, les puces K6 dont la date de fabrication est - “9733” ou plus (i.e., produites à partir de la - 33ème semaine de 97) n'ont plus ce problème.</para> - - </sect4> - </sect3> - - <sect3> - <title>* 486</title> - <para></para> - </sect3> - - <sect3> - <title>* 386</title> - <para></para> - </sect3> - - <sect3> - <title>286</title> - - <para>Désolé, FreeBSD ne tourne pas sur des machines 80286. Il est - quasiment impossible de faire tourner les UNIXs conséquents et - dotés de fonctionnalités complètes d'aujourd'hui sur de telles - machines.</para> - - </sect3> - </sect2> - - <sect2> - <title>Mémoire</title> - - <para>Il vous faudra au moins 5 MB de mémoire pour pouvoir installer - FreeBSD. Une fois votre système en état de marche, vous pouvez - <link linkend="kernelconfig-building">recompiler un noyau</link> - qui utilisera moins de mémoire. Avec <filename>boot4.flp</filename> - vous pouvez vous en sortir avec seulement 4 MB.</para> - - </sect2> - - <sect2> - <title>* BIOS</title> - - <para></para> - </sect2> - </sect1> - - <sect1 id="hw-io"> - <title>*** Périphériques d'Entrée/Sortie</title> - -<!-- - &trans.a.dntt; ---> - - <sect2> - <title>* Cartes graphiques</title> - - <para></para> - </sect2> - - <sect2> - <title>* Cartes son</title> - - <para></para> - </sect2> - - <sect2> - <title>*** Ports série et cartes multi-ports</title> - - <sect3 id="uart"> - <title>*** L'UART : Ce que c'est et comment il fonctionne</title> - &sgml.todo; - -<!-- - <para><emphasis>Copyright © 1996 &a.uhclem;, tous droits - réservés. 13 janvier 1996.</emphasis></para> - - <para>Le contrôleur du récepteur/émetteur - asynchrone universel <emphasis>Universal - Asynchronous Receiver/Transmitter (UART)</emphasis> - est le composant clef du sous-système de communication - d'un ordinateur. L'UART prend des octets de données et - transmet des bits individuels d'un manière séquentielle. - Au point de destination, un second UART re-assemble les - bits en octets complets.</para> - - <para>Les transmissions séries sont habituellement - utilisées avec les modems et pour les communications - non-réseaux entre les ordinateurs, terminaux et autres - périphériques.</para> - - <para>Il y a deux formes de transmission série : synchrone - et asynchrone. Dépendant du mode que votre matériel - supporte, le nom d'un sous-système de communication indiquera - <literal>A</literal> s'il supporte les communications - asynchrone et <literal>S</literal> s'il supporte les - communications synchrones. Les deux formes sont décrites - ci-dessous :</para> - - <para>Les acronymes les plus courants sont : - - <blockquote> - <para>UART <emphasis>Universal Asynchronous - Receiver/Transmitter></emphasis> : Récepteur/Emetteur - universel asynchrone</para> - </blockquote> - - <blockquote> - <para>USART <emphasis>Universal SYnchronous-Asynchronous - Receiver/Transmitter></emphasis> : Récepteur/Emetteur - universel synchrone-asynchrone</para> - </blockquote></para> - - <sect4> - <title>Transmission série synchrones</title> - - <para>Les transmissions séries synchrones nécessite le - fait que l'émetteur et le récepteur partage une horloge - commune, ou que l'envoyeur fournisse un signal - d'échantillonage - ou n'importe quel autre signal temporel afin que le - récepteur sache quand est-ce qu'il doit - “lire” le prochain bit de données. Dans la - plupart des formes de communication synchrone, s'il - n'y a pas de données disponibles au moment où il faut - envoyer, un caractère de remplissage doit être envoyé à - la place de telle sorte qu'il y ait toujours des - données en cours de transmission. - La communication synchrone est souvent plus efficace - parce seulement des bits de données sont transmis entre - l'émetteur et le récepteur, et la communication - synchrone peut coûter plus cher si du cablage et - circuit supplémentaires sont nécessaires pour partager - un signal d'horloge entre l'émetteur et le - récepteur.</para> - - <para>Une forme de transmission synchrone est celle - utilisée par les imprimantes et les périphériques disques - non amovibles dans lesquels la donnée est envoyé à un - ensemble de câbles pendant que l'horloge ou le signal - d'échantillonage est envoyé par un câble différent. - Les imprimantes et les périphériques de disques fixes ne - sont normalement pas des périphériques série parce que la - plupart des interfaces standards de disques fixes envoient - un mot entier de donnée par signal d'horloge ou - d'échantillonage en utilisant un câble séparé pour chaque - bit du mot. Dans l'industrie du PC, cela est appelé - périphérique parallèle.</para> - - <para>Le matériel de communication série standard dans un PC - ne supporte pas les opérations synchrones. Ce mode est crit - ici dans un seul but de comparaison.</para> - </sect4> - - <sect4> - <title>Transmission parallèle asynchrone</title> - - <para>La transmission asynchrone parallèle permet - au données d'être transmises sans que l'émetteur n'ait à - envoyer une horloge au récepteur. - A la place, l'émetteur et le récepteur doivent s'entendre - à l'avance sur les paramêtres de temps et des bits spéciaux - sont ajoutés à chaque mot utilisé pour synchroniser les - unités d'envoi et de réception.</para> - - <para>Lorsqu'un mot est donné à l'UART pour des - transmissions asynchrones, un bit nommé "bit de départ" - est ajouté au débute de chaque mot transmis. Le bit de - départ est utilisé pour avertir le récepteur qu'un mot de - donnée est sur le point d'être envoyé, et pour forcer - l'horloge du récepteur à se synchroniser avec l'horloge de - l'émetteur. Ces deux horloges doivent être assez précises - afin de ne pas avoir un décalage de fréquence supérieur à - 10% durant la transmission du reste des bits du mot. (cette - nécessité a été introduit aux jours des téléprinters - mécaniques et est fréquement rencontré par les équipements - électroniques modernes.</para> - - <para>Après le bit de départ, les bits individuels du mot de - données sont envoyés, avec le bit de poids faible - <emphasis> - the Least Significant Bit (LSB) - </emphasis> - devant être envoyé en premier. - Chaque bit dans la transmission est envoyé pour exactement - le même temps que tous les autres bits, et le récepteur - “regarde” dans le câble à - approximativement la moitié de la période assignée à - chaque bit pour déterminer si le bit est un - <literal>1</literal> ou un <literal>0</literal>. - Par exemple, si cela prend deux secondes pour - envoyer chaque bit, le récepteur examinera le - signal pour déterminer si c'est un <literal>1</literal> - ou un <literal>0</literal> après qu'une seconde - se soit passée, puis il attendra deux secondes, - et examinera la valeur du bit suivant, et ainsi - de suite.</para> - - <para>L'émetteur ne sait pas si le récepteur a - “regardé” la valeur du bit. - L'émetteur a seulement connaissance de - l'horloge lui disant de commencer à transmettre - le prochain bit du mot.</para> - - <para>Lorsqu'un mot de donnée complet a été - envoyé, l'émetteur peut ajouter un bit de - parité que l'émetteur génère. Le bit de - parité peut être utilisé par le récepteur pour - effectuer une vérification d'erreur simple. - Puis enfin, un bit d'arrêt est envoyé à - l'emmetteur.</para> - - <para>Lorsque le récepteur recoit tous les bits - du mot de données, il peut vérifier les bits de - parité (l'émetteur et le récepteur doivent - s'être mis d'accord sur le bit de parité - utilisé), puis le récepteur attend un bit - d'arrêt. Si le bit d'arrêt n'apparait pas au - moment où il est supposé le faire, l'UART - considère que le mot complet est erroné et - reportera une erreur de fenêtre au processeur - hôte lorsque le mot de donnée est lu. La cause - usuelle d'une erreur de fenêtre est lorsque - l'horloge de l'émetteur et du récepteur ne - tournent pas à la même vitesse, et que le - signal a été interrompu.</para> - - <para>Indépendamment de si les données ont été - reçu correctement ou non, l'UART écarte - automatiquement les bits de départ, d'arrêt et de - parité. - Si l'émetteur et le récepteur sont configurés - identiquement, ces bits ne sont pas passé à - l'hôte.</para> - - <para>Si un autre mot est prêt pour la - transmission, le bit de départ pour le nouveau mot - peut être envoyé aussitôt que le bit d'arrêt pour - le mot précédent a été envoyé.</para> - - <para>Parce que les données asynchrones sont - “auto-descriptibles”, s'il n'y a pas - de données à transmettre, la ligne de transmission - peut être inactive.</para> - </sect4> - - <sect4> - <title>Autres fonctions UART</title> - - <para>En plus de son travail qui est de convertir - des données de parallèle à série en réception, un - UART fournit usuellement des circuits addtionnel - pour les signaux qui peuvent être utilisés pour - indiquer l'état de le média de transmission, et - pour réguler le flux de données dans l'éventualité - où le périphérique distant n'est pas préparé à - accepter plus de données. Par exemple, quand le - périphérique connecté à l'UART est un modem, le - modem peut reporter la présence d'une portance sur - la ligne téléphonique alors que l'ordinateur peut - ordonner au modem de se réinitialiser ou de ne pas - prendre d'appel en prenant en compte ou non ces - signaux supplépmentaires. La fonction de chacun - de ces signaux supplémentaires est défini dans le - standard EIA RS232-C.</para> - </sect4> - - <sect4> - <title>Les standards RS232-C et V.24</title> - - <para>Dans la plupart des systèmes informatiques, - l'UART est connecté au circuit générant le signal - correspondant aux spécifications EIA RS232-C. - Il y a aussi un standard CCITT nommé V.24 - qui reprend les spécifications incluses dans - RS232-C.</para> - - <sect5> - <title>Assignation de bits RS232-C (marques et - espaces)</title> - - <para>Dans la RS232-C, une valeur de <literal>1</literal> - est appelée une <literal>marque</literal> et une - valeur de <literal>0</literal> est appelé un - <literal>espace</literal>. - Lorsqu'une ligne de communication est inactive, - la ligne est dite “marquant” ou - transmettant continuellement la valeur - <literal>1</literal>.</para> - - <para>Le bit de départ a toujours une valeur de - <literal>0</literal> (un espace). Le bit d'arrêt - a toujours une valeur de <literal>1</literal> - (une marque). Cela signifie qu'il y aura - toujours une transition d'une marque (1) à un - espace (0) sur la ligne à chaque mot, même si - plusieurs mots sont transmis à la suite. - Cela garanti que l'émetteur et le récepteur - peuvent resynchroniser leurs horloges, - indépendamment du contenu des bits de données en - train d'être transmis.</para> - - <para>Le temps d'inactivité entre les bits de - départ et d'arrêt n'ont pas à être exactement - multiple (en incluant zéro) de la vitesse de - transmission de bits sur le lien de - communication, mais la plupart des UART sont - conçus de cette manière pour que cela soit plus - simple.</para> - - <para>Dans la RS232-C, le signal "marquant" - (un <literal>1</literal>) est représenté par - un voltage entre -2 VDC (tension en courant - continu) et -12 VDC, et un - signal "d'espace" (un <literal>0</literal>) - est représenté par un voltage entre 0 et +12 VDC. - L'émetteur est supposé envoyer du +12 VDC ou - -12 VDC, et le récepteur, et le récepteur est - supposé supporter une perte de voltage sur les - longs câbles. - Certains émetteurs avec des périphériques de - basse énergie (comme les ordinateurs portables) - utilisent souvent seulement +5 VDC et -5 VDC, - mais ces valeurs sont toujours acceptables - par un récepteur RS232-C, du moment que la - longueur du câble soit courte.</para> - </sect5> - - <sect5> - <title>Signal de rupture RS232-C (Break Signal)</title> - - <para>La RS232-C spécifie aussi un signal - appelé <literal>rupture</literal> (break), - qui est causé en envoyant en continu des valeurs - d'espacement (ni de départ, ni d'arrêt). - Quand iul n'y a pas d'électricité présent sur le - circuit de données, la ligne est considérée en - train d'envoyer une <literal>Rupture</literal>.</para> - - <para>Le signal <literal>Rupture</literal> peut - être plus long que le temps mis pour envoyer un - octet complet plus les bits de départ, d'arrêt - et de parité. La plupart des UART peuvent - distinguer une erreur de fenêtre et une - rupture, mais si l'UART ne peut pas le - faire, la détection de fenêtre peut être - utilisée pour identifier les - ruptures.</para> - - <para>Aux jours du teleprinter, lorsque - plusieurs imprimantes à travers le monde étaient - câblées en série (comme les services de news), - toute unité pouvait causer une - <literal>Rupture</literal> en ouvrant - temporairement le circuit complet. - Cela était utilisé pour pouvoir autoriser un emplacement - avec des nouvelles importante d'interrompre un autre - emplacement en train de transmettre des informations.</para> - - <para>Dans les systèmes modernes, il y a deux types de - signal de rupture. Si la rupture est plus longue - que 1.6 secondes, on le considère comme une - "rupture de modem", et certains modems - peuvent être programmés pour terminer la conversation - et pour raccrocher ou entrer dans le mode de commande du - modem quand le modem détecte ce signal. - Si l'rupture est plus courte que 1.6 secondes, cela - signifie une rupture de données et il appartient à - l'ordinateur distant de répondre à ce signal. - Parfois cette forme de rupture est utilisée comme - signal d'attention ou d'interruption et est parfois - acceptée comme remplacement pour le caractère - ASCII CONTROL-C.</para> - - <para>Les marques et espaces sont équivalents aux - “trous” et “non trou” dans les - systèmes à cartes perforées.</para> - - <note> - <para>Les ruptures ne peuvent être générées depuis des - cartes perforées ou n'importe auelle autre valeur - d'octet, puisque les octets sont toujours envoyés avec - un bit de départ et un bit d'arrêt. - L'UART est habituellement capable de produire du signal - d'espacement en réponse à une commande spéciale - du processeur hôte.</para> - </note> - </sect5> - - <sect5> - <title>Périphériques RS232-C DTE et DCE</title> - - <para>Les spécifications de RS232-C définit deux types de - matériel : le terminal informatique (DTE) et le périphérique - de transport de données (DCE). Habituellement, le - périphérique DTE est un terminal (ou un ordinateur) et le - DCE est un modem. A l'autre extrémité de la conversation à - travers la ligne téléphonique, le modem de réception est - aussi un périphérique DCE et l'ordinateur qui est relié à - ce modem est un périphérique DTE. - Le périphérique DCE reçoit des signaux sur les broches que - le périphérique de DTE transmet, et vice versa.</para> - - <para>Lorsque deux périphériques qui sont tous deux DTE - ou tous deux DCE doivent être connectés ensemble sans un - modem ou un intermédiaire similaire entre eux, un NULL - modem doit être utilisé. Le NULL modem réorganize - électriquement le câblage de telle sorte que la sortie - de l'émetteur soit reliée au récepteur sur l'autre - périphérique et vice versa. - Des traductions semblables sont exécutées sur tous les - signaux de contrôle de sorte que chaque périphérique - voit ce qu'il pense être du signal DCE (ou DTE) depuis - l'autre périphérique.</para> - - <para>Le nombre de signaux produits par les périphériques - DTE et DCE ne sont pas symétriques. - Le périphérique DTE produit moins de signaux pour le - périphérique DCE que le périphérique DTE reçoit depuis le - DCE.</para> - </sect5> - - <sect5> - <title>Assignation des broches RS232-C</title> - - <para>Les spécifications EIA RS232-C (et l'équivalent ITU, - V.24) désigne un connecteur 25 broches (habituellement un - DB25) et définit le but de la plupart des broches dans ce - connecteur.</para> - - <para>Dans l'IBM PC et les systèmes - semblables, un sous-ensemble de signaux de - RS232-C est fourni par l'intermédiaire de neuf - connecteurs à broches (DB9). Les signaux qui ne - sont pas inclus sur le connecteur PC, travaille - principalement avec l'exécution synchrone, et ce - mode de transmission n'est pas supportés par - l'UART qu'IBM a choisi pour l'usage dans l'IBM - PC.</para> - - <para>Selon le constructeur, un DB25, un - DB9, ou les deux types de connecteur peuvent - être utilisés pour des transmissions de RS232-C. - (l'IBM PC utilise également un connecteur - DB25 pour l'interface parallèle pour - imprimante ce qui prête à certaines - confusions).</para> - - <para>Ci-dessous, une table des affectations de signaux - des connecteurs DB25 et DB9 dans RS232-C</para> - - <informaltable frame="none"> - <tgroup cols="7"> - <thead> - <row> - <entry>Broche DB25 RS232-C</entry> - <entry>Broche DB9 IBM PC</entry> - <entry>EIA Circuit Symbol</entry> - <entry>CCITT Circuit Symbol</entry> - <entry>Common Name</entry> - <entry>Signal Source</entry> - <entry>Description</entry> - </row> - </thead> - - <tbody> - <row> - <entry>1</entry> - <entry>-</entry> - <entry>AA</entry> - <entry>101</entry> - <entry>PG/FG</entry> - <entry>-</entry> - <entry>Frame/Protective Ground</entry> - </row> - - <row> - <entry>2</entry> - <entry>3</entry> - <entry>BA</entry> - <entry>103</entry> - <entry>TD</entry> - <entry>DTE</entry> - <entry>Transmission données</entry> - </row> - - <row> - <entry>3</entry> - <entry>2</entry> - <entry>BB</entry> - <entry>104</entry> - <entry>RD</entry> - <entry>DCE</entry> - <entry>Reception données</entry> - </row> - - <row> - <entry>4</entry> - <entry>7</entry> - <entry>CA</entry> - <entry>105</entry> - <entry>RTS</entry> - <entry>DTE</entry> - <entry>Request to Send</entry> - </row> - - <row> - <entry>5</entry> - <entry>8</entry> - <entry>CB</entry> - <entry>106</entry> - <entry>CTS</entry> - <entry>DCE</entry> - <entry>Clear to Send</entry> - </row> - - <row> - <entry>6</entry> - <entry>6</entry> - <entry>CC</entry> - <entry>107</entry> - <entry>DSR</entry> - <entry>DCE</entry> - <entry>Data Set Ready</entry> - </row> - - <row> - <entry>7</entry> - <entry>5</entry> - <entry>AV</entry> - <entry>102</entry> - <entry>SG/GND</entry> - <entry>-</entry> - <entry>Signal Ground</entry> - </row> - - <row> - <entry>8</entry> - <entry>1</entry> - <entry>CF</entry> - <entry>109</entry> - <entry>DCD/CD</entry> - <entry>DCE</entry> - <entry>Data Carrier Detect</entry> - </row> - - <row> - <entry>9</entry> - <entry>-</entry> - <entry>-</entry> - <entry>-</entry> - <entry>-</entry> - <entry>-</entry> - <entry>Reserved for Test</entry> - </row> - - <row> - <entry>10</entry> - <entry>-</entry> - <entry>-</entry> - <entry>-</entry> - <entry>-</entry> - <entry>-</entry> - <entry>Reserved for Test</entry> - </row> - - <row> - <entry>11</entry> - <entry>-</entry> - <entry>-</entry> - <entry>-</entry> - <entry>-</entry> - <entry>-</entry> - <entry>Reserved for Test</entry> - </row> - - <row> - <entry>12</entry> - <entry>-</entry> - <entry>CI</entry> - <entry>122</entry> - <entry>SRLSD</entry> - <entry>DCE</entry> - <entry>Sec. Recv. Line Signal Detector</entry> - </row> - - <row> - <entry>13</entry> - <entry>-</entry> - <entry>SCB</entry> - <entry>121</entry> - <entry>SCTS</entry> - <entry>DCE</entry> - <entry>Secondary Clear to Send</entry> - </row> - - <row> - <entry>14</entry> - <entry>-</entry> - <entry>SBA</entry> - <entry>118</entry> - <entry>STD</entry> - <entry>DTE</entry> - <entry>Secondary Transmit Data</entry> - </row> - - <row> - <entry>15</entry> - <entry>-</entry> - <entry>DB</entry> - <entry>114</entry> - <entry>TSET</entry> - <entry>DCE</entry> - <entry>Trans. Sig. Element Timing</entry> - </row> - - <row> - <entry>16</entry> - <entry>-</entry> - <entry>SBB</entry> - <entry>119</entry> - <entry>SRD</entry> - <entry>DCE</entry> - <entry>Secondary Received Data</entry> - </row> - - <row> - <entry>17</entry> - <entry>-</entry> - <entry>DD</entry> - <entry>115</entry> - <entry>RSET</entry> - <entry>DCE</entry> - <entry>Receiver Signal Element Timing</entry> - </row> - - <row> - <entry>18</entry> - <entry>-</entry> - <entry>-</entry> - <entry>141</entry> - <entry>LOOP</entry> - <entry>DTE</entry> - <entry>Local Loopback</entry> - </row> - - <row> - <entry>19</entry> - <entry>-</entry> - <entry>SCA</entry> - <entry>120</entry> - <entry>SRS</entry> - <entry>DTE</entry> - <entry>Secondary Request to Send</entry> - </row> - - <row> - <entry>20</entry> - <entry>4</entry> - <entry>CD</entry> - <entry>108.2</entry> - <entry>DTR</entry> - <entry>DTE</entry> - <entry>Data Terminal Ready</entry> - </row> - - <row> - <entry>21</entry> - <entry>-</entry> - <entry>-</entry> - <entry>-</entry> - <entry>RDL</entry> - <entry>DTE</entry> - <entry>Remote Digital Loopback</entry> - </row> - - <row> - <entry>22</entry> - <entry>9</entry> - <entry>CE</entry> - <entry>125</entry> - <entry>RI</entry> - <entry>DCE</entry> - <entry>Ring Indicator</entry> - </row> - - <row> - <entry>23</entry> - <entry>-</entry> - <entry>CH</entry> - <entry>111</entry> - <entry>DSRS</entry> - <entry>DTE</entry> - <entry>Data Signal Rate Selector</entry> - </row> - - <row> - <entry>24</entry> - <entry>-</entry> - <entry>DA</entry> - <entry>113</entry> - <entry>TSET</entry> - <entry>DTE</entry> - <entry>Trans. Sig. Element Timing</entry> - </row> - - <row> - <entry>25</entry> - <entry>-</entry> - <entry>-</entry> - <entry>142</entry> - <entry>-</entry> - <entry>DCE</entry> - <entry>Test Mode</entry> - </row> - </tbody> - </tgroup> - </informaltable> - </sect5> - </sect4> - - <sect4> - <title>Bits, Baud et symboles</title> - - <para>Le baud est une mesure de vitesse de transmission dans la - liaison asynchrone. En raison de l'avance en technologie - de transmission par modem, ce terme est fréquemment - employé abusivement pour désigner le débit dans les nouveaux - périphériques.</para> - - <para>Traditionnellement, un débit en baud représente le - nombre de bits qui sont envoyés réellement - par le média, pas la quantité des données qui sont - déplacées réellement d'un dispositif de - DTE à l'autre. Le comptage en baud inclut les bits - supplémentaires de départ, d'arrêt et de parité qui sont - produits par l'UART d' envoi et retirés par l'UART de - réception. Ceci signifie que les mots de sept bits - de données prennent réellement 10 bits à transmettre. - Par conséquent, un modem - capable de déplacer 300 bits par seconde d'un endroit à - l'autre peut normalement seulement - déplacer 30 mots de 7 bit si la parité est utilisée et un bit - d'arrêt et de de début sont présent.</para> - - <para>Si des mots contenant des données de 8 bits sont - utilisés et si des bits de parité sont également - utilisés, le débit tombe à 27.27 mots par seconde, parce que - cela prend maintenant 11 bits pour envoyer les mots - de 8 bits, et le modem envoie toujours seulement - 300 bits par seconde.</para> - - <para>La formule pour convertir des octets par seconde - en une vitesse baud et vice versa était - simple jusqu'à ce que les modems correcteurs d'erreurs - soient arrivés. Ces modems reçoivent - une série de bits de l'UART dans l'ordinateur - hôte (même lorsque des modems internes - sont utilisés les données sont encore - fréquemment arrangés en série) et convertissent les bits de - nouveau en octets. Ces octets sont alors combinés dans - des paquets et envoyés par - de la ligne téléphonique en utilisant une méthode de - transmission synchrone. Ceci signifie que les - bits de parité, d'arrêt, de début, ajoutés par l'UART dans - le DTE (l'ordinateur) ont été retirés par le - modem avant transmission par le modem d' envoi. Quand ces - octets sont reçus par le modem distant, le modem - distant ajoute des bits de parité, de début, d'arrêt - aux mots, les convertit en format séquentiel et puis - les envoie à l'UART de réception - dans l'ordinateur distant, qui élimine - alors les bits de début, d'arrêt et - de parité.</para> - - <para>La raison pour laquelle toutes ces conversions - supplémentaires sont effectuées est de faire de la sorte - que les deux modems - puissent exécuter les corrections d'erreurs, qui signifie que - le modem de réception peut demander au - modem d'envoi de renvoyer un bloc de données qui n'aurait - pas été reçu avec un total de - contrôle correct. Ce contrôle est manipulé par les - modems, et les périphériques DTE sont ignorant du processus - qui s'est produit.</para> - - <para>En sautant les bits de parité, de début et d'arrêt, - les bits supplémentaires des données - que les deux - modems doivent partager entre eux pour effectuer des - corrections d'erreurs - sont le plus souvent cachés lors du calcul - du débit de transmission effectivement vu par le matériel - DTE d'envoi et de réception. - Par exemple, si un modem envoie dix mots de 7 bit à un - autre modem sans compter les bits de - parité, de début et d'arrêt, le modem d' envoi pourra - ajouter 30 bits d'information que le - modem de réception pourra employer pour faire de correction - d'erreurs, ceci sans influencer la vitesse de - transmission des vraies données.</para> - - <para>L'utilisation du terme baud est rendu - encore confus - par les modems exécutant une compression. - Un mot simple de 8 bits à travers une ligne - téléphonique pourrait en réalité être une douzaine de mots - qui ont été transmis au modem d'envoi. Le modem de réception - se chargera ensuite de le décompresser et lui rendre son - contenu inital qu'il passera au DTE de réception.</para> - - </para> - Modern modems also include buffers that allow the rate that - bits move across the phone line (DCE to DCE) to be a different - speed than the speed that the bits move between the DTE and DCE on - both ends of the conversation. Normally the speed between the DTE - and DCE is higher than the DCE to DCE speed because of the use of - compression by the modems.</para> - - <para>Because the number of bits needed to describe a byte varied - during the trip between the two machines plus the differing - bits-per-seconds speeds that are used present on the DTE-DCE and - DCE-DCE links, the usage of the term Baud to describe the overall - communication speed causes problems and can misrepresent the true - transmission speed. So Bits Per Second (bps) is the correct term - to use to describe the transmission rate seen at the DCE to DCE - interface and Baud or Bits Per Second are acceptable terms to use - when a connection is made between two systems with a wired - connection, or if a modem is in use that is not performing - error-correction or compression.</para> - - <para>Modern high speed modems (2400, 9600, 14,400, and 19,200bps) - in reality still operate at or below 2400 baud, or more - accurately, 2400 Symbols per second. High speed modem are able to - encode more bits of data into each Symbol using a technique called - Constellation Stuffing, which is why the effective bits per second - rate of the modem is higher, but the modem continues to operate - within the limited audio bandwidth that the telephone system - provides. Modems operating at 28,800 and higher speeds have - variable Symbol rates, but the technique is the same.</para> - </sect4> - - - <sect4> - <title>The IBM Personal Computer UART</title> - - <para>Starting with the original IBM Personal Computer, IBM selected - the National Semiconductor INS8250 UART for use in the IBM PC - Parallel/Serial Adapter. Subsequent generations of compatible - computers from IBM and other vendors continued to use the INS8250 - or improved versions of the National Semiconductor UART - family.</para> - - <sect5> - <title>National Semiconductor UART Family Tree</title> - - <para>There have been several versions and subsequent generations - of the INS8250 UART. Each major version is described - below.</para> - - <programlisting> -INS8250 -> INS8250B - \ - \ - \-> INS8250A -> INS82C50A - \ - \ - \-> NS16450 -> NS16C450 - \ - \ - \-> NS16550 -> NS16550A -> PC16550D</programlisting> - - <variablelist> - <varlistentry> - <term>INS8250</term> - - <listitem> - <para>This part was used in the original IBM PC and IBM - PC/XT. The original name for this part was the INS8250 - ACE (Asynchronous Communications Element) and it is made - from NMOS technology.</para> - - <para>The 8250 uses eight I/O ports and has a one-byte send - and a one-byte receive buffer. This original UART has - several race conditions and other flaws. The original IBM - BIOS includes code to work around these flaws, but this - made the BIOS dependent on the flaws being present, so - subsequent parts like the 8250A, 16450 or 16550 could not - be used in the original IBM PC or IBM PC/XT.</para> - </listitem> - </varlistentry> - - <varlistentry> - <term>INS8250-B</term> - - <listitem> - <para>This is the slower speed of the INS8250 made from NMOS - technology. It contains the same problems as the original - INS8250.</para> - </listitem> - </varlistentry> - - <varlistentry> - <term>INS8250A</term> - - <listitem> - <para>An improved version of the INS8250 using XMOS - technology with various functional flaws corrected. The - INS8250A was used initially in PC clone computers by - vendors who used “clean” BIOS designs. Because - of the corrections in the chip, this part could not be - used with a BIOS compatible with the INS8250 or - INS8250B.</para> - </listitem> - </varlistentry> - - <varlistentry> - <term>INS82C50A</term> - - <listitem> - <para>This is a CMOS version (low power consumption) of the - INS8250A and has similar functional - characteristics.</para> - </listitem> - </varlistentry> - - <varlistentry> - <term>NS16450</term> - - <listitem> - <para>Same as NS8250A with improvements so it can be used - with faster CPU bus designs. IBM used this part in the - IBM AT and updated the IBM BIOS to no longer rely on the - bugs in the INS8250.</para> - </listitem> - </varlistentry> - - <varlistentry> - <term>NS16C450</term> - - <listitem> - <para>This is a CMOS version (low power consumption) of the - NS16450.</para> - </listitem> - </varlistentry> - - <varlistentry> - <term>NS16550</term> - - <listitem> - <para>Same as NS16450 with a 16-byte send and receive buffer - but the buffer design was flawed and could not be reliably - be used.</para> - </listitem> - </varlistentry> - - <varlistentry> - <term>NS16550A</term> - - <listitem> - <para>Same as NS16550 with the buffer flaws corrected. The - 16550A and its successors have become the most popular - UART design in the PC industry, mainly due it its ability - to reliably handle higher data rates on operating systems - with sluggish interrupt response times.</para> - </listitem> - </varlistentry> - - <varlistentry> - <term>NS16C552</term> - - <listitem> - <para>This component consists of two NS16C550A CMOS UARTs in - a single package.</para> - </listitem> - </varlistentry> - - <varlistentry> - <term>PC16550D</term> - - <listitem> - <para>Same as NS16550A with subtle flaws corrected. This is - revision D of the 16550 family and is the latest design - available from National Semiconductor.</para> - </listitem> - </varlistentry> - </variablelist> - </sect5> - - <sect5> - <title>The NS16550AF and the PC16550D are the same thing</title> - - <para>National reorganized their part numbering system a few years - ago, and the NS16550AFN no longer exists by that name. (If you - have a NS16550AFN, look at the date code on the part, which is a - four digit number that usually starts with a nine. The first - two digits of the number are the year, and the last two digits - are the week in that year when the part was packaged. If you - have a NS16550AFN, it is probably a few years old.)</para> - - <para>The new numbers are like PC16550DV, with minor differences - in the suffix letters depending on the package material and its - shape. (A description of the numbering system can be found - below.)</para> - - <para>It is important to understand that in some stores, you may - pay $15(US) for a NS16550AFN made in 1990 and in the next - bin are the new PC16550DN parts with minor fixes that National - has made since the AFN part was in production, the PC16550DN was - probably made in the past six months and it costs half (as low - as $5(US) in volume) as much as the NS16550AFN because they - are readily available.</para> - - <para>As the supply of NS16550AFN chips continues to shrink, the - price will probably continue to increase until more people - discover and accept that the PC16550DN really has the same - function as the old part number.</para> - </sect5> - - <sect5> - <title>National Semiconductor Part Numbering System</title> - - <para>The older NS<replaceable>nnnnnrqp</replaceable> part - numbers are now of the format - PC<replaceable>nnnnnrgp</replaceable>.</para> - - <para>The <replaceable>r</replaceable> is the revision field. The - current revision of the 16550 from National Semiconductor is - <literal>D</literal>.</para> - - <para>The <replaceable>p</replaceable> is the package-type field. - The types are:</para> - - <informaltable frame="none"> - <tgroup cols="3"> - <tbody> - <row> - <entry>"F"</entry> - <entry>QFP</entry> - <entry>(quad flat pack) L lead type</entry> - </row> - - <row> - <entry>"N"</entry> - <entry>DIP</entry> - <entry>(dual inline package) through hole straight lead - type</entry> - </row> - - <row> - <entry>"V"</entry> - <entry>LPCC</entry> - <entry>(lead plastic chip carrier) J lead type</entry> - </row> - </tbody> - </tgroup> - </informaltable> - - <para>The <replaceable>g</replaceable> is the product grade field. - If an <literal>I</literal> precedes the package-type letter, it - indicates an “industrial” grade part, which has - higher specs than a standard part but not as high as Military - Specification (Milspec) component. This is an optional - field.</para> - - <para>So what we used to call a NS16550AFN (DIP Package) is now - called a PC16550DN or PC16550DIN.</para> - </sect5> - </sect4> - - <sect4> - <title>Other Vendors and Similar UARTs</title> - - <para>Over the years, the 8250, 8250A, 16450 and 16550 have been - licensed or copied by other chip vendors. In the case of the - 8250, 8250A and 16450, the exact circuit (the - “megacell”) was licensed to many vendors, including - Western Digital and Intel. Other vendors reverse-engineered the - part or produced emulations that had similar behavior.</para> - - <para>In internal modems, the modem designer will frequently emulate - the 8250A/16450 with the modem microprocessor, and the emulated - UART will frequently have a hidden buffer consisting of several - hundred bytes. Because of the size of the buffer, these - emulations can be as reliable as a 16550A in their ability to - handle high speed data. However, most operating systems will - still report that the UART is only a 8250A or 16450, and may not - make effective use of the extra buffering present in the emulated - UART unless special drivers are used.</para> - - <para>Some modem makers are driven by market forces to abandon a - design that has hundreds of bytes of buffer and instead use a - 16550A UART so that the product will compare favorably in market - comparisons even though the effective performance may be lowered - by this action.</para> - - <para>A common misconception is that all parts with - “16550A” written on them are identical in performance. - There are differences, and in some cases, outright flaws in most - of these 16550A clones.</para> - - <para>When the NS16550 was developed, the National Semiconductor - obtained several patents on the design and they also limited - licensing, making it harder for other vendors to provide a chip - with similar features. Because of the patents, reverse-engineered - designs and emulations had to avoid infringing the claims covered - by the patents. Subsequently, these copies almost never perform - exactly the same as the NS16550A or PC16550D, which are the parts - most computer and modem makers want to buy but are sometimes - unwilling to pay the price required to get the genuine - part.</para> - - <para>Some of the differences in the clone 16550A parts are - unimportant, while others can prevent the device from being used - at all with a given operating system or driver. These differences - may show up when using other drivers, or when particular - combinations of events occur that were not well tested or - considered in the Windows driver. This is because most modem - vendors and 16550-clone makers use the Microsoft drivers from - Windows for Workgroups 3.11 and the Microsoft MSD utility as the - primary tests for compatibility with the NS16550A. This - over-simplistic criteria means that if a different operating - system is used, problems could appear due to subtle differences - between the clones and genuine components.</para> - - <para>National Semiconductor has made available a program named - <application>COMTEST</application> that performs compatibility - tests independent of any OS drivers. It should be remembered that - the purpose of this type of program is to demonstrate the flaws in - the products of the competition, so the program will report major - as well as extremely subtle differences in behavior in the part - being tested.</para> - - <para>In a series of tests performed by the author of this document - in 1994, components made by National Semiconductor, TI, StarTech, - and CMD as well as megacells and emulations embedded in internal - modems were tested with COMTEST. A difference count for some of - these components is listed below. Because these tests were - performed in 1994, they may not reflect the current performance of - the given product from a vendor.</para> - - <para>It should be noted that COMTEST normally aborts when an - excessive number or certain types of problems have been detected. - As part of this testing, COMTEST was modified so that it would not - abort no matter how many differences were encountered.</para> - - <informaltable frame="none"> - <tgroup cols="3"> - <thead> - <row> - <entry>Vendor</entry> - <entry>Part Number</entry> - <entry>Errors (aka "differences" reported)</entry> - </row> - </thead> - - <tbody> - <row> - <entry>National</entry> - <entry>(PC16550DV)</entry> - <entry>0</entry> - </row> - - <row> - <entry>National</entry> - <entry>(NS16550AFN)</entry> - <entry>0</entry> - </row> - - <row> - <entry>National</entry> - <entry>(NS16C552V)</entry> - <entry>0</entry> - </row> - - <row> - <entry>TI</entry> - <entry>(TL16550AFN)</entry> - <entry>3</entry> - </row> - - <row> - <entry>CMD</entry> - <entry>(16C550PE)</entry> - <entry>19</entry> - </row> - - <row> - <entry>StarTech</entry> - <entry>(ST16C550J)</entry> - <entry>23</entry> - </row> - - <row> - <entry>Rockwell</entry> - <entry>Reference modem with internal 16550 or an - emulation (RC144DPi/C3000-25)</entry> - <entry>117</entry> - </row> - - <row> - <entry>Sierra</entry> - <entry>Modem with an internal 16550 - (SC11951/SC11351)</entry> - <entry>91</entry> - </row> - </tbody> - </tgroup> - </informaltable> - - <note> - <para>To date, the author of this document has not found any - non-National parts that report zero differences using the - COMTEST program. It should also be noted that National has had - five versions of the 16550 over the years and the newest parts - behave a bit differently than the classic NS16550AFN that is - considered the benchmark for functionality. COMTEST appears to - turn a blind eye to the differences within the National product - line and reports no errors on the National parts (except for the - original 16550) even when there are official erratas that - describe bugs in the A, B and C revisions of the parts, so this - bias in COMTEST must be taken into account.</para> - </note> - - <para>It is important to understand that a simple count of - differences from COMTEST does not reveal a lot about what - differences are important and which are not. For example, about - half of the differences reported in the two modems listed above - that have internal UARTs were caused by the clone UARTs not - supporting five- and six-bit character modes. The real 16550, - 16450, and 8250 UARTs all support these modes and COMTEST checks - the functionality of these modes so over fifty differences are - reported. However, almost no modern modem supports five- or - six-bit characters, particularly those with error-correction and - compression capabilities. This means that the differences related - to five- and six-bit character modes can be discounted.</para> - - <para>Many of the differences COMTEST reports have to do with - timing. In many of the clone designs, when the host reads from - one port, the status bits in some other port may not update in the - same amount of time (some faster, some slower) as a - <emphasis>real</emphasis> NS16550AFN and COMTEST looks for these - differences. This means that the number of differences can be - misleading in that one device may only have one or two differences - but they are extremely serious, and some other device that updates - the status registers faster or slower than the reference part - (that would probably never affect the operation of a properly - written driver) could have dozens of differences reported.</para> - - <para>COMTEST can be used as a screening tool to alert the - administrator to the presence of potentially incompatible - components that might cause problems or have to be handled as a - special case.</para> - - <para>If you run COMTEST on a 16550 that is in a modem or a modem is - attached to the serial port, you need to first issue a ATE0&W - command to the modem so that the modem will not echo any of the - test characters. If you forget to do this, COMTEST will report at - least this one difference:</para> - - <screen>Error (6)...Timeout interrupt failed: IIR = c1 LSR = 61</screen> - </sect4> - - <sect4> - <title>8250/16450/16550 Registers</title> - - <para>The 8250/16450/16550 UART occupies eight contiguous I/O port - addresses. In the IBM PC, there are two defined locations for - these eight ports and they are known collectively as COM1 and - COM2. The makers of PC-clones and add-on cards have created two - additional areas known as COM3 and COM4, but these extra COM ports - conflict with other hardware on some systems. The most common - conflict is with video adapters that provide IBM 8514 - emulation.</para> - - <para>COM1 is located from 0x3f8 to 0x3ff and normally uses IRQ 4 - COM2 is located from 0x2f8 to 0x2ff and normally uses IRQ 3 COM3 - is located from 0x3e8 to 0x3ef and has no standardized IRQ COM4 is - located from 0x2e8 to 0x2ef and has no standardized IRQ.</para> - - <para>A description of the I/O ports of the 8250/16450/16550 UART is - provided below.</para> - - <informaltable frame="none"> - <tgroup cols="3"> - <thead> - <row> - <entry>I/O Port</entry> - <entry>Access Allowed</entry> - <entry>Description</entry> - </row> - </thead> - - <tbody> - <row> - <entry>+0x00</entry> - <entry>write (DLAB==0)</entry> - <entry><para>Transmit Holding Register - (THR).</para><para>Information written to this port are - treated as data words and will be transmitted by the - UART.</para></entry> - </row> - - <row> - <entry>+0x00</entry> - <entry>read (DLAB==0)</entry> - <entry><para>Receive Buffer Register (RBR).</para><para>Any - data words received by the UART form the serial link are - accessed by the host by reading this - port.</para></entry> - </row> - - <row> - <entry>+0x00</entry> - <entry>write/read (DLAB==1)</entry> - <entry><para>Divisor Latch LSB (DLL)</para><para>This value - will be divided from the master input clock (in the IBM - PC, the master clock is 1.8432MHz) and the resulting - clock will determine the baud rate of the UART. This - register holds bits 0 thru 7 of the - divisor.</para></entry> - </row> - - <row> - <entry>+0x01</entry> - <entry>write/read (DLAB==1)</entry> - <entry><para>Divisor Latch MSB (DLH)</para><para>This value - will be divided from the master input clock (in the IBM - PC, the master clock is 1.8432MHz) and the resulting - clock will determine the baud rate of the UART. This - register holds bits 8 thru 15 of the - divisor.</para></entry> - </row> - - <row> - <entry>+0x01</entry> - <entry>write/read (DLAB==0)</entry> - <entrytbl cols="2"> - <colspec colnum="1" colname="col1"> - <colspec colnum="2" colname="col2"> - <spanspec namest="col1" nameend="col2" spanname="1to2"> - - <tbody> - <row> - <entry spanname="1to2"><para>Interrupt Enable Register - (IER)</para><para>The 8250/16450/16550 UART - classifies events into one of four categories. - Each category can be configured to generate an - interrupt when any of the events occurs. The - 8250/16450/16550 UART generates a single external - interrupt signal regardless of how many events in - the enabled categories have occurred. It is up to - the host processor to respond to the interrupt and - then poll the enabled interrupt categories - (usually all categories have interrupts enabled) - to determine the true cause(s) of the - interrupt.</para></entry> - </row> - - <row> - <entry>Bit 7</entry> - <entry>Reserved, always 0.</entry> - </row> - - <row> - <entry>Bit 6</entry> - <entry>Reserved, always 0.</entry> - </row> - - <row> - <entry>Bit 5</entry> - <entry>Reserved, always 0.</entry> - </row> - - <row> - <entry>Bit 4</entry> - <entry>Reserved, always 0.</entry> - </row> - - <row> - <entry>Bit 3</entry> - <entry>Enable Modem Status Interrupt (EDSSI). Setting - this bit to "1" allows the UART to generate an - interrupt when a change occurs on one or more of the - status lines.</entry> - </row> - - <row> - <entry>Bit 2</entry> - <entry>Enable Receiver Line Status Interrupt (ELSI) - Setting this bit to "1" causes the UART to generate - an interrupt when the an error (or a BREAK signal) - has been detected in the incoming data.</entry> - </row> - - <row> - <entry>Bit 1</entry> - <entry>Enable Transmitter Holding Register Empty - Interrupt (ETBEI) Setting this bit to "1" causes the - UART to generate an interrupt when the UART has room - for one or more additional characters that are to be - transmitted.</entry> - </row> - - <row> - <entry>Bit 0</entry> - <entry>Enable Received Data Available Interrupt - (ERBFI) Setting this bit to "1" causes the UART to - generate an interrupt when the UART has received - enough characters to exceed the trigger level of the - FIFO, or the FIFO timer has expired (stale data), or - a single character has been received when the FIFO - is disabled.</entry> - </row> - </tbody> - </entrytbl> - </row> - - <row> - <entry>+0x02</entry> - <entry>write</entry> - <entrytbl cols="4"> - <colspec colnum="1" colname="col1"> - <colspec colnum="2" colname="col2"> - <colspec colnum="3" colname="col3"> - <colspec colnum="4" colname="col4"> - <spanspec namest="col1" nameend="col4" spanname="1to4"> - <spanspec namest="col2" nameend="col4" spanname="2to4"> - - <tbody> - <row> - <entry spanname="1to4">FIFO Control Register (FCR) - (This port does not exist on the 8250 and 16450 - UART.)</entry> - </row> - - <row> - <entry>Bit 7</entry> - <entry spanname="2to4">Receiver Trigger Bit #1</entry> - </row> - - <row> - <entry>Bit 6</entry> - <entry spanname="2to4"><para>Receiver Trigger Bit - #0</para><para>These two bits control at what - point the receiver is to generate an interrupt - when the FIFO is active.</para></entry> - </row> - - <row> - <entry colname="col2">7</entry> - <entry colname="col3">6</entry> - <entry colname="col4">How many words are received - before an interrupt is generated</entry> - </row> - - <row> - <entry colname="col2">0</entry> - <entry colname="col3">0</entry> - <entry colname="col4">1</entry> - </row> - - <row> - <entry colname="col2">0</entry> - <entry colname="col3">1</entry> - <entry colname="col4">4</entry> - </row> - - <row> - <entry colname="col2">1</entry> - <entry colname="col3">0</entry> - <entry colname="col4">8</entry> - </row> - - <row> - <entry colname="col2">1</entry> - <entry colname="col3">1</entry> - <entry colname="col4">14</entry> - </row> - - <row> - <entry>Bit 5</entry> - <entry spanname="2to4">Reserved, always 0.</entry> - </row> - - <row> - <entry>Bit 4</entry> - <entry spanname="2to4">Reserved, always 0.</entry> - </row> - - <row> - <entry>Bit 3</entry> - <entry spanname="2to4">DMA Mode Select. If Bit 0 is - set to "1" (FIFOs enabled), setting this bit changes - the operation of the -RXRDY and -TXRDY signals from - Mode 0 to Mode 1.</entry> - </row> - - <row> - <entry>Bit 2</entry> - <entry spanname="2to4">Transmit FIFO Reset. When a - "1" is written to this bit, the contents of the FIFO - are discarded. Any word currently being transmitted - will be sent intact. This function is useful in - aborting transfers.</entry> - </row> - - <row> - <entry>Bit 1</entry> - <entry spanname="2to4">Receiver FIFO Reset. When a - "1" is written to this bit, the contents of the FIFO - are discarded. Any word currently being assembled - in the shift register will be received - intact.</entry> - </row> - - <row> - <entry>Bit 0</entry> - <entry spanname="2to4">16550 FIFO Enable. When set, - both the transmit and receive FIFOs are enabled. - Any contents in the holding register, shift - registers or FIFOs are lost when FIFOs are enabled - or disabled.</entry> - </row> - </tbody> - </entrytbl> - </row> - - <row> - <entry>+0x02</entry> - <entry>read</entry> - <entrytbl cols="6"> - <colspec colnum="1" colname="col1"> - <colspec colnum="2" colname="col2"> - <colspec colnum="3" colname="col3"> - <colspec colnum="4" colname="col4"> - <colspec colnum="5" colname="col5"> - <colspec colnum="6" colname="col6"> - <spanspec namest="col1" nameend="col6" spanname="1to6"> - <spanspec namest="col2" nameend="col6" spanname="2to6"> - - <tbody> - <row> - <entry spanname="1to6">Interrupt Identification - Register</entry> - </row> - - <row> - <entry>Bit 7</entry> - <entry spanname="2to6">FIFOs enabled. On the - 8250/16450 UART, this bit is zero.</entry> - </row> - - <row> - <entry>Bit 6</entry> - <entry spanname="2to6">FIFOs enabled. On the - 8250/16450 UART, this bit is zero.</entry> - </row> - - <row> - <entry>Bit 5</entry> - <entry spanname="2to6">Reserved, always 0.</entry> - </row> - - <row> - <entry>Bit 4</entry> - <entry spanname="2to6">Reserved, always 0.</entry> - </row> - - <row> - <entry>Bit 3</entry> - <entry spanname="2to6">Interrupt ID Bit #2. On the - 8250/16450 UART, this bit is zero.</entry> - </row> - - <row> - <entry>Bit 2</entry> - <entry spanname="2to6">Interrupt ID Bit #1</entry> - </row> - - <row> - <entry>Bit 1</entry> - <entry spanname="2to6">Interrupt ID Bit #0.These three - bits combine to report the category of event that - caused the interrupt that is in progress. These - categories have priorities, so if multiple - categories of events occur at the same time, the - UART will report the more important events first and - the host must resolve the events in the order they - are reported. All events that caused the current - interrupt must be resolved before any new interrupts - will be generated. (This is a limitation of the PC - architecture.)</entry> - </row> - - <row> - <entry colname="col2">2</entry> - <entry colname="col3">1</entry> - <entry colname="col4">0</entry> - <entry colname="col5">Priority</entry> - <entry colname="col6">Description</entry> - </row> - - <row> - <entry colname="col2">0</entry> - <entry colname="col3">1</entry> - <entry colname="col4">1</entry> - <entry colname="col5">First</entry> - <entry colname="col6">Received Error (OE, PE, BI, or - FE)</entry> - </row> - - <row> - <entry colname="col2">0</entry> - <entry colname="col3">1</entry> - <entry colname="col4">0</entry> - <entry colname="col5">Second</entry> - <entry colname="col6">Received Data Available</entry> - </row> - - <row> - <entry colname="col2">1</entry> - <entry colname="col3">1</entry> - <entry colname="col4">0</entry> - <entry colname="col5">Second</entry> - <entry colname="col6">Trigger level identification - (Stale data in receive buffer)</entry> - </row> - - <row> - <entry colname="col2">0</entry> - <entry colname="col3">0</entry> - <entry colname="col4">1</entry> - <entry colname="col5">Third</entry> - <entry colname="col6">Transmitter has room for more - words (THRE)</entry> - </row> - - <row> - <entry colname="col2">0</entry> - <entry colname="col3">0</entry> - <entry colname="col4">0</entry> - <entry colname="col5">Fourth</entry> - <entry colname="col6">Modem Status Change (-CTS, -DSR, - -RI, or -DCD)</entry> - </row> - - <row> - <entry>Bit 0</entry> - <entry spanname="2to6">Interrupt Pending Bit. If this - bit is set to "0", then at least one interrupt is - pending.</entry> - </row> - </tbody> - </entrytbl> - </row> - - <row> - <entry>+0x03</entry> - <entry>write/read</entry> - <entrytbl cols="5"> - <colspec colnum="1" colname="col1"> - <colspec colnum="2" colname="col2"> - <colspec colnum="3" colname="col3"> - <colspec colnum="4" colname="col4"> - <colspec colnum="5" colname="col5"> - <spanspec namest="col1" nameend="col5" spanname="1to5"> - <spanspec namest="col2" nameend="col5" spanname="2to5"> - <spanspec namest="col4" nameend="col5" spanname="4to5"> - - <tbody> - <row> - <entry spanname="1to5">Line Control Register - (LCR)</entry> - </row> - - <row> - <entry>Bit 7</entry> - <entry spanname="2to5">Divisor Latch Access Bit - (DLAB). When set, access to the data - transmit/receive register (THR/RBR) and the - Interrupt Enable Register (IER) is disabled. Any - access to these ports is now redirected to the - Divisor Latch Registers. Setting this bit, loading - the Divisor Registers, and clearing DLAB should be - done with interrupts disabled.</entry> - </row> - - <row> - <entry>Bit 6</entry> - <entry spanname="2to5">Set Break. When set to "1", - the transmitter begins to transmit continuous - Spacing until this bit is set to "0". This - overrides any bits of characters that are being - transmitted.</entry> - </row> - - <row> - <entry>Bit 5</entry> - <entry spanname="2to5">Stick Parity. When parity is - enabled, setting this bit causes parity to always be - "1" or "0", based on the value of Bit 4.</entry> - </row> - - <row> - <entry>Bit 4</entry> - <entry spanname="2to5">Even Parity Select (EPS). When - parity is enabled and Bit 5 is "0", setting this bit - causes even parity to be transmitted and expected. - Otherwise, odd parity is used.</entry> - </row> - - <row> - <entry>Bit 3</entry> - <entry spanname="2to5">Parity Enable (PEN). When set - to "1", a parity bit is inserted between the last - bit of the data and the Stop Bit. The UART will - also expect parity to be present in the received - data.</entry> - </row> - - <row> - <entry>Bit 2</entry> - <entry spanname="2to5">Number of Stop Bits (STB). If - set to "1" and using 5-bit data words, 1.5 Stop Bits - are transmitted and expected in each data word. For - 6, 7 and 8-bit data words, 2 Stop Bits are - transmitted and expected. When this bit is set to - "0", one Stop Bit is used on each data word.</entry> - </row> - - <row> - <entry>Bit 1</entry> - <entry spanname="2to5">Word Length Select Bit #1 - (WLSB1)</entry> - </row> - - <row> - <entry>Bit 0</entry> - <entry spanname="2to5">Word Length Select Bit #0 - (WLSB0)</entry> - </row> - - <row> - <entry colname="col2" spanname="2to5">Together these - bits specify the number of bits in each data - word.</entry> - </row> - - <row> - <entry colname="col2">1</entry> - <entry colname="col3">0</entry> - <entry colname="col4" spanname="4to5">Word - Length</entry> - </row> - - <row> - <entry colname="col2">0</entry> - <entry colname="col3">0</entry> - <entry colname="col4" spanname="4to5">5 Data - Bits</entry> - </row> - - <row> - <entry colname="col2">0</entry> - <entry colname="col3">1</entry> - <entry colname="col4" spanname="4to5">6 Data - Bits</entry> - </row> - - <row> - <entry colname="col2">1</entry> - <entry colname="col3">0</entry> - <entry colname="col4" spanname="4to5">7 Data - Bits</entry> - </row> - - <row> - <entry colname="col2">1</entry> - <entry colname="col3">1</entry> - <entry colname="col4" spanname="4to5">8 Data - Bits</entry> - </row> - </tbody> - </entrytbl> - </row> - - <row> - <entry>+0x04</entry> - <entry>write/read</entry> - <entrytbl cols="2"> - <colspec colnum="1" colname="col1"> - <colspec colnum="2" colname="col2"> - <spanspec namest="col1" nameend="col2" spanname="1to2"> - - <tbody> - <row> - <entry spanname="1to2">Modem Control Register - (MCR)</entry> - </row> - - <row> - <entry>Bit 7</entry> - <entry>Reserved, always 0.</entry> - </row> - - <row> - <entry>Bit 6</entry> - <entry>Reserved, always 0.</entry> - </row> - - <row> - <entry>Bit 5</entry> - <entry>Reserved, always 0.</entry> - </row> - - <row> - <entry>Bit 4</entry> - <entry>Loop-Back Enable. When set to "1", the UART - transmitter and receiver are internally connected - together to allow diagnostic operations. In - addition, the UART modem control outputs are - connected to the UART modem control inputs. CTS is - connected to RTS, DTR is connected to DSR, OUT1 is - connected to RI, and OUT 2 is connected to - DCD.</entry> - </row> - - <row> - <entry>Bit 3</entry> - <entry>OUT 2. An auxiliary output that the host - processor may set high or low. In the IBM PC serial - adapter (and most clones), OUT 2 is used to - tri-state (disable) the interrupt signal from the - 8250/16450/16550 UART.</entry> - </row> - - <row> - <entry>Bit 2</entry> - <entry>OUT 1. An auxiliary output that the host - processor may set high or low. This output is not - used on the IBM PC serial adapter.</entry> - </row> - - <row> - <entry>Bit 1</entry> - <entry>Request to Send (RTS). When set to "1", the - output of the UART -RTS line is Low - (Active).</entry> - </row> - - <row> - <entry>Bit 0</entry> - <entry>Data Terminal Ready (DTR). When set to "1", - the output of the UART -DTR line is Low - (Active).</entry> - </row> - </tbody> - </entrytbl> - </row> - - <row> - <entry>+0x05</entry> - <entry>write/read</entry> - <entrytbl cols="2"> - <colspec colnum="1" colname="col1"> - <colspec colnum="2" colname="col2"> - <spanspec namest="col1" nameend="col2" spanname="1to2"> - - <tbody> - <row> - <entry spanname="1to2">Line Status Register - (LSR)</entry> - </row> - - <row> - <entry>Bit 7</entry> - <entry>Error in Receiver FIFO. On the 8250/16450 - UART, this bit is zero. This bit is set to "1" when - any of the bytes in the FIFO have one or more of the - following error conditions: PE, FE, or BI.</entry> - </row> - - <row> - <entry>Bit 6</entry> - <entry>Transmitter Empty (TEMT). When set to "1", - there are no words remaining in the transmit FIFO - or the transmit shift register. The transmitter is - completely idle.</entry> - </row> - - <row> - <entry>Bit 5</entry> - <entry>Transmitter Holding Register Empty (THRE). - When set to "1", the FIFO (or holding register) now - has room for at least one additional word to - transmit. The transmitter may still be transmitting - when this bit is set to "1".</entry> - </row> - - <row> - <entry>Bit 4</entry> - <entry>Break Interrupt (BI). The receiver has - detected a Break signal.</entry> - </row> - - <row> - <entry>Bit 3</entry> - <entry>Framing Error (FE). A Start Bit was detected - but the Stop Bit did not appear at the expected - time. The received word is probably - garbled.</entry> - </row> - - <row> - <entry>Bit 2</entry> - <entry>Parity Error (PE). The parity bit was - incorrect for the word received.</entry> - </row> - - <row> - <entry>Bit 1</entry> - <entry>Overrun Error (OE). A new word was received - and there was no room in the receive buffer. The - newly-arrived word in the shift register is - discarded. On 8250/16450 UARTs, the word in the - holding register is discarded and the newly- arrived - word is put in the holding register.</entry> - </row> - - <row> - <entry>Bit 0</entry> - <entry>Data Ready (DR) One or more words are in the - receive FIFO that the host may read. A word must be - completely received and moved from the shift - register into the FIFO (or holding register for - 8250/16450 designs) before this bit is set.</entry> - </row> - </tbody> - </entrytbl> - </row> - - <row> - <entry>+0x06</entry> - <entry>write/read</entry> - <entrytbl cols="2"> - <colspec colnum="1" colname="col1"> - <colspec colnum="2" colname="col2"> - <spanspec namest="col1" nameend="col2" spanname="1to2"> - - <tbody> - <row> - <entry spanname="1to2">Modem Status Register - (MSR)</entry> - </row> - - <row> - <entry>Bit 7</entry> - <entry>Data Carrier Detect (DCD). Reflects the state - of the DCD line on the UART.</entry> - </row> - - <row> - <entry>Bit 6</entry> - <entry>Ring Indicator (RI). Reflects the state of the - RI line on the UART.</entry> - </row> - - <row> - <entry>Bit 5</entry> - <entry>Data Set Ready (DSR). Reflects the state of - the DSR line on the UART.</entry> - </row> - - <row> - <entry>Bit 4</entry> - <entry>Clear To Send (CTS). Reflects the state of the - CTS line on the UART.</entry> - </row> - - <row> - <entry>Bit 3</entry> - <entry>Delta Data Carrier Detect (DDCD). Set to "1" - if the -DCD line has changed state one more more - times since the last time the MSR was read by the - host.</entry> - </row> - - <row> - <entry>Bit 2</entry> - <entry>Trailing Edge Ring Indicator (TERI). Set to - "1" if the -RI line has had a low to high transition - since the last time the MSR was read by the - host.</entry> - </row> - - <row> - <entry>Bit 1</entry> - <entry>Delta Data Set Ready (DDSR). Set to "1" if the - -DSR line has changed state one more more times - since the last time the MSR was read by the - host.</entry> - </row> - - <row> - <entry>Bit 0</entry> - <entry>Delta Clear To Send (DCTS). Set to "1" if the - -CTS line has changed state one more more times - since the last time the MSR was read by the - host.</entry> - </row> - </tbody> - </entrytbl> - </row> - - <row> - <entry>+0x07</entry> - <entry>write/read</entry> - <entry>Scratch Register (SCR). This register performs no - function in the UART. Any value can be written by the - host to this location and read by the host later - on.</entry> - </row> - </tbody> - </tgroup> - </informaltable> - </sect4> - - <sect4> - <title>Beyond the 16550A UART</title> - - <para>Although National Semiconductor has not offered any components - compatible with the 16550 that provide additional features, - various other vendors have. Some of these components are - described below. It should be understood that to effectively - utilize these improvements, drivers may have to be provided by the - chip vendor since most of the popular operating systems do not - support features beyond those provided by the 16550.</para> - - <variablelist> - <varlistentry> - <term>ST16650</term> - - <listitem> - <para>By default this part is similar to the NS16550A, but an - extended 32-byte send and receive buffer can be optionally - enabled. Made by Startech.</para> - </listitem> - </varlistentry> - - <varlistentry> - <term>TIL16660</term> - - <listitem> - <para>By default this part behaves similar to the NS16550A, - but an extended 64-byte send and receive buffer can be - optionally enabled. Made by Texas Instruments.</para> - </listitem> - </varlistentry> - - <varlistentry> - <term>Hayes ESP</term> - - <listitem> - <para>This proprietary plug-in card contains a 2048-byte send - and receive buffer, and supports data rates to - 230.4Kbit/sec. Made by Hayes.</para> - </listitem> - </varlistentry> - </variablelist> - - <para>In addition to these “dumb” UARTs, many vendors - produce intelligent serial communication boards. This type of - design usually provides a microprocessor that interfaces with - several UARTs, processes and buffers the data, and then alerts the - main PC processor when necessary. Because the UARTs are not - directly accessed by the PC processor in this type of - communication system, it is not necessary for the vendor to use - UARTs that are compatible with the 8250, 16450, or the 16550 UART. - This leaves the designer free to components that may have better - performance characteristics.</para> - </sect4> ---> - - </sect3> - - <sect3 id="sio"> - <title>*** Configurer le pilote de périphérique - <devicename>sio</devicename></title> - &sgml.todo; - -<!-- - <para>The <devicename>sio</devicename> driver provides support for - NS8250-, NS16450-, NS16550 and NS16550A-based EIA RS-232C (CCITT - V.24) communications interfaces. Several multiport cards are - supported as well. See the &man.sio.4; - manual page for detailed technical documentation.</para> - - <sect4> - <title>Digi International (DigiBoard) PC/8</title> - - <para><emphasis>Contributed by &a.awebster;. 26 August - 1995.</emphasis></para> - - <para>Here is a config snippet from a machine with a Digi - International PC/8 with 16550. It has 8 modems connected to these - 8 lines, and they work just great. Do not forget to add - <literal>options COM_MULTIPORT</literal> or it will not work very - well!</para> - - <programlisting> -device sio4 at isa? port 0x100 tty flags 0xb05 -device sio5 at isa? port 0x108 tty flags 0xb05 -device sio6 at isa? port 0x110 tty flags 0xb05 -device sio7 at isa? port 0x118 tty flags 0xb05 -device sio8 at isa? port 0x120 tty flags 0xb05 -device sio9 at isa? port 0x128 tty flags 0xb05 -device sio10 at isa? port 0x130 tty flags 0xb05 -device sio11 at isa? port 0x138 tty flags 0xb05 irq 9 vector siointr</programlisting> - - <para>The trick in setting this up is that the MSB of the flags - represent the last SIO port, in this case 11 so flags are - 0xb05.</para> - </sect4> - - <sect4> - <title>Boca 16</title> - - <para><emphasis>Contributed by &a.whiteside;. 26 August - 1995.</emphasis></para> - - <para>The procedures to make a Boca 16 port board with FreeBSD are - pretty straightforward, but you will need a couple things to make - it work:</para> - - <orderedlist> - <listitem> - <para>You either need the kernel sources installed so you can - recompile the necessary options or you will need someone else - to compile it for you. The 2.0.5 default kernel does - <emphasis>not</emphasis> come with multiport support enabled - and you will need to add a device entry for each port - anyways.</para> - </listitem> - - <listitem> - <para>Two, you will need to know the interrupt and IO setting - for your Boca Board so you can set these options properly in - the kernel.</para> - </listitem> - </orderedlist> - - <para>One important note — the actual UART chips for the Boca - 16 are in the connector box, not on the internal board itself. So - if you have it unplugged, probes of those ports will fail. I have - never tested booting with the box unplugged and plugging it back - in, and I suggest you do not either.</para> - - <para>If you do not already have a custom kernel configuration file - set up, refer to <link linkend="kernelconfig">Kernel - Configuration</link> for general procedures. The following are - the specifics for the Boca 16 board and assume you are using the - kernel name MYKERNEL and editing with vi.</para> - - <procedure> - <step> - <para>Add the line - - <programlisting> -options COM_MULTIPORT</programlisting> - - to the config file.</para> - </step> - - <step> - <para>Where the current <literal>device - sio<replaceable>n</replaceable></literal> lines are, you - will need to add 16 more devices. Only the last device - includes the interrupt vector for the board. (See the - &man.sio.4; manual page for detail as - to why.) The following example is for a Boca Board with an - interrupt of 3, and a base IO address 100h. The IO address - for Each port is +8 hexadecimal from the previous port, thus - the 100h, 108h, 110h... addresses.</para> - - <programlisting> -device sio1 at isa? port 0x100 tty flags 0x1005 -device sio2 at isa? port 0x108 tty flags 0x1005 -device sio3 at isa? port 0x110 tty flags 0x1005 -device sio4 at isa? port 0x118 tty flags 0x1005 -… -device sio15 at isa? port 0x170 tty flags 0x1005 -device sio16 at isa? port 0x178 tty flags 0x1005 irq 3 vector siointr</programlisting> - - <para>The flags entry <emphasis>must</emphasis> be changed from - this example unless you are using the exact same sio - assignments. Flags are set according to - 0x<replaceable>M</replaceable><replaceable>YY</replaceable> - where <replaceable>M</replaceable> indicates the minor number - of the master port (the last port on a Boca 16) and - <replaceable>YY</replaceable> indicates if FIFO is enabled or - disabled(enabled), IRQ sharing is used(yes) and if there is an - AST/4 compatible IRQ control register(no). In this example, - <programlisting> flags 0x1005</programlisting> indicates that - the master port is sio16. If I added another board and - assigned sio17 through sio28, the flags for all 16 ports on - <emphasis>that</emphasis> board would be 0x1C05, where 1C - indicates the minor number of the master port. Do not change - the 05 setting.</para> - </step> - - <step> - <para>Save and complete the kernel configuration, recompile, - install and reboot. Presuming you have successfully installed - the recompiled kernel and have it set to the correct address - and IRQ, your boot message should indicate the successful - probe of the Boca ports as follows: (obviously the sio - numbers, IO and IRQ could be different)</para> - - <screen>sio1 at 0x100-0x107 flags 0x1005 on isa -sio1: type 16550A (multiport) -sio2 at 0x108-0x10f flags 0x1005 on isa -sio2: type 16550A (multiport) -sio3 at 0x110-0x117 flags 0x1005 on isa -sio3: type 16550A (multiport) -sio4 at 0x118-0x11f flags 0x1005 on isa -sio4: type 16550A (multiport) -sio5 at 0x120-0x127 flags 0x1005 on isa -sio5: type 16550A (multiport) -sio6 at 0x128-0x12f flags 0x1005 on isa -sio6: type 16550A (multiport) -sio7 at 0x130-0x137 flags 0x1005 on isa -sio7: type 16550A (multiport) -sio8 at 0x138-0x13f flags 0x1005 on isa -sio8: type 16550A (multiport) -sio9 at 0x140-0x147 flags 0x1005 on isa -sio9: type 16550A (multiport) -sio10 at 0x148-0x14f flags 0x1005 on isa -sio10: type 16550A (multiport) -sio11 at 0x150-0x157 flags 0x1005 on isa -sio11: type 16550A (multiport) -sio12 at 0x158-0x15f flags 0x1005 on isa -sio12: type 16550A (multiport) -sio13 at 0x160-0x167 flags 0x1005 on isa -sio13: type 16550A (multiport) -sio14 at 0x168-0x16f flags 0x1005 on isa -sio14: type 16550A (multiport) -sio15 at 0x170-0x177 flags 0x1005 on isa -sio15: type 16550A (multiport) -sio16 at 0x178-0x17f irq 3 flags 0x1005 on isa -sio16: type 16550A (multiport master)</screen> - - <para>If the messages go by too fast to see, - - <screen>&prompt.root; <userinput>dmesg | more</userinput></screen> - will show you the boot messages.</para> - </step> - - <step> - <para>Next, appropriate entries in <filename>/dev</filename> for - the devices must be made using the - <filename>/dev/MAKEDEV</filename> script. After becoming - root:</para> - - <screen>&prompt.root; <userinput>cd /dev</userinput> -&prompt.root; <userinput>./MAKEDEV tty1</userinput> -&prompt.root; <userinput>./MAKEDEV cua1</userinput> -<emphasis>(everything in between)</emphasis> -&prompt.root; <userinput>./MAKEDEV ttyg</userinput> -&prompt.root; <userinput>./MAKEDEV cuag</userinput></screen> - - <para>If you do not want or need callout devices for some - reason, you can dispense with making the - <filename>cua*</filename> devices.</para> - </step> - - <step> - <para>If you want a quick and sloppy way to make sure the - devices are working, you can simply plug a modem into each - port and (as root) - - <screen>&prompt.root; <userinput>echo at > ttyd*</userinput></screen> - for each device you have made. You - <emphasis>should</emphasis> see the RX lights flash for each - working port.</para> - </step> - </procedure> - </sect4> ---> - - </sect3> - <sect3 id="cy"> - <title>*** Configurer le pilote de périphérique - <devicename>cy</devicename></title> - &sgml.todo; - -<!-- - <para><emphasis>Contributed by &a.alex;. 6 June - 1996.</emphasis></para> - - <para>The Cyclades multiport cards are based on the - <devicename>cy</devicename> driver instead of the usual - <devicename>sio</devicename> driver used by other multiport cards. - Configuration is a simple matter of:</para> - - <procedure> - <step> - <para>Add the <devicename>cy</devicename> device to your <link - linkend="kernelconfig-config">kernel configuration</link> - (note that your irq and iomem settings may differ).</para> - - <programlisting> -device cy0 at isa? tty irq 10 iomem 0xd4000 iosiz 0x2000 vector cyintr</programlisting> - </step> - - <step> - <para><link linkend="kernelconfig-building">Rebuild and - install</link> the new kernel.</para> - </step> - - <step> - <para>Make the <link linkend="kernelconfig-nodes">device - nodes</link> by typing (the following example assumes an - 8-port board):</para> - - <screen>&prompt.root; <userinput>cd /dev</userinput> -&prompt.root; <userinput>for i in 0 1 2 3 4 5 6 7;do ./MAKEDEV cuac$i ttyc$i;done</userinput></screen> - </step> - - <step> - <para>If appropriate, add <link linkend="dialup">dialup</link> - entries to <link linkend="dialup-ttys">/etc/ttys</link> by - duplicating serial device (<literal>ttyd</literal>) entries and - using <literal>ttyc</literal> in place of - <literal>ttyd</literal>. For example:</para> - - <programlisting> -ttyc0 "/usr/libexec/getty std.38400" unknown on insecure -ttyc1 "/usr/libexec/getty std.38400" unknown on insecure -ttyc2 "/usr/libexec/getty std.38400" unknown on insecure -… -ttyc7 "/usr/libexec/getty std.38400" unknown on insecure</programlisting> - </step> - - <step> - <para>Reboot with the new kernel.</para> - </step> - </procedure> - ---> - </sect3> - </sect2> - - <sect2> - <title>* Ports parallèles</title> - <para></para> - </sect2> - - <sect2> - <title>* Modems</title> - <para></para> - </sect2> - - <sect2> - <title>* Cartes réseau</title> - <para></para> - </sect2> - - <sect2> - <title>* Claviers</title> - <para></para> - </sect2> - - <sect2> - <title>* Souris</title> - <para></para> - </sect2> - - <sect2> - <title>* Autres</title> - <para></para> - </sect2> - </sect1> - - <sect1 id="hw-storage"> - <title>** Mémoires de masse</title> - &trans.a.haby; - - <sect2 id="esdi"> - <title>Utiliser des disques durs ESDI</title> - - <para><emphasis>Copyright © 1995, &a.wilko;. 24 Septembre - 1995.</emphasis></para> - - <para>ESDI est l'abréviation de <foreignphrase>Enhanced Small - Device Interface</foreignphrase> - Interface - Améliorée pour les Périphériques - Légers. Elle se base plus ou moins sur la bonne vieille interface - ST506/412, initialement conçue par Seagate Technology, le - fabricant du premier disque Winchester 5.25" bon marché.</para> - - <para>L'abréviation précise à juste titre - ”étendue“. Pour commencer, l'interface est plus - rapide, 10 ou 15 Mbits/seconde au lieu des 5 Mbits/seconde des disques - à interface ST412s. Il y a de plus de nouvelles commandes de plus - haut niveau, qui font que l'interface ESDI est en quelque sorte plus - “intelligente” que les pilotes de - périphériques du système d'exploitation. Elle n'est - cependant pas comparable aux interfaces SCSI. L'ESDI est un standard - ANSI.</para> - - <para>La capacité de disques est accrue parce qu'il y a plus de - secteurs par piste. Il y a généralement 35 secteurs par - pistes, mais j'ai vu des disques de grande capacité avec 54 - secteurs par piste.</para> - - <para>Bien que l'IDE et le SCSI ait rendu l'ESDI largement - obsolète, la possibilité de se procurer gratuitement ou - à peu de frais des disques d'occasion les rend - intéressants pour les systèmes à budget - réduit (ou nul).</para> - - <sect3> - <title>Concepts ESDI</title> - - <sect4> - <title>Connexions</title> - - <para>L'interface ESDI utilise deux câbles par disque. Le - premier est une nappe à 54 broches qui véhicule les - signaux de commandes et d'état entre le contrôleur et - le disque. Les disques sont chaînés en série sur - ce câble. C'est donc un bus auquel tous les disques sont - reliés.</para> - - <para>Le second câble est une nappe à 20 broches qui - véhicule les données de et vers le disque. Ce - câblage est en étoile, chaque disque est donc - directement relié au contrôleur.</para> - - <para>Autant que je sache, on ne peut mettre que deux disques par - contrôleur ESDI sur un PC. Cela pour des raisons de - compatibilité (?) avec le standard WD1003 qui n'utilise - qu'un seul bit pour l'adresse des - périphériques.</para> - </sect4> - - <sect4> - <title>Adresses des périphériques</title> - - <para>Sur chaque câble de commande, il peut y avoir au plus 7 - périphériques et 1 contrôleur. Pour que le - contrôleur puisse identifier l'adresse de chaque disque, il y - a sur chaque périphérique ESDI des cavaliers ou des - interrupteurs pour définir l'adresse du - périphérique.</para> - - <para>Sur les contrôleurs de PC, le premier disque a l'adresse - 0, et le second l'adresse 1. <emphasis>Vérifiez - toujours</emphasis> que l'adresse de chaque disque est - différente ! Sur les PC, où il y a au plus deux - disques par contrôleur, le premier disque est le disque 0 et - le second le disque 1.</para> - </sect4> - - <sect4> - <title>Terminaison</title> - - <para>Le câble série de commande (rapellez-vous, celui - à 34 broches) doit être terminé sur le dernier - disque de la chaîne. Il y a donc sur les disques ESDI une - résistance de terminaison qui peut être enlevée - ou désactivée par un cavalier si elle ne doit pas - servir.</para> - - <para>Il n'y a donc qu'un <emphasis>seul</emphasis> disque, celui - en fin du câble de commande, dont le terminateur doit - être installé ou activé. Le contrôleur - termine automatiquement l'autre extrémité du - câble. Notez bien, s'il vous plaît, que cela implique - que le contrôleur soit à une extrémité du - câble, et <emphasis>non</emphasis> au milieu.</para> - </sect4> - </sect3> - - <sect3> - <title>Utiliser les disques ESDI avec FreeBSD</title> - - <para>Pourquoi est-il si difficile d'arriver à utiliser des - disques ESDI ?</para> - - <para>On dit que ceux qui ont essayé d'utiliser des disques ESDI - avec FreeBSD ont développé un sentiment de profonde - frustration. Divers facteurs oeuvrent contre vous et produisent des - résultats difficiles à comprendre si vous n'y avez - jamais été confronté.</para> - - <para>D'où la légende populaire qui veut que l'ESDI et - FreeBSD soient définitivement incompatibles. Ce qui suit tente - de recenser les difficultés et leurs solutions.</para> - - <sect4> - <title>Les différences de vitesse de l'ESDI</title> - - <para>Comme on y a déjà fait allusion, il y a deux - versions à vitesse différente de l'ESDI. Les disques - et les contrôleurs plus anciens transfèrent les - données à 10 Mbits/seconde. Les plus récents le - font à 15 Mbits/seconde.</para> - - <para>Il est facile d'imaginer qu'utiliser des disques à - 15 Mbits/seconde pose des problèmes avec des - contrôleurs à 10 Mbits/seconde. Consultez toujours, - comme d'habitude, la documentation de votre contrôleur - <emphasis>et</emphasis> celle de votre disque pour vérifier - qu'ils sont compatibles.</para> - </sect4> - - <sect4> - <title>Restez en piste</title> - - <para>Les disques ESDI standards ont de 34 à 36 secteurs par - piste. La plupart des (anciens) contrôleurs n'acceptent pas - plus de secteurs que cela. Les disques plus récents, de plus - grande capacité, ont un plus grand nombre de secteurs par - piste. Je possède par exemple un disque de 670 Mo qui a 54 - secteurs par piste.</para> - - <para>Dans mon cas, le contrôleur ne peut pas gérer - autant de secteurs. Cela fonctionne en utilisant que 35 secteurs par - piste. D'où un perte important d'espace disque.</para> - - <para>Consultez encore une fois les documentations de votre - matériel pour plus d'informations. Ne pas respecter les - spécifications, comme dans mon cas, marchera ou ne marchera - pas. Essayez ou procurez-vous un contrôleur qui règle - le problème.</para> - </sect4> - - <sect4> - <title>Secteurs matériels ou logiciels</title> - - <para>La plupart des disques ESDI permettent de choisir avec un - cavalier entre des secteurs matériels ou logiciels. Si les - secteurs sont matériels, le disque émettera une - impulsion de début de secteur à chaque nouveau - secteur. Le contrôleur utilisera cette impulsion pour savoir - quand commencer à lire ou à écrire.</para> - - <para>Il est possible de choisir la taille des secteurs - matériels (habituellement 256, 512 ou 1024 octets par - secteur formaté). FreeBSD utilise des secteurs de 512 - octets. Le nombre de secteurs par piste varie aussi, bien qu'on - utilise toujours le même nombre d'octets par secteur - formaté. Le nombre d'octets <emphasis>non - formatés</emphasis> par secteur varie, selon que votre - contrôleur a besoin de plus ou moins d'octets - supplémentaires pour fonctionner correctement. Avec plus de - secteurs par piste, vous aurez bien sûr plus d'espace - disponible, mais vous pouvez avoir des problèmes si votre - contrôleur a besoin de plus d'octets que le disque ne peut - lui en laisser à disposition.</para> - - <para>Avec des secteurs logiciels, le contrôleur - détermine lui-même quand commencer et cesser de lire ou - écrire. Pour les disques ESDI, les secteurs sont - matériels par défaut (au moins pour tous ceux que je - connais). Je n'ai jamais eu besoin d'essayer d'utiliser des secteurs - logiciels.</para> - - <para>Expérimentez avec les secteurs avant d'installer FreeBSD, - parce que vous devrez refaire un formatage de bas niveau à - chaque fois.</para> - </sect4> - - <sect4> - <title>Formatage de bas niveau</title> - - <para>Il faut faire un formatage de bas niveau des disques ESDI avant - de pouvoir les utiliser. Il faut les reformater à chaque - fois que vous modifier la position des cavaliers qui - déterminent le nombre de secteurs par piste ou l'orientation - (horizontale, verticale) du disque. Réfléchissez donc - d'abord, puis formatez. Ne sous-estimez pas le temps - nécessaire ; pour de gros disques, cela peut prendre des - heures.</para> - - <para>Evitez les utilitaires de formatage de bas niveau qui marquent - une piste inutilisable dès qu'ils trouvent un secteur - endommagé. Non seulement cela gaspille de l'espace disque, - mais cela vous posera peut-être aussi des problèmes - avec <literal>bad144</literal> (voyez plus bas la section sur le - sujet).</para> - </sect4> - - <sect4> - <title>Correspondances</title> - - <para>Les correspondances, bien que ce ne soit pas un problème - exclusivement réservé à l'ESDI, peuvent vous - poser de vraies difficultés. Il y a différentes sortes - de correspondances. Elles ont en commun d'essayer de contourner les - limites imposées à la géométrie des - disques par l'architecture d'origine de l'IBM PC/AT (merci - IBM !).</para> - - <para>Il y a tout d'abord la limite bien connue du 1024ème - cylindre pour le démarrage. Pour qu'un système (quel - qu'il soit) démarre, le code de démarrage doit se - trouver quelque part sur les 1024 premiers cylindres. Il n'y a que - 10 bits disponibles pour coder le numéro de cylindre. Le - nombre de secteurs est limité à 64 (0-63). Quand vous - y ajoutez la limite de 16 têtes (aussi liée à - l'architecture), cela vous donne des disques de taille relativement - faible.</para> - - <para>Pour contourner ce problème, les fabricants de - contrôleurs ESDI pour PC ont ajouté une extension au - BIOS en PROM. Cette extension gère les entrées/sorties - disque au démarrage. (et pour certains systèmes - d'exploitation, toutes les entrées/sorties) en utilisant des - correspondances. Par exemple, un gros disque pourra être - décrit au système comme ayant 32 têtes et 64 - secteurs par piste. De la sorte, le nombre de cylindres sera - inférieur à 1024, ce qui pourra être - exploité sans problème. Il faut noter que FreeBSD - n'utilise le BIOS qu'après que le noyau ait pris le - contrôle. Nous en dirons plus à ce sujet plus - loin.</para> - - <para>Il faut aussi établir des correspondances avec la plupart - des BIOS anciens qui ne peuvent gérer que des disques avec - 17 secteurs par piste (le vieux standard ST412). Les BIOS plus - récents premettent de définir le type de disque (c'est - habituellement le type de disque 47).</para> - - <note> - <para>Quoique vous fassiez des correspondances après avoir lu - ce document, n'oubliez pas que si vous avez plusieurs - systèmes d'exploitation sur le même disque, ils - doivent tous utiliser les mêmes correspondances.</para> - </note> - - <para>Pendant que nous en sommes aux correspondances, j'ai vu un - modèle de contrôleur (mais il y en a probablement - d'autres) qui permet de diviser un disque en plusieurs partitions - à l'aide d'une option du BIOS. J'avais choisi 1 disque = 1 - partition, parce que ce contrôleur écrivait cette - information sur le disque. A la mise sous tension, il la relit et - transmet au système les informations basées sur ce - qu'il y a sur le disque.</para> - </sect4> - - <sect4> - <title>Secteurs en réserve</title> - - <para>La plupart des contrôleurs ESDI offrent la - possibilité de réaffecter les secteurs - défectueux. Pendant ou après le formatage de bas - niveau du disque, les secteurs défectueux sont marqués - comme tels, et des secteurs de remplacement prennent (logiquement - bien sûr) leur place.</para> - - <para>Dans la plupart des cas, c'est fait en utilisant N-1 secteurs de - chaque piste pour les données et le secteur N lui-même - comme secteur de secours. N est le nombre de secteurs physiquement - disponibles sur la piste. L'idée est que le système - d'exploitation voie un disque ”parfait“ sans secteur - défectueux. Ce n'est pas exploitable dans le cas de - FreeBSD.</para> - - <para>Le problème est que la correspondance entre les - <emphasis>mauvaix</emphasis> et les <emphasis>bons</emphasis> - secteurs est effectuée par le BIOS du contrôleur ESDI. - FreeBSD, qui est un vrai système d'exploitation 32 bits, - n'utilise pas le BIOS avant d'avoir démarré. Il - dispose à la place de pilotes de périphérique - qui dialoguent directement avec le matériel.</para> - - <para>Donc, n'utilisez pas les secteurs de réserve, - la réaffectation des secteurs défectueux, quel que - soit le nom que lui donne le fabricant de votre contrôleur, si - vous voulez vous servir du disque avec FreeBSD.</para> - </sect4> - - <sect4> - <title>Gestion des blocs défectueux</title> - - <para>La section précédente nous a laissé sur un - problème. La gestion des blocs défectueux par le - contrôleur n'est pas exploitable, et FreeBSD suppose - malgré tout que les supports sont sans défaut. Pour - résoudre ce problème, FreeBSD utilise l'outil - <command>bad144</command>. <command>bad144</command> (dont le nom - vient du standard de gestion des blocs défectueux de Digital - Equipment) examine une - tranche - <foreignphrase>slice</foreignphrase> - FreeBSD - pour détecter les blocs défectueux. Quand il les a - trouvés, il remplit une table avec les numéros de ces - blocs à la fin de la tranche.</para> - - <para>Quand le disque est en service, les numéros des blocs - accédés sont comparés à ceux - stockés dans la table lue sur le disque. Quand un bloc - demandé est dans la liste de <command>bad144</command>, on - utilise un bloc de remplacement (aussi en fin de tranche). De cette - façon, c'est un support ”parfait“ qui est vu par - les systèmes de fichiers de FreeBSD.</para> - - <para>L'utilisation de <command>bad144</command> présente un - certain nombre d'inconvénients. En premier lieu, la tranche - ne peut comporter plus de 126 secteurs défectueux. Si votre - disque présente un gand nombre de secteurs défectueux, - vous devrez peut-être le diviser en plusieurs tranches dont - chacune aura moins de 126 secteurs défectueux. Evitez les - programmes de formatage de bas niveau qui marquent défectueux - tous les secteurs d'une piste, dès qu'il y a un - problème avec la piste. Vous comprennez bien que la limite - de 126 secteurs est rapidement atteinte avec de tels - programmes.</para> - - <para>En second lieu, si la tranche contient le système de - fichiers racine, il faut qu'elle soit à l'intérieur - des 1024 premiers cylindres. La liste <command>bad144</command> est - lue au démarrage, en utilisant le BIOS, et cela ne peut - se faire que si la liste est avant le - 1025ème cylindre.</para> - - <note> - <para>Ce n'est pas seulement le <emphasis>système</emphasis> - de fichiers racine qui doit se trouver dans les 1024 premiers - cylindres, mais toute la <emphasis>tranche</emphasis> qui le - contient.</para> - </note> - </sect4> - - <sect4> - <title>Configuration du noyau</title> - - <para>Les disques ESDI sont gérés par le même - pilote <literal>wd</literal> que les disques IDE et ST412 MFM. Le - pilote <literal>wd</literal> devrait fonctionner avec toutes les - interfaces compatibles WD1003.</para> - - <para>La plupart des matériels ont des cavaliers pour - définir les plages d'adresses d'entrées/sorties et les - lignes IRQ. Cela vous permet de mettre deux contrôleurs de - type <literal>wd</literal> sur un même système.</para> - - <para>si votre matériel permet des redéfinition - non-standard, vous pouvez les utiliser avec FreeBSD, dès lors - que vous donnez les informations correctes dans le fichier de - configuration du noyau. Voici une extrait de fichier de - configuration du noyau ( au fait, ils sont dans - <filename>/sys/i386/conf</filename>) :</para> - - <programlisting> -# Premier contrôleur compatible WD -controller wdc0 at isa? port "IO_WD1" bio irq 14 vector wdintr -disk wd0 at wdc0 drive 0 -disk wd1 at wdc0 drive 1 -# Second contrôleur compatible WD -controller wdc1 at isa? port "IO_WD2" bio irq 15 vector wdintr -disk wd2 at wdc1 drive 0 -disk wd3 at wdc1 drive 1 - </programlisting> - </sect4> - </sect3> - - <sect3> - <title>Spécificités de certains matériels ESDI</title> - - <sect4> - <title>Contrôleurs Adaptec 2320</title> - - <para>J'ai réussi à installer FreeBSD sur un disque ESDI - avec un contrôleur ACB-2320. Il n'y avait pas d'autre - système d'exploitation sur le disque.</para> - - <para>Pour cela, j'ai effectué un formatage de bas niveau du - disque avec <command>NEFMT.EXE</command> - (téléchargeable par <command>ftp</command> depuis - <hostid role="fqdn">www.adaptec.com</hostid>) et répondu - <literal>NO</literal> à la question qui me demandait si le - disque devait être formaté en laissant un secteur de - secours par piste. Le BIOS de l'ACD-2320 était - désactivé et j'ai utilisé l'option de - configuration - libre - <literal>free configurable</literal> - du - BIOS du système pour permettre au BIOS de démarrer - avec.</para> - - <para>Avant de me servir de <command>NEFMT.EXE</command>, j'avais - essayé de formater le disque avec l'utilitaire inclus dans - le BIOS de l'ACB-2320. Cela s'est avéré inutilisable, - parce qu'il ne m'a pas proposé de désactiver la - réservation du secteur de secours. Avec ces derniers, - l'installation de FreeBSD échoue à l'exécution - de <command>bad144</command>.</para> - - <para>Vérifiez avec soin de quelle variante - ACB-232<replaceable>xy</replaceable> vous disposez. Le - <replaceable>x</replaceable> vaut <literal>0</literal> ou - <literal>2</literal>, selon que le contrôleur ne dispose pas - ou inclut un contrôleur de lecteur de disquettes.</para> - - <para>Le <literal>y</literal> est plus intéressant. C'est un - blanc, un <literal>A-8</literal> ou un <literal>D</literal>. Le - blanc indique un contrôleur à 10 Mo/seconde. Le - <literal>A-8</literal> indique un contrôleur à 15 - Mo/seconde capable de gérer 52 secteurs par piste. Le - <literal>D</literal> est un contrôleur à 15 Mo/seconde - qui peut aussi gérer des disques avec plus de 36 secteurs - par piste (52 aussii ?).</para> - - <para>Toutes ces variantes peuvent gérer l'entrelacement 1:1. - Employez-le, FreeBSD est assez rapide pour s'en accommoder.</para> - </sect4> - - <sect4> - <title>Contrôleurs Western Digital WD1007</title> - - <para>J'ai réussi à installer FreeBSD sur un disque ESDI - avec un contrôleur WD1007. Pour être précis, - c'était un contrôleur WD1007-WA2. Il y en a d'autres - variantes.</para> - - <para>Pour qu'il fonctionne, j'ai désactivé la - correspondance entre secteurs et le BIOS du WD1007. Ce qui signifie que je n'ai pas pu me servir de l'utilitaire de formatage de bas - niveau de ce BIOS. J'ai récupéré - <command>WDFMT.EXE</command> sur - <hostid role="fqdn">www.wdc.com</hostid>. Il m'a permis de formater - le disque sans problème.</para> - </sect4> - - <sect4> - <title>Contrôleurs Ultrastor U14F</title> - - <para>Selon de nombreux retours sur le réseau, les cartes - Ultrastor ESDI fonctionnent avec FreeBSD. Je n'ai pas plus - d'informations sur leur configuration.</para> - </sect4> - </sect3> - - <sect3 id="esdi-further-reading"> - <title>Lectures complémentaires</title> - - <para>Si vous avez l'intention d'utiliser sérieusement l'ESDI, - vous devriez avoir la norme officielle à portée de - main :</para> - - <para>Le document le plus récent du comité ANSI X3T10 - est : ”Enhanced Small Device Interface (ESDI) - [X3.170-1990/X3.170a-1991] [X3T10/792D Rev 11]“.</para> - - <para>Le forum Usenet - <ulink URL="news:comp.periphs">comp.periphs</ulink> est un bon endroit - ou avoir plus d'informations.</para> - - <para>Le <foreignphrase>World Wide Web</foreignphrase> (WWW) est aussi - une excellente source d'informations : Pour les contrôleurs - Adaptec, consultez - <ulink URL="http://www.adaptec.com/">http://www.adaptec.com/</ulink>. - Pour les contrôleurs Western Digital, voyez - <ulink URL="http://www.wdc.com/">http://www.wdc.com/</ulink>.</para> - - </sect3> - - <sect3> - <title>Remerciements à ...</title> - - <para>Andrew Gordon pour m'avoir envoyé un contrôleur - Adaptec 2320 et un disque ESDI pour faire des tests.</para> - </sect3> - </sect2> - - <sect2 id="scsi"> - <title>Qu'est-ce que le SCSI ?</title> - &trans.a.brive; - - <para><emphasis>Copyright © 1995, &a.wilko;. July 6, - 1996.</emphasis></para> - - <para>SCSI est un acronyme pour Small Computer Systems Interface. C'est - un standard ANSI qui est devenu l'un des premiers bus d'E/S de - l'industrie informatique. Les bases du standard SCSI proviennent - de Shugart Associates (les mêmes personnes qui ont donné au monde les - premiers mini-disques floppy) quand ils ont introduit le bus SASI - (Shugart Associates Standard Interface).</para> - - <para>Un effort industriel a démarré quelque temps plus tard pour - arriver à un standard plus strict, permettant à des périphériques de - différents vendeurs de travailler ensemble. Cet effort fut reconnu - par l'ANSI avec le standard SCSI-1. Ce standard (approx. 1985) devient - rapidement obsolète. Le standard courant est SCSI-2 (cf <link - linkend="scsi-further-reading">Lecture complémentaire</link>), - avec SCSI-3 en cours de conception.</para> - - <para>En plus d'un standard pour l'interconnexion physique, SCSI définit - un standard logique (jeu de commandes) auxquels les disques doivent - adhérer. Ce standard "commun" est appellé le Common Command Set (CCS) - et a été développé plus ou moins en parallèle avec le SCSI-1 ANSI. - SCSI-2 intègre le CCS (révisé) dans son standard. Les commandes - dépendent du type de périphérique ; il ne serait pas logique bien - sûr de définir une commande "Ecriture" pour un scanner.</para> - - <para>Le bus SCSI est un bus parallèle, qui supporte plusieurs - variantes. La plus ancienne et plus utilisée est un bus de 8 bits - de large, avec des signaux en collecteur ouvert (single-ended), - transportés sur 50 fils. (Si vous ne savez pas ce que veut dire - "collecteur ouvert", ne vous en faites pas; c'est justement le sujet - de ce document). Les architectures modernes utilisent aussi les bus - de 16 bits avec des signaux différentiels. Cela permet d'obtenir - des taux de transferts de 20Mo/s, sur des câbles atteignant 25 mètres. - SCSI-2 permet une largeur maximum du bus de 32 bits en utilisant un - câble supplémentaire. Rapidement, l'Ultra SCSI (appelé aussi Fast-20) - et l'Ultra2 (appelé aussi Fast-40) arrivent. Fast-20 correspond à - 20 millions de transferts par seconde (20Mo/s sur un bus de 8 bits) - et Fast-40 correspond à 40 millions de transferts par seconde - (40Mo/s sur un bus de 8 bits). La majorité des disques vendus - aujourd'hui sont des Ultra SCSI (8 ou 16 bits) en collecteur - ouvert.</para> - - <para>Bien sûr, le bus SCSI n'a pas que des fils de données, mais - aussi un certain nombre de signaux de contrôle. Un protocole très - élaboré fait partie du standard pour permettre à plusieurs - périphériques de se partager le bus de manière efficace. - En SCSI-2, les données sont toujours vérifiées avec un fil séparé - pour la parité. Dans l'architecture pré-SCSI-2, la parité était - optionnelle.</para> - - <para>En SCSI-3, des types de bus encore plus rapides sont introduits, - dont les bus SCSI série qui réduisent l'overhead du cablâge - (consommation? délai de propagation?) - et permettent une longueur de bus maximale plus importante. - Vous pourriez voir des noms comme SSA et FiberChannel dans ce contexte. - Aucun de ces bus série n'est aujourd'hui d'usage courant (et - spécialement pas dans l'environnement typique de FreeBSD). - Pour cette raison, les types de bus série ne seront plus abordés.</para> - - <para>Comme vous auriez pu le deviner de la description précédente, les - périphériques SCSI sont intelligents. Ils doivent l'être pour adhérer - au standard SCSI (qui est épais de plus de 5 cm). Ainsi, pour un - disque dur par exemple, vous ne spécifiez pas un tête/cylindre/secteur - pour adresser un bloc particulier, mais simplement le numéro du - bloc que vous voulez. - Des schémas élaborés de cache, des remplacements automatiques de blocs - défecteux, etc, sont tous rendus possibles par cette approche de - “périphérique intelligent”.</para> - - <para>Sur un bus SCSI, chaque paire possible d'abonnés peut communiquer. - Que leur fonction le leur permette est une autre chose, mais le - standard ne le restreint pas. Pour éviter le conflit de signaux, - les deux abonnés doivent passer par une phase d'arbitrage de bus - avant de l'utiliser.</para> - - <para>La philosophie du SCSI est d'avoir un standard qui permette - à des périphériques ancien-standard de travailler avec des - nouveaux-standard. Ainsi, un vieux périphérique SCSI-1 devrait - normalement fonctionner sur un bus SCSI-2. Je dis normalement, car il - n'est pas absolument sûr que l'implémentation d'un ancien périphérique - suive le (vieux) standard de manière assez proche pour être acceptable - sur un nouveau bus. Les périphériques modernes se comportent bien - généralement, car la standardisation est devenue plus stricte et - est mieux respectée par les fabriquants de périphériques.</para> - - <para>D'une manière générale, les chances de faire fonctionner - correctement un ensemble de périphériques sur un seul bus, sont - meilleures quand tous les abonnés sont SCSI-2 ou plus récents. - Cela implique que vous n'avez pas besoin de supprimer tous vos vieux - matériels quand vous venez d'avoir ce magnifique disque de 2Go : - je possède un système sur lequel un disque pré-SCSI-1, un - lecteur de cartouche QIC en SCSI-2, un lecteur de cartouches - hélicoïdal SCSI-1 et 2 disques SCSI-1 fonctionnent assez - bien ensemble. D'un point de vue des performances, vous - pourriez toutefois vouloir séparer vos plus vieux périphériques - des plus nouveaux (=plus rapides).</para> - - - <sect3> - <title>Composants SCSI</title> - - <para>Comme nous l'avons dit précédemment, les périphériques SCSI sont - intelligents. L'idée est de mettre les connaissances sur les détails - intimes du matériel dans le périphérique SCSI lui-même. De cette - façon, le système hôte n'a pas besoin de se préoccuper de savoir, - par exemple, combien de têtes possède le disque, ou combien de pistes - possède tel dérouleur de bandes. Si vous êtes curieux, le standard - spécifie des commandes avec lesquelles vous pouvez interroger les - périphériques sur leurs spécificités matérielles. FreeBSD utilise - cette possibilité pendant le démarrage pour déterminer quels sont - les périphériques connectés et s'ils ont besoin d'un traitement - spécial.</para> - - <para>L'avantage d'avoir des périphériques intelligents est - évident : le pilote de périphérique dans l'hôte peut être - conçu de manière beaucoup plus générique, il n'y a plus besoin de - modifier (et valider !) les pilotes pour chaque nouveau - périphérique bizarre qui est introduit.</para> - - <para>Pour les câbles et les connecteurs, il y a une règle d'or : - prenez de la qualité. Avec des vitesses de bus augmentant tout - le temps, vous vous épargnerez beaucoup de peine en utilisant du - bon matériel.</para> - - <para>Aussi, utilisez des connecteurs plaqués or, des câbles blindés - et des connecteurs robustes et bien vérrouillés, etc. - Deuxième règle d'or : n'utilisez pas des câbles plus longs que - nécessaires. J'ai une fois perdu 3 jours à pourchasser un problème - sur une machine instable, juste pour découvrir que raccourcir - le bus SCSI d'un mètre résolvait le problème. Et la longueur - originale du bus respectait bien les spécifications SCSI.</para> - - </sect3> - - <sect3> - <title>Types de bus SCSI</title> - - <para>D'un point de vue électrique, il existe deux types de bus - incompatibles : collecteur ouvert (<foreignphrase>single-ended - </foreignphrase>) et différentiel. Cela signifie qu'il existe deux - principaux groupes de périphériques et contrôleurs SCSI qui ne peuvent - être mélangés sur le même bus. Il est toutefois possible d'utiliser - un convertisseur matériel spécial pour transformer un bus collecteur - ouvert en différentiel (et vice versa). Les différences entre les - types de bus sont expliquées dans les sections suivantes.</para> - - <para>Dans beaucoup de documentation à propos du SCSI, il existe une - sorte de jargon en usage pour abréger les différents types de bus. - Une petite liste :</para> - - <itemizedlist> - <listitem> - <para>FWD : Fast Wide Differential (différentiel large rapide)</para> - </listitem> - - <listitem> - <para>FND : Fast Narrow Differential (différentiel étroit rapide)</para> - </listitem> - - <listitem> - <para>SE : Single Ended (collecteur ouvert)</para> - </listitem> - - <listitem> - <para>FN : Fast Narrow (rapide étroit)</para> - </listitem> - - <listitem> - <para>etc.</para> - </listitem> - </itemizedlist> - - - <para>Avec un minimun d'imagination, on peut bien imaginer ce que - cela veut dire.</para> - - <para>Large est un peu ambigu, il peut indiquer des bus de 16 ou - 32 bits. A ma connaissance, la variante en 32 bits n'est pas (encore) - utilisée, donc normalement large veut dire 16 bits.</para> - - <para>Rapide signifie que la cadence sur le bus est un peu différente, - pour qu'un bus étroit (8 bits) supporte 10 Mo/s au lieu de 5 Mo/s - pour un SCSI 'lent'. Comme indiqué précédemment, des vitesses de - bus de 20 et 40 millions de transferts/seconde émergent aussi - (Fast-20 = Ultra SCSI et Fast40 = Ultra2 SCSI).</para> - - <note> - <para>Les lignes de données > 8 ne sont utilisées que pour les - transferts de données et l'adressage des périphériques. Les - transferts des commandes, messages d'état, etc. n'ont lieu que sur - les 8 bits de poids faibles. Le standard permet aux périphériques - étroits de fonctionner sur un bus large. La largeur de bus - utilisable est négociée entre les abonnés. Vous devez regarder - précisément l'adressage des abonnés lorsque vous mélangez larges - et étroits.</para> - </note> - -<!-- - <sect4> - <title>Single ended buses</title> - &sgml.todo; - - <para>A single-ended SCSI bus uses signals that are either 5 Volts - or 0 Volts (indeed, TTL levels) and are relative to a COMMON - ground reference. A singled ended 8 bit SCSI bus has - approximately 25 ground lines, who are all tied to a single `rail' - on all devices. A standard single ended bus has a maximum length - of 6 meters. If the same bus is used with fast-SCSI devices, the - maximum length allowed drops to 3 meters. Fast-SCSI means that - instead of 5Mbytes/sec the bus allows 10Mbytes/sec - transfers.</para> - - <para>Fast-20 (Ultra SCSI) and Fast-40 allow for 20 and 40 million - transfers/second respectively. So, F20 is 20 Mbytes/second on a 8 - bit bus, 40 Mbytes/second on a 16 bit bus etc. For F20 the max - bus length is 1.5 meters, for F40 it becomes 0.75 meters. Be - aware that F20 is pushing the limits quite a bit, so you will - quickly find out if your SCSI bus is electrically sound.</para> - - <note> - <para>If some devices on your bus use 'fast' to communicate your - bus must adhere to the length restrictions for fast - buses!</para> - </note> - - <para>It is obvious that with the newer fast-SCSI devices the bus - length can become a real bottleneck. This is why the differential - SCSI bus was introduced in the SCSI-2 standard.</para> - - <para>For connector pinning and connector types please refer to the - SCSI-2 standard (see <link linkend="scsi-further-reading">Further - reading</link>) itself, connectors etc are listed there in - painstaking detail.</para> - - <para>Beware of devices using non-standard cabling. For instance - Apple uses a 25pin D-type connecter (like the one on serial ports - and parallel printers). Considering that the official SCSI bus - needs 50 pins you can imagine the use of this connector needs some - 'creative cabling'. The reduction of the number of ground wires - they used is a bad idea, you better stick to 50 pins cabling in - accordance with the SCSI standard. For Fast-20 and 40 do not even - think about buses like this.</para> - </sect4> - - <sect4> - <title>Differential buses</title> - - <para>A differential SCSI bus has a maximum length of 25 meters. - Quite a difference from the 3 meters for a single-ended fast-SCSI - bus. The idea behind differential signals is that each bus signal - has its own return wire. So, each signal is carried on a - (preferably twisted) pair of wires. The voltage difference - between these two wires determines whether the signal is asserted - or de-asserted. To a certain extent the voltage difference - between ground and the signal wire pair is not relevant (do not - try 10 kVolts though).</para> - - <para>It is beyond the scope of this document to explain why this - differential idea is so much better. Just accept that - electrically seen the use of differential signals gives a much - better noise margin. You will normally find differential buses in - use for inter-cabinet connections. Because of the lower cost - single ended is mostly used for shorter buses like inside - cabinets.</para> - - <para>There is nothing that stops you from using differential stuff - with FreeBSD, as long as you use a controller that has device - driver support in FreeBSD. As an example, Adaptec marketed the - AHA1740 as a single ended board, whereas the AHA1744 was - differential. The software interface to the host is identical for - both.</para> - </sect4> - - <sect4> - <title>Terminators</title> - - <para>Terminators in SCSI terminology are resistor networks that are - used to get a correct impedance matching. Impedance matching is - important to get clean signals on the bus, without reflections or - ringing. If you once made a long distance telephone call on a bad - line you probably know what reflections are. With 20Mbytes/sec - traveling over your SCSI bus, you do not want signals echoing - back.</para> - - <para>Terminators come in various incarnations, with more or less - sophisticated designs. Of course, there are internal and external - variants. Many SCSI devices come with a number of sockets in - which a number of resistor networks can (must be!) installed. If - you remove terminators from a device, carefully store them. You - will need them when you ever decide to reconfigure your SCSI bus. - There is enough variation in even these simple tiny things to make - finding the exact replacement a frustrating business. There are - also SCSI devices that have a single jumper to enable or disable a - built-in terminator. There are special terminators you can stick - onto a flat cable bus. Others look like external connectors, or a - connector hood without a cable. So, lots of choice as you can - see.</para> - - <para>There is much debate going on if and when you should switch - from simple resistor (passive) terminators to active terminators. - Active terminators contain slightly more elaborate circuit to give - cleaner bus signals. The general consensus seems to be that the - usefulness of active termination increases when you have long - buses and/or fast devices. If you ever have problems with your - SCSI buses you might consider trying an active terminator. Try to - borrow one first, they reputedly are quite expensive.</para> - - <para>Please keep in mind that terminators for differential and - single-ended buses are not identical. You should <emphasis>not - mix</emphasis> the two variants.</para> - - <para>OK, and now where should you install your terminators? This is - by far the most misunderstood part of SCSI. And it is by far the - simplest. The rule is: <emphasis>every single line on the SCSI - bus has 2 (two) terminators, one at each end of the - bus.</emphasis> So, two and not one or three or whatever. Do - yourself a favor and stick to this rule. It will save you endless - grief, because wrong termination has the potential to introduce - highly mysterious bugs. (Note the “potential” here; - the nastiest part is that it may or may not work.)</para> - - <para>A common pitfall is to have an internal (flat) cable in a - machine and also an external cable attached to the controller. It - seems almost everybody forgets to remove the terminators from the - controller. The terminator must now be on the last external - device, and not on the controller! In general, every - reconfiguration of a SCSI bus must pay attention to this.</para> - - <note> - <para>Termination is to be done on a per-line basis. This means - if you have both narrow and wide buses connected to the same - host adapter, you need to enable termination on the higher 8 - bits of the bus on the adapter (as well as the last devices on - each bus, of course).</para> - </note> - - <para>What I did myself is remove all terminators from my SCSI - devices and controllers. I own a couple of external terminators, - for both the Centronics-type external cabling and for the internal - flat cable connectors. This makes reconfiguration much - easier.</para> - - <para>On modern devices, sometimes integrated terminators are used. - These things are special purpose integrated circuits that can be - dis/en-abled with a control pin. It is not necessary to - physically remove them from a device. You may find them on newer - host adapters, sometimes they are software configurable, using - some sort of setup tool. Some will even auto-detect the cables - attached to the connectors and automatically set up the - termination as necessary. At any rate, consult your - documentation!</para> - </sect4> - - <sect4> - <title>Terminator power</title> - - <para>The terminators discussed in the previous chapter need power - to operate properly. On the SCSI bus, a line is dedicated to this - purpose. So, simple huh?</para> - - <para>Not so. Each device can provide its own terminator power to - the terminator sockets it has on-device. But if you have external - terminators, or when the device supplying the terminator power to - the SCSI bus line is switched off you are in trouble.</para> - - <para>The idea is that initiators (these are devices that initiate - actions on the bus, a discussion follows) must supply terminator - power. All SCSI devices are allowed (but not required) to supply - terminator power.</para> - - <para>To allow for un-powered devices on a bus, the terminator power - must be supplied to the bus via a diode. This prevents the - backflow of current to un-powered devices.</para> - - <para>To prevent all kinds of nastiness, the terminator power is - usually fused. As you can imagine, fuses might blow. This can, - but does not have to, lead to a non functional bus. If multiple - devices supply terminator power, a single blown fuse will not put - you out of business. A single supplier with a blown fuse - certainly will. Clever external terminators sometimes have a LED - indication that shows whether terminator power is present.</para> - - <para>In newer designs auto-restoring fuses that 'reset' themselves - after some time are sometimes used.</para> - </sect4> - - <sect4> - <title>Device addressing</title> - - <para>Because the SCSI bus is, ehh, a bus there must be a way to - distinguish or address the different devices connected to - it.</para> - - <para>This is done by means of the SCSI or target ID. Each device - has a unique target ID. You can select the ID to which a device - must respond using a set of jumpers, or a dip switch, or something - similar. Some SCSI host adapters let you change the target ID - from the boot menu. (Yet some others will not let you change the - ID from 7.) Consult the documentation of your device for more - information.</para> - - <para>Beware of multiple devices configured to use the same ID. - Chaos normally reigns in this case. A pitfall is that one of the - devices sharing the same ID sometimes even manages to answer to - I/O requests!</para> - - <para>For an 8 bit bus, a maximum of 8 targets is possible. The - maximum is 8 because the selection is done bitwise using the 8 - data lines on the bus. For wide buses this increases to the - number of data lines (usually 16).</para> - - <note> - <para>A narrow SCSI device can not communicate with a SCSI device - with a target ID larger than 7. This means it is generally not - a good idea to move your SCSI host adapter's target ID to - something higher than 7 (or your CD-ROM will stop - working).</para> - </note> - - <para>The higher the SCSI target ID, the higher the priority the - devices has. When it comes to arbitration between devices that - want to use the bus at the same time, the device that has the - highest SCSI ID will win. This also means that the SCSI host - adapter usually uses target ID 7. Note however that the lower 8 - IDs have higher priorities than the higher 8 IDs on a wide-SCSI - bus. Thus, the order of target IDs is: [7 6 .. 1 0 15 14 .. 9 8] - on a wide-SCSI system. (If you you are wondering why the lower 8 - have higher priority, read the previous paragraph for a - hint.)</para> - - <para>For a further subdivision, the standard allows for Logical - Units or LUNs for short. A single target ID may have multiple - LUNs. For example, a tape device including a tape changer may - have LUN 0 for the tape device itself, and LUN 1 for the tape - changer. In this way, the host system can address each of the - functional units of the tape changer as desired.</para> - </sect4> - - <sect4> - <title>Bus layout</title> - - <para>SCSI buses are linear. So, not shaped like Y-junctions, star - topologies, rings, cobwebs or whatever else people might want to - invent. One of the most common mistakes is for people with - wide-SCSI host adapters to connect devices on all three connecters - (external connector, internal wide connector, internal narrow - connector). Don't do that. It may appear to work if you are - really lucky, but I can almost guarantee that your system will - stop functioning at the most unfortunate moment (this is also - known as “Murphy's law”).</para> - - <para>You might notice that the terminator issue discussed earlier - becomes rather hairy if your bus is not linear. Also, if you have - more connectors than devices on your internal SCSI cable, make - sure you attach devices on connectors on both ends instead of - using the connectors in the middle and let one or both ends - dangle. This will screw up the termination of the bus.</para> - - <para>The electrical characteristics, its noise margins and - ultimately the reliability of it all are tightly related to linear - bus rule.</para> - - <para><emphasis>Stick to the linear bus rule!</emphasis></para> - </sect4> ---> - - </sect3> - - - <sect3> - <title>*** Utiliser le SCSI avec FreeBSD</title> - &sgml.todo - <!-- - <sect4> - <title>About translations, BIOSes and magic...</title> - - <para>As stated before, you should first make sure that you have a - electrically sound bus.</para> - - <para>When you want to use a SCSI disk on your PC as boot disk, you - must aware of some quirks related to PC BIOSes. The PC BIOS in - its first incarnation used a low level physical interface to the - hard disk. So, you had to tell the BIOS (using a setup tool or a - BIOS built-in setup) how your disk physically looked like. This - involved stating number of heads, number of cylinders, number of - sectors per track, obscure things like precompensation and reduced - write current cylinder etc.</para> - - <para>One might be inclined to think that since SCSI disks are smart - you can forget about this. Alas, the arcane setup issue is still - present today. The system BIOS needs to know how to access your - SCSI disk with the head/cyl/sector method in order to load the - FreeBSD kernel during boot.</para> - - <para>The SCSI host adapter or SCSI controller you have put in your - AT/EISA/PCI/whatever bus to connect your disk therefore has its - own on-board BIOS. During system startup, the SCSI BIOS takes - over the hard disk interface routines from the system BIOS. To - fool the system BIOS, the system setup is normally set to No hard - disk present. Obvious, isn't it?</para> - - <para>The SCSI BIOS itself presents to the system a so called - <emphasis>translated</emphasis> drive. This means that a fake - drive table is constructed that allows the PC to boot the drive. - This translation is often (but not always) done using a pseudo - drive with 64 heads and 32 sectors per track. By varying the - number of cylinders, the SCSI BIOS adapts to the actual drive - size. It is useful to note that 32 * 64 / 2 = the size of your - drive in megabytes. The division by 2 is to get from disk blocks - that are normally 512 bytes in size to Kbytes.</para> - - <para>Right. All is well now?! No, it is not. The system BIOS has - another quirk you might run into. The number of cylinders of a - bootable hard disk cannot be greater than 1024. Using the - translation above, this is a show-stopper for disks greater than 1 - GB. With disk capacities going up all the time this is causing - problems.</para> - - <para>Fortunately, the solution is simple: just use another - translation, e.g. with 128 heads instead of 32. In most cases new - SCSI BIOS versions are available to upgrade older SCSI host - adapters. Some newer adapters have an option, in the form of a - jumper or software setup selection, to switch the translation the - SCSI BIOS uses.</para> - - <para>It is very important that <emphasis>all</emphasis> operating - systems on the disk use the <emphasis>same translation</emphasis> - to get the right idea about where to find the relevant partitions. - So, when installing FreeBSD you must answer any questions about - heads/cylinders etc using the translated values your host adapter - uses.</para> - - <para>Failing to observe the translation issue might lead to - un-bootable systems or operating systems overwriting each others - partitions. Using fdisk you should be able to see all - partitions.</para> - - <para>You might have heard some talk of “lying” devices? - Older FreeBSD kernels used to report the geometry of SCSI disks - when booting. An example from one of my systems:</para> - - <screen>aha0 targ 0 lun 0: <MICROP 1588-15MB1057404HSP4> -sd0: 636MB (1303250 total sec), 1632 cyl, 15 head, 53 sec, bytes/sec 512</screen> - - <para>Newer kernels usually do not report this information. - e.g.</para> - - <screen>(bt0:0:0): "SEAGATE ST41651 7574" type 0 fixed SCSI 2 -sd0(bt0:0:0): Direct-Access 1350MB (2766300 512 byte sectors)</screen> - - <para>Why has this changed?</para> - - <para>This info is retrieved from the SCSI disk itself. Newer disks - often use a technique called zone bit recording. The idea is that - on the outer cylinders of the drive there is more space so more - sectors per track can be put on them. This results in disks that - have more tracks on outer cylinders than on the inner cylinders - and, last but not least, have more capacity. You can imagine that - the value reported by the drive when inquiring about the geometry - now becomes suspect at best, and nearly always misleading. When - asked for a geometry , it is nearly always better to supply the - geometry used by the BIOS, or <emphasis>if the BIOS is never going - to know about this disk</emphasis>, (e.g. it is not a booting - disk) to supply a fictitious geometry that is convenient.</para> - </sect4> - - <sect4> - <title>SCSI subsystem design</title> - - <para>FreeBSD uses a layered SCSI subsystem. For each different - controller card a device driver is written. This driver knows all - the intimate details about the hardware it controls. The driver - has a interface to the upper layers of the SCSI subsystem through - which it receives its commands and reports back any status.</para> - - <para>On top of the card drivers there are a number of more generic - drivers for a class of devices. More specific: a driver for tape - devices (abbreviation: st), magnetic disks (sd), CD-ROMs (cd) etc. - In case you are wondering where you can find this stuff, it all - lives in <filename>/sys/scsi</filename>. See the man pages in - section 4 for more details.</para> - - <para>The multi level design allows a decoupling of low-level bit - banging and more high level stuff. Adding support for another - piece of hardware is a much more manageable problem.</para> - </sect4> - - <sect4> - <title>Kernel configuration</title> - - <para>Dependent on your hardware, the kernel configuration file must - contain one or more lines describing your host adapter(s). This - includes I/O addresses, interrupts etc. Consult the man page for - your adapter driver to get more info. Apart from that, check out - <filename>/sys/i386/conf/LINT</filename> for an overview of a - kernel config file. <filename>LINT</filename> contains every - possible option you can dream of. It does - <emphasis>not</emphasis> imply <filename>LINT</filename> will - actually get you to a working kernel at all.</para> - - <para>Although it is probably stating the obvious: the kernel config - file should reflect your actual hardware setup. So, interrupts, - I/O addresses etc must match the kernel config file. During - system boot messages will be displayed to indicate whether the - configured hardware was actually found.</para> - - <note> - <para>Note that most of the EISA/PCI drivers (namely - <devicename>ahb</devicename>, <devicename>ahc</devicename>, - <devicename>ncr</devicename> and <devicename>amd</devicename> - will automatically obtain the correct parameters from the host - adapters themselves at boot time; thus, you just need to write, - for instance, <literal>controller ahc0</literal>.</para> - </note> - - <para>An example loosely based on the FreeBSD 2.2.5-Release kernel - config file <filename>LINT</filename> with some added comments - (between []):</para> - - <programlisting> -# SCSI host adapters: `aha', `ahb', `aic', `bt', `nca' -# -# aha: Adaptec 154x -# ahb: Adaptec 174x -# ahc: Adaptec 274x/284x/294x -# aic: Adaptec 152x and sound cards using the Adaptec AIC-6360 (slow!) -# amd: AMD 53c974 based SCSI cards (e.g., Tekram DC-390 and 390T) -# bt: Most Buslogic controllers -# nca: ProAudioSpectrum cards using the NCR 5380 or Trantor T130 -# ncr: NCR/Symbios 53c810/815/825/875 etc based SCSI cards -# uha: UltraStore 14F and 34F -# sea: Seagate ST01/02 8 bit controller (slow!) -# wds: Western Digital WD7000 controller (no scatter/gather!). -# - -[For an Adaptec AHA274x/284x/294x/394x etc controller] -controller ahc0 - -[For an NCR/Symbios 53c875 based controller] -controller ncr0 - -[For an Ultrastor adapter] -controller uha0 at isa? port "IO_UHA0" bio irq ? drq 5 vector uhaintr - -# Map SCSI buses to specific SCSI adapters -controller scbus0 at ahc0 -controller scbus2 at ncr0 -controller scbus1 at uha0 - -# The actual SCSI devices -disk sd0 at scbus0 target 0 unit 0 [SCSI disk 0 is at scbus 0, LUN 0] -disk sd1 at scbus0 target 1 [implicit LUN 0 if omitted] -disk sd2 at scbus1 target 3 [SCSI disk on the uha0] -disk sd3 at scbus2 target 4 [SCSI disk on the ncr0] -tape st1 at scbus0 target 6 [SCSI tape at target 6] -device cd0 at scbus? [the first ever CD-ROM found, no wiring]</programlisting> - - <para>The example above tells the kernel to look for a ahc (Adaptec - 274x) controller, then for an NCR/Symbios board, and so on. The - lines following the controller specifications tell the kernel to - configure specific devices but <emphasis>only</emphasis> attach - them when they match the target ID and LUN specified on the - corresponding bus.</para> - - <para>Wired down devices get “first shot” at the unit - numbers so the first non “wired down” device, is - allocated the unit number one greater than the highest - “wired down” unit number for that kind of device. So, - if you had a SCSI tape at target ID 2 it would be configured as - st2, as the tape at target ID 6 is wired down to unit number - 1.</para> - - <note> - <para>Wired down devices need not be found to get their unit - number. The unit number for a wired down device is reserved for - that device, even if it is turned off at boot time. This allows - the device to be turned on and brought on-line at a later time, - without rebooting. Notice that a device's unit number has - <emphasis>no</emphasis> relationship with its target ID on the - SCSI bus.</para> - </note> - - <para>Below is another example of a kernel config file as used by - FreeBSD version < 2.0.5. The difference with the first example - is that devices are not “wired down”. “Wired - down” means that you specify which SCSI target belongs to - which device.</para> - - <para>A kernel built to the config file below will attach the first - SCSI disk it finds to sd0, the second disk to sd1 etc. If you ever - removed or added a disk, all other devices of the same type (disk - in this case) would 'move around'. This implies you have to - change <filename>/etc/fstab</filename> each time.</para> - - <para>Although the old style still works, you are - <emphasis>strongly</emphasis> recommended to use this new feature. - It will save you a lot of grief whenever you shift your hardware - around on the SCSI buses. So, when you re-use your old trusty - config file after upgrading from a pre-FreeBSD2.0.5.R system check - this out.</para> - - <programlisting> -[driver for Adaptec 174x] -controller ahb0 at isa? bio irq 11 vector ahbintr - -[for Adaptec 154x] -controller aha0 at isa? port "IO_AHA0" bio irq 11 drq 5 vector ahaintr - -[for Seagate ST01/02] -controller sea0 at isa? bio irq 5 iomem 0xc8000 iosiz 0x2000 vector seaintr - -controller scbus0 - -device sd0 [support for 4 SCSI harddisks, sd0 up sd3] -device st0 [support for 2 SCSI tapes] - -[for the CD-ROM] -device cd0 #Only need one of these, the code dynamically grows</programlisting> - - <para>Both examples support SCSI disks. If during boot more devices - of a specific type (e.g. sd disks) are found than are configured - in the booting kernel, the system will simply allocate more - devices, incrementing the unit number starting at the last number - “wired down”. If there are no “wired - down” devices then counting starts at unit 0.</para> - - <para>Use <command>man 4 scsi</command> to check for the latest info - on the SCSI subsystem. For more detailed info on host adapter - drivers use eg <command>man 4 ahc</command> for info on the - Adaptec 294x driver.</para> - </sect4> - - <sect4> - <title>Tuning your SCSI kernel setup</title> - - <para>Experience has shown that some devices are slow to respond to - INQUIRY commands after a SCSI bus reset (which happens at boot - time). An INQUIRY command is sent by the kernel on boot to see - what kind of device (disk, tape, CD-ROM etc) is connected to a - specific target ID. This process is called device probing by the - way.</para> - - <para>To work around the 'slow response' problem, FreeBSD allows a - tunable delay time before the SCSI devices are probed following a - SCSI bus reset. You can set this delay time in your kernel - configuration file using a line like:</para> - - <programlisting> -options SCSI_DELAY=15 #Be pessimistic about Joe SCSI device</programlisting> - - <para>This line sets the delay time to 15 seconds. On my own system - I had to use 3 seconds minimum to get my trusty old CD-ROM drive - to be recognized. Start with a high value (say 30 seconds or so) - when you have problems with device recognition. If this helps, - tune it back until it just stays working.</para> - </sect4> - - <sect4 id="scsi-rogue-devices"> - <title>Rogue SCSI devices</title> - - <para>Although the SCSI standard tries to be complete and concise, - it is a complex standard and implementing things correctly is no - easy task. Some vendors do a better job then others.</para> - - <para>This is exactly where the “rogue” devices come - into view. Rogues are devices that are recognized by the FreeBSD - kernel as behaving slightly (...) non-standard. Rogue devices are - reported by the kernel when booting. An example for two of my - cartridge tape units:</para> - - <screen>Feb 25 21:03:34 yedi /kernel: ahb0 targ 5 lun 0: <TANDBERG TDC 3600 -06:> -Feb 25 21:03:34 yedi /kernel: st0: Tandberg tdc3600 is a known rogue - -Mar 29 21:16:37 yedi /kernel: aha0 targ 5 lun 0: <ARCHIVE VIPER 150 21247-005> -Mar 29 21:16:37 yedi /kernel: st1: Archive Viper 150 is a known rogue </screen> - - <para>For instance, there are devices that respond to all LUNs on a - certain target ID, even if they are actually only one device. It - is easy to see that the kernel might be fooled into believing that - there are 8 LUNs at that particular target ID. The confusion this - causes is left as an exercise to the reader.</para> - - <para>The SCSI subsystem of FreeBSD recognizes devices with bad - habits by looking at the INQUIRY response they send when probed. - Because the INQUIRY response also includes the version number of - the device firmware, it is even possible that for different - firmware versions different workarounds are used. See e.g. - <filename>/sys/scsi/st.c</filename> and - <filename>/sys/scsi/scsiconf.c</filename> for more info on how - this is done.</para> - - <para>This scheme works fine, but keep in mind that it of course - only works for devices that are known to be weird. If you are the - first to connect your bogus Mumbletech SCSI CD-ROM you might be - the one that has to define which workaround is needed.</para> - - <para>After you got your Mumbletech working, please send the - required workaround to the FreeBSD development team for inclusion - in the next release of FreeBSD. Other Mumbletech owners will be - grateful to you.</para> - </sect4> - - <sect4> - <title>Multiple LUN devices</title> - - <para>In some cases you come across devices that use multiple - logical units (LUNs) on a single SCSI ID. In most cases FreeBSD - only probes devices for LUN 0. An example are so called bridge - boards that connect 2 non-SCSI harddisks to a SCSI bus (e.g. an - Emulex MD21 found in old Sun systems).</para> - - <para>This means that any devices with LUNs != 0 are not normally - found during device probe on system boot. To work around this - problem you must add an appropriate entry in /sys/scsi/scsiconf.c - and rebuild your kernel.</para> - - <para>Look for a struct that is initialized like below:</para> - - <programlisting> -{ - T_DIRECT, T_FIXED, "MAXTOR", "XT-4170S", "B5A", - "mx1", SC_ONE_LU -}</programlisting> - - <para>For you Mumbletech BRIDGE2000 that has more than one LUN, acts - as a SCSI disk and has firmware revision 123 you would add - something like:</para> - - <programlisting> -{ - T_DIRECT, T_FIXED, "MUMBLETECH", "BRIDGE2000", "123", - "sd", SC_MORE_LUS -}</programlisting> - - <para>The kernel on boot scans the inquiry data it receives against - the table and acts accordingly. See the source for more - info.</para> - </sect4> - - <sect4> - <title>Tagged command queueing</title> - - <para>Modern SCSI devices, particularly magnetic disks, - support what is called tagged command queuing (TCQ).</para> - - <para>In a nutshell, TCQ allows the device to have multiple I/O - requests outstanding at the same time. Because the device is - intelligent, it can optimise its operations (like head - positioning) based on its own request queue. On SCSI devices - like RAID (Redundant Array of Independent Disks) arrays the TCQ - function is indispensable to take advantage of the device's - inherent parallelism.</para> - - <para>Each I/O request is uniquely identified by a “tag” - (hence the name tagged command queuing) and this tag is used by - FreeBSD to see which I/O in the device drivers queue is reported - as complete by the device.</para> - - <para>It should be noted however that TCQ requires device driver - support and that some devices implemented it “not quite - right” in their firmware. This problem bit me once, and it - leads to highly mysterious problems. In such cases, try to - disable TCQ.</para> - </sect4> - - <sect4> - <title>Busmaster host adapters</title> - - <para>Most, but not all, SCSI host adapters are bus mastering - controllers. This means that they can do I/O on their own without - putting load onto the host CPU for data movement.</para> - - <para>This is of course an advantage for a multitasking operating - system like FreeBSD. It must be noted however that there might be - some rough edges.</para> - - <para>For instance an Adaptec 1542 controller can be set to use - different transfer speeds on the host bus (ISA or AT in this - case). The controller is settable to different rates because not - all motherboards can handle the higher speeds. Problems like - hangups, bad data etc might be the result of using a higher data - transfer rate then your motherboard can stomach.</para> - - <para>The solution is of course obvious: switch to a lower data - transfer rate and try if that works better.</para> - - <para>In the case of a Adaptec 1542, there is an option that can be - put into the kernel config file to allow dynamic determination of - the right, read: fastest feasible, transfer rate. This option is - disabled by default:</para> - - <programlisting> -options "TUNE_1542" #dynamic tune of bus DMA speed</programlisting> - - <para>Check the man pages for the host adapter that you use. Or - better still, use the ultimate documentation (read: driver - source).</para> - </sect4> - --> - </sect3> - - - - <sect3> - <title>*** Résoudre les problèmes</title> - &sgml.todo - - <!-- - <para>The following list is an attempt to give a guideline for the - most common SCSI problems and their solutions. It is by no means - complete.</para> - - <itemizedlist> - <listitem> - <para>Check for loose connectors and cables.</para> - </listitem> - - <listitem> - <para>Check and double check the location and number of your - terminators.</para> - </listitem> - - <listitem> - <para>Check if your bus has at least one supplier of terminator - power (especially with external terminators.</para> - </listitem> - - <listitem> - <para>Check if no double target IDs are used.</para> - </listitem> - - <listitem> - <para>Check if all devices to be used are powered up.</para> - </listitem> - - <listitem> - <para>Make a minimal bus config with as little devices as - possible.</para> - </listitem> - - <listitem> - <para>If possible, configure your host adapter to use slow bus - speeds.</para> - </listitem> - - <listitem> - <para>Disable tagged command queuing to make things as simple as - possible (for a NCR hostadapter based system see man - ncrcontrol)</para> - </listitem> - - <listitem> - <para>If you can compile a kernel, make one with the - <literal>SCSIDEBUG</literal> option, and try accessing the - device with debugging turned on for that device. If your device - does not even probe at startup, you may have to define the - address of the device that is failing, and the desired debug - level in <filename>/sys/scsi/scsidebug.h</filename>. If it - probes but just does not work, you can use the - &man.scsi.8; command to dynamically set a debug level to - it in a running kernel (if <literal>SCSIDEBUG</literal> is - defined). This will give you <emphasis>copious</emphasis> - debugging output with which to confuse the gurus. See - <command>man 4 scsi</command> for more exact information. Also - look at <command>man 8 scsi</command>.</para> - </listitem> - </itemizedlist> - --> - </sect3> - - - <sect3 id="scsi-further-reading"> - <title>*** Lectures complémentaires</title> - &sgml.todo - - <!-- - <para>If you intend to do some serious SCSI hacking, you might want to - have the official standard at hand:</para> - - <para>Approved American National Standards can be purchased from - ANSI at - - <address> - <otheraddr>13th Floor</otheraddr> - <street>11 West 42nd Street</street> - <city>New York</city> - <state>NY</state> <postcode>10036</postcode> - Sales Dept: <phone>(212) 642-4900</phone> - </address> - </para> - - <para>You can also buy many ANSI - standards and most committee draft documents from Global - Engineering Documents, - - <address> - <street>15 Inverness Way East</street> - <city>Englewood</city> - <state>CO</state>, <postcode>80112-5704</postcode> - Phone: <phone>(800) 854-7179</phone> - Outside USA and Canada: <phone>(303) 792-2181</phone> - Fax: <fax>(303) 792- 2192</fax> - </address> - </para> - - <para>Many X3T10 draft documents are available electronically on the - SCSI BBS (719-574-0424) and on the <hostid - role="fqdn">ncrinfo.ncr.com</hostid> anonymous ftp site.</para> - - <para>Latest X3T10 committee documents are:</para> - - <itemizedlist> - <listitem> - <para>AT Attachment (ATA or IDE) [X3.221-1994] - (<emphasis>Approved</emphasis>)</para> - </listitem> - - <listitem> - <para>ATA Extensions (ATA-2) [X3T10/948D Rev 2i]</para> - </listitem> - - <listitem> - <para>Enhanced Small Device Interface (ESDI) - [X3.170-1990/X3.170a-1991] - (<emphasis>Approved</emphasis>)</para> - </listitem> - - <listitem> - <para>Small Computer System Interface — 2 (SCSI-2) - [X3.131-1994] (<emphasis>Approved</emphasis>)</para> - </listitem> - - <listitem> - <para>SCSI-2 Common Access Method Transport and SCSI Interface - Module (CAM) [X3T10/792D Rev 11]</para> - </listitem> - </itemizedlist> - - <para>Other publications that might provide you with additional - information are:</para> - - <itemizedlist> - <listitem> - <para>“SCSI: Understanding the Small Computer System - Interface”, written by NCR Corporation. Available from: - Prentice Hall, Englewood Cliffs, NJ, 07632 Phone: (201) 767-5937 - ISBN 0-13-796855-8</para> - </listitem> - - <listitem> - <para>“Basics of SCSI”, a SCSI tutorial written by - Ancot Corporation Contact Ancot for availability information at: - Phone: (415) 322-5322 Fax: (415) 322-0455</para> - </listitem> - - <listitem> - <para>“SCSI Interconnection Guide Book”, an AMP - publication (dated 4/93, Catalog 65237) that lists the various - SCSI connectors and suggests cabling schemes. Available from - AMP at (800) 522-6752 or (717) 564-0100</para> - </listitem> - - <listitem> - <para>“Fast Track to SCSI”, A Product Guide written by - Fujitsu. Available from: Prentice Hall, Englewood Cliffs, NJ, - 07632 Phone: (201) 767-5937 ISBN 0-13-307000-X</para> - </listitem> - - <listitem> - <para>“The SCSI Bench Reference”, “The SCSI - Encyclopedia”, and the “SCSI Tutor”, ENDL - Publications, 14426 Black Walnut Court, Saratoga CA, 95070 - Phone: (408) 867-6642</para> - </listitem> - - <listitem> - <para>“Zadian SCSI Navigator” (quick ref. book) and - “Discover the Power of SCSI” (First book along with - a one-hour video and tutorial book), Zadian Software, Suite 214, - 1210 S. Bascom Ave., San Jose, CA 92128, (408) 293-0800</para> - </listitem> - </itemizedlist> - - <para>On Usenet the newsgroups <ulink - URL="news:comp.periphs.scsi">comp.periphs.scsi</ulink> and <ulink - URL="news:comp.periphs">comp.periphs</ulink> are noteworthy places - to look for more info. You can also find the SCSI-Faq there, which - is posted periodically.</para> - - <para>Most major SCSI device and host adapter suppliers operate ftp - sites and/or BBS systems. They may be valuable sources of - information about the devices you own.</para> - --> - </sect3> - </sect2> - - <sect2 id="hw-storage-controllers"> - <title>* Contrôleurs de disques/bandes</title> - <sect3> - <title>* SCSI</title> - <para></para> - </sect3> - <sect3> - <title>* IDE</title> - <para></para> - </sect3> - <sect3> - <title>* Disquettes</title> - <para></para> - </sect3> - </sect2> - - <sect2> - <title>*** Disques durs</title> - - <sect3> - <title>*** Disques durs SCSI</title> - &sgml.todo; -<!-- - <para><emphasis>Contributed by &a.asami;. 17 February - 1998.</emphasis></para> - - <para>As mentioned in the <link linkend="scsi">SCSI</link> section, - virtually all SCSI hard drives sold today are SCSI-2 compliant and - thus will work fine as long as you connect them to a supported SCSI - host adapter. Most problems people encounter are either due to - badly designed cabling (cable too long, star topology, etc.), - insufficient termination, or defective parts. Please refer to the - <link linkend="scsi">SCSI</link> section first if your SCSI hard - drive is not working. However, there are a couple of things you may - want to take into account before you purchase SCSI hard drives for - your system.</para> - - <sect4> - <title>Rotational speed</title> - - <para>Rotational speeds of SCSI drives sold today range from around - 4,500RPM to 10,000RPM. Most of them are either 5,400RPM or - 7,200RPM. Even though the 7,200RPM drives can generally transfer - data faster, they run considerably hotter than their 5,400RPM - counterparts. A large fraction of today's disk drive malfunctions - are heat-related. If you do not have very good cooling in your PC - case, you may want to stick with 5,400RPM or slower drives.</para> - - <para>Note that newer drives, with higher areal recording densities, - can deliver much more bits per rotation than older ones. Today's - top-of-line 5,400RPM drives can sustain a throughput comparable to - 7,200RPM drives of one or two model generations ago. The number - to find on the spec sheet for bandwidth is “internal data - (or transfer) rate”. It is usually in megabits/sec so - divide it by 8 and you'll get the rough approximation of how much - megabytes/sec you can get out of the drive.</para> - - <para>(If you are a speed maniac and want a 10,000RPM drive for your - cute little peecee, be my guest; however, those drives become - extremely hot. Don't even think about it if you don't have a fan - blowing air <emphasis>directly at</emphasis> the drive or a - properly ventilated disk enclosure.)</para> - - <para>Obviously, the latest 10,000RPM drives and 7,200RPM drives can - deliver more data than the latest 5,400RPM drives, so if absolute - bandwidth is the necessity for your applications, you have little - choice but to get the faster drives. Also, if you need low - latency, faster drives are better; not only do they usually have - lower average seek times, but also the rotational delay is one - place where slow-spinning drives can never beat a faster one. - (The average rotational latency is half the time it takes to - rotate the drive once; thus, it's 3 milliseconds for 10,000RPM - drives, 4.2ms for 7,200RPM drives and 5.6ms for 5,400RPM drives.) - Latency is seek time plus rotational delay. Make sure you - understand whether you need low latency or more accesses per - second, though; in the latter case (e.g., news servers), it may - not be optimal to purchase one big fast drive. You can achieve - similar or even better results by using the ccd (concatenated - disk) driver to create a striped disk array out of multiple slower - drives for comparable overall cost.</para> - - <para>Make sure you have adequate air flow around the drive, - especially if you are going to use a fast-spinning drive. You - generally need at least 1/2" (1.25cm) of spacing above and below a - drive. Understand how the air flows through your PC case. Most - cases have the power supply suck the air out of the back. See - where the air flows in, and put the drive where it will have the - largest volume of cool air flowing around it. You may need to seal - some unwanted holes or add a new fan for effective cooling.</para> - - <para>Another consideration is noise. Many 7,200 or faster drives - generate a high-pitched whine which is quite unpleasant to most - people. That, plus the extra fans often required for cooling, may - make 7,200 or faster drives unsuitable for some office and home - environments.</para> - </sect4> - - <sect4> - <title>Form factor</title> - - <para>Most SCSI drives sold today are of 3.5" form factor. They - come in two different heights; 1.6" (“half-height”) or - 1" (“low-profile”). The half-height drive is the same - height as a CD-ROM drive. However, don't forget the spacing rule - mentioned in the previous section. If you have three standard - 3.5" drive bays, you will not be able to put three half-height - drives in there (without frying them, that is).</para> - </sect4> - - <sect4> - <title>Interface</title> - - <para>The majority of SCSI hard drives sold today are Ultra or - Ultra-wide SCSI. The maximum bandwidth of Ultra SCSI is 20MB/sec, - and Ultra-wide SCSI is 40MB/sec. There is no difference in max - cable length between Ultra and Ultra-wide; however, the more - devices you have on the same bus, the sooner you will start having - bus integrity problems. Unless you have a well-designed disk - enclosure, it is not easy to make more than 5 or 6 Ultra SCSI - drives work on a single bus.</para> - - <para>On the other hand, if you need to connect many drives, going - for Fast-wide SCSI may not be a bad idea. That will have the same - max bandwidth as Ultra (narrow) SCSI, while electronically it's - much easier to get it “right”. My advice would be: if - you want to connect many disks, get wide SCSI drives; they usually - cost a little more but it may save you down the road. (Besides, - if you can't afford the cost difference, you shouldn't be building - a disk array.)</para> - - <para>There are two variant of wide SCSI drives; 68-pin and 80-pin - SCA (Single Connector Attach). The SCA drives don't have a - separate 4-pin power connector, and also read the SCSI ID settings - through the 80-pin connector. If you are really serious about - building a large storage system, get SCA drives and a good SCA - enclosure (dual power supply with at least one extra fan). They - are more electronically sound than 68-pin counterparts because - there is no “stub” of the SCSI bus inside the disk - canister as in arrays built from 68-pin drives. They are easier - to install too (you just need to screw the drive in the canister, - instead of trying to squeeze in your fingers in a tight place to - hook up all the little cables (like the SCSI ID and disk activity - LED lines).</para> - </sect4> - --> - </sect3> - - <sect3> - <title>* Disques durs IDE</title> - <para></para> - </sect3> - </sect2> - - <sect2> - <title>*** Contrôleurs de bande</title> -<!-- - <para><emphasis>Contributed by &a.jmb;. 2 July - 1996.</emphasis></para> ---> - <sect3> - <title>*** Commandes générales d'accès aux bandes</title> - - &sgml.todo - <!-- - <para>&man.mt.1; provides generic access to the tape drives. Some of - the more common commands are <command>rewind</command>, - <command>erase</command>, and <command>status</command>. See the - &man.mt.1; manual page for a detailed description.</para> - &sgml.todo; - --> - </sect3> - <sect3> - <title>*** Interfaces et contrôleurs</title> - &sgml.todo - <!-- - <para>There are several different interfaces that support tape drives. - The interfaces are SCSI, IDE, Floppy and Parallel Port. A wide - variety of tape drives are available for these interfaces. - Controllers are discussed in <link - linkend="hw-storage-controllers">Disk/tape - controllers</link>.</para> - --> - </sect3> - <sect3> - <title>*** Lecteurs SCSI</title> - &sgml.todo - <!-- - - <para>The &man.st.4; driver provides support for 8mm (Exabyte), 4mm - (DAT: Digital Audio Tape), QIC (Quarter-Inch Cartridge), DLT - (Digital Linear Tape), QIC Minicartridge and 9-track (remember the - big reels that you see spinning in Hollywood computer rooms) tape - drives. See the &man.st.4; manual page for a detailed - description.</para> - - <para>The drives listed below are currently being used by members of - the FreeBSD community. They are not the only drives that will work - with FreeBSD. They just happen to be the ones that we use.</para> - - <sect4> - <title>4mm (DAT: Digital Audio Tape)</title> - - <para><link linkend="hw-storage-python">Archive Python</link></para> - - <para><link linkend="hw-storage-hp1533a">HP C1533A</link></para> - - <para><link linkend="hw-storage-hp1534a">HP C1534A</link></para> - - <para><link linkend="hw-storage-hp35450a">HP 35450A</link></para> - - <para><link linkend="hw-storage-hp35470a">HP 35470A</link></para> - - <para><link linkend="hw-storage-hp35480a">HP 35480A</link></para> - - <para><link linkend="hw-storage-sdt5000">SDT-5000</link></para> - - <para><link linkend="hw-storage-wangtek6200">Wangtek - 6200</link></para> - </sect4> - - <sect4> - <title>8mm (Exabyte)</title> - - <para><link linkend="hw-storage-exb8200">EXB-8200</link></para> - - <para><link linkend="hw-storage-exb8500">EXB-8500</link></para> - - <para><link linkend="hw-storage-exb8505">EXB-8505</link></para> - </sect4> - - <sect4> - <title>QIC (Quarter-Inch Cartridge)</title> - - <para><link linkend="hw-storage-anaconda">Archive Ananconda - 2750</link></para> - - <para><link linkend="hw-storage-viper60">Archive Viper - 60</link></para> - - <para><link linkend="hw-storage-viper150">Archive Viper - 150</link></para> - - <para><link linkend="hw-storage-viper2525">Archive Viper - 2525</link></para> - - <para><link linkend="hw-storage-tandberg3600">Tandberg TDC - 3600</link></para> - - <para><link linkend="hw-storage-tandberg3620">Tandberg TDC - 3620</link></para> - - <para><link linkend="hw-storage-tandberg4222">Tandberg TDC - 4222</link></para> - - <para><link linkend="hw-storage-wangtek5525es">Wangtek - 5525ES</link></para> - </sect4> - - <sect4> - <title>DLT (Digital Linear Tape)</title> - - <para><link linkend="hw-storage-dectz87">Digital TZ87</link></para> - </sect4> - - <sect4> - <title>Mini-Cartridge</title> - - <para><link linkend="hw-storage-ctms3200">Conner CTMS - 3200</link></para> - - <para><link linkend="hw-storage-exb2501">Exabyte 2501</link></para> - </sect4> - - <sect4> - <title>Autoloaders/Changers</title> - - <para><link linkend="hw-storage-hp1553a">Hewlett-Packard HP C1553A - Autoloading DDS2</link></para> - </sect4> - - --> - </sect3> - <sect3> - <title>* Lecteurs IDE</title> - <para></para> - </sect3> - <sect3> - <title>* Lecteurs sur contrôleur de disquette</title> - &sgml.todo -<!-- - où est passé le source ????? ---> - - - - </sect3> - <sect3> - <title>* Lecteurs sur port parallèle</title> - <para></para> - </sect3> - <sect3> - <title>*** Informations détaillées</title> - &sgml.todo - <!-- - <sect4 id="hw-storage-anaconda"> - <title>Archive Anaconda 2750</title> - - <para>The boot message identifier for this drive is <literal>ARCHIVE - ANCDA 2750 28077 -003 type 1 removable SCSI 2</literal></para> - - <para>This is a QIC tape drive.</para> - - <para>Native capacity is 1.35GB when using QIC-1350 tapes. This - drive will read and write QIC-150 (DC6150), QIC-250 (DC6250), and - QIC-525 (DC6525) tapes as well.</para> - - <para>Data transfer rate is 350kB/s using - &man.dump.8;. Rates of 530kB/s have been reported when using - <link linkend="backups-programs-amanda">Amanda</link></para> - - <para>Production of this drive has been discontinued.</para> - - <para>The SCSI bus connector on this tape drive is reversed from - that on most other SCSI devices. Make sure that you have enough - SCSI cable to twist the cable one-half turn before and after the - Archive Anaconda tape drive, or turn your other SCSI devices - upside-down.</para> - - <para>Two kernel code changes are required to use this drive. This - drive will not work as delivered.</para> - - <para>If you have a SCSI-2 controller, short jumper 6. Otherwise, - the drive behaves are a SCSI-1 device. When operating as a SCSI-1 - device, this drive, “locks” the SCSI bus during some - tape operations, including: fsf, rewind, and rewoffl.</para> - - <para>If you are using the NCR SCSI controllers, patch the file - <filename>/usr/src/sys/pci/ncr.c</filename> (as shown below). - Build and install a new kernel.</para> - - <programlisting> -*** 4831,4835 **** - }; - -! if (np->latetime>4) { - /* - ** Although we tried to wake it up, -Remplacer les '*' par des '-' -*** 4831,4836 **** - }; - -! if (np->latetime>1200) { - /* - ** Although we tried to wake it up,</programlisting> - - <para>Reported by: &a.jmb;</para> - </sect4> - - <sect4 id="hw-storage-python"> - <title>Archive Python</title> - - <para>The boot message identifier for this drive is <literal>ARCHIVE - Python 28454-XXX4ASB</literal> <literal>type 1 removable SCSI - 2</literal> <literal>density code 0x8c, 512-byte - blocks</literal></para> - - <para>This is a DDS-1 tape drive.</para> - - <para>Native capacity is 2.5GB on 90m tapes.</para> - - <para>Data transfer rate is XXX.</para> - - <para>This drive was repackaged by Sun Microsystems as model - 411.</para> - - <para>Reported by: Bob Bishop <email>rb@gid.co.uk</email></para> - </sect4> - - <sect4 id="hw-storage-viper60"> - <title>Archive Viper 60</title> - - <para>The boot message identifier for this drive is <literal>ARCHIVE - VIPER 60 21116 -007</literal> <literal>type 1 removable SCSI - 1</literal></para> - - <para>This is a QIC tape drive.</para> - - <para>Native capacity is 60MB.</para> - - <para>Data transfer rate is XXX.</para> - - <para>Production of this drive has been discontinued.</para> - - <para>Reported by: Philippe Regnauld - <email>regnauld@hsc.fr</email></para> - </sect4> - - <sect4 id="hw-storage-viper150"> - <title>Archive Viper 150</title> - - <para>The boot message identifier for this drive is <literal>ARCHIVE - VIPER 150 21531 -004</literal> <literal>Archive Viper 150 is a - known rogue</literal> <literal>type 1 removable SCSI - 1</literal>. A multitude of firmware revisions exist for this - drive. Your drive may report different numbers (e.g - <literal>21247 -005</literal>.</para> - - <para>This is a QIC tape drive.</para> - - <para>Native capacity is 150/250MB. Both 150MB (DC6150) and 250MB - (DC6250) tapes have the recording format. The 250MB tapes are - approximately 67% longer than the 150MB tapes. This drive can - read 120MB tapes as well. It can not write 120MB tapes.</para> - - <para>Data transfer rate is 100kB/s</para> - - <para>This drive reads and writes DC6150 (150MB) and DC6250 (250MB) - tapes.</para> - - <para>This drives quirks are known and pre-compiled into the scsi - tape device driver (&man.st.4;).</para> - - <para>Under FreeBSD 2.2-current, use <command>mt blocksize - 512</command> to set the blocksize. (The particular drive had - firmware revision 21247 -005. Other firmware revisions may behave - differently) Previous versions of FreeBSD did not have this - problem.</para> - - <para>Production of this drive has been discontinued.</para> - - <para>Reported by: Pedro A M Vazquez - <email>vazquez@IQM.Unicamp.BR</email></para> - - <para>Mike Smith - <email>msmith@atrad.adelaide.edu.au</email></para> - </sect4> - - <sect4 id="hw-storage-viper2525"> - <title>Archive Viper 2525</title> - - <para>The boot message identifier for this drive is <literal>ARCHIVE - VIPER 2525 25462 -011</literal> <literal>type 1 removable SCSI - 1</literal></para> - - <para>This is a QIC tape drive.</para> - - <para>Native capacity is 525MB.</para> - - <para>Data transfer rate is 180kB/s at 90 inches/sec.</para> - - <para>The drive reads QIC-525, QIC-150, QIC-120 and QIC-24 tapes. - Writes QIC-525, QIC-150, and QIC-120.</para> - - <para>Firmware revisions prior to <literal>25462 -011</literal> are - bug ridden and will not function properly.</para> - - <para>Production of this drive has been discontinued.</para> - </sect4> - - <sect4 id="hw-storage-conner420r"> - <title>Conner 420R</title> - - <para>The boot message identifier for this drive is <literal>Conner - tape</literal>.</para> - - <para>This is a floppy controller, minicartridge tape drive.</para> - - <para>Native capacity is XXXX</para> - - <para>Data transfer rate is XXX</para> - - <para>The drive uses QIC-80 tape cartridges.</para> - - <para>Reported by: Mark Hannon - <email>mark@seeware.DIALix.oz.au</email></para> - </sect4> - - <sect4 id="hw-storage-ctms3200"> - <title>Conner CTMS 3200</title> - - <para>The boot message identifier for this drive is <literal>CONNER - CTMS 3200 7.00</literal> <literal>type 1 removable SCSI - 2</literal>.</para> - - <para>This is a minicartridge tape drive.</para> - - <para>Native capacity is XXXX</para> - - <para>Data transfer rate is XXX</para> - - <para>The drive uses QIC-3080 tape cartridges.</para> - - <para>Reported by: Thomas S. Traylor - <email>tst@titan.cs.mci.com</email></para> - </sect4> - - <sect4 id="hw-storage-dectz87"> - <title><ulink - URL="http://www.digital.com/info/Customer-Update/931206004.txt.html">DEC TZ87</ulink></title> - - <para>The boot message identifier for this drive is <literal>DEC - TZ87 (C) DEC 9206</literal> <literal>type 1 removable SCSI - 2</literal> <literal>density code 0x19</literal></para> - - <para>This is a DLT tape drive.</para> - - <para>Native capacity is 10GB.</para> - - <para>This drive supports hardware data compression.</para> - - <para>Data transfer rate is 1.2MB/s.</para> - - <para>This drive is identical to the Quantum DLT2000. The drive - firmware can be set to emulate several well-known drives, - including an Exabyte 8mm drive.</para> - - <para>Reported by: &a.wilko;</para> - </sect4> - - <sect4 id="hw-storage-exb2501"> - <title><ulink - URL="http://www.Exabyte.COM:80/Products/Minicartridge/2501/Rfeatures.html">Exabyte EXB-2501</ulink></title> - - <para>The boot message identifier for this drive is <literal>EXABYTE - EXB-2501</literal></para> - - <para>This is a mini-cartridge tape drive.</para> - - <para>Native capacity is 1GB when using MC3000XL - minicartridges.</para> - - <para>Data transfer rate is XXX</para> - - <para>This drive can read and write DC2300 (550MB), DC2750 (750MB), - MC3000 (750MB), and MC3000XL (1GB) minicartridges.</para> - - <para>WARNING: This drive does not meet the SCSI-2 specifications. - The drive locks up completely in response to a SCSI MODE_SELECT - command unless there is a formatted tape in the drive. Before - using this drive, set the tape blocksize with</para> - - <screen>&prompt.root; <userinput>mt -f /dev/st0ctl.0 blocksize 1024</userinput></screen> - - <para>Before using a minicartridge for the first time, the - minicartridge must be formated. FreeBSD 2.1.0-RELEASE and - earlier:</para> - - <screen>&prompt.root; <userinput>/sbin/scsi -f /dev/rst0.ctl -s 600 -c "4 0 0 0 0 0"</userinput></screen> - - <para>(Alternatively, fetch a copy of the - <command>scsiformat</command> shell script from FreeBSD - 2.1.5/2.2.) FreeBSD 2.1.5 and later:</para> - - <screen>&prompt.root; <userinput>/sbin/scsiformat -q -w /dev/rst0.ctl</userinput></screen> - - <para>Right now, this drive cannot really be recommended for - FreeBSD.</para> - - <para>Reported by: Bob Beaulieu - <email>ez@eztravel.com</email></para> - </sect4> - - <sect4 id="hw-storage-exb8200"> - <title>Exabyte EXB-8200</title> - - <para>The boot message identifier for this drive is <literal>EXABYTE - EXB-8200 252X</literal> <literal>type 1 removable SCSI - 1</literal></para> - - <para>This is an 8mm tape drive.</para> - - <para>Native capacity is 2.3GB.</para> - - <para>Data transfer rate is 270kB/s.</para> - - <para>This drive is fairly slow in responding to the SCSI bus during - boot. A custom kernel may be required (set SCSI_DELAY to 10 - seconds).</para> - - <para>There are a large number of firmware configurations for this - drive, some have been customized to a particular vendor's - hardware. The firmware can be changed via EPROM - replacement.</para> - - <para>Production of this drive has been discontinued.</para> - - <para>Reported by: Mike Smith - <email>msmith@atrad.adelaide.edu.au</email></para> - </sect4> - - <sect4 id="hw-storage-exb8500"> - <title>Exabyte EXB-8500</title> - - <para>The boot message identifier for this drive is <literal>EXABYTE - EXB-8500-85Qanx0 0415</literal> <literal>type 1 removable SCSI - 2</literal></para> - - <para>This is an 8mm tape drive.</para> - - <para>Native capacity is 5GB.</para> - - <para>Data transfer rate is 300kB/s.</para> - - <para>Reported by: Greg Lehey <email>grog@lemis.de</email></para> - </sect4> - - <sect4 id="hw-storage-exb8505"> - <title><ulink - URL="http://www.Exabyte.COM:80/Products/8mm/8505XL/Rfeatures.html">Exabyte EXB-8505</ulink></title> - - <para>The boot message identifier for this drive is - <literal>EXABYTE EXB-85058SQANXR1 05B0</literal> <literal>type 1 - removable SCSI 2</literal></para> - - <para>This is an 8mm tape drive which supports compression, and is - upward compatible with the EXB-5200 and EXB-8500.</para> - - <para>Native capacity is 5GB.</para> - - <para>The drive supports hardware data compression.</para> - - <para>Data transfer rate is 300kB/s.</para> - - <para>Reported by: Glen Foster - <email>gfoster@gfoster.com</email></para> - </sect4> - - <sect4 id="hw-storage-hp1533a"> - <title>Hewlett-Packard HP C1533A</title> - - <para>The boot message identifier for this drive is <literal>HP - C1533A 9503</literal> <literal>type 1 removable SCSI - 2</literal>.</para> - - <para>This is a DDS-2 tape drive. DDS-2 means hardware data - compression and narrower tracks for increased data - capacity.</para> - - <para>Native capacity is 4GB when using 120m tapes. This drive - supports hardware data compression.</para> - - <para>Data transfer rate is 510kB/s.</para> - - <para>This drive is used in Hewlett-Packard's SureStore 6000eU and - 6000i tape drives and C1533A DDS-2 DAT drive.</para> - - <para>The drive has a block of 8 dip switches. The proper settings - for FreeBSD are: 1 ON; 2 ON; 3 OFF; 4 ON; 5 ON; 6 ON; 7 ON; 8 - ON.</para> - - <informaltable frame="none"> - <tgroup cols="3"> - <thead> - <row> - <entry>switch 1</entry> - <entry>switch 2</entry> - <entry>Result</entry> - </row> - </thead> - - <tbody> - <row> - <entry>On</entry> - <entry>On</entry> - <entry>Compression enabled at power-on, with host - control</entry> - </row> - - <row> - <entry>On</entry> - <entry>Off</entry> - <entry>Compression enabled at power-on, no host - control</entry> - </row> - - <row> - <entry>Off</entry> - <entry>On</entry> - <entry>Compression disabled at power-on, with host - control</entry> - </row> - - <row> - <entry>Off</entry> - <entry>Off</entry> - <entry>Compression disabled at power-on, no host - control</entry> - </row> - </tbody> - </tgroup> - </informaltable> - - <para>Switch 3 controls MRS (Media Recognition System). MRS tapes - have stripes on the transparent leader. These identify the tape - as DDS (Digital Data Storage) grade media. Tapes that do not have - the stripes will be treated as write-protected. Switch 3 OFF - enables MRS. Switch 3 ON disables MRS.</para> - - <para>See <ulink URL="http://www.hp.com/tape/c_intro.html">HP - SureStore Tape Products</ulink> and <ulink - URL="http://www.impediment.com/hp/hp_technical.html">Hewlett-Packard - Disk and Tape Technical Information</ulink> for more information - on configuring this drive.</para> - - <para><emphasis>Warning:</emphasis> Quality control on these drives - varies greatly. One FreeBSD core-team member has returned 2 of - these drives. Neither lasted more than 5 months.</para> - - <para>Reported by: &a.se;</para> - </sect4> - - <sect4 id="hw-storage-hp1534a"> - <title>Hewlett-Packard HP 1534A</title> - - <para>The boot message identifier for this drive is <literal>HP - HP35470A T503</literal> <literal>type 1 removable SCSI - 2</literal> <literal>Sequential-Access density code 0x13, - variable blocks</literal>.</para> - - <para>This is a DDS-1 tape drive. DDS-1 is the original DAT tape - format.</para> - - <para>Native capacity is 2GB when using 90m tapes.</para> - - <para>Data transfer rate is 183kB/s.</para> - - <para>The same mechanism is used in Hewlett-Packard's SureStore - <ulink URL="http://www.dmo.hp.com/tape/sst2000.htm">2000i</ulink> - tape drive, C35470A DDS format DAT drive, C1534A DDS format DAT - drive and HP C1536A DDS format DAT drive.</para> - - <para>The HP C1534A DDS format DAT drive has two indicator lights, - one green and one amber. The green one indicates tape action: - slow flash during load, steady when loaded, fast flash during - read/write operations. The amber one indicates warnings: slow - flash when cleaning is required or tape is nearing the end of its - useful life, steady indicates an hard fault. (factory service - required?)</para> - - <para>Reported by Gary Crutcher - <email>gcrutchr@nightflight.com</email></para> - </sect4> - - <sect4 id="hw-storage-hp1553a"> - <title>Hewlett-Packard HP C1553A Autoloading DDS2</title> - - <para>The boot message identifier for this drive is "".</para> - - <para>This is a DDS-2 tape drive with a tape changer. DDS-2 means - hardware data compression and narrower tracks for increased data - capacity.</para> - - <para>Native capacity is 24GB when using 120m tapes. This drive - supports hardware data compression.</para> - - <para>Data transfer rate is 510kB/s (native).</para> - - <para>This drive is used in Hewlett-Packard's SureStore <ulink - URL="http://www.dmo.hp.com/tape/sst12000.htm">12000e</ulink> - tape drive.</para> - - <para>The drive has two selectors on the rear panel. The selector - closer to the fan is SCSI id. The other selector should be set to - 7.</para> - - <para>There are four internal switches. These should be set: 1 ON; - 2 ON; 3 ON; 4 OFF.</para> - - <para>At present the kernel drivers do not automatically change - tapes at the end of a volume. This shell script can be used to - change tapes:</para> - - <programlisting> -#!/bin/sh -PATH="/sbin:/usr/sbin:/bin:/usr/bin"; export PATH - -usage() -{ - echo "Usage: dds_changer [123456ne] raw-device-name - echo "1..6 = Select cartridge" - echo "next cartridge" - echo "eject magazine" - exit 2 -} - -if [ $# -ne 2 ] ; then - usage -fi - -cdb3=0 -cdb4=0 -cdb5=0 - -case $1 in - [123456]) - cdb3=$1 - cdb4=1 - ;; - n) - ;; - e) - cdb5=0x80 - ;; - ?) - usage - ;; -esac - -scsi -f $2 -s 100 -c "1b 0 0 $cdb3 $cdb4 $cdb5"</programlisting> - </sect4> - - <sect4 id="hw-storage-hp35450a"> - <title>Hewlett-Packard HP 35450A</title> - - <para>The boot message identifier for this drive is <literal>HP - HP35450A -A C620</literal> <literal>type 1 removable SCSI - 2</literal> <literal>Sequential-Access density code - 0x13</literal></para> - - <para>This is a DDS-1 tape drive. DDS-1 is the original DAT tape - format.</para> - - <para>Native capacity is 1.2GB.</para> - - <para>Data transfer rate is 160kB/s.</para> - - <para>Reported by: mark thompson - <email>mark.a.thompson@pobox.com</email></para> - </sect4> - - <sect4 id="hw-storage-hp35470a"> - <title>Hewlett-Packard HP 35470A</title> - - <para>The boot message identifier for this drive is <literal>HP - HP35470A 9 09</literal> <literal>type 1 removable SCSI - 2</literal></para> - - <para>This is a DDS-1 tape drive. DDS-1 is the original DAT tape - format.</para> - - <para>Native capacity is 2GB when using 90m tapes.</para> - - <para>Data transfer rate is 183kB/s.</para> - - <para>The same mechanism is used in Hewlett-Packard's SureStore - <ulink URL="http://www.dmo.hp.com/tape/sst2000.htm">2000i</ulink> - tape drive, C35470A DDS format DAT drive, C1534A DDS format DAT - drive, and HP C1536A DDS format DAT drive.</para> - - <para><emphasis>Warning:</emphasis> Quality control on these drives - varies greatly. One FreeBSD core-team member has returned 5 of - these drives. None lasted more than 9 months.</para> - - <para>Reported by: David Dawes - <email>dawes@rf900.physics.usyd.edu.au</email> (9 09)</para> - - </sect4> - - <sect4 id="hw-storage-hp35480a"> - <title>Hewlett-Packard HP 35480A</title> - - <para>The boot message identifier for this drive is <literal>HP - HP35480A 1009</literal> <literal>type 1 removable SCSI - 2</literal> <literal>Sequential-Access density code - 0x13</literal>.</para> - - <para>This is a DDS-DC tape drive. DDS-DC is DDS-1 with hardware - data compression. DDS-1 is the original DAT tape format.</para> - - <para>Native capacity is 2GB when using 90m tapes. It cannot handle - 120m tapes. This drive supports hardware data compression. - Please refer to the section on <link - linkend="hw-storage-hp1533a">HP C1533A</link> for the proper - switch settings.</para> - - <para>Data transfer rate is 183kB/s.</para> - - <para>This drive is used in Hewlett-Packard's SureStore <ulink - URL="http://www.dmo.hp.com/tape/sst5000.htm">5000eU</ulink> and - <ulink URL="http://www.dmo.hp.com/tape/sst5000.htm">5000i</ulink> - tape drives and C35480A DDS format DAT drive..</para> - - <para>This drive will occasionally hang during a tape eject - operation (<command>mt offline</command>). Pressing the front - panel button will eject the tape and bring the tape drive back to - life.</para> - - <para>WARNING: HP 35480-03110 only. On at least two occasions this - tape drive when used with FreeBSD 2.1.0, an IBM Server 320 and an - 2940W SCSI controller resulted in all SCSI disk partitions being - lost. The problem has not be analyzed or resolved at this - time.</para> - </sect4> - - <sect4 id="hw-storage-sdt5000"> - <title><ulink - URL="http://www.sel.sony.com/SEL/ccpg/storage/tape/t5000.html">Sony SDT-5000</ulink></title> - - <para>There are at least two significantly different models: one is - a DDS-1 and the other DDS-2. The DDS-1 version is - <literal>SDT-5000 3.02</literal>. The DDS-2 version is - <literal>SONY SDT-5000 327M</literal>. The DDS-2 version has a 1MB - cache. This cache is able to keep the tape streaming in almost - any circumstances.</para> - - <para>The boot message identifier for this drive is <literal>SONY - SDT-5000 3.02</literal> <literal>type 1 removable SCSI - 2</literal> <literal>Sequential-Access density code - 0x13</literal></para> - - <para>Native capacity is 4GB when using 120m tapes. This drive - supports hardware data compression.</para> - - <para>Data transfer rate is depends upon the model or the drive. The - rate is 630kB/s for the <literal>SONY SDT-5000 327M</literal> - while compressing the data. For the <literal>SONY SDT-5000 - 3.02</literal>, the data transfer rate is 225kB/s.</para> - - <para>In order to get this drive to stream, set the blocksize to 512 - bytes (<command>mt blocksize 512</command>) reported by Kenneth - Merry ken@ulc199.residence.gatech.edu</para> - - <para><literal>SONY SDT-5000 327M</literal> information reported by - Charles Henrich henrich@msu.edu</para> - - <para>Reported by: &a.jmz;</para> - </sect4> - - <sect4 id="hw-storage-tandberg3600"> - <title>Tandberg TDC 3600</title> - - <para>The boot message identifier for this drive is - <literal>TANDBERG TDC 3600 =08:</literal> <literal>type 1 - removable SCSI 2</literal></para> - - <para>This is a QIC tape drive.</para> - - <para>Native capacity is 150/250MB.</para> - - <para>This drive has quirks which are known and work around code is - present in the scsi tape device driver (&man.st.4;). - Upgrading the firmware to XXX version will fix the quirks and - provide SCSI 2 capabilities.</para> - - <para>Data transfer rate is 80kB/s.</para> - - <para>IBM and Emerald units will not work. Replacing the firmware - EPROM of these units will solve the problem.</para> - - <para>Reported by: Michael Smith - <email>msmith@atrad.adelaide.edu.au</email></para> - </sect4> - - <sect4 id="hw-storage-tandberg3620"> - <title>Tandberg TDC 3620</title> - - <para>This is very similar to the <link - linkend="hw-storage-tandberg3600">Tandberg TDC 3600</link> - drive.</para> - - <para>Reported by: &a.joerg;</para> - </sect4> - - <sect4 id="hw-storage-tandberg4222"> - <title>Tandberg TDC 4222</title> - - <para>The boot message identifier for this drive is - <literal>TANDBERG TDC 4222 =07</literal> <literal>type 1 removable - SCSI 2</literal></para> - - <para>This is a QIC tape drive.</para> - - <para>Native capacity is 2.5GB. The drive will read all cartridges - from the 60 MB (DC600A) upwards, and write 150 MB (DC6150) - upwards. Hardware compression is optionally supported for the 2.5 - GB cartridges.</para> - - <para>This drives quirks are known and pre-compiled into the scsi - tape device driver (&man.st.4;) beginning with FreeBSD - 2.2-current. For previous versions of FreeBSD, use - <command>mt</command> to read one block from the tape, rewind the - tape, and then execute the backup program (<command>mt fsr 1; mt - rewind; dump ...</command>)</para> - - <para>Data transfer rate is 600kB/s (vendor claim with compression), - 350 KB/s can even be reached in start/stop mode. The rate - decreases for smaller cartridges.</para> - - <para>Reported by: &a.joerg;</para> - </sect4> - - <sect4 id="hw-storage-wangtek5525es"> - <title>Wangtek 5525ES</title> - - <para>The boot message identifier for this drive is <literal>WANGTEK - 5525ES SCSI REV7 3R1</literal> <literal>type 1 removable SCSI - 1</literal> <literal>density code 0x11, 1024-byte - blocks</literal></para> - - <para>This is a QIC tape drive.</para> - - <para>Native capacity is 525MB.</para> - - <para>Data transfer rate is 180kB/s.</para> - - <para>The drive reads 60, 120, 150, and 525MB tapes. The drive will - not write 60MB (DC600 cartridge) tapes. In order to overwrite 120 - and 150 tapes reliably, first erase (<command>mt erase</command>) - the tape. 120 and 150 tapes used a wider track (fewer tracks per - tape) than 525MB tapes. The “extra” width of the - previous tracks is not overwritten, as a result the new data lies - in a band surrounded on both sides by the previous data unless the - tape have been erased.</para> - - <para>This drives quirks are known and pre-compiled into the scsi - tape device driver (&man.st.4;).</para> - - <para>Other firmware revisions that are known to work are: - M75D</para> - - <para>Reported by: Marc van Kempen <email>marc@bowtie.nl</email> - <literal>REV73R1</literal> Andrew Gordon - <email>Andrew.Gordon@net-tel.co.uk</email> - <literal>M75D</literal></para> - </sect4> - - <sect4 id="hw-storage-wangtek6200"> - <title>Wangtek 6200</title> - - <para>The boot message identifier for this drive is <literal>WANGTEK - 6200-HS 4B18</literal> <literal>type 1 removable SCSI - 2</literal> <literal>Sequential-Access density code - 0x13</literal></para> - - <para>This is a DDS-1 tape drive.</para> - - <para>Native capacity is 2GB using 90m tapes.</para> - - <para>Data transfer rate is 150kB/s.</para> - - <para>Reported by: Tony Kimball <email>alk@Think.COM</email></para> - </sect4> - --> - </sect3> - <sect3> - <title>* Lecteurs posant problème</title> - <para></para> - </sect3> - </sect2> - - <sect2> - <title>*** Contrôleurs de CD-ROMs</title> - - &sgml.todo - <!-- - - <para><emphasis>Contribution de &a.obrien;. 23 Novembre - 1997.</emphasis></para> - - <para>Comme mentionné dans - <link linkend="hw-jordans-picks-cdrom">Jordan's Picks</link> - Generally speaking those in <emphasis>The FreeBSD - Project</emphasis> prefer SCSI CDROM drives over IDE CDROM drives. - However not all SCSI CDROM drives are equal. Some feel the quality of - some SCSI CDROM drives have been deteriorating to that of IDE CDROM - drives. Toshiba used to be the favored stand-by, but many on the SCSI - mailing list have found displeasure with the 12x speed XM-5701TA as - its volume (when playing audio CDROMs) is not controllable by the - various audio player software.</para> - - <para>Another area where SCSI CDROM manufacturers are cutting corners is - adhearance to the <link linkend="scsi-further-reading">SCSI - specification</link>. Many SCSI CDROMs will respond to <link - linkend="scsi-rogue-devices">multiple LUNs</link> for its target - address. Known violators include the 6x Teac CD-56S 1.0D.</para> - <para></para> - - --> - </sect2> - - <sect2> - <title>* Autres</title> - <para></para> - </sect2> - - <sect2> - <title>* Ajouter et reconfigurer des disques</title> - <para></para> - </sect2> - - </sect1> - - <sect1 id="hw-other"> - <title>* Autres</title> - - <sect2> - <title>* PCMCIA</title> - <para></para> - </sect2> - </sect1> - </chapter> -<!-- - Local Variables: - mode: sgml - sgml-declaration: "../chapter.decl" - sgml-indent-data: t - sgml-omittag: nil - sgml-shorttag: nil - sgml-always-quote-attributes: t - sgml-minimize-attributes: max - sgml-parent-document: ("../handbook.sgml" "part" "chapter") - End: ---> |