<?xml version="1.0" encoding="UTF-8" ?>
<!-- RSS generated by PHPBoost on Mon, 06 Apr 2026 02:02:53 +0200 -->

<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Derniers articles - La taverne de John-John : Fiches récapitulatives]]></title>
		<atom:link href="https://www.jonathandupre.fr/syndication/rss/articles/50" rel="self" type="application/rss+xml"/>
		<link>https://jonathandupre.fr</link>
		<description><![CDATA[Derniers articles - La taverne de John-John : Fiches récapitulatives]]></description>
		<copyright>(C) 2005-2026 PHPBoost</copyright>
		<language>fr</language>
		<generator>PHPBoost</generator>
		
		
		<item>
			<title><![CDATA[Liaison série & adaptateurs USB (RS-232/UART)]]></title>
			<link>https://www.jonathandupre.fr/articles/50-fiches-recapitulatives/169-liaison-serie-adaptateurs-usb-rs-232-uart/</link>
			<guid>https://www.jonathandupre.fr/articles/50-fiches-recapitulatives/169-liaison-serie-adaptateurs-usb-rs-232-uart/</guid>
			<description><![CDATA[Page récapitulative concernant ces petites bestioles très utiles qui permettent d'envoyer et de recevoir des données facilement entre un ordinateur et un périphérique externe (minitel, switch/routeur, appareil de mesure, set-top box, etc...). On les trouve facilement sur eBay pour quelques euros. Bien que maintenant obsolète, largement ringardisé par l'USB (surtout en terme de débit), on trouve encore ce protocole dans certains équipements.<br />
<p style="text-align: center;"><a href="https://www.jonathandupre.fr/images/articles/2017/169/adapters.jpg" data-lightbox="formatter" class="formatter-lightbox"><img src="https://www.jonathandupre.fr/images/articles/2017/169/adapters.jpg" alt="adapters" /></a></p><br />
<h3 class="formatter-title">La liaison série</h3><br />
La transmission série s'oppose à la transmission parallèle (abrégée //). On envoie les données (bits) les uns à la suite des autres, en parallèle on envoie des salves de  bits sur plusieurs fils en même temps (autant de bits que de fils). On parle de bits donc bien entendu ici il s'agit d'une liaison numérique bidirectionnelle sans porteuse, donc en tout ou rien (0/1) avec deux niveaux logiques (haut et bas).<br />
<p style="text-align: center;"><a href="https://www.jonathandupre.fr/images/articles/2017/169/diff.gif" data-lightbox="formatter" class="formatter-lightbox"><img src="https://www.jonathandupre.fr/images/articles/2017/169/diff.gif" alt="diff" /></a></p><br />
Les deux étant utilisées dans le monde de l'informatique. La liaison série a pris le dessus depuis les années 90 comme par exemple les bus PCI-Express, USB et SATA qui remplacent les antiques PCI, PATA, SCSI et autres <a href="https://fr.wikipedia.org/wiki/Port_parall%C3%A8le">Centronics</a>. En raison notamment de sa plus grande simplicité : moins de fils, connecteurs moins gros et moins de problèmes (diaphonie, skew). Les liaisons parallèles ne sont utilisées que sur des distances courtes (lignes des bus PCI ou de bus mémoire sur la carte mère, nappes IDE/PATA). Les liens suivants vous en apprendront plus :<br />
<ul class="formatter-ul">
    <li class="formatter-li"><a href="https://fr.wikipedia.org/wiki/Transmission_s%C3%A9rie">https://fr.wikipedia.org/wiki/Transmission_série</a>
    </li><li class="formatter-li"><a href="https://fr.wikipedia.org/wiki/Bus_informatique">https://fr.wikipedia.org/wiki/Bus_informatique</a>
    </li><li class="formatter-li"><a href="https://fr.wikipedia.org/wiki/RS-232">https://fr.wikipedia.org/wiki/RS-232</a>
    </li><li class="formatter-li"><a href="http://www.poirrier.be/~jean-etienne/notes/structordi/ports/">http://www.poirrier.be/~jean-etienne/notes/structordi/ports/</a><br />
</li></ul><br />
Sinon vous avez ces deux excellentes vidéos de Electro Bidouilleur :<br />
<ul class="formatter-ul">
    <li class="formatter-li"><a href="https://www.youtube.com/watch?v=1n59uNT_o6A">EB_#153 La Communication Série, Partie 1: Introduction</a>
    </li><li class="formatter-li"><a href="https://www.youtube.com/watch?v=kVd8Zj413l8">EB_#155 La Communication Série, Partie 2: Le UART</a><br />
</li></ul><br />
<h3 class="formatter-title">Les ports série</h3><br />
Sur un PC, les deux connecteurs <a href="https://fr.wikipedia.org/wiki/D-sub">D-Sub</a> DB-9 et DB-25 mâles sont destinés à une liaison de type série et un connecteur DB-25 femelle est destiné à la transmission parallèle :<br />
<p style="text-align: center;"><a href="https://www.jonathandupre.fr/images/articles/2017/169/port.gif" data-lightbox="formatter" class="formatter-lightbox"><img src="https://www.jonathandupre.fr/images/articles/2017/169/port.gif" alt="port" /></a></p><br />
<p style="text-align: center;"><a href="https://www.jonathandupre.fr/images/articles/2017/169/serial-label.jpg" data-lightbox="formatter" class="formatter-lightbox"><img src="https://www.jonathandupre.fr/images/articles/2017/169/serial-label.jpg" alt="serial-label" /></a></p><br />
<p style="text-align: center;"><a href="https://www.jonathandupre.fr/images/articles/2017/169/oldports.jpg" data-lightbox="formatter" class="formatter-lightbox"><img src="https://www.jonathandupre.fr/images/articles/2017/169/oldports.jpg" alt="oldports" /></a></p><br />
Depuis la norme PC'98 les couleurs sont apparues (rose pour le //) :<br />
<p style="text-align: center;"><a href="https://www.jonathandupre.fr/images/articles/2017/169/comm.jpg" data-lightbox="formatter" class="formatter-lightbox"><img src="https://www.jonathandupre.fr/images/articles/2017/169/comm.jpg" alt="comm" /></a></p><br />
<h3 class="formatter-title">Brochage</h3><br />
Tous les fils ne sont pas nécessaires pour une liaison série. 3 fils sont nécessaires à minima. Mais certains équipements comme les modems peuvent nécessiter tous les fils. Plutôt que de réinventer la roue :<br />
<ul class="formatter-ul">
    <li class="formatter-li"><a href="http://www.distrimedia.fr/cablage.html">http://www.distrimedia.fr/cablage.html</a>
    </li><li class="formatter-li"><a href="http://radio.pagesperso-orange.fr/RS232.htm">http://radio.pagesperso-orange.fr/RS232.htm</a><br />
</li></ul><br />
Les 3 fils les plus importants sont :<br />
<ul class="formatter-ul">
    <li class="formatter-li">TX = TxD = transciever = transmission / envoi de données
    </li><li class="formatter-li">RX = RxD = receiver = réception de données
    </li><li class="formatter-li">GND = Masse<br />
</li></ul><br />
<p style="text-align: center;"><a href="https://www.jonathandupre.fr/images/articles/2017/169/uartswizzle.jpg" data-lightbox="formatter" class="formatter-lightbox"><img src="https://www.jonathandupre.fr/images/articles/2017/169/uartswizzle.jpg" alt="uartswizzle" /></a></p><br />
<h3 class="formatter-title">Câbles croisés / droits</h3><br />
La communication par série se fait de manière point à point. Entre deux appareils il faudra alors croiser les broches TX et RX. Dans ce cas on utilisera un câble croisé (crossover ou Null Modem).<br />
<p style="text-align: center;"><a href="https://www.jonathandupre.fr/images/articles/2017/169/null_modem.jpg" data-lightbox="formatter" class="formatter-lightbox"><img src="https://www.jonathandupre.fr/images/articles/2017/169/null_modem.jpg" alt="null_modem" /></a></p><br />
Toutefois sur certains appareils les broches sont déjà croisées dans l'appareil à relier, des appareils qui ne respectent pas la bonne assignation des broches dans la norme, dans ce cas il faudra utiliser un cordon droit (straight).<br />
<p style="text-align: center;"><a href="https://www.jonathandupre.fr/images/articles/2017/169/straight.jpg" data-lightbox="formatter" class="formatter-lightbox"><img src="https://www.jonathandupre.fr/images/articles/2017/169/straight.jpg" alt="straight" /></a></p><br />
C'est la même chose que dans le monde <a href="https://fr.wikipedia.org/wiki/RJ45#C.C3.A2blage">des câbles réseaux de type paires torsadés Ethernet</a>.<br />
<h3 class="formatter-title">Le protocole UART (Universal Asynchronous Receiver Transmitter)</h3><br />
<ul class="formatter-ul">
    <li class="formatter-li"><a href="https://fr.wikipedia.org/wiki/UART">https://fr.wikipedia.org/wiki/UART</a><br />
</li></ul><br />
Le RS-232 ne définit que la connectique et le brochage grosso modo (voir articles Wikipedia), mais il ne définit pas comment l'information circule et doit être codée. C'est justement le rôle du UART de découper le flux en trames et de définir les états.<br />
Comme son nom l'indique, l'UART est asynchrone = pas de signal d'horloge partagé sur la liaison. De ce fait la vitesse de transmission entre les deux appareils doit être accordée manuellement. La vitesse s'explique en baud et va de 110 baud jusqu'à 3 686 400 baud. On croise souvent les valeurs standardisés 9600 ou 57600. Cette vitesse est à ajuster des deux cotés.<br />
La trame d'un <a href="https://fr.wikipedia.org/wiki/Byte">Byte</a> envoyé est constituée ainsi :<br />
<p style="text-align: center;"><a href="https://www.jonathandupre.fr/images/articles/2017/169/uart1.png" data-lightbox="formatter" class="formatter-lightbox"><img src="https://www.jonathandupre.fr/images/articles/2017/169/uart1.png" alt="uart1" /></a></p><br />
<ul class="formatter-ul">
    <li class="formatter-li">1 bit de START (bit de départ)
    </li><li class="formatter-li">n bits de données (5 à 9)
    </li><li class="formatter-li">0 ou 1 bit de parité
    </li><li class="formatter-li">1 ou 2 bit de STOP (bit d'arrêt)<br />
</li></ul><br />
Les n bits de données sont à la discrétion de l'application qui peut codifier/décoder la valeur comme elle le souhaite. Généralement on envoie de l'ASCII sur 8 bits (= 1 octet) mais pas forcément. Le plus important étant de savoir dans quel sens on doit lire les bits pour le convertir en Byte. Comme pour la lecture et l&#8217;écriture littérale il existe deux sens : de droite à gauche et de gauche à droite. C'est pour cela cela qu'il faut connaitre la notion de MSB et LSB.<br />
Si vous n'avez aucune notion de représentation/codage binaire, voici une bonne page pédagogique : <a href="http://philippe.berger2.free.fr/automatique/cours/numeration/numeration.htm">http://philippe.berger2.free.fr/automatique/cours/numeration/numeration.htm</a><br />
<p style="text-align: center;"><a href="https://www.jonathandupre.fr/images/articles/2017/169/oscilloscope_trace.png" data-lightbox="formatter" class="formatter-lightbox"><img src="https://www.jonathandupre.fr/images/articles/2017/169/oscilloscope_trace.png" alt="oscilloscope_trace" /></a></p><br />
La donnée binaire sur ce schéma = 11010010. Il nous est indiqué que le LSB (poids = 1) est à droite et le MSB (valeur = 128) à gauche.<br />
La valeur décimale de cette suite de 8 bits est donc de 1 + 2 + 0 + 8 + 0 + 0 + 64 + 0  = 75 ce qui <a href="https://www.branah.com/ascii-converter">correspond à la lettre K (majuscule)</a> dans la <a href="https://fr.wikipedia.org/wiki/American_Standard_Code_for_Information_Interchange">table ASCII</a>.<br />
<h3 class="formatter-title">Les adaptateurs USB</h3><br />
Ces adaptateurs USB jouent le rôle d'émulateur de port série une fois connectés en USB. Ils sont détectés comme tel avec le nom COMx dans le monde Microsoft DOS & Windows, où x est un identifiant de port. COM1 et COM2 sont généralement ceux intégrés à la carte mère. Au fur et à mesure que des ports sont détecté le numéro est incrémenté.<br />
<p style="text-align: center;"><a href="https://www.jonathandupre.fr/images/articles/2017/169/windm.png" data-lightbox="formatter" class="formatter-lightbox"><img src="https://www.jonathandupre.fr/images/articles/2017/169/windm.png" alt="windm" /></a></p><br />
Vous pouvez régler les paramètres dans les propriétés de chaque périphérique mais généralement cela peut se faire au sein des applications elles-mêmes :<br />
<p style="text-align: center;"><a href="https://www.jonathandupre.fr/images/articles/2017/169/termite_settings.png" data-lightbox="formatter" class="formatter-lightbox"><img src="https://www.jonathandupre.fr/images/articles/2017/169/termite_settings.png" alt="termite_settings" /></a></p><br />
<h3 class="formatter-title">Les contrôleurs</h3><br />
Ces adaptateurs comportent donc tous un circuit intégré permettant de faire la passerelle. Ils réclament souvent des drivers pour pouvoir les faire fonctionner. Si sous Linux ça passe crème directement, coté Windows il y a parfois des loupés.<br />
<h4 class="formatter-title">FTDI - FT232R</h4><br />
<p style="text-align: center;"><img src="https://www.jonathandupre.fr/images/articles/2017/169/ft232rl.jpg" alt="ft232rl" /></p><br />
Ce circuit intégré fait souvent l'objet de contrefaçon. Sur eBay on a trouve à la pelle et ce ne sont souvent des clones. Il fût une période où justement FDTI (Future Technology Devices International) avait fait la chasse aux contrefaçons. Une mise à jour du pilote Windows rendait inutilisable la puce si elle était détectée comme contrefaite. Et ce par le biais <a href="https://www.google.fr/search?q=ftdi+bricking">d'une reprogrammation (volontairement) mal faite (brickage)</a>. Le hic étant que cette puce contrefaite pouvait être implantée également sur des Arduinos et pas seulement sur des simples adaptateurs USB/Série. Beaucoup de gens se sont retrouvés avec une puce HS sur les bras. Cela avait fait un petit scandale à l'époque nommé le <a href="https://www.google.fr/search?q=FTDIgate">FDTIgate</a>. Le EEVBLOG avait évoqué l'affaire dans  <a href="https://www.youtube.com/watch?v=eU66as4Bbds">sa vidéo n°676</a>. Il existe un procédé <a href="http://pila.fr/wordpress/?p=837">pour débricker les puces</a>. Décrit <a href="https://www.youtube.com/watch?v=RZH_qGautqM">ici en vidéo</a>. Depuis la compagnie à fait machine arrière.<br />
<ul class="formatter-ul">
    <li class="formatter-li"><a href="http://www.ftdichip.com/Support/Documents/DataSheets/ICs/DS_FT232R.pdf">Datasheet (site officiel)</a>
    </li><li class="formatter-li"><a href="http://www.ftdichip.com/Drivers/D2XX.htm">Pilotes (site officiel)</a>
    </li><li class="formatter-li"><a href="http://www.ftdichip.com/Support/Utilities.htm">Utilitaires divers & variés (vérifier numéro de série, tests, états et status, etc...)</a><br />
</li></ul><br />
<h4 class="formatter-title">Prolific PL2303</h4><br />
<p style="text-align: center;"><img src="https://www.jonathandupre.fr/images/articles/2017/169/pl2303hx.jpg" alt="pl2303hx" /></p><br />
Ce circuit intégré fait souvent l'objet de contrefaçon également. Si vous téléchargez le pilote original, il est fort probable qu'il ne fonctionne pas. Le périphérique ne démarre pas et une icône bizarre apparait dans le gestionnaire de périphérique avec le fameux "Code 10". Là encore on suppose que depuis une certaine version, <a href="http://www.totalcardiagnostics.com/support/Knowledgebase/Article/View/92/20/prolific-usb-to-serial-fix-official-solution-to-code-10-error">le pilote refuse de fonctionner si le chip n'est pas original</a>. Dans ce cas il vous faudra partir à la pêche au pilote compatible ou retourner sur une vieille version comme la 3.3.2.102. Attention parce que certains de ces pilotes alternatifs peuvent générer des écrans bleus (BSOD). Si les BSOD proviennent de ser2pl64.sys ou ser2pl.sys ne cherchez pas et trouvez-vous un autre pilote qui marche cette fois.<br />
<ul class="formatter-ul">
    <li class="formatter-li"><a href="http://www.prolific.com.tw/US/ShowProduct.aspx?pcid=41&showlevel=0017-0037-0041">Les différents types de PL2303 et leurs pilotes officiels</a>
    </li><li class="formatter-li"><a href="http://www.ifamilysoftware.com/news37.html">Résolution code 10 version 3.3.2.102</a>
    </li><li class="formatter-li"><a href="http://leftbraintinkering.blogspot.fr/2013/05/usb-to-serial-prolific-2303-device.html">Installation manuelle du pilote en version ancienne</a>
    </li><li class="formatter-li"><a href="https://www.jonathandupre.fr/files/usb2serial/pl2303/">Quelques versions de pilotes téléchargés çà et là.</a><br />
</li></ul><br />
<h4 class="formatter-title">WinChipHead CH340/CH341</h4><br />
<p style="text-align: center;"><img src="https://www.jonathandupre.fr/images/articles/2017/169/ch341a.png" alt="ch341a" /></p><br />
Alternative moins chères aux puces FTDI. Ce sont celles avec lesquelles j'ai eu le moins de soucis.<br />
<ul class="formatter-ul">
    <li class="formatter-li"><a href="https://www.jonathandupre.fr/files/usb2serial/ch34x/">Datasheets et pilotes 3.3 et 3.4</a><br />
</li></ul><br />
<h3 class="formatter-title">Quelques logiciels de terminaux pour dialoguer</h3><br />
Pour Windows : <a href="https://www.chiark.greenend.org.uk/~sgtatham/putty/">PuTTY</a>, <a href="https://www.compuphase.com/software_termite.htm">Termite</a>, <a href="https://sourceforge.net/projects/realterm/">RealTerm</a>, <a href="https://sourceforge.net/projects/hypeterminal/">hypeterminal</a><br />
Pour Linux : <a href="https://openmaniak.com/fr/minicom.php">minicom</a><br />
Pour les Arduino, on pourra utiliser l'utilitaire <a href="https://learn.adafruit.com/adafruit-arduino-lesson-5-the-serial-monitor/the-serial-monitor">"Serial Monitor" intégré à l'IDE</a>.<br />
<h3 class="formatter-title">Avec Linux</h3><br />
N'ayant jamais eu besoin de développer quelque chose ayant besoin de liaison série dans un environnement Linux, je ne serais pas d'une grande aide. Mais voici les bases :<br />
<h4 class="formatter-title">Ou trouver les ports série ?</h4><br />
<div class="formatter-container formatter-code code-BASH"><span class="formatter-title">Code BASH :</span><div class="formatter-content"><pre style="display:inline;"><pre class="bash" style="font-family:monospace;"><span style="color: #7a0874; font-weight: bold;">&#91;</span>jonathan<span style="color: #000000; font-weight: bold;">@</span>localhost ~<span style="color: #7a0874; font-weight: bold;">&#93;</span>$ <span style="color: #c20cb9; font-weight: bold;">dmesg</span> <span style="color: #000000; font-weight: bold;">|</span> <span style="color: #c20cb9; font-weight: bold;">egrep</span> <span style="color: #ff0000;">"(ttyS|ttyUSB)"</span>
<span style="color: #7a0874; font-weight: bold;">&#91;</span>    <span style="color: #000000;">0.582796</span><span style="color: #7a0874; font-weight: bold;">&#93;</span> 00:08: ttyS0 at I<span style="color: #000000; font-weight: bold;">/</span>O 0x3f8 <span style="color: #7a0874; font-weight: bold;">&#40;</span>irq = <span style="color: #000000;">4</span><span style="color: #7a0874; font-weight: bold;">&#41;</span> is a 16550A
<span style="color: #7a0874; font-weight: bold;">&#91;</span>    <span style="color: #000000;">0.603653</span><span style="color: #7a0874; font-weight: bold;">&#93;</span> 00:09: ttyS1 at I<span style="color: #000000; font-weight: bold;">/</span>O 0x2f8 <span style="color: #7a0874; font-weight: bold;">&#40;</span>irq = <span style="color: #000000;">3</span><span style="color: #7a0874; font-weight: bold;">&#41;</span> is a 16550A</pre></pre></div></div><br />
Comme vous le savez sous Linux tout est fichier :<br />
<div class="formatter-container formatter-code code-BASH"><span class="formatter-title">Code BASH :</span><div class="formatter-content"><pre style="display:inline;"><pre class="bash" style="font-family:monospace;">&nbsp;
<span style="color: #7a0874; font-weight: bold;">&#91;</span>jonathan<span style="color: #000000; font-weight: bold;">@</span>localhost ~<span style="color: #7a0874; font-weight: bold;">&#93;</span>$ ll <span style="color: #000000; font-weight: bold;">/</span>dev <span style="color: #000000; font-weight: bold;">|</span> <span style="color: #c20cb9; font-weight: bold;">egrep</span> <span style="color: #ff0000;">"(ttyS|ttyUSB)"</span>
crw-rw----. <span style="color: #000000;">1</span> root dialout   <span style="color: #000000;">4</span>,  <span style="color: #000000;">64</span> <span style="color: #000000;">21</span> juil. 07:05 ttyS0
crw-rw----. <span style="color: #000000;">1</span> root dialout   <span style="color: #000000;">4</span>,  <span style="color: #000000;">65</span> <span style="color: #000000;">21</span> juil. 07:05 ttyS1
crw-rw----. <span style="color: #000000;">1</span> root dialout   <span style="color: #000000;">4</span>,  <span style="color: #000000;">66</span> <span style="color: #000000;">21</span> juil. 07:05 ttyS2
crw-rw----. <span style="color: #000000;">1</span> root dialout   <span style="color: #000000;">4</span>,  <span style="color: #000000;">67</span> <span style="color: #000000;">21</span> juil. 07:05 ttyS3</pre></pre></div></div><br />
Utiliser la commande setserial pour afficher l'état et définir les propriétés du(des) port(s).<br />
<div class="formatter-container formatter-code code-BASH"><span class="formatter-title">Code BASH :</span><div class="formatter-content"><pre style="display:inline;"><pre class="bash" style="font-family:monospace;"><span style="color: #7a0874; font-weight: bold;">&#91;</span>root<span style="color: #000000; font-weight: bold;">@</span>localhost ~<span style="color: #7a0874; font-weight: bold;">&#93;</span><span style="color: #666666; font-style: italic;"># setserial -ga /dev/ttyS[0-3]</span>
<span style="color: #000000; font-weight: bold;">/</span>dev<span style="color: #000000; font-weight: bold;">/</span>ttyS0, Line <span style="color: #000000;">0</span>, UART: 16550A, Port: 0x03f8, IRQ: <span style="color: #000000;">4</span>
    Baud_base: <span style="color: #000000;">115200</span>, close_delay: <span style="color: #000000;">50</span>, divisor: <span style="color: #000000;">0</span>
    closing_wait: <span style="color: #000000;">3000</span>
    Flags: spd_normal skip_test
<span style="color: #000000; font-weight: bold;">/</span>dev<span style="color: #000000; font-weight: bold;">/</span>ttyS1, Line <span style="color: #000000;">1</span>, UART: 16550A, Port: 0x02f8, IRQ: <span style="color: #000000;">3</span>
    Baud_base: <span style="color: #000000;">115200</span>, close_delay: <span style="color: #000000;">50</span>, divisor: <span style="color: #000000;">0</span>
    closing_wait: <span style="color: #000000;">3000</span>
    Flags: spd_normal skip_test
<span style="color: #000000; font-weight: bold;">/</span>dev<span style="color: #000000; font-weight: bold;">/</span>ttyS2, Line <span style="color: #000000;">2</span>, UART: unknown, Port: 0x03e8, IRQ: <span style="color: #000000;">4</span>
    Baud_base: <span style="color: #000000;">115200</span>, close_delay: <span style="color: #000000;">50</span>, divisor: <span style="color: #000000;">0</span>
    closing_wait: <span style="color: #000000;">3000</span>
    Flags: spd_normal skip_test
<span style="color: #000000; font-weight: bold;">/</span>dev<span style="color: #000000; font-weight: bold;">/</span>ttyS3, Line <span style="color: #000000;">3</span>, UART: unknown, Port: 0x02e8, IRQ: <span style="color: #000000;">3</span>
    Baud_base: <span style="color: #000000;">115200</span>, close_delay: <span style="color: #000000;">50</span>, divisor: <span style="color: #000000;">0</span>
    closing_wait: <span style="color: #000000;">3000</span>
    Flags: spd_normal
&nbsp;</pre></pre></div></div><br />
<h4 class="formatter-title">Minitel <> Linux</h4><br />
<p style="text-align: center;"><img src="https://www.jonathandupre.fr/images/articles/2017/169/minitel.jpg" alt="minitel" /></p><br />
Sachez qu'il est possible aussi d&#8217;accéder à une machine Linux via port série, tel un serveur accessible via un vieux terminal passif. Soit en configurant Grub, soit laisser le système d'init/systemd démarrer la console d'écoute sur un ttyS. D'où le fait que certains pilotent leur serveur Linux via un Minitel.<br />
<ul class="formatter-ul">
    <li class="formatter-li"><a href="https://x0r.fr/blog/5">https://x0r.fr/blog/5</a>
    </li><li class="formatter-li"><a href="http://furrtek.free.fr/?a=telinux">http://furrtek.free.fr/?a=telinux</a>
    </li><li class="formatter-li"><a href="http://pila.fr/wordpress/?p=361">http://pila.fr/wordpress/?p=361</a>
    </li><li class="formatter-li"><a href="http://lea-linux.org/documentations/Pratique-minitel">http://lea-linux.org/documentations/Pratique-minitel</a><br />
</li></ul><br />
Attention le minitel est en TTL et non en CMOS, si vous utilisez l'antique port série directement, il faudra passer par un montage adaptateur à base de transistors ou de MAX3232 entre le Minitel et le port série de la carte mère. Par contre les adaptateurs USB font généralement directement la conversion vers TTL.<br />
<h4 class="formatter-title">Plus d'infos</h4><br />
<ul class="formatter-ul">
    <li class="formatter-li"><a href="http://pficheux.free.fr/articles/lmf/serial/">http://pficheux.free.fr/articles/lmf/serial/</a>
    </li><li class="formatter-li"><a href="https://wiki.archlinux.org/index.php/working_with_the_serial_console">https://wiki.archlinux.org/index.php/working_with_the_serial_console</a><br />
</li></ul><br />
<h3 class="formatter-title">Programmation</h3><br />
Dans n'importe quel langage (Perl, Python, Java, VB, C#, etc...), généralement on suit le paradigme suivant :<br />
<ul class="formatter-ul">
    <li class="formatter-li">Instanciation d'un objet dans la bibliothèque (ou une API) qui permet de manipuler le port que l'on souhaite.
    </li><li class="formatter-li">Définir les paramètres du port (réglages UART).
    </li><li class="formatter-li">Définir des buffers d'E/S.
    </li><li class="formatter-li">Utilisation de la fonction <strong>Open</strong>, pour ouvrir et avoir un accès (exclusif) au port que l'on souhaite.
    </li><li class="formatter-li">Utilisation des fonctions du type <strong>Read/Write</strong> pour recevoir/envoyer des données sur le port.
    </li><li class="formatter-li">Utilisation de la fonction <strong>Close</strong>, pour fermer le port (et ainsi le laisser libre pour d'autres applications).<br />
</li></ul><br />
<table class="formatter-table" style="margin:auto">
    <tr class="formatter-table-row">
        <td class="formatter-table-col" style="text-align:center"><img src="https://www.jonathandupre.fr/images/icon/python64.png" alt="python64" /></td>
        <td class="formatter-table-col"><a href="https://stackoverflow.com/questions/676172/full-examples-of-using-pyserial-package">Full examples of using pySerial package</a></td>
    </tr>
    <tr class="formatter-table-row">
        <td class="formatter-table-col" style="text-align:center"><img src="https://www.jonathandupre.fr/images/icon/perl64.png" alt="perl64" /></td>
        <td class="formatter-table-col"><a href="http://www.devdungeon.com/content/serial-communication-perl">Serial Communication in Perl</a></td>
    </tr>
    <tr class="formatter-table-row">
        <td class="formatter-table-col" style="text-align:center"><img src="https://www.jonathandupre.fr/images/icon/csharp64.png" alt="csharp64" /></td>
        <td class="formatter-table-col"><a href="http://codesamplez.com/programming/serial-port-communication-c-sharp">How To Work With C# Serial Port Communication</a></td>
    </tr>
    <tr class="formatter-table-row">
        <td class="formatter-table-col" style="text-align:center"><img src="https://www.jonathandupre.fr/images/icon/vb64.png" alt="vb64" /></td>
        <td class="formatter-table-col"><a href="http://www.dreamincode.net/forums/topic/37361-serial-port-communication-in-vbnet/">Serial Port Communication in VB.Net </a></td>
    </tr>
    <tr class="formatter-table-row">
        <td class="formatter-table-col" style="text-align:center"><img src="https://www.jonathandupre.fr/images/icon/vb664.png" alt="vb664" /></td>
        <td class="formatter-table-col"><a href="http://grafikm.developpez.com/portcomm/">Programmer le port série en VB avec le contrôle MSComm</a></td>
    </tr>
    <tr class="formatter-table-row">
        <td class="formatter-table-col" style="text-align:center"><img src="https://www.jonathandupre.fr/images/icon/java64.png" alt="java64" /></td>
        <td class="formatter-table-col"><a href="https://blog.henrypoon.com/blog/2011/01/01/serial-communication-in-java-with-example-program/">Serial Communication in Java with Example Program</a></td>
    </tr>
    <tr class="formatter-table-row">
        <td class="formatter-table-col" style="text-align:center"><img src="https://www.jonathandupre.fr/images/icon/lazarus64.png" alt="lazarus64" /></td>
        <td class="formatter-table-col"><a href="http://wiki.freepascal.org/Hardware_Access#Serial_Communication">Bibliothèques et composants : serial / TcomPort / TLazSerial</a></td>
    </tr>
</table>]]></description>
			<pubDate>Mon, 07 Aug 2017 15:58:00 +0200</pubDate>
			
		</item>
		
		<item>
			<title><![CDATA[Les CD/DVD-2-Boot (dépannage)]]></title>
			<link>https://www.jonathandupre.fr/articles/50-fiches-recapitulatives/163-les-cd-dvd-2-boot-depannage/</link>
			<guid>https://www.jonathandupre.fr/articles/50-fiches-recapitulatives/163-les-cd-dvd-2-boot-depannage/</guid>
			<description><![CDATA[<ul class="formatter-ul">
    <li class="formatter-li">Voici une petite page qui recense tous les CD/DVD de boot et autres utilitaires de diagnostic que j'ai déjà vu. Il doit en manquer (je ne connais pas tout) mais déjà avec ça vous aurez de quoi faire ! Et ce aussi bien pour votre PC récent que pour un PC ordinosaure de type 486 qui traîne dans un coin.
    </li><li class="formatter-li">Depuis quelques années certains 2017/163 bien connus ne sont plus supportés et deviennent obsolètes pour les nouvelles machines. De nouveaux kits de réparation "nouvelle génération" font régulièrement leur apparition, ces derniers sont des Windows Live 64 bits qui réclament un lecteur DVD ou un boot depuis l'USB, les vieux PC 32 bits en simple lecteur CD sont donc petit à petit abandonnés.
    </li><li class="formatter-li">Le revers de la médaille : des nouvelles versions de ces DVD2Boot doivent sortir régulièrement pour suivre les montées en version de Windows. Il faut donc se mettre à jour et mettre à jour ces trousses à outils plus souvent qu'auparavant.
    </li><li class="formatter-li">Évidemment il existe plein de distributions Linux dites "Live" comme <a href="https://fr.wikipedia.org/wiki/Kali_Linux">Kali</a> ou <a href="https://fr.wikipedia.org/wiki/Knoppix">Knoppix</a> mais elles ne sont pas axées "dépannage", d'où le fait qu'elles n'apparaissent pas ici.
    </li><li class="formatter-li">Plus d'infos globalement sur <a href="https://forum.malekal.com/viewtopic.php?t=35499">https://forum.malekal.com/viewtopic.php?t=35499</a> et <a href="https://en.wikipedia.org/wiki/List_of_live_CDs#Rescue_and_repair_live_CDs">https://en.wikipedia.org/wiki/List_of_live_CDs#Rescue_and_repair_live_CDs</a><br />
</li></ul><br />
<br />
Que faire avec les fichiers .img ou .iso téléchargés ?<br />
<br />
<h4 class="formatter-title">Les utilitaires Windows pour créer une clé USB à partir d'une image ISO</h4><br />
<br />
Si le PC à dépanner accepte de booter par l'USB ne vous en privez pas, préférez cette solution que de graver un CD/DVD. Les temps d'accès seront largement plus courts et vous aurez droit au silence (les lecteurs CD sont bruyants à haute vitesse). Voici quelques utilitaires qui vous permettrons de rendre votre clé USB bootable avec l'image ISO décompressée dessus. Les tutoriels pour la marche à suivre ne manquent pas sur le web.<br />
<br />
<ul class="formatter-ul">
    <li class="formatter-li"><a href="https://rufus.akeo.ie/?locale=fr_FR">Rufus</a>
    </li><li class="formatter-li"><a href="https://www.balena.io/etcher/">balenaEtcher</a>
    </li><li class="formatter-li"><a href="http://www.isotousb.com/">ISO to USB</a>
    </li><li class="formatter-li"><a href="http://www.osforensics.com/tools/write-usb-images.html">ImageUSB</a>
    </li><li class="formatter-li"><a href="https://sourceforge.net/projects/win32diskimager/">Win32 Disk Imager</a>
</li><li class="formatter-li"><a href="https://www.raspberrypi.org/downloads/">Raspberry Pi Imager</a><br />
</li></ul><br />
<br />
<h3 class="formatter-title">Pour créer une clé USB bootable tout-en-un (multi-boot)</h3><br />
<br />
<h4 class="formatter-title">Ventoy</h4><br />
<br />
<ul class="formatter-ul">
    <li class="formatter-li"><a href="https://lecrabeinfo.net/creer-une-cle-usb-multi-boot-avec-ventoy.html">https://lecrabeinfo.net/creer-une-cle-usb-multi-boot-avec-ventoy.html</a>
    </li><li class="formatter-li"><a href="https://www.malekal.com/creer-une-cle-usb-multi-boot-avec-ventoy/">https://www.malekal.com/creer-une-cle-usb-multi-boot-avec-ventoy/</a><br />
</li></ul><br />
<br />
<h4 class="formatter-title">YUMI</h4><br />
<br />
Vous pouvez utiliser <a href="https://www.pendrivelinux.com/yumi-multiboot-usb-creator/">YUMI (Your Universal Multiboot Installer)</a> pour créer une clé USB bootable qui regroupe plusieurs fichiers ISO à la fois en son sein. Un menu permet de faire la sélection du fichier ISO à lancer.<br />
<br />
<p style="text-align: center;"><!-- START HTML -->
<iframe style="max-width:100%" width="720" height="405" src="https://www.youtube-nocookie.com/embed/5C_pPNHcteY" frameborder="0" gesture="media" allow="encrypted-media" allowfullscreen></iframe>
<!-- END HTML --></p><br />
<br />
<h4 class="formatter-title">Les utilitaires Windows pour graver une image ISO sur CD/DVD</h4><br />
<br />
Si le PC a dépanner ne peut booter depuis l'USB, Vous pouvez graver l'image ISO sur CD ou DVD en utilisant <a href="http://www.windows8facile.fr/windows-7-graver-un-fichier-iso/">l'outil intégré à Windows</a> (<a href="http://www.commentcamarche.net/faq/19531-windows-7-graver-une-image-iso">depuis Windows 7</a>) mais à titre personnel je n'aime pas ce truc. Je préfère passer par un logiciel de gravure plus complet avec plus d'options réglables. En voici des gratuits, certains en anglais.<br />
<br />
<ul class="formatter-ul">
    <li class="formatter-li"><a href="https://cdburnerxp.se/fr/home">CDBurnerXP</a>
    </li><li class="formatter-li"><a href="http://www.imgburn.com/">ImgBurn</a>
    </li><li class="formatter-li"><a href="http://www.burnaware.com/download.html">BurnAware Free</a>
    </li><li class="formatter-li"><a href="http://www.freeisoburner.com/">Free ISO Burner</a><br />
</li></ul><br />
<br />
<h4 class="formatter-title">Les utilitaires Windows pour enregistrer une disquette</h4><br />
<br />
Logiciels pour créer une disquette bootable pour un vieux PC.<br />
<br />
<ul class="formatter-ul">
    <li class="formatter-li"><a href="http://www.chrysocome.net/rawwrite">Rawwrite</a> (Gratuit) - A lancer en mode Administrateur pour certains systèmes.
    </li><li class="formatter-li"><a href="http://www.winimage.com/download.htm">WinImage</a> (Commercial - gratuit 30 jours)<br />
</li></ul><br />
<br />
<h3 class="formatter-title">Les DVD de boot (suites > 700Mo)</h3><br />
<br />
<h4 class="formatter-title">Hiren&#8217;s BootCD PE x64 (v1.0.1) - 2018</h4><br />
<br />
<img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2017/163/hirenspcx64.jpg" alt="" class="b-lazy" /><br />
<br />
Après MediCat et Dépann'Ium encore un énième DVD de boot basé sur Windows 10. Voici la Hiren's Boot CD (basée sur XP) remise au goût du jour et maintenue par les fans. Processeur 64 bits requis (+ xDBit aussi au passage) et minimum 2Go de RAM. Un petit utilitaire est fourni <a href="https://www.hirensbootcd.org/usb-booting/">pour mettre l'ISO de 1.3Go sur clé USB</a>. Même si on peut utiliser autre chose.<br />
Site Web : <a href="https://www.hirensbootcd.org/">https://www.hirensbootcd.org/</a><br />
<br />
<h4 class="formatter-title">MediCat</h4><br />
<br />
<img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2017/163/medicat.jpg" alt="" class="b-lazy" /><br />
<br />
Windows 10 Live 64 bits (2Go de RAM mini) avec une panoplie d'utilitaires + Live Linux Lubuntu. 4 versions différentes sont proposées.<br />
Site Web : <a href="https://gbatemp.net/threads/medicat-dvd-a-multiboot-linux-dvd.361577/">gbatemp.net/threads/medicat-dvd-a-multiboot-linux-dvd.361577/</a><br />
Vidéo de démonstration : <a href="https://www.youtube.com/watch?v=haDElZ9NjnU">www.youtube.com/watch?v=haDElZ9NjnU</a><br />
<br />
<h4 class="formatter-title">Dépann&#8217;Ium (2016)</h4><br />
<br />
<img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2017/163/dium.jpg" alt="" class="b-lazy" /><br />
<br />
Windows 10 Live 64 bits avec une panoplie d'utilitaires + <a href="https://www.malekal.com/microsoft-diagnostics-and-recovery-toolset-dart/">MS-DART</a>. Convivial !<br />
Site web : <a href="http://www.iumkit.net/portail/depannium-live-cd/">www.iumkit.net/portail/depannium-live-cd/</a><br />
<br />
<h3 class="formatter-title">Les CD de boot (suites < 700Mo)</h3><br />
<br />
<h4 class="formatter-title">Ultimate Boot CD</h4><br />
<br />
<img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2017/163/ubcd.gif" alt="" class="b-lazy" /><br />
<br />
Comprend un Live Linux PartedMagic, FreeDOS et pleins d'utilitaires DOS de bas niveau.<br />
Site web : <a href="http://www.ultimatebootcd.com/">www.ultimatebootcd.com/</a><br />
Vidéo de démonstration : <a href="https://www.youtube.com/watch?v=h2sRlzSZbc0">www.youtube.com/watch?v=h2sRlzSZbc0</a><br />
Anciennes versions d'UBCD (pour vieux PC) : <a href="https://www.jonathandupre.fr/files/ubcd/ubcd24.iso">2.4</a>, <a href="https://www.jonathandupre.fr/files/ubcd/ubcd34-full.iso">3.4</a>, <a href="https://www.jonathandupre.fr/files/ubcd/ubcd410.iso">4.10</a>.<br />
<br />
<h4 class="formatter-title">Falcon 4 UBCD (2013)</h4><br />
<br />
<img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2017/163/f4ubcd.gif" alt="" class="b-lazy" /><br />
<br />
Live CD à base de Windows XP 32 bits + Utilitaires DOS.<br />
Site web : <a href="https://falconfour.wordpress.com/2013/03/31/falconfours-ultimate-boot-cd-usb-v4-6-f4ubcd/">falconfour.wordpress.com/2013/03/31/falconfours-ultimate-boot-cd-usb-v4-6-f4ubcd/</a><br />
Vidéo de démonstration : <a href="https://www.youtube.com/watch?v=o74tCtA5-Xc">www.youtube.com/watch?v=o74tCtA5-Xc</a><br />
Copie locale v4.61 : <a href="https://www.jonathandupre.fr/files/cd2boot/F4UBCDv4.61.iso">F4UBCDv4.61.iso</a>.<br />
<br />
<h4 class="formatter-title">Hiren's Boot CD (2012)</h4><br />
<br />
<img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2017/163/hirens.jpg" alt="" class="b-lazy" /><br />
<br />
Live CD à base de Windows XP 32 bits + Utilitaires DOS.<br />
Site web : <a href="http://www.hirensbootcd.org/download/">www.hirensbootcd.org/download/</a><br />
Vidéo de démonstration : <a href="https://www.youtube.com/watch?v=Rk1GmA6fCiY">www.youtube.com/watch?v=Rk1GmA6fCiY</a><br />
Copie locale 15.2 (2012) : <a href="https://www.jonathandupre.fr/files/cd2boot/HirensBootCD.iso">HirensBootCD.iso</a>.<br />
<br />
<h4 class="formatter-title">SystemRescueCD</h4><br />
<br />
<img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2017/163/syscd.jpg" alt="" class="b-lazy" /><br />
<br />
Live Linux + Utilitaires DOS.<br />
Site web : <a href="http://www.system-rescue-cd.org/">www.system-rescue-cd.org/</a><br />
Vidéo de démonstration : <a href="https://www.youtube.com/watch?v=23cYtGUPwLs">www.youtube.com/watch?v=23cYtGUPwLs</a><br />
<br />
<h4 class="formatter-title">Trinity Rescue Kit (2013)</h4><br />
<br />
<img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2017/163/tk34.png" alt="" class="b-lazy" /><br />
<br />
Live Linux<br />
Site web : <a href="http://trinityhome.org/Home/index.php?content=TRINITY_RESCUE_KIT____CPR_FOR_YOUR_COMPUTER&front_id=12&lang=en&locale=en">trinityhome.org/Home/index.php?content=TRINITY_RESCUE_KIT____CPR_FOR_YOUR_COMPUTER&front_id=12&lang=en&locale=en</a><br />
Vidéo de démonstration : <a href="https://www.youtube.com/watch?v=2YzGH72-3iI">www.youtube.com/watch?v=2YzGH72-3iI</a><br />
<br />
<h4 class="formatter-title">EFFITEK PING - PING Is Not Ghost</h4><br />
<br />
<img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2017/163/ping.jpg" alt="" class="b-lazy" /><br />
<img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2017/163/ping2.jpg" alt="" class="b-lazy" /><br />
<br />
Clone libre de feu Norton Ghost (d'où le nom j'imagine). Distribution Live Linux axée sauvegarde-restauration (création d'images HDD, clonage idem CloneZilla). CPU avec PAE obligatoire.<br />
Site web : <a href="https://ping.windowsdream.com">ping.windowsdream.com</a><br />
<br />
<h4 class="formatter-title">PC-Optimize (2011)</h4><br />
<br />
<img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2017/163/pco.jpg" alt="" class="b-lazy" /><br />
<br />
Live CD à base de Windows XP 32 bits (obsolète) de 2011. Ne semble pas bien aimer les contrôleurs SATA.<br />
Site web : <a href="http://www.pc-optimise.com/utilitaires/depannage.php?page=3">www.pc-optimise.com/utilitaires/depannage.php?page=3</a><br />
Vidéo de démonstration : <a href="https://www.youtube.com/watch?v=FGvM-gREis4">www.youtube.com/watch?v=FGvM-gREis4</a><br />
Copie locale : <a href="https://www.jonathandupre.fr/files/cd2boot/pc-optimise.zip">pc-optimise.zip</a><br />
<br />
<h3 class="formatter-title">Pour les ordinosaures 486 et 586 (sasfépu)</h3><br />
<br />
<h4 class="formatter-title">Où trouver MS-DOS ou FreeDOS ?</h4><br />
<br />
<ul class="formatter-ul">
    <li class="formatter-li"><a href="https://winworldpc.com/product/ms-dos/">Disquettes/CD MS-DOS 1.0 à 7.10</a>
    </li><li class="formatter-li"><a href="http://www.freedos.org/download/">FreeDOS</a><br />
</li></ul><br />
<br />
<h4 class="formatter-title">Pour booter sur CD/DVD</h4><br />
<br />
A cette époque certains BIOS n'acceptaient pas de booter directement depuis le lecteur CD/DVD. Il faut utiliser un utilitaire sur disquette pour pouvoir le faire. Créez la disquette, démarrez sur la disquette et ensuite demandez le boot sur le lecteur CD.<br />
<br />
<ul class="formatter-ul">
    <li class="formatter-li"><a href="https://sourceforge.net/projects/btmgr/">SmartBootManager</a>
    </li><li class="formatter-li"><a href="https://www.plop.at/en/bootmanager/download.html">PLOP Boot Manager</a> *<br />
</li></ul><br />
<br />
* PLOP Boot Manager permet aussi de booter depuis l'USB pour les PC équipés de ports USB mais dont le BIOS ne supporte pas cette fonctionnalité.<br />
<br />
<h4 class="formatter-title">Les disquettes de boot Microsoft</h4><br />
<br />
Envie de refaire et d'utiliser des disquettes de démarrage MS-DOS, Windows 95 ou 98 ?<br />
<br />
<ul class="formatter-ul">
    <li class="formatter-li"><a href="http://www.bootdisk.com/bootdisk.htm">http://www.bootdisk.com/bootdisk.htm</a>
    </li><li class="formatter-li"><a href="http://www.allbootdisks.com/">http://www.allbootdisks.com/</a>
    </li><li class="formatter-li"><a href="http://manmrk.net/tutorials/bootdisk/index.htm">http://manmrk.net/tutorials/bootdisk/index.htm</a>
    </li><li class="formatter-li"><a href="http://cube10.free.fr/tuto/boot.htm">http://cube10.free.fr/tuto/boot.htm</a><br />
</li></ul><br />
<br />
<h4 class="formatter-title">Les utilitaires</h4><br />
<br />
<h5 class="formatter-title">Memtest86+</h5><br />
<br />
<img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2017/163/memtest86.jpg" alt="" class="b-lazy" /><br />
<br />
Il est la plupart du temps inclus dans tous les CD de boot cités ci-dessus. Mais il existe aussi <a href="http://www.memtest.org/#downiso">en version image floppy bootable</a>. C'est à dire sans devoir passer par un CD, pratique pour les BIOS sans boot sur CD. Seules certaines anciennes versions inférieures à la 4.0 fonctionnent selon les chipsets anciens (Symphony, UMC, ALI, etc...).<br />
<br />
<h5 class="formatter-title">Eurosoft PC-Check</h5><br />
<br />
<img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2017/163/pccheck.jpg" alt="" class="b-lazy" /><br />
<br />
Convient aussi pour tout PC du 386 au P4. Utilitaire de diagnostic DOS sur disquette bootable. Un indispensable. Permet notamment de tester le mode Turbo (bouton activé-désactivé) ainsi que la bonne santé d'un lecteur de disquette.<br />
Copie locale : <a href="https://www.jonathandupre.fr/files/diag/eurosoft_pccheck_550.7z">version 5.50 (de 2003)</a><br />
<br />
<h5 class="formatter-title">D'autres sites plein d'utilitaires à télécharger</h5><br />
<br />
<ul class="formatter-ul">
    <li class="formatter-li"><a href="http://motherboards.mbarron.net/download/">http://motherboards.mbarron.net/download/</a>
    </li><li class="formatter-li"><a href="http://old-dos.ru/index.php?page=files&mode=files&do=list&cat=100">http://old-dos.ru//index.php?page=files&mode=files&do=list&cat=100</a>
    </li><li class="formatter-li"><a href="http://www.dcee.net/Files/Utils/">http://www.dcee.net/Files/Utils/</a>
    </li><li class="formatter-li"><a href="http://www.bootdisk.com/dostools.htm">http://www.bootdisk.com/dostools.htm</a><br />
</li></ul>]]></description>
			<pubDate>Sat, 10 Jun 2017 16:08:00 +0200</pubDate>
			
		</item>
		
		<item>
			<title><![CDATA[L'hygiène informatique]]></title>
			<link>https://www.jonathandupre.fr/articles/50-fiches-recapitulatives/152-l-hygiene-informatique/</link>
			<guid>https://www.jonathandupre.fr/articles/50-fiches-recapitulatives/152-l-hygiene-informatique/</guid>
			<description><![CDATA[<h3 class="formatter-title">Définition</h3><br />
<br />
La notion d'hygiène informatique désigne l'ensemble des bonnes pratiques que chaque personne ayant besoin d'utiliser de l'informatique devrait respecter. Ceci afin de garder un système d'information (SI) en bonne santé. En réalité cela recouvre surtout des recommandations liées à la sécurité informatique (cybersécurité), histoire de "ne pas se faire pirater" si je dois résumer pour les novices. Ces bonnes pratiques se doivent d'êtres suivies et appliquées par l'ensemble des acteurs informatiques. En fait la sécurité se joue à tous les niveaux, cela part de l'administrateur système qui doit sécuriser ses serveurs, à l'administrateur de base de données, aux développeurs, pour finir par l'utilisateur final. Les conseils vont donc concerner aussi bien des directeurs et administrateurs informatiques des grandes entreprises et administrations que les particuliers chez eux dans leur <em>Home Sweet Home</em>. C'est valable pour tout ce qui est "IT" donc non seulement les ordinateurs de type PC/Mac mais cela vaut aussi pour les smartphones et autres tablettes. Bien sûr, la sécurité informatique est un domaine tellement énorme et varié qu'il serait impossible de tout caser dans une seule page. Je vais juste tâcher ici de partager quelques liens et rassembler quelques pensées personnelles concernant les particuliers<br />
<br />
<img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2017/152/clubic.jpg" alt="" class="b-lazy" /><br />
<br />
<h3 class="formatter-title">Ressources</h3><br />
<br />
Pour les particuliers :<br />
<br />
<ul class="formatter-ul">
    <li class="formatter-li"><a href="https://korben.info/n-guide-hygiene-informatique-particulier.html"><strong>Korben - Le guide d&#8217;hygiène informatique des particuliers</strong></a>
    </li><li class="formatter-li"><a href="https://www.nextinpact.com/news/100871-choisir-bon-mot-passe-regles-a-connaitre-pieges-a-eviter.htm"><strong>Choisir un bon mot de passe : les règles à connaître, les pièges à éviter</strong></a>
    </li><li class="formatter-li"><a href="https://www.nextinpact.com/news/99777-chiffrement-notre-antiseche-pour-expliquer-a-vos-parents.htm"><strong>Chiffrement : notre antisèche pour l'expliquer à vos parents</strong></a><br />
</li></ul><br />
<br />
Pour les professionnels :<br />
<br />
<ul class="formatter-ul">
    <li class="formatter-li"><a href="http://www.dell.com/learn/fr/fr/frbsdt1/campaigns/revueit-securite-12-regles-essentielles-pme"><strong>Les 12 règles essentielles de sécurité pour les PME</strong></a>
    </li><li class="formatter-li"><a href="https://www.ssi.gouv.fr/administration/bonnes-pratiques/"><strong>ANSSI : Bonnes pratiques & recommandations</strong></a>
    </li><li class="formatter-li"><a href="https://www.ssi.gouv.fr/uploads/2017/01/guide_hygiene_informatique_anssi.pdf"><strong>ANSSI : Le guide d&#8217;hygiène informatique (Version 2017)</strong></a>
    </li><li class="formatter-li"><a href="https://www.ssi.gouv.fr/guide/recommandations-pour-la-securisation-des-sites-web/"><strong>ANSSI : Recommandations pour les sécurisation des sites web</strong></a>
    </li><li class="formatter-li"><a href="http://www.cert.ssi.gouv.fr/"><strong>CERT-FR - Alertes failles de sécurité</strong></a><br />
</li></ul><br />
<br />
<h3 class="formatter-title">La partie made in John-John</h3><br />
<br />
La sécurité informatique c'est casse-pied je sais, surtout pour un particulier, il faut suivre des procédures, toujours rentrer des mots de passe partout pour se faire identifier, etc... c'est un compromis à faire avec la simplicité et la praticité. Pourtant des milliers de personnes se font avoir (pirater) car elles n'ont pas pris certaines précautions. C'est un des drames lié à la démocratisation de l'Internet dans les foyers français, on se jette sur l'ordinateur car le vendeur de Darty a dit que c'était super simple et en plus Windows fait tout pour moi tout seul. Et après on se retrouve avec des usurpations d'identités et autres chantages, etc...<br />
<br />
<h4 class="formatter-title">Les mots de passe & l'usage d'un gestionnaire de mot de passe</h4><br />
<br />
<ul class="formatter-ul">
    <li class="formatter-li">Règle n°1 - <strong>Ne laissez pas les mots de passe pas défaut</strong>, comme <em>admin</em>, <em>azerty</em> ou <em>1234</em>, changez-les lorsque vous mettez en service une caméra IP ou un routeur Wi-fi par exemple. D'ailleurs concernant le Wi-Fi, au passage si votre box est équipée du <a href="https://fr.wikipedia.org/wiki/Wi-Fi_Protected_Setup">WPS</a> désactivez-le (beaucoup de failles).
    </li><li class="formatter-li">Règle n°2 - <strong>N'utilisez pas le même mot de passe partout</strong>. Un site où l'on s'inscrit = un mot de passe différent. Ainsi si <a href="https://haveibeenpwned.com/">un site se fait pirater</a> et si votre mot de passe <a href="https://fr.wikipedia.org/wiki/Attaque_par_dictionnaire">est trouvé</a>, les pirates ne pourront pas se servir de votre couple courriel ou identifiant/motdepasse sur d'autres sites. Les dégâts sont ainsi limités à un seul site/une seule application.
    </li><li class="formatter-li">Conseil - <strong>Utilisez un logiciel gestionnaire de mots de passe</strong> pour tous les stocker dans un fichier unique qui sera chiffré. Vous n'aurez plus à saisir vos mots de passe mais juste à faire des copier-coller quand vous en aurez besoin. Ceci limitera l'attaque via des <a href="https://fr.wikipedia.org/wiki/Enregistreur_de_frappe">keylogger</a> (bien que ces derniers peuvent aussi scruter le presse-papier). Pour cela je vous conseille de jeter un coup d&#8217;&#339;il à <a href="http://keepass.info/download.html">KeePass</a>, il existe d'autres logiciels, d'autres solutions aussi via le cloud, mais pour les débutants ce sera très bien, voici comment s'en servir :<br />
<br />
<img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2017/152/keepass1.png" alt="" class="b-lazy" /><br />
<br />
<ul class="formatter-ul">
    <li class="formatter-li"><a href="https://craym.eu/tutoriels/utilitaires/keepass.html">Tutoriel avec images </a>
    </li><li class="formatter-li">Vidéo Youtube : <a href="https://www.youtube.com/watch?v=XTnDKJl1zOQ">[TUTORIEL] Utiliser Keepass pour gérer ses mots de passe</a>
    </li><li class="formatter-li">Vidéo Youtube : <a href="https://www.youtube.com/watch?v=yjye487-H1E">GERER SIMPLEMENT ses MOTS DE PASSES avec KEEPASS</a><br />
</li></ul>
    </li><li class="formatter-li">Règle n°3 - <strong>Ne pas choisir un mot de passe en rapport avec votre personnalité</strong>, comme votre date de naissance, le prénom de vos enfants, le modèle de votre voiture, etc. Il pourrait être facilement trouvé par votre entourage proche (voisins, amis, collègues de travail) ou avec ce que vous dites/montez sur le web via un blog par exemple (<a href="https://frama.link/YmJq1Azt">ingénierie sociale</a>)
    </li><li class="formatter-li">Règle n°4 - Utilisez un <a href="https://www.generateurdemotdepasse.com/"><strong>générateur de mot de passe</strong></a> pour générer des mots de passe aléatoires très compliqués. C'est à dire avec des majuscules, minuscules et des caractères bizarres. Comme par exemple : "7rK<g{42262L8*f6){RBHn8rway%/H6CFL):;zMj".<br />
<br />
<img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2017/152/keepass2.png" alt="" class="b-lazy" /><br />
<br />
Comme ça vous êtes blindés, utilisés avec un gestionnaire comme KeePass vous n'aurez pas à les retenir. Il se peut que certains sites indiquent refusent ce genre de mots de passe compliqués car trop long ou contient des caractères non valides. Dans ce cas revoyez la force de votre mot de passe à la baisse pour satisfaire aux conditions du site.
    </li><li class="formatter-li">Règle n°5 - <strong>Modifiez-les régulièrement</strong>. Le fait de les avoir mis dans un fichier unique vous permettra de faire le tour de tous vos mots de passe sans en oublier pour les renouveler.<br />
</li></ul><br />
<br />
Par rapport à l'utilisation de KeePass :<br />
<br />
<ul class="formatter-ul">
    <li class="formatter-li">Utilisez un mot de passe le plus long possible mais <strong>que vous pouvez retenir</strong> pour verrouiller votre fichier des mots de passe. Le fichier des mots de passé étant chiffré, il ne peut être lu et décodé sans son mot de passe (= sa clé de déchiffrement).
    </li><li class="formatter-li">Une fois votre trousseau de mots de passe constitué, faites une copie de votre fichier .kbdx en lieu sûr chez vous, l'autre fichier pourra ainsi être emporté sereinement sur une clé USB pour transporter vos identifiants.
    </li><li class="formatter-li">En cas de problème, si vous perdez votre clé USB ou si on vous la vole, le fichier étant chiffré, les informations ne seront pas disponibles pour celui vous voudra la lire. Par précaution : utiliser le fichier que vous avez conservé chez vous et changez tous les mots de passe sur les sites. Au pire si le voleur arrive à casser la protection du fichier, ce qu'il va y trouver ne sera plus valable puisque entre temps vous aurez changé tous les mots de passe sur les sites de votre coté.<br />
</li></ul><br />
<br />
<h4 class="formatter-title">De plus...</h4><br />
<br />
<ul class="formatter-ul">
    <li class="formatter-li">Ne pas oublier de verrouiller sa session (Windows/Linux/MacOS) dès que l'on quitte son poste.
    </li><li class="formatter-li">Utiliser la <a href="https://fr.wikipedia.org/wiki/Double_authentification">double authentification <em>(Two-factor authentication)</em></a> sur les sites où cela est possible, surtout sur les comptes courriels qui centralisent tous vos abonnements/inscriptions.
    </li><li class="formatter-li">Utiliser les outils de reconnaissances biométriques, capteur d'empreintes, etc...<br />
</li></ul><br />
<br />
<h4 class="formatter-title">Chiffrez (disque dur interne/externe et/ou clé USB)</h4><br />
<br />
Un logiciel comme <a href="https://veracrypt.codeplex.com/">VeraCrypt</a> vous aidera.<br />
<br />
<img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2017/152/vera.png" alt="" class="b-lazy" /><br />
<br />
<ul class="formatter-ul">
    <li class="formatter-li"><a href="https://www.malekal.com/chiffrer-son-disque-systeme-avec-veracrypt/">https://www.malekal.com/chiffrer-son-disque-systeme-avec-veracrypt/</a>
    </li><li class="formatter-li"><a href="https://www.nextinpact.com/news/91703-veracrypt-comment-chiffrer-et-cacher-fichiers-disque-dur-externe-ou-clef-usb.htm">https://www.nextinpact.com/news/91703-veracrypt-comment-chiffrer-et-cacher-fichiers-disque-dur-externe-ou-clef-usb.htm</a><br />
</li></ul><br />
<br />
Pourquoi chiffrer ? Admettons que vous vous faites subtiliser votre ordinateur portable dans le métro ou lors d'un cambriolage. Pensez bien que vous aurez beau avoir mis un mot de passe au BIOS ou à votre compte Windows (choses qu'on peut faire sauter en 10 secondes), le disque dur restera démontable quoiqu'il arrive. Disque dur qu'on pourra connecter à un autre PC et dont on pourra explorer le contenu. Vos données seront dans la nature. N'importe qui pourra consulter vos fichiers puisqu'ils seront en clair (non chiffrés). Dans le meilleur des cas vous tomberez sur quelqu'un qui se fout de vos données, va reformater/réinitialiser tout l&#8217;ordinateur, réinstaller Windows ou Linux et puis ça s'arrête là.<br />
<br />
Si vous tombez sur quelqu'un de curieux... c'est potentiellement le début des problèmes. Si c'était votre PC portable professionnel, vous avez peut-être dedans des données sensibles stratégiques liées à la grande entreprise dans laquelle vous travaillez, elles sont prêtes à être revendues à un concurrent moyennant finances. Si c'était votre PC portable personnel, si vous aviez des données "compromettantes" du genre des vidéos sex-tape : le voleur peut également uploader vos fichiers sur un site porno si cela lui chante sans que vous ne soyez au courant ou alors débuter un chantage avec vous.<br />
<br />
<h4 class="formatter-title">Un antivirus (ou une suite de sécurité antimalware) est indispensable sous Windows</h4><br />
<br />
La plupart des dangers proviennent de ce que l'on ramène sur son ordinateur, particulièrement ce qui provient d'Internet.<br />
(Au moins) 2 organismes testent de manière indépendante ces logiciels, consultez leurs résultats les plus récents pour choisir parmi les antivirus qui offrent la meilleure protection et celui qui vous plait.<br />
<br />
<ul class="formatter-ul">
    <li class="formatter-li"><a href="https://www.av-test.org/fr/">https://www.av-test.org/fr/</a>
    </li><li class="formatter-li"><a href="http://chart.av-comparatives.org/chart1.php">http://chart.av-comparatives.org/chart1.php</a><br />
</li></ul><br />
<br />
<img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2017/152/av.jpg" alt="" class="b-lazy" /><br />
<br />
C'est ce que je martèle depuis des lustres ici-même ou dans mes vidéos, contre vents et marrées, enfin surtout contre troll et autres Jean-informaticien : le monde des antivirus bouge régulièrement. C'est comme la bourse. Certains sont sur la pente descendante et laissent leur place à certains qui deviennent meilleurs. D'autres stagnent et restent des valeurs sures depuis des années. La ferveur que je vois souvent à défendre forcément tel ou tel antivirus tel du fétichisme <em>("moi j'ai le meilleur depuis des années", etc... )</em> est une pure ânerie. Si l'antivirus que l'on avait depuis des lustres commence à descendre dangereusement dans les résultats, il faudra songer à le désinstaller pour laisser la place à un meilleur, et ainsi de suite. Et oui il faudra abandonner son AV fétiche, c'est ce qu'on appelle être objectif.<br />
<br />
Consultez les résultats et vous verrez qu'en fait beaucoup de ces AV sont à plus de 99% de détection, donc beaucoup d'entre eux sont largement potables même si ce ne sont pas les meilleurs. L'objectif étant bien sûr 100% pour une protection totale absolue. Donc il suffit d'en choisir un bon, je dirai à titre personnel ceux qui sont à plus de 99%. Plus on descend en taux de détection plus après ce sera à l'utilisateur de faire attention à ce qu'il fait en étant prudent.<br />
<br />
Il est à noter que Windows intègre déjà un antivirus nommé <a href="https://fr.wikipedia.org/wiki/Windows_Defender">Windows Defender</a>, certains disent donc qu'un AV tiers n'est pas nécessaire. Selon AV-Comparatives, depuis mars 2017 Windows Defender serait même mieux que certains gratuits avec un taux de 99.7%. Ce qui n'était absolument pas le cas jusque là, il arrivait toujours presque à la traine avec à peine seulement 96.6% en février dernier. Comme quoi ça bouge n'est-ce pas ?<br />
<br />
Remarque : attention les logiciels n'offrent pas tous les mêmes périmètres de protection, il y a des antivirus tout court et des suites de sécurité qui ont d'autres fonctions de protection en plus que la fonction d'antivirus.<br />
<br />
<h4 class="formatter-title">Conserver ses logiciels à jour</h4><br />
<br />
On trouve régulièrement des nouvelles failles de sécurité dans les logiciels, les développeurs se chargent de boucher ces vulnérabilités dans les nouvelles versions, encore faut-il que vous les installiez pour en profiter. Un système d'exploitation et des logiciels à jour permettent de minimiser des vecteurs d'attaque.<br />
<br />
<ul class="formatter-ul">
    <li class="formatter-li">Windows :  laissez faire Windows Update.
    </li><li class="formatter-li">Navigateurs internet (Firefox, Chrome, Vivaldi, etc...) : vérifiez leur versions.
    </li><li class="formatter-li">Antivirus/Suite de sécurité, évidemment il faut qu'ils soient à jour pour détecter les malwares récents.
    </li><li class="formatter-li">Flash : Adobe Flash Player est connu <a href="https://www.cyberprotect.fr/attention-au-flash/">pour être un gros vecteur d'attaque</a>.
    </li><li class="formatter-li">Java : Idem que Flash.<br />
</li></ul><br />
<br />
<h4 class="formatter-title">Conserver vos navigateurs web sains (FireFox, Chrome, etc...)</h4><br />
<br />
<strong>Désinstallez</strong> toutes les barres d'outils et autres plugins ou modules inutiles de vos navigateurs Internet.<br />
<strong>Désinstallez</strong> Adobe Flash et Java si vous ne vous en servez pas. Si vous allez sur des sites qui ne les réclament pas.<br />
<br />
<h4 class="formatter-title">Effacez vos disques durs</h4><br />
<br />
J'ai eu l'occasion de le montrer au moins à 7-8 reprises à l'occasion des <a href="https://www.youtube.com/watch?v=qHYQsSzz-es&list=PLA-BAIirYT42o_QGC-oJXQIIHXuXcLQIf">redémarrages de vieux PC que j'ai pu faire sur Youtube</a>. Des vieux PC que j'avais récupéré et ils avaient toujours tous leurs disque dur de rempli. C'est fou ce que l'on peut retrouver sur les ordinateurs récupérés en déchetterie. Les anciens propriétaires n'ont pas pris soin d'effacer les traces avant de remiser leurs appareils. Ceux qui le font sont vraiment marginaux. De plus, encore faut-il effacer son disque de la bonne manière. Un simple formatage rapide ne suffit pas. Avec les utilitaires de récupération de fichiers beaucoup de données peuvent être récupérées. Il faut <a href="http://www.zdnet.fr/actualites/5-applications-pour-effacer-des-donnees-de-facon-securisee-39819024.htm">utiliser des logiciels spéciaux</a> en suivant <a href="https://www.moncoinnumerique.fr/mon-coin-matos/disques-durs-et-ssd/effacer-completement-et-efficacement-un-disque-dur/">certaines méthodes</a>. Sinon il suffit de retirer le disque dur du PC avant de le mettre en déchetterie ou de le vendre sur eBay pour soit le conserver (le réutiliser) soit le détruire (méthode radicale).<br />
<br />
Évidemment cela dépend de la criticité des données qui seront laissées, s'il s'agit du disque dur sur lequel vous aviez mis votre collection de fichiers MP3 de Sheila et sur lequel vous stockez vos animés favoris téléchargés par BitTorrent, le contenu n'étant pas "personnel" stricto sensu, on se moque un peu de faire un effacement approfondi.]]></description>
			<pubDate>Thu, 13 Apr 2017 16:16:00 +0200</pubDate>
			
		</item>
		
		<item>
			<title><![CDATA[Toi aussi rejoins la force de la POST-CARD]]></title>
			<link>https://www.jonathandupre.fr/articles/50-fiches-recapitulatives/134-toi-aussi-rejoins-la-force-de-la-post-card/</link>
			<guid>https://www.jonathandupre.fr/articles/50-fiches-recapitulatives/134-toi-aussi-rejoins-la-force-de-la-post-card/</guid>
			<description><![CDATA[<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/post-card.jpg" alt="" class="b-lazy" /></p><br />
<h3 class="formatter-title">Ton truc rouge là qu'on voit dans tes vidéos, comment ça s&#8217;appelle ?</h3><br />
Ceci est une "POST CARD" jeune padawan, ou une "PCI DEBUG CARD", certains disent "Testeur de carte mère" mais je ne suis pas d'accord avec cette appellation. En effet ce n'est pas pour tester la carte mère directement mais essayer de déterminer la source d'une ou plusieurs pannes dans le PC.<br />
<h3 class="formatter-title">Tu t'en sers souvent ?</h3><br />
Tout le temps, même si c'est un accessoire de dépannage pas forcément indispensable pour le quidam mais cela peut aider celui qui sait maîtriser la force de la POST-CARD via l'expérience !<br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2016/134/yoda.jpg" alt="" class="b-lazy" /></p><br />
<h3 class="formatter-title">Cela sert à quoi concrètement ?</h3><br />
Cet objet, une fois inséré dans un slot ISA/PCI <a href="https://www.jonathandupre.fr/news/2-informatique/78-nouvelle-post-card">ou PCI-E</a> de la carte mère, sert à afficher le <a href="https://en.wikipedia.org/wiki/POST_card">code POST</a> en cours <a href="https://en.wikipedia.org/wiki/Power-on_self-test">lors du démarrage du BIOS</a>/UEFI (= étape de démarrage) lorsque l'affichage vidéo n'a pas pu encore être démarré. <a href="https://www.jonathandupre.fr/articles/42-le-pc-fonctionnement-technique/105-le-bios">Voir l'article sur le BIOS</a>. Cela donne une piste sur ce qu'il se passe lorsque l'écran reste noir et que le PC ne démarre pas. La plupart des gens connaissent les fameux "bips" (courts et longs) en cas de problème, mais quand il n'y a pas de bips, comment on fait ?<br />
<h3 class="formatter-title">Limite d'utilisation</h3><br />
Je le précise avant d'aller plus loin : les POST-cards ne sont pas des cartes magiques ! Il ne faut pas s'attendre à ce que la carte vous indique directement la source du problème du genre : tel code = telle pièce défectueuse (processeur, mémoire non compatible, chipset cramé). Non non non. Cela serait trop facile, et vous en auriez déjà tous une en votre possession. Sans compter que le métier de dépanneur aurait déjà disparu. L'intérêt dans posséder une est moindre que certains pourraient penser.<br />
<h3 class="formatter-title">Où peut-on en acheter ?</h3><br />
On peut trouver cela sur eBay, Bangood ou AliExpress. Tu en trouveras par brouettes entières.<br />
<h3 class="formatter-title">Combien cela coûte ?</h3><br />
Entre 5 et 20 euros selon la carte. Plus cher pour les versions PCI-E.<br />
<h3 class="formatter-title">Et celles sur port USB ou port parallèle ?</h3><br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2016/134/para.jpg" alt="" class="b-lazy" /></p><br />
Jamais testé !<br />
<h3 class="formatter-title">Mais il y a en des millions sur eBay, elles font toutes la même chose ?</h3><br />
Certaines sont plus perfectionnées que d'autres, certaines disposent de petits gadgets. Mais elles jouent toutes le même rôle : afficher le code POST.<br />
<h3 class="formatter-title">Mais il y a en des millions sur eBay je prends laquelle ?</h3><br />
La plus complète : celle avec l'afficheur plus gros et plus de diodes possibles, un buzzer etc...<br />
<h3 class="formatter-title">Mais à quoi servent les diodes ?</h3><br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2016/134/diodes.jpg" alt="" class="b-lazy" /></p><br />
Certaines diodes sont là pour visualiser la présence des tensions sur le port PCI et d'autres s'allument quand des signaux sont détectés sur le bus PCI.<br />
<ul class="formatter-ul">
    <li class="formatter-li">12V ,-12V, 3.3V AUX, -5V : tensions d'alimentation présentes.
    </li><li class="formatter-li">RESET : Signal reset général, doit s'allumer lorsqu'on presse le bouton RESET coté carte mère et doit s'allumer brièvement à l'allumage. Rappel : sans signal RESET envoyé au CPU : il ne démarre pas.
    </li><li class="formatter-li">IRDY# : Initiator ready, doit s'allumer brièvement lors des transactions PCI.
    </li><li class="formatter-li">CLK : Clock, présence horloge (Mhz).
    </li><li class="formatter-li">FRAME : doit s'allumer brièvement lors des transactions PCI.<br />
</li></ul><br />
Plus d'infos sur les signaux PCI <a href="https://en.wikipedia.org/wiki/Conventional_PCI">ici</a>.<br />
<h3 class="formatter-title">Pourquoi des cartes avec 2 chiffres 7-segments et d'autres avec 4 chiffres ?</h3><br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2016/134/digit.jpg" alt="" class="b-lazy" /></p><br />
Le code POST est sous la forme de deux valeurs hexadécimales qui vont de 00 à FF. 2*4bits (<a href="https://fr.wikipedia.org/wiki/Nibble">nibble</a>) = 8bits. C'est pourquoi les cartes à 1 ou 3 digit n'existent pas.<br />
Les cartes avec 2 digits affichent simplement le dernier code POST réceptionné.<br />
Les cartes avec 4 digits affichent d'un coté le dernier code POST réceptionné et de l'autre coté le précédent code POST. Mais attention certaines cartes ont un fonctionnement plus "propriétaire" (notamment celles de marque QiGuan).<br />
<h3 class="formatter-title">A quoi servent les boutons ?</h3><br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2016/134/buttons.jpg" alt="" class="b-lazy" /></p><br />
Les boutons servent pour naviguer (défiler) dans l'historique pour consulter les codes passés jusqu'au plantage. Ils sont stockés dans la mémoire temporaire de la POST-CARD. Ils seront perdus soit au prochain signal RESET, soit à la coupure électrique (dépend des cartes).<br />
<h3 class="formatter-title">A quoi sert le buzzer ?</h3><br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2016/134/buzzer.jpg" alt="" class="b-lazy" /></p><br />
C'est un petit gadget : ce buzzer est autonome. Lorsque la carte mère n'a pas de buzzer intégré pour entendre ses éventuels bips et qu'on en a pas sous la main (carte mère pas reliée au boitier). On peut utiliser celui intégré sur la carte. Attention : le bus PCI n'a pas de signal "buzzer" : il faut un donc petit câble à coté. Il faudra relier la sortie SPEAKER sur le connecteur "Front Panel" de la carte mère à la post-card (ici sur JP2).<br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2016/134/buzz-cable.jpg" alt="" class="b-lazy" /></p><br />
<h3 class="formatter-title">A quoi sert le connecteur ?</h3><br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2016/134/conn.jpg" alt="" class="b-lazy" /></p><br />
Généralement il permet de connecter un afficheur LCD ou LED déporté pour une lecture plus aisée que sur la carte directement.<br />
<h3 class="formatter-title">Comment s'en sert-on ?</h3><br />
Et bien on la branche sur un port PCI (ou PCI-E) et normalement tout s'illumine lorsque la carte mère démarre.<br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/bios/power.jpg" alt="" class="b-lazy" /></p><br />
Ensuite on voit défiler les codes POST jusqu'à ce ça n'avance plus. On peut même des fois constater que ça reboote en boucle logiquement.<br />
<h3 class="formatter-title">Faut-il des drivers ? C'est reconnu sous Linux ?</h3><br />
Non, il s'agit d'une carte 100% passive, elle n'est pas détectée par la carte mère et les systèmes d'exploitation car elle ne dialogue pas sur le bus ISA/PCI/PCI-E avec les autres composants, elle ne fait qu'écouter/sonder. Donc elle ne risque pas de se retrouver dans votre gestionnaire des périphériques Windows ou dans un lspci sous Linux.<br />
<h3 class="formatter-title">Puis-je la laisser branchée tout le temps sur ma carte mère ?</h3><br />
Oui, même si c'est un peu inutile. Le code POST ne changera plus une fois votre OS démarré. Si vous aimez les LEDs pourquoi pas  <img src="https://www.jonathandupre.fr/images/smileys/laugh.png" alt=":lol" title=":lol" class="smiley" /><br />
<h3 class="formatter-title">Je ne vois rien défiler c'est normal ?</h3><br />
Si votre PC démarre normalement mais que la carte POST ne fait rien défiler. Soit elle est HS, soit vous êtes victime d'une incompatibilité. Avec certains BIOS propriétaires ou certaines cartes mères (OEM), les POST-cards ne fonctionnent pas. Mais c'est hyper hyper rare.<br />
Si par contre votre PC ne démarre pas et que vous avez un écran noir, bravo, votre POST-card vient de vous donner une première indication.<br />
<h3 class="formatter-title">Le petit manuel</h3><br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/bios/manual.jpg" alt="" class="b-lazy" /></p><br />
La carte vous est généralement livrée avec un petit manuel ou un dépliant dans lequel vous trouverez dans des tableaux, l'ensemble des codes POST correspondant aux étapes de démarrage pour tel type de BIOS (BIOS vendors) comme Award, Phoenix ou encore AMI.<br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/bios/codes.gif" alt="" class="b-lazy" /></p><br />
Ce petit manuel qui est livré avec la carte (sauf si c'est une QiGuan) vous pouvez le jeter. Enfin presque, c'est tout comme, ils peuvent donner dans certains cas des indications sur le pourquoi de la panne et où chercher, mais il ne vous servira quasiment à rien lors de vos dépannages.<br />
<h3 class="formatter-title">Mais pourquoi donc ?</h3><br />
Parce que !<br />
<ul class="formatter-ul">
    <li class="formatter-li">Premièrement, la plupart du temps ces tableaux sont incomplets et faux. En effet ils vous indiqueront la signification des codes POST pour chaque type de BIOS mais ils ne tiennent pas compte de la version. Pourtant sur une carte mère Award BIOS 4.51 et Award BIOS 6.0 les codes ne sont plus les mêmes ! Vous pouvez également les retrouver de manière plus exhaustive sur le site <a href="http://www.bioscentral.com/">BIOS Central</a>.
    </li><li class="formatter-li">Deuxièmement, il n'existe pas de séquence de démarrage toute faite pré-établie et ce même pour un type de BIOS donné, de mon expérience avec ces choses : la plupart du temps vous partirez de la valeur 00 pour monter vers la valeur FF (Boot OS), mais desfois c'est l'inverse. Et le plus déroutant c'est que sur certaines cartes il peut y avoir des allers-retours, une séquence du genre : 00 - 05 - 12 - B9 - DE - A3 - 72 - 10 - FE - FF. Ce n'est pas linéaire.<br />
</li></ul><br />
<h3 class="formatter-title">Bah alors c'est trop nul ce truc !</h3><br />
Désolé padawan mais il n'y a pas de miracle. Ces cartes servent plus dans des situations spécifiques et surtout dans le cas de pannes "cumulées", elles peuvent donner une idée si l'action faite permet d'avancer dans la séquence de boot ou pas après le remplacement d'un composant ou un petit passage à l'air chaud dans un coin...<br />
Car une fois que vous serrez bloqué sur le code 94 qui indique <em>"Enable L2 cache; Program boot up speed; Chipset final initialization; Power management final initialization; Clear screen and display summary table; Program K^ write allocation; Program P6 class write combining"</em>, vous allez faire quoi en définitive ? Cela ne vous dira rien du tout sur quoi faire. Si cela se trouve c'est à cause d'une piste coupée par un coup de tournevis que le POST bloque ici. Et bien en fait comme tout le monde, vous appliquerez au final la méthodologie de base du dépannage PC :<br />
<ul class="formatter-ul">
    <li class="formatter-li">ouvrir et vérifier que visuellement rien n'être brulé (juger à l'odeur également),
    </li><li class="formatter-li">puis vérifier visuellement l'état des condensateurs (<a href="https://en.wikipedia.org/wiki/Capacitor_plague">capacitor plague</a>),
    </li><li class="formatter-li">puis vérifier que tous les connecteurs internes soient bien branchés (les déconnecter-reconnecter pour être sûr),
    </li><li class="formatter-li">puis débrancher les disques durs/SSD et autres lecteurs optiques (le système doit pouvoir s'allumer sans),
    </li><li class="formatter-li">puis vérifier au multimètre les tensions de l'alimentation (et sur carte mère),
    </li><li class="formatter-li">puis retirer les cartes d&#8217;extension (ISA/PCI) non vitales telles que les contrôleurs USB/SATA/Réseau/Son (le système doit pouvoir s'allumer sans),
    </li><li class="formatter-li">puis retirer et/ou changer les barrettes mémoires de place (slots),
    </li><li class="formatter-li">puis faire un <a href="https://www.jonathandupre.fr/articles/42-le-pc-fonctionnement-technique/105-le-bios/">clear CMOS (NVRAM)</a>,
    </li><li class="formatter-li">puis faire l'échange et tester avec d'autres composants (une autre alimentation, un autre processeur, une autre barrette RAM, etc...)
    </li><li class="formatter-li">etc...<br />
</li></ul><br />
Jusqu'à ce que vous trouviez la source du problème, quel composant était en cause. Et si c'est la carte mère elle-même par exemple, vous devrez sortir le multimètre voire l'oscilloscope pour déterminer le composant électronique sur la carte mère qui est KO. Et ce, si déjà on possède les compétences, les outils, le temps, et si c'est toujours viable économiquement de s'y pencher dessus (ou pour apprendre ou par défi).<br />
<h3 class="formatter-title">Conseils d'expérience personnelle</h3><br />
<ul class="formatter-ul">
    <li class="formatter-li">La carte reste figée sur "FF" ou "--" ou "no" (=aucun code POST réceptionné) :<br />
<ul class="formatter-ul">
    <li class="formatter-li">Processeur absent ou ne démarre pas. Voir du coté de la partie VRM. Vérifier tension alimentation CPU et si le CPU chauffe.
    </li><li class="formatter-li">Vérifier si le signal RESET est bien envoyé à l'allumage et pas bloqué.
    </li><li class="formatter-li">Manque une tension quelque part coté chipset.<br />
</li></ul>
    </li><li class="formatter-li">La carte refait la même séquence en boucle :<br />
<ul class="formatter-ul">
    <li class="formatter-li">Condensateurs foireux.
    </li><li class="formatter-li">Processeur au stepping incompatible pour la carte mère.
    </li><li class="formatter-li">Incompatibilité matérielle avec une carte connectée sur le bus PCI/PCI-E.
    </li><li class="formatter-li">BIOS corrompu.<br />
</li></ul><br />
</li></ul>]]></description>
			<pubDate>Wed, 12 Oct 2016 23:50:00 +0200</pubDate>
			
		</item>
		
		<item>
			<title><![CDATA[Le BIOS]]></title>
			<link>https://www.jonathandupre.fr/articles/50-fiches-recapitulatives/105-le-bios/</link>
			<guid>https://www.jonathandupre.fr/articles/50-fiches-recapitulatives/105-le-bios/</guid>
			<description><![CDATA[<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/main.jpg" alt="" class="b-lazy" /></p><br />
<br />
Le <a href="https://fr.wikipedia.org/wiki/Basic_Input_Output_System">BIOS</a> (prononcez "biausse") est un très vaste sujet en informatique, tout le monde le manipule à tâtons mais personne ne sait vraiment comment il fonctionne. Voici une petite fiche sur lui, histoire de ne pas mourir trop bête, pas comme Bob Morris.  <img src="https://www.jonathandupre.fr/images/smileys/laugh.png" alt=":lol" title=":lol" class="smiley" /><br />
<br />
<h3 class="formatter-title">Keske cé ?</h3><br />
<br />
<div class="formatter-container formatter-blockquote"><span class="formatter-title title-perso">Wikipédia dit :</span><div class="formatter-content">Le Basic Input Output System (BIOS, en français : « système élémentaire d'entrée/sortie ») est, au sens strict, un ensemble de fonctions, contenu dans la mémoire morte (ROM - Read Only Memory) de la carte mère d'un ordinateur, lui permettant d'effectuer des opérations élémentaires lors de sa mise sous tension, par exemple la lecture d'un secteur sur un disque. Par extension, le terme est souvent utilisé pour décrire l'ensemble du micrologiciel de la carte mère.</div></div><br />
<br />
C'est l'élément logiciel de base d'un ordinateur de type PC ou compatible PC (à la sauce IBM). C'est lui qui va donner vie au PC en initialisant logiquement ses divers composants et instaurer un système de base, pour ensuite donner la main au système d'exploitation (DOS/Windows/Linux/MacOS). Il fait partie intégrante du processus de "boot" (démarrage) d'un PC.<br />
<br />
<h3 class="formatter-title">Matériel ou logiciel ?</h3><br />
<br />
Le BIOS est un <a href="https://fr.wikipedia.org/wiki/Firmware">firmware</a>, c'est un micro-logiciel, donc de bas niveau codé en <a href="https://fr.wikipedia.org/wiki/Assembleur">assembleur</a>. Mais un firmware particulier, car il est (en partie) "normalisé" dans le but est de démarrer logiciellement un PC. Il se charge puis réside en mémoire centrale et régit/contrôle le "matériel" et les périphériques au travers de routines internes jusqu'à ce que le système d'exploitation (Windows ou Linux peu importe) les remplace par les siennes (et ses pilotes/modules). Il joue le rôle d'interface entre le système d'exploitation et le matériel.<br />
<br />
Le BIOS se présente sous la forme matérielle uniquement sous la forme d'une puce, implantée sur la carte mère, qui contient le logiciel. La puce du BIOS n'est qu'une simple mémoire morte, ce n'est pas un microcontrôleur. Le BIOS est exécuté en mémoire vive (RAM) par le processeur central (CPU).<br />
<br />
Et pour les cartes graphiques, elles aussi ont un BIOS, à savoir le <a href="https://en.wikipedia.org/wiki/Video_BIOS">VBIOS (Video BIOS)</a>.<br />
<br />
<h3 class="formatter-title">Le BIOS copié, enfin pas vraiment...</h3><br />
<br />
Créé par IBM pour ses machines PC (même si cela existait déjà aussi sur d'autres ordinateurs), il fut rapidement analysé et "copié" par rétro-ingénierie. D'une part, IBM fournissait beaucoup de documentations et de schémas techniques, d'autre part l'architecture étant à base d'Intel x86 : aucun composant de la machine n'est propriétaire IBM : la chose a été un peu facile pour <a href="https://en.wikipedia.org/wiki/Phoenix_Technologies">Phoenix</a> & <a href="https://en.wikipedia.org/wiki/Compaq">Compaq</a> d'analyser le programme pour mieux le reconstruire. En fait, il ne s'agit pas d'une copie, une vulgaire copie du BIOS codé et compilé par IBM aurait eu pour conséquence, pour l'entreprise qui s'y risquerait, de s'exposer à des poursuites judiciaires, le BIOS étant un logiciel, il est protégé par les lois sur le copyright. Les copieurs ne pourraient donc pas vendre leur "copies".<br />
<br />
Par contre, rien n'empêche d'essayer de comprendre comment se comporte un logiciel et de construire un autre logiciel qui ferait la même chose et donnerait le même résultat. C'est comme cela que des "fournisseurs de BIOS" pouvaient se targuer de pouvoir fournir des BIOS 100% compatibles IBM et les revendre à des fabricants de cartes mères "compatible PC" sans problème à l'époque.<br />
<br />
L'histoire complète : <a href="https://en.wikipedia.org/wiki/Phoenix_Technologies#Cloning_the_IBM_PC_BIOS">https://en.wikipedia.org/wiki/Phoenix_Technologies#Cloning_the_IBM_PC_BIOS</a><br />
<br />
<h3 class="formatter-title">Les différents fournisseurs de BIOS ( "BIOS vendors")</h3><br />
<br />
Aujourd'hui les entreprises qui fournissent des BIOS sont plus ou moins toujours les mêmes depuis le début de l'histoire :<br />
<br />
<table class="formatter-table" style="border:0px; margin:auto;">
<tr class="formatter-table-row">
<td class="formatter-table-col" style="border:0px;"><p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/logo_ami.jpg" alt="" class="b-lazy" /></p></td>
<td class="formatter-table-col" style="border:0px;"><p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/logo_phoenix.jpg" alt="" class="b-lazy" /></p></td>
<td class="formatter-table-col" style="border:0px;"><p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/logo_award.gif" alt="" class="b-lazy" /></p></td>
<td class="formatter-table-col" style="border:0px;"><p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/logo_insyde.png" alt="" class="b-lazy" /></p></td>
</tr>
</table><br />
<br />
<ul class="formatter-ul">
<li class="formatter-li"><a href="https://en.wikipedia.org/wiki/Award_Software">Award Software</a> et son AwardBIOS, rachetée en 1998 par Phoenix, mais la branche BIOS a continué à exister après ce rachat.
</li><li class="formatter-li"><a href="https://en.wikipedia.org/wiki/American_Megatrends">American Megatrends</a> et son AMIBIOS, toujours vivante.
</li><li class="formatter-li"><a href="https://en.wikipedia.org/wiki/Phoenix_Technologies">Phoenix Technologies</a> et son....... PhoenixBIOS puis son "TrustedCore BIOS", toujours vivante.
</li><li class="formatter-li"><a href="https://en.wikipedia.org/wiki/Insyde_Software">Insyde Software</a> et son InsydeH2O "Hardware-2-Operating System", nouveau venu, enfin depuis 1998 quand même. Vraiment populaire depuis le milieu des années 2000.<br />
</li></ul><br />
<br />
D'autres constructeurs de PC possèdent leurs propres BIOS, c'est le cas notamment de Intel, Compaq, Dell, HP et IBM évidemment. Dans leurs ordinateurs, selon les modèles, soit ils mettent leur BIOS 100% propriétaire, soit du Award, AMI ou Phoenix qu'ils personnalisent et brident.<br />
<br />
<h3 class="formatter-title">Qui fait quoi ?</h3><br />
<br />
<img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/whos_who.jpg" alt="" class="b-lazy" /><br />
<br />
Ce qu'il faut comprendre c'est que les fournisseurs de BIOS "vendent" leur BIOS aux fabricants de cartes mères. Gigabyte, Asus, MSI et j'en passe, tous, vont acheter un BIOS chez un de ces "BIOS vendors" pour équiper tel futur modèle de carte mère. C'est pour cela d'ailleurs que selon la carte mère le BIOS n'est pas le même. Vous prenez telle carte de chez Gigabyte, elle aura un BIOS Award, puis telle autre carte sortie 2 mois plus tard, sera elle équipée d'un BIOS AMI. Cela dépendra du contrat, du prix négocié par rapport aux fonctionnalités attendues et voulues, etc... Les "BIOS vendors" accordent aux fabricants de cartes mères d'implanter leur BIOS dans tel produit moyennant finance, un peu comme une licence. Ils ne vendent pas le code source qui reste bien gardé.<br />
<br />
Par contre, comme vu plus haut, le "BIOS vendor" s'engage à fournir un BIOS compatible IBM PC ainsi qu'un ensemble de logiciels (toolkit) permettant au fabricant de la carte mère ensuite de le personnaliser/modifier, dans une certaine mesure.<br />
<br />
<h3 class="formatter-title">La personnalisation du BIOS</h3><br />
<br />
Ensuite le fabricant de carte mère "modifie" le BIOS pour sa carte mère et chacun des modèles de carte mère. En fait il le personnalise, le configure et l'enrichit. Les routines et le code "dur" fourni par le "BIOS vendor" est conservé. Mais on y change le logo, puis on lui donne un <a href="http://www.quepublishing.com/articles/article.aspx?p=27188&seqNum=12">nom</a>, puis une version, et on y ajoute des tables de configuration, on y injecte des option/expansion ROM's, on choisit ce que l'utilisateur pourra faire ou non avec son BIOS, ce qu'on lui affiche comme options dans l'utilitaire SETUP, on y place les microcodes pour le CPU et le code supplémentaire pour les contrôleurs, le chipset, etc...<br />
<br />
Le fabricant se doit de le faire, car certains modèles de cartes mères embarquent des fonctionnalités d'overclocking et d'autres non, selon aussi les chipsets, la PLL, le nombre de ports USB, PCI, AGP, SATA présents physiquement, le choix de la puce Super I/O, le câblage des entrées-sorties et autres choix de "routage" des GPIO font en sorte qu'il faut "personnaliser" le BIOS pour chaque modèle de carte mère créé. Voire même de sortir un BIOS différent pour une nouvelle simple révision hardware (REV. x) de la carte mère elle-même.<br />
<br />
Anecdote personnelle : prenez une carte mère <a href="https://theretroweb.com/motherboards/s/asus-cur-dls">Asus CUR-DLS</a>, cette carte (une vieille dual-scoket370 de 2000) est disponible au détail dans le commerce avec un BIOS Award.<br />
<br />
<img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/curdls1.jpg" alt="" class="b-lazy" /><br />
<br />
Si vous tombez un jour sur un serveur Gateway 6400/7400R, dedans vous aurez la même carte mère mais sans le logo Asus d'imprimé dessus (en version OEM). Et vous vous apercevrez qu'au premier boot elle possède un BIOS Phoenix.<br />
<br />
<img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/gateway6400.jpg" alt="" class="b-lazy" /><br />
<br />
Et je peux vous dire que vous pouvez flasher sur les deux cartes aussi bien le BIOS OEM personnalisé par Gateway (d'origine Phoenix) que l'Award et ce sans aucun problème et tout fonctionne. Par contre, le BIOS d'une carte mère ne conviendra pas pour une autre carte mère. Et ce même si d'apparence le BIOS/SETUP est similaire avec les mêmes options et que la carte mère est très ressemblante physiquement avec les mêmes chipsets. N'oubliez pas que le fabricant Asus a pu interconnecter les composants, en n'utilisant pas les mêmes ports/interfaces d'entrée/sortie du southbridge ou du northbridge, que le voisin <a href="https://en.wikipedia.org/wiki/Universal_Abit">Abit</a> par exemple.<br />
<br />
<h3 class="formatter-title">Les nouvelles versions d'un BIOS</h3><br />
<br />
Les "BIOS vendors" n'assurent pas de support directement avec vous, pauvre utilisateur final, mais uniquement avec ses clients directs (les fabricants de cartes mères). C'est pour cela que lorsqu'une nouvelle version du BIOS de votre carte mère est disponible, c'est bien que Asus, Abit, MSI et consorts, vous la mets gracieusement à votre disposition, de leur proche chef sur leur site en section "support". Car eux seuls connaissent le hardware que vous avez entre les mains, et peuvent patcher le BIOS pour corriger son comportement selon tel ou tel souci rencontré. C'est à eux de faire la modification.<br />
<br />
D'ailleurs les constructeurs de cartes mères ne fournissent généralement plus de "mises à jour" du BIOS pour un modèle qui commence à dater de quelques années. C'est juste que, d'une part le BIOS étant maintenant mature, les problèmes restants sont mineurs et souvent contournables. Et d'autre part c'est une question de modèle économique, les marques préfèrent se concentrer sur les soucis des modèles en cours de production et encore vendus dans le commerce.<br />
<br />
<h3 class="formatter-title">Les BIOS bugués/pourris (volontairement bien sûr, sinon ce ne serait pas drôle)</h3><br />
<br />
Maintenant que vous savez qu'un BIOS peut, soit être propriétaire, soit être modifiable par un fabricant, dans le cas où ce dernier ne saurait pondre son BIOS, soyons machiavélique et imaginatif. En fait c'est du déjà vu, une marque qui volontairement altère le comportement de son BIOS et le rend incompatible ou instable avec un système d'exploitation donné ou un périphérique particulier, c'est aussi en vogue. C'était l'époque des <a href="https://doc.ubuntu-fr.org/pc_tatoue">PC tatoués</a>.<br />
<br />
Évidemment rien n'est "prouvable", c'est très subtil, mais bizarrement Windows ou Linux ne s'installe pas et bloque sur une erreur et telle marque de carte PCI n'est pas reconnue une fois branchée ou si le disque dur est remplacé, le nouveau n'est pas exploitable pour une raison obscure. Linux ne boot pas de lui-même il faut lui donner des arguments pour que le noyau démarre parce que <a href="http://linuxfr.org/nodes/103119/comments/1557572">le BIOS n'est pas codé correctement</a>. Vous me croyez parano ? Que nini. Certains constructeurs mainstream tels que Packard Bell ou Compaq le font.<br />
<br />
ElectronikHeart a déjà fait une vidéo là-dessus : <a href="https://www.youtube.com/watch?v=99MP9EOfrME">https://www.youtube.com/watch?v=99MP9EOfrME</a><br />
<br />
En fait ce qu'il faut comprendre, c'est que les constructeurs peuvent faire ce qu'ils veulent avec ça. Ils peuvent très bien ne pas vouloir vous laisser démarrer votre PC car il y a telle carte avec tel couple de <em><a href="https://en.wikipedia.org/wiki/PCI_configuration_space#Standardized_registers">Vendor ID/Device ID</a></em> d'installée par exemple, ou si le disque dur ne correspond pas à la signature de telle marque d'origine, ou si vous avez plus de tant de RAM. C'est rare, mais pas impossible. Exemple concret avec des portables I<a href="http://www.paul.sladen.org/thinkpad-r31/wifi-card-pci-ids.html">BM Thinkpad qui refusent de démarrer s'il n'ont pas une carte Wi-fi compatible d'installée</a>.<br />
<br />
<h3 class="formatter-title">Un BIOS libre ça existe ?</h3><br />
<br />
Oui, coreBoot, LibreBoot, OpenBIOS ou seaBIOS sont des projets de la sorte.<br />
<br />
Ces BIOS alternatifs et génériques sont principalement utilisés par les libristes "extrémistes" qui refusent le moindre logiciel commercial, patenté ou aux sources fermés sur leur ordinateur. Il faut dire que certaines failles de sécurité peuvent être présentes très tôt dans le démarrage du PC y compris depuis le BIOS donc... en effet ce n'est pas un fantasme. Mais rares sont les ordinateurs à être compatibles et la chose n'est pas facile à mettre en place. Je n'ai jamais essayé ces BIOS libres, je ne pourrai vous en dire plus. Je vous laisse approfondir par vous-même sur les sites ci-dessous.<br />
<br />
<ul class="formatter-ul">
<li class="formatter-li"><a href="http://www.openfirmware.info/Welcome_to_OpenBIOS">http://www.openfirmware.info/Welcome_to_OpenBIOS</a>
</li><li class="formatter-li"><a href="http://www.coreboot.org/Welcome_to_coreboot">http://www.coreboot.org/Welcome_to_coreboot</a>
</li><li class="formatter-li"><a href="http://www.seabios.org/SeaBIOS">http://www.seabios.org/SeaBIOS</a><br />
</li></ul><br />
<br />
<h3 class="formatter-title">De quoi est constitué un BIOS ?</h3><br />
<br />
Un BIOS est un assemblage binaire de routines de bas niveau, de tables de configuration ainsi que de programmes (Intel ME, etc...).<br />
<br />
<h4 class="formatter-title">Le POST</h4><br />
<br />
<img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/606px-POST_P5KPL.jpg" alt="" class="b-lazy" /><br />
<br />
Après un signal <a href="https://en.wikipedia.org/wiki/Reset_%28computing%29">RESET</a> général, le BIOS s'initialise en interne et lance la procédure de POST, <em>Power-On Self-Test</em>. Le POST est un bout de code, une procédure logicielle déclenchée à chaque démarrage ou redémarrage. Elle consiste en une succession d'initialisations et de tests.<br />
<br />
<ul class="formatter-ul">
<li class="formatter-li">Contrôle du bon fonctionnement du premier mega-octet de la mémoire vive
</li><li class="formatter-li">Initialisation de vecteurs d'interruption,
</li><li class="formatter-li">Tests de différents éléments bas niveau de la carte mère (DMA, APIC, ...),
</li><li class="formatter-li">Vérification de l'état des données de la NVRAM,
</li><li class="formatter-li">Application des données de la NVRAM,
</li><li class="formatter-li">Initialisation du BIOS vidéo,
</li><li class="formatter-li">Décompte & test sommaire de la mémoire vive,
</li><li class="formatter-li">Reset, initialisation, configuration et détection des périphériques USB,
</li><li class="formatter-li">Reset, initialisation, configuration et détection des périphériques IDE & SATA,
</li><li class="formatter-li">Constitution de la liste des périphériques "bootables",
</li><li class="formatter-li">Test présence et état du clavier (touche collée),
</li><li class="formatter-li">Lancement des différentes Expansion ROMs des cartes SATA/SCSI RAID ou réseau,
</li><li class="formatter-li">et de tout un tas d'autres choses...<br />
</li></ul><br />
<br />
A noter que l'ordre peut varier selon la criticité.<br />
<br />
<h4 class="formatter-title">Aparté : La POST-Card</h4><br />
<br />
<img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/post-card.jpg" alt="" class="b-lazy" /><br />
<br />
Le déroulement du POST peut-être surveillé par une <a href="https://en.wikipedia.org/wiki/POST_card">POST-Card</a>, une carte additionnelle enfichable sur un port PCI ou ISA, qui affiche l'étape de la dernière routine ou du dernier test appelé. A chaque étape du POST correspond un "code" hexadécimal à 2 caractères. Ce qui peut aider au diagnostic d'un ordinateur qui n'arrive plus à démarrer alors que l'on a toujours pas d'affichage vidéo. Vous en trouverez à la pelle sur eBay pour quelques euros.<br />
<br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/7segments.jpg" alt="" class="b-lazy" /></p><br />
<br />
Des afficheurs 7 segments peuvent déjà être installés sur les cartes mères haut de gamme comme celles pour les gamers. De quoi provoquer l'hilarité <a href="https://youtu.be/WTAO1MygPys?t=5m32s">d'abrutis qui ne comprennent rien</a> à ce qu'ils voient.<br />
<br />
Remarque sur les POST-card : les codes hexadécimaux varient d'un "BIOS vendor" à l'autre et selon les versions de BIOS. Les séquences de codes ne sont pas les mêmes d'une carte mère à l'autre. Ne vous fiez pas aux tableaux joints sur un papier ou une notice, ils sont en général obsolètes. Vous pouvez tenter quand même votre chance sur <a href="http://www.postcodemaster.com/">www.postcodemaster.com</a>. De plus, il ne faut pas considérer la POST-card comme une carte magique qui vous indique comme par enchantement ce qui ne va pas. Vous vous doutez bien que si les choses étaient aussi simples, vous en auriez déjà entendu parlé et vous en auriez déjà une chez vous.  <img src="https://www.jonathandupre.fr/images/smileys/wink.png" alt=";)" title=";)" class="smiley" /> Désolé mais à un moment il faut un peu d'expérience.  <img src="https://www.jonathandupre.fr/images/smileys/laugh.png" alt=":lol" title=":lol" class="smiley" /> Plus d'info sur <a href="https://fr.wikipedia.org/wiki/Testeur_de_carte_m%C3%A8re">la page Wikipedia</a>.<br />
<br />
Une fois les vérifications faites et qu'il n'y a pas d'erreur, le BIOS (selon les variantes) laisse place au tableau récapitulatif et fait un bip court via le buzzer, puis tente de joindre un périphérique amorçable pour démarrer un chargeur de démarrage puis un système d'exploitation.<br />
<br />
<img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/POST2.png" alt="" class="b-lazy" /><br />
<br />
<h4 class="formatter-title">Le SETUP</h4><br />
<br />
Le SETUP (ou CMOS Setup / CMOS Configuration) est le nom donné à l'utilitaire de configuration intégré au BIOS. L'utilisateur peut l'appeler pour configurer le BIOS de sa machine. Il existe beaucoup de sortes d'écrans différents. Il s'agit d'un utilitaire graphique manipulable au clavier :<br />
<br />
<img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/setup_screens1.jpg" alt="" class="b-lazy" /><br />
<br />
Depuis l'UEFI, les interfaces sont plus jolies, avec prise en charge de la souris :<br />
<br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/setup_screens2.jpg" alt="" class="b-lazy" /></p><br />
<br />
Le SETUP permet toujours à l'utilisateur :<br />
<br />
<ul class="formatter-ul">
<li class="formatter-li">d'ajuster la date et l'heure
</li><li class="formatter-li">de régler la séquence de démarrage
</li><li class="formatter-li">de sauvegarder les nouveaux réglages (Save & Exit Setup)
</li><li class="formatter-li">d'annuler tous les réglages que l'on a touché, sans rien sauvegarder (Exit Without Saving)
</li><li class="formatter-li">de restaurer les paramètres par défaut (Load ***** Defaults)<br />
</li></ul><br />
<br />
Selon le modèle de la carte mère, les options disponibles dans le SETUP sont plus ou moins fournies et les amateurs d'overclocking y trouvent toujours leurs réglages préférés. Même si ceux-ci sont de nos jours ajustables directement depuis le système d'exploitation, via des logiciels utilitaires d'overclocking divers et variés.<br />
<br />
<h3 class="formatter-title">Comment rentrer dans le SETUP de son BIOS ?</h3><br />
<br />
Pour rentrer dans le SETUP il suffit généralement de presser une touche (ou une combinaison de touches) du clavier au moment du POST dans un certain intervalle de temps (quelques secondes) :<br />
<br />
<ul class="formatter-ul">
<li class="formatter-li">Après que le clavier soit totalement initialisé (clignotement des LEDs)
</li><li class="formatter-li">Avant que le timeout ne soit expiré ou que le POST ait terminé son travail<br />
</li></ul><br />
<br />
Cette touche n'est pas standardisée. Généralement on croise souvent les touches : SUPPR. (DEL), et les touches de fonction F1 à F12. Au moment du POST en général un message "<em>Press F2/DEL to enter SETUP</em>" vous est indiqué, bien que ce message peut être volontairement masqué (selon la configuration).<br />
<br />
<h3 class="formatter-title">Un peu de vocabulaire diantre !</h3><br />
<br />
<h4 class="formatter-title">NVRAM</h4><br />
<br />
Le sigle NVRAM signifie en anglais <em>Non-Volatile Random Access Memory</em>. On l'appelle aussi la <em>Non-volatile BIOS memory</em>. C'est tout simplement la mémoire (ou l'emplacement mémoire) dans laquelle on va stocker les paramètres du BIOS que l'on sauvegarde via le SETUP.<br />
<br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/content.gif" alt="" class="b-lazy" /></p><br />
<br />
Cette mémoire n'a rien à voir avec la RAM (mémoire centrale). La RTC (l'horloge) peut aussi l'utiliser pour y stocker l'heure. Il s'agit d'une mémoire de type <a href="https://fr.wikipedia.org/wiki/Static_Random_Access_Memory">SRAM</a> de faible capacité (à peine quelques octets). Comme il s'agit de SRAM (et non pas de ROM) elle a besoin constamment d'être alimentée sinon les données stockées sont perdues. Le code (programme) du BIOS n'est pas stocké dans la NVRAM mais dans une ROM/PROM/EPROM/EEPROM/Flash à part.<br />
<br />
J'en vois déjà certains venir me dire : "et mais dis donc ça ne rentrerai pas en contradiction avec le fait qu'elle soit non-volatile si il faut l'alimenter ta NVRAM ?". En effet il y aurait de quoi s'y perdre. Il s'agit d'un nom inapproprié, car c'était du temps où les PC étaient équipés des fameuses RTC DALLAS (puce tout en un), mais c'est pourtant très simple : c'est justement parce que on lui ajoute une pile/batterie qu'elle en devient non-volatile.  <img src="https://www.jonathandupre.fr/images/smileys/wink.png" alt=";)" title=";)" class="smiley" /> Je vous rappelle que la mémoire flash n'existait pas à l'époque. En résumé :<br />
<br />
<p style="text-align: center;"><strong><span style="font-size: 25px;">NVRAM  = SRAM (CMOS) + sa pile/batterie</span></strong></p><br />
<br />
Depuis les Pentium/Pentium2, la partie SRAM de la NVRAM est située dans le Southbridge. De nos jours elle est remontée dans le <a href="https://fr.wikipedia.org/wiki/Platform_controller_hub">PCH</a>.<br />
<br />
<h4 class="formatter-title">CMOS</h4><br />
<br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/cmos.jpg" alt="" class="b-lazy" /></p><br />
<br />
CMOS signifie <em>Complementary metal&#8211;oxide&#8211;semiconductor</em>, c'est un procédé de fabrication pour les circuits-intégrés (comme le PMOS autre technologie de MOS). Point-barre. L'avantage du CMOS c'est qu'il réclame peu d'énergie. C'est pour cela qu'on a choisi cette technologie pour fabriquer la partie SRAM de la NVRAM. Une simple pile bouton CR2032 permet d'alimenter cette SRAM de type CMOS pendant des années sans souci. Une phrase du genre "vider le CMOS" n'est foncièrement pas fausse, par contre "vider le BIOS" n'est pas correct. Même si par abus de langage on le retrouve souvent.<br />
<br />
<h3 class="formatter-title">La "pile du BIOS" et son rôle (pile de sauvegarde)</h3><br />
<br />
C'est un terme que j'entends souvent "la pile du BIOS", c'est bien sûr un abus de langage aussi, ladite pile ne sert pas pour le BIOS à proprement parler mais pour la NVRAM (en rapport avec le BIOS). Le BIOS étant stocké dans une mémoire morte (Mask ROM, PROM, EPROM, EEPROM, Flash), pas besoin qu'une pile l'alimente pour que le programme soit conservé. Par contre la NVRAM a constamment besoin d'être alimentée pour conserver les réglages. On devrait donc parler de "pile de la NVRAM".<br />
<br />
La puce qui contient le BIOS ne contient que le programme logiciel, les réglages du BIOS, eux, sont stockés ailleurs. Selon la génération de la carte mère, il sont soit stockés dans la fameuse puce DALLAS qui intègre sa propre pile, soit dans le southbridge du chipset de la carte mère. Si vous retirez la puce du BIOS (ROM) de la carte mère (si elle se trouve sur un support amovible/socket) vous ne perdrez jamais vos réglages. En revanche vous les perdrez si vous retirez la pile.<br />
<br />
La pile est utilisée lorsque le PC n'est pas sous-tension. Pour un PC avec une alimentation ATX (avec soft-power), la NVRAM est alimentée par le +5V standby tant que l'alimentation est sur secteur, ensuite c'est la pile qui est appelée et qui se vide. Par contre conservez à l'esprit que la pile elle-même s'auto-décharge et que même sur un serveur alimenté H24 pendant 15 ans, la pile sera également morte au bout de cette période, même si elle n'a pas été utilisée, le serveur étant constamment branché.<br />
<br />
Sur un vieux PC type AT, où le secteur est coupé par l'interrupteur en face avant (grosso modo avant 1997-1998) : la pile sert dès l'arrêt électrique.<br />
<br />
<h4 class="formatter-title">Comment savoir si ma pile est morte ?</h4><br />
<br />
Lorsque la pile est à bout, elle ne fournit plus l'énergie nécessaire à la NVRAM pour conserver les données, les données de la configuration du BIOS sont perdues. Au prochain boot, le BIOS vérifiera l'intégrité des données de la configuration du BIOS depuis la NVRAM et trouvera une anomalie (par comparaison de checksum - somme de contrôle). Il ne chargera pas les données, qui pour lui sont altérées, il utilisera une configuration minimale "par défaut" et vous affichera le message "CMOS Checksum bad" ou "CMOS Checksum error". Accompagné aussi d'un message en anglais comme quoi l'heure et la date sont perdues et ne sont pas configurées.<br />
<br />
Il vous faudra donc reconfigurer les paramètres de votre BIOS ainsi que la date en entrant dans le SETUP, et sortir du SETUP pour inscrire les paramètres en NVRAM. Le PC va rebooter (ou continuer) pour les prendre en compte. Et puis bien sûr il faudra aussi remplacer la/les pile(s) ou accumulateur(s) pour que les données soient conservées à nouveau les prochaines fois que vous éteindrez/débranchez votre machine.<br />
<br />
<h4 class="formatter-title">Anticiper le changement de la pile, c'est possible ?</h4><br />
<br />
Certaines carte-mères peuvent "monitorer" la tension actuelle provenant de la pile et vous afficheront donc l'information dans le SETUP sous l&#8217;appellation VBAT.<br />
<br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/vbat.jpg" alt="" class="b-lazy" /></p><br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/vbat2.jpg" alt="" class="b-lazy" /></p><br />
<br />
Certains BIOS "gentils" vous avertirons avec un message au boot pour vous dire "CMOS battery low" ou quelque chose comme cela pour vous prévenir que la pile est bientôt vide.<br />
<br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/vbat3.jpg" alt="" class="b-lazy" /></p><br />
<br />
Mais généralement ce sera trop tard, vous aurez le message "CMOS battery failed" pour dire que c'est trop tard et que les réglages sont perdus.<br />
<br />
<h4 class="formatter-title">Puis-je remplacer la pile à chaud ?</h4><br />
<br />
Oui et non. Si votre pile est bientôt morte. Comme le rappelle Stéphane Marty dans sa vidéo, le mieux étant de remplacer la pile avant qu'elle ne flanche. Sauf que, si vous débranchez votre PC pour changer la pile vous allez perdre les réglages, la première chose à faire c'est d'aller dans le BIOS et de noter les réglages quelque part avant toute intervention. Tout simplement pour les remettre correctement après plus tard si on les perds.<br />
<br />
Pour un PC ATX : pour éviter de perdre les réglages lorsque l'on remplace la pile on peut le faire avec la tension +5V standby de présente, c'est à dire PC branché au secteur mais éteint. Le hic c'est qu'une pile qui tombe sur la carte mère ça peut faire des court-circuits. Oui on peut le faire sans crainte mais avec du tact, si vous pouvez le faire sans balader la pile sur la carte mère lors de vos manipulations. Ne le faites pas PC allumé, cela ne sert à rien et aggrave les risques en cas de mauvaise manipulation.<br />
<br />
<h4 class="formatter-title">Procéder à un vidage du CMOS</h4><br />
<br />
C'est l'action liée au BIOS la plus connue du grand public : "faire un reset du CMOS". L'action consiste à vider le contenu de la NVRAM. Comme on vient de le voir plus haut : lorsque la pile est morte les réglages de la NVRAM sont perdus. Dès lors si on veut volontairement que son ordinateur perde ces réglages il n'y a qu'a couper l'alimentation de la NVRAM : c'est à dire enlever sa pile pendant quelques secondes (voire une minute pour être sûr).<br />
<br />
Mais pourquoi vouloir faire cela ?<br />
<br />
Généralement lorsque son PC ne démarre plus et que l'on se trouve devant un écran noir. Les programmes des BIOS d'une certaine époque étaient "bêtes". Comme vu avant, lors du démarrage de la machine : le BIOS fait une vérification des données du CMOS par somme de contrôle. Le BIOS lit l'intégralité de la NVRAM et en calcule une somme de contrôle (checksum). Ensuite il compare celle-ci avec la somme déjà inscrite quelque part lors du dernier passage de l'utilisateur dans le SETUP. Si les deux sommes de contrôles ne sont pas identiques alors le BIOS charge des valeurs par défaut, n'applique pas les données issues de la NVRAM et vous affiche le message CMOS Checksum bad" ou "CMOS Checksum error". Si par contre les deux sommes de contrôle étaient les mêmes alors c'est que les données du CMOS ne sont pas corrompues, elles sont intègres. Dès lors le BIOS les appliquaient.<br />
<br />
Sauf que si l'utilisateur avait mis des paramètres erronés dans le SETUP comme des fréquences trop hautes pour le CPU ou des mauvais timing pour la mémoire, le BIOS appliquera les réglages souhaités (à chaque démarrage) et demande alors au CPU ou à la RAM de tourner trop vite ce qui fait planter l'ordinateur avant même d'avoir une image à l'écran. L'ordinateur ne démarre pas.<br />
<br />
La seule solution est de vider les réglages de la NVRAM : pour cela soit on peut retirer la pile/batterie de la carte mère, soit déplacer ou installer un cavalier (jumper) sur la carte mère. Consultez le mode d'emploi de la carte mère. En général la cavalier se nomme CLEARCMOS, JCMS ou CLRMOS.<br />
<br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/clrcmos.jpg" alt="" class="b-lazy" /></p><br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/cmos_jumper.jpg" alt="" class="b-lazy" /></p><br />
<br />
<strong>N'oubliez pas de débrancher le cordon d'alimentation du PC avant de déplacer le cavalier et de bien le remettre à sa place AVANT de rebrancher le cordon d'alimentation du PC. Vous pourriez endommager votre carte mère.</strong><br />
<br />
Par la suite au prochain reboot les réglages par défaut seront appliqués. Vous devrez par contre tout remettre les paramètres.<br />
<br />
<a href="http://www.cgsecurity.org/Articles/biospwd/"><strong><p style="text-align: right;">Pour en savoir plus</p></strong></a><br />
<br />
<h4 class="formatter-title">Reprise automatique sur incident</h4><br />
<br />
Depuis quelques années les BIOS sont plus intelligents, avec un système de fanion (ou de flag), ils sont capables de s'apercevoir que les réglages utilisateurs ne sont pas bons et sont capables de redémarrer lorsqu'ils échouent à appliquer la configuration utilisateur laissée dans la NVRAM. Plus besoin de "vider la NVRAM" manuellement même si c'est toujours possible de la faire.<br />
<br />
Exemple simplifié : Lorsque le BIOS tente de démarrer, il place la valeur 1 (KO - NOK) quelque part en NVRAM. Puis ensuite il charge la configuration utilisateur et l'applique, si le PC est toujours fonctionnel après cette étape, il place la valeur 2 (OK) et l'utilisateur peut rentrer dans le SETUP ou démarrer sous Windows/Linux normalement.<br />
Si le PC n'est pas fonctionnel après application des réglages utilisateurs, la valeur 2 n'est pas placée en NVRAM car le PC est planté. Si l'utilisateur redémarrage sa machine le BIOS va lire la NVRAM et tomber sur la valeur 1 : cela va indiquer au BIOS que le démarrage précédent ne s'est pas bien passé, puisque dans un cas nominal il devrait trouver la valeur 2 (OK) laissé la fois d'avant.<br />
<br />
Dans ce cas le BIOS chargera d'office des valeurs "safe" par défaut et ignorera les réglages utilisateurs. Il pourra en plus <a href="https://linustechtips.com/main/uploads/monthly_2016_02/14560860237612105899705.jpg.f36912490d645a5b338818a8d6944fb7.jpg">indiquer un message à l'écran</a> pour inviter l'utilisateur à les contrôler et les modifier du genre "Previous Boot Failed. Defaults values used. Please run SETUP to check parameters.".<br />
<br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/boot_failed.jpg" alt="" class="b-lazy" /></p><br />
<br />
C'est un peu le même mécanisme avec les fonctions <a href="http://www.overclock3d.net/gfx/articles/2009/11/14175738119l.jpg">d'overclocking automatique dans les BIOS</a> : le BIOS procède pas à pas et applique à chaud la nouvelle fréquence (200Mhz puis 201, 202, 203, 204, etc...) et inscrit après 2 secondes de validation la valeur dans le CMOS jusqu'à une fréquence fatidique où le CPU/RAM perdra la boule. La dernière valeur du FSB inscrite en NVRAM correspondra donc à la dernière bonne valeur supportée, avant celle supérieure qui fait tout planter. L'utilisateur à juste à rebooter sa machine pour retrouver un PC fonctionnel avec la plus haute fréquence du FSB supportée qui a été déterminée.<br />
<br />
<span id="batteries"><h3 class="formatter-title">Les différents types de "piles" utilisées</h3></span><br />
<br />
<h4 class="formatter-title">La CR2032</h4><br />
<br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/cr2032_replace.jpg" alt="" class="b-lazy" /></p><br />
<br />
De nos jours la pile au lithium CR2032 semble être la référence, mais aucun standard en la matière n'est défini à ma connaissance, rien n&#8217;empêche un constructeur de mettre autre chose. Rappel : une CR2032 est une pile, pas un accu, elle ne se recharge pas. Une fois morte il faut la remplacer. Sa durée de vie très est variable, mais généralement c'est de l'ordre de quelques années (3-10 ans). Elle est installée dans un socket et est facilement remplaçable.<br />
<br />
<h4 class="formatter-title">Les piles conventionnelles (LR6/LR3)</h4><br />
<br />
Déjà croisées dans <a href="https://www.youtube.com/watch?v=gNAFbC1oVWk">ma vidéo sur le Tulip</a>, elles étaient utilisées autrefois.<br />
<br />
<h4 class="formatter-title">Les accus Ni-Cd & Ni-Mh</h4><br />
<br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/varta.jpg" alt="" class="b-lazy" /></p><br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/carte_abimee.jpg" alt="" class="b-lazy" /></p><br />
<br />
D'une forme cylindrique, ce fut une calamité ces machins en 3.6V, sur le long terme ils coulent et ruinent la carte mère. Vous trouverez beaucoup d'articles qui parlent de cela sur le net car elles ont été installées dans des flippers, des bornes d'arcade, des Amiga, et plein d'autres choses. Vous les trouverez pas mal dans les PC de génération i386/i486.<br />
<br />
<ul class="formatter-ul">
<li class="formatter-li"><a href="http://www.atomicfe.com/forums/index.php?topic=195.0">http://www.atomicfe.com/forums/index.php?topic=195.0</a>
</li><li class="formatter-li"><a href="http://obligement.free.fr/articles/piles_et_batteries_qui_coulent.php">http://obligement.free.fr/articles/piles_et_batteries_qui_coulent.php</a>
</li><li class="formatter-li"><a href="http://todier.over-blog.com/pages/Changer_la_pile_dun_AMIGA_2000-1356073.html">http://todier.over-blog.com/pages/Changer_la_pile_dun_AMIGA_2000-1356073.html</a>
</li><li class="formatter-li"><a href="http://forum.wda-fr.org/viewtopic.php?t=2190">http://forum.wda-fr.org/viewtopic.php?t=2190</a><br />
</li></ul><br />
<br />
On peut remplacer <a href="http://mcbx.netne.net/computers/pc/faq/index.htm">ces accus par une pile CR2032 mais il faut mettre une diode</a>. En effet la pile ne se recharge pas donc il faut bloquer le courant de la recharge mais le laisser passer dans l'autre sens.<br />
<br />
<h4 class="formatter-title">Les RTC DALLAS</h4><br />
<br />
<img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/107/dallas13.jpg" alt="" class="b-lazy" /><br />
<br />
Une RTC c'est une <em><a href="https://fr.wikipedia.org/wiki/Horloge_temps_r%C3%A9el">Real Time Clock</a></em>. Dorénavant en partie incluse dans les <a href="https://fr.wikipedia.org/wiki/Southbridge_%28informatique%29">southbridge</a>/<a href="https://en.wikipedia.org/wiki/Platform_Controller_Hub">platform controller hub</a> des cartes mères modernes, elles constituait avant une pièce à part entière.<br />
<br />
Avec l'ère des 486/Pentium, la <a href="https://en.wikipedia.org/wiki/Dallas_Semiconductor">firme DALLAS</a> a produit plusieurs modèles de la forme d'un rectangle. Dans cette puce DIP-24 se trouve le circuit-intégré avec la circuiterie d'horloge et de la SRAM mais aussi un quartz ainsi qu'une pile, donnée pour servir pendant 10 ans. Le module est donc quasi-complètement autonome.<br />
<br />
Au bout de quelques décennies, évidemment la pile interne est morte et le module ne retient plus ni l'heure, ni les réglages du SETUP fait par l'utilisateur. Le problème étant qu'ici la pile est interne et ne peut être remplacée. Il faut donc remplacer le module DALLAS au complet. Ces modules sont obsolètes, DALLAS fourni encore des modèles "compatibles" avec les plus anciens. Sinon vous en trouverez des "compatibles" sur le marché chinois. Seulement le module est souvent soudé directement sur la carte mère ce qui implique du matériel pour le retirer (comme une station de dessoudage). Des fois les constructeurs l'auront placé sur un socket, dans ce cas le module DALLAS peut être facilement retiré.<br />
<br />
<img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/107/dip24.jpg" alt="" class="b-lazy" /><br />
<br />
Pour éviter de le remplacer on peut toujours <a href="https://www.jonathandupre.fr/articles/33-ordinateurs-old-school/107-rework-dallas-ds1287">greffer une pile CR2032</a> si on est un peu calé en soudure et avec un DREMEL.<br />
<br />
<img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/107/dallas6.jpg" alt="" class="b-lazy" /><br />
<br />
<h4 class="formatter-title">Aller plus loin</h4><br />
<br />
Très bon site : <a href="http://pc-restorer.com/replacing-cmos-batteries-in-old-pcs/">http://pc-restorer.com/replacing-cmos-batteries-in-old-pcs/</a><br />
<br />
<h3 class="formatter-title">Les fonctionnalités</h3><br />
<br />
Depuis l'IBM PC de 1981, le BIOS n'a cessé de grossir pour devenir obèse. D'une taille minuscule de 4Ko on en est arrivé à 1Mo avant l'UEFI qui a pris sa place. Le BIOS s'est vu greffer de nouvelles fonctionnalités au fil des ans. On a demandé au BIOS d'être plus "user-friendly" et de s'occuper de plus de choses, mais tout ce nouveau code prend de la place. En plus on lui demande de se cacher derrière des logos pour ne pas brusquer l'utilisateur.  <img src="https://www.jonathandupre.fr/images/smileys/whistle.png" alt=":whistle" title=":whistle" class="smiley" /><br />
<br />
<h4 class="formatter-title">ACPI</h4><br />
<br />
Apparue en 1996, l'ACPI pour <em>Advanced Configuration and Power Interface</em>, est un standard logiciel <a href="http://www.acpi.info/">documenté, multiplate-forme et ouvert</a> utilisé par les systèmes d'exploitation pour :<br />
<ul class="formatter-ul">
<li class="formatter-li">la découverte,
</li><li class="formatter-li">la configuration,
</li><li class="formatter-li">la gestion des états d'alimentation,
</li><li class="formatter-li">et la supervision des composants matériels de l'ordinateur (CPU/chipset/contrôleurs)<br />
</li></ul><br />
<br />
Le BIOS embarque donc à la fois des fonctions logicielles, c'est à dire des bibliothèques de fonctions (<a href="https://fr.wikipedia.org/wiki/Interface_de_programmation">API</a>) ainsi que des tables de configuration fixes ou dynamiques, sur lesquelles le système d'exploitation peut s'appuyer pour contrôler le matériel. Typiquement, cela permet de mettre en sommeil des périphériques et de les réveiller, que ce soit sur un PC portable, un PC de bureau ou un serveur. Il fut destiné à remplacer les anciennes normes <a href="https://en.wikipedia.org/wiki/Advanced_Power_Management">APM</a>, <a href="https://en.wikipedia.org/wiki/MultiProcessor_Specification">MPS</a> et <a href="https://en.wikipedia.org/wiki/Legacy_Plug_and_Play">PlugAndPlay</a>. Tout ceci se retrouve combiné et étendu dans l'ACPI.<br />
<br />
Depuis Windows Vista, le BIOS doit supporter l'ACPI.<br />
<br />
<h4 class="formatter-title">APM</h4><br />
<br />
L'APM signifie <em>Advanced Power Management</em>. Il s'agit d'une API développée par Microsoft et Intel qui est apparue en 1992, elle permet à un système d'exploitation d'avoir une politique de gestion d'énergie pour les composants et des périphériques d'un ordinateur de type PC. Ceci afin d'économiser de l'énergie, l'ordinateur et des périphériques pouvant être mis en veille et réveillés. La vitesse de fonctionnement du processeur peut-être régulée également. Et enfin, elle apporte aussi la gestion logicielle des évènements liés à la batterie pour un ordinateur portable. L'APM fût la première norme en ce sens. Des routines sont implantées dans le BIOS, qui encore une fois, font la passerelle entre le matériel et le système d'exploitation :<br />
<br />
<img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/107/APM-Layers.svg.png" alt="" class="b-lazy" /><br />
<br />
L'APM est aujourd'hui obsolète et a été remplacée par l'ACPI qui est beaucoup plus complète. L'APM n'est plus supportée depuis Windows Vista.<br />
<br />
<h4 class="formatter-title">e820</h4><br />
<br />
e820 est une abréviation pour désigner une méthode, par laquelle le BIOS d'un ordinateur de type x86, rapporte la cartographie de la mémoire centrale (RAM) utilisable par un système d'exploitation. Le logiciel (S.E.) y accède avec l'interruption 15h en ayant placé la valeur e820 (hexadécimal) dans le registre AX du processeur. En retour le S.E. récupère la liste des plages mémoires, celles utilisables (libres) et celles réservées par le BIOS pour le matériel. Vous pouvez retrouver cela furtivement sous Linux lorsqu'il démarre, ou plus au calme via la commande dmesg. Il existe aussi les méthodes e801 et e88 pour les vieux ordinateurs.<br />
<br />
<div class="formatter-container formatter-code code-TEXT"><span class="formatter-title">Code TEXT :</span><div class="formatter-content"><pre style="display:inline;"><pre class="text" style="font-family:monospace;">&nbsp;
Initializing cgroup subsys cpuset
Initializing cgroup subsys cpu
Linux version 2.6.32-358.el6.x86_64 (mockbuild@c6b8.bsys.dev.centos.org)
....
KERNEL supported cpus:
  Intel GenuineIntel
  AMD AuthenticAMD
  Centaur CentaurHauls
BIOS-provided physical RAM map:
 BIOS-e820: 0000000000000000 - 000000000009ec00 (usable)
 BIOS-e820: 000000000009ec00 - 00000000000a0000 (reserved)
 BIOS-e820: 00000000000e0000 - 0000000000100000 (reserved)
 BIOS-e820: 0000000000100000 - 0000000020000000 (usable)
 BIOS-e820: 0000000020000000 - 0000000020200000 (reserved)
 BIOS-e820: 0000000020200000 - 0000000040004000 (usable)
 BIOS-e820: 0000000040004000 - 0000000040005000 (reserved)
 BIOS-e820: 0000000040005000 - 00000000d55d8000 (usable)
 BIOS-e820: 00000000d55d8000 - 00000000d5678000 (reserved)
 BIOS-e820: 00000000d5678000 - 00000000d5897000 (usable)
 BIOS-e820: 00000000d5897000 - 00000000d5f3b000 (ACPI NVS)
 BIOS-e820: 00000000d5f3b000 - 00000000d659b000 (reserved)
 BIOS-e820: 00000000d659b000 - 00000000d65de000 (ACPI NVS)
 BIOS-e820: 00000000d65de000 - 00000000d6d9b000 (usable)
 BIOS-e820: 00000000d6d9b000 - 00000000d6ff1000 (reserved)
 BIOS-e820: 00000000d6ff1000 - 00000000d7000000 (usable)
 BIOS-e820: 00000000d7800000 - 00000000dfa00000 (reserved)
 BIOS-e820: 00000000f8000000 - 00000000fc000000 (reserved)
 BIOS-e820: 00000000fec00000 - 00000000fec01000 (reserved)
 BIOS-e820: 00000000fed00000 - 00000000fed04000 (reserved)
 BIOS-e820: 00000000fed1c000 - 00000000fed20000 (reserved)
 BIOS-e820: 00000000fee00000 - 00000000fee01000 (reserved)
 BIOS-e820: 00000000ff000000 - 0000000100000000 (reserved)
 BIOS-e820: 0000000100000000 - 000000011f600000 (usable)
DMI 2.7 present.
SMBIOS version 2.7 @ 0xF04C0
DMI: Acer Veriton X2611G/Veriton X2611G, BIOS P21-A0                  12/03/2012
e820 update range: 0000000000000000 - 0000000000001000 (usable) ==> (reserved)
e820 remove range: 00000000000a0000 - 0000000000100000 (usable)
...</pre></pre></div></div><br />
<br />
Cette notion de e820 vous la trouverez si vous lancez Memtest86(+) sur un PC x86 dans la zone "MemMap" :<br />
<br />
<img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/107/memtest86_running.png" alt="" class="b-lazy" /><br />
<br />
<h4 class="formatter-title">ESCD</h4><br />
<br />
Encore un acronyme anglais qui signifie <em><a href="https://en.wikipedia.org/wiki/Extended_System_Configuration_Data">Extended System Configuration Data</a></em>. On pourrait le traduire par <em>Données de Configuration Système Supplémentaires</em>. Vous le trouverez au démarrage d'un vieux PC avec le message "Updating ESCD... Success". L'ESCD était utilisé à l'ère des vieilles cartes ISA qui supportaient le Plug-and-Play. C'est la partie logicielle de la mémoire NVRAM dans laquelle le BIOS y stocke/enregistre la configuration des cartes ISA PnP installées telles que les IRQ assignées, les canaux DMA ainsi que les adresses d'Entrée-Sortie mémoire. Le BIOS s'en sert pour conserver les mêmes ressources pour un même périphérique sans devoir à se poser la question à chaque démarrage. Elle reflète donc l'état de la dernière configuration depuis le dernier boot. Une partie de la configuration PCI peut aussi y être stockée. Le BIOS mets à jour ces tables ESCD au boot dès qu'il détecte un changement de matériel (carte rajoutée ou retirée) et qu'il aura décidé d'attribuer telle ressource à telle carte.<br />
<br />
On peut vider cette table de configuration pour faire en sorte que le BIOS ré-attribue-redistribue les ressources aux périphériques, avec l'option "Reset Configuration Data" dans le SETUP. Placez-le à "Enabled", la table sera ainsi vidée et re-remplie par le BIOS au prochain reboot. Il est normal que le paramètre se remette à "Disabled" par la suite.  <img src="https://www.jonathandupre.fr/images/smileys/wink.png" alt=";)" title=";)" class="smiley" /><br />
<br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/reset_escd.jpg" alt="" class="b-lazy" /></p><br />
<br />
Le système d'exploitation (notamment Windows 95-98-ME) peut aussi lire et écrire les données ESCD.<br />
<br />
<p style="text-align: right;">Plus d'infos : <a href="http://www.dewassoc.com/support/bios/escd.htm">1</a>, <a href="http://www.pcguide.com/ref/mbsys/res/pnpESCD-c.html">2</a>, <a href="http://www.pcguide.com/ts/x/sys/booterr_GBER23.htm">3</a></p><br />
<br />
<h4 class="formatter-title">Plug and Play/PnP (ou Plug and PRAY à une époque)</h4><br />
<br />
A ne par confondre avec <a href="https://fr.wikipedia.org/wiki/Universal_Plug_and_Play">UPnp</a> !<br />
<br />
Littéralement "Branchez & Jouez" ou "Branchez & Utilisez", est un terme à la fois technique et commercial pour désigner les équipements informatiques ayant la faculté d'être facilement "reconnus" et exploitables rapidement par l'ordinateur (le BIOS et son système d'exploitation).<br />
 Tu branches, tout se fait tout seul, et hop tu t'en sers. C'était l'idée. Si aujourd'hui installer une carte son ou une carte graphique s'avère facile, Windows/Linux trouve le nouveau périphérique tout seul, il n'y a plus qu'a installer le pilote ou charger le module, et hop roule ma poule, sachez qu'à une époque, c'était loin d'être le cas !  <img src="https://www.jonathandupre.fr/images/smileys/grin.png" alt=":D" title=":D" class="smiley" /><br />
<br />
En fait, le PnP a été quelque chose de révolutionnaire en informatique. Pour bien comprendre son utilité il faut remonter très loin. Comme on l'a vu plus haut avec l'ESCD, les cartes ISA d'un ordinateur AT utilisent des adresse d'I/O et des IRQ/DMA pour communiquer avec le reste de l'architecture du PC, à l'époque tout était configuré par des cavaliers ou interrupteurs sur les cartes elles-mêmes comme ici sur une carte réseau ISA et une carte IDE/Floppy VLB :<br />
<br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/isa_cav.jpg" alt="" class="b-lazy" /></p><br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/vlb_cav.jpg" alt="" class="b-lazy" /></p><br />
<br />
Le but étant que les cartes n'utilisent pas les mêmes ressources et donc il fallait jongler avec les petits cavaliers pour que chaque carte ne rentre pas en conflit avec une autre. Évidemment ces histoires de ressources étaient bien trop compliquées pour le quidam, il fallait que les ordinateurs soient simples dans une optique de démocratisation. Donc le PnP est apparu pour que le BIOS détecte tout seul les cartes et dirige les opérations : chaque carte se voit dorénavant dicter les ressources qu'elle doit prendre. Il n'y a plus de cavaliers qui tienne ! Voici la photo d'une boite de carte son PCI où le PnP apparait comme mis en avant :<br />
<br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/pci128.jpg" alt="" class="b-lazy" /></p><br />
<br />
Pour que cela fonctionne il faut bien sûr que le BIOS du PC soit PnP et que la carte ISA/PCI supporte elle aussi le PnP. Il reste toutefois possible pour les BIOS PnP, de réserver des ressources pour les cartes qui ne comprendraient pas le PnP, qu'on appelle alors les cartes "Legacy". Dans ce cas au lieu d'attribuer l'IRQ au système PnP automatique on là force à être réservée, car l'IRQ est réservée (utilisée) par une carte configurée en dur avec ses cavaliers (Idem pour le canal DMA).<br />
<br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/legacy.jpg" alt="" class="b-lazy" /></p><br />
<br />
<h4 class="formatter-title">SMBIOS</h4><br />
<br />
Comme l'ACPI vu plus haut, le SMBIOS est une "fonctionnalité" offerte par le BIOS. Sauf que là où l'ACPI sert pour l'économie d'énergie, le SMBIOS sert pour que le système d'exploitation (Linux/Windows) ait connaissance d'informations concernant le BIOS et le matériel du PC sur lequel il tourne. Lors du démarrage (au POST) le BIOS rend accessible en mémoire pour l'O.S. une table avec toutes les informations. Cela va du fabricant de la carte mère aux emplacements mémoire et PCI disponibles.<br />
<br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/table.png" alt="" class="b-lazy" /></p><br />
<br />
Sous Linux, vous pouvez accéder à la commande "dmidecode" pour avoir accès à toutes ces informations. La présentation est sous forme d'arboresence mais vous trouverez l'information que vous cherchez.<br />
<br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/screenshot.png" alt="" class="b-lazy" /></p><br />
<br />
Concernant Windows, Microsoft préfère que l'on utilise son API WMI pour avoir accès à ces informations (le problème c'est qu'elles sont filtrées). Les applications ont un accès plus bas niveau avec d'autres API mais c'est plus trivial. Bref, CPU-Z, AIDA64 et autres Speecy savent très bien vous afficher ces informations. Sinon il y a le vulgaire utilitaire d'informations systèmes de Microsoft :<br />
<br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/win_info.png" alt="" class="b-lazy" /></p><br />
<br />
Plus d'infos : <a href="http://www.codeguru.com/cpp/misc/misc/system/article.php/c12347/SMBIOS-Demystified.htm">Lien 1</a>, <a href="http://www.dmtf.org/standards/smbios">Lien 2</a>.<br />
<br />
<h3 class="formatter-title">La licence Windows liée au BIOS</h3><br />
<br />
Pirater Windows, c'est une chose à laquelle beaucoup de geeks s'adonnent (ou s'adonnaient). Une grande partie des installations de Windows dans le monde des particuliers est illégale. Depuis la copie de CD rendue possible fin des 90's, les isos et clés de produit de Windows 95/98/ME/2000/XP sont disponibles sur le web. Si on avait un code (CD-key) obtenu on ne sait où, l'installation depuis le CD (gravé) pouvait se faire sans problème, aucun blocage. Microsoft a commencé à rendre la chose plus difficile avec Windows XP et son processus d'activation. Non seulement il faut une clé mais en plus, selon les versions (corporate ou pas, OEM ou non) l'activation n'était pas necessaire. A l'heure du haut-débit et du THD, il fallait trouver une nouvelle parade pour Microsoft pour à la fois contrer les pirates mais aussi permettre aux marques d'installer en masse des licences Windows OEM sur toutes les bécanes de supermarché. Et ce sans pour autant pouvoir les faire fuiter le parc de machines "de monteur" (Hors circuit OEM - Dell, HP, Toshiba, etc...).<br />
<br />
Viens ensuite l'histoire du CD d'installation. Il fût une époque (elle est révolue), où les CD de Windows XP vendus avec les machines OEM étaient limités. Les disques étaient personalisés pour chaque fabriquant. Un CD de XP provonant d'un ordinateur Dell, ne pouvait pas s'installer sur un PC autre que Dell. Une vérification était faite à l'installation et elle échouait si ça ne matchait pas. Rajoutez à cela que Microsoft à pris soin de séparer les clés OEM et les clés dites "retail" pour les Windows vendus au détail (en version boite). Une clé OEM ne pouvant être utilisée avec un CD provenant d'une version boite et vice-versa.<br />
<br />
Pour Microsoft, une licence OEM est liée à la carte mère, et si cet élément du PC a été choisi ce n'est pas un hasard. Depuis Windows Vista, Microsoft utilise le "<a href="https://en.wikipedia.org/wiki/System_Locked_Pre-installation">System Locked Preinstallation</a>" : la clé OEM se trouve dans le BIOS dans la partie ACPI (qu'on a vu avant). Lorsque le processus d'activation de Windows se mets en route il va consulter la <a href="http://www.stoned-vienna.com/antiwpa.html">table SLIC</a> (Software Licensing Description Table) et vérifier si ces informations sont les bonnes via <a href="http://www.labo-microsoft.org/articles/VolumeActivation2_-_Presentation-Implementation/3/">KMS</a>. Si la table SLIC contient les infos d'un portable Asus et que le certificat Asus est installé, alors il n'y a pas besoin d'activation en ligne, le SLP considère que la carte mère est légitime et active Windows sans Internet. Cette clé peut être récupérée avec <a href="http://esver.free.fr/blog/?p=377">quelques outils</a>.<br />
<br />
La plupart des Windows Vista & 7 AiO qui traînent fonctionnent comme cela. Windows est modifié pour charger en mémoire une fausse table SLIC avant le lancement de Windows et ensuite on installe un certificat. L'activation est réussie.<br />
<br />
Pour Windows 10, voici un site <a href="http://lecrabeinfo.net/tout-savoir-sur-les-licences-windows-retail-oem-vl-cle-produit.html">qui explique très bien</a>. Mais grosso-modo seules les versions Windows VL sont "piratables" via le service KMS. Un utilitaire KMSpico tourne sur la toile et simule un serveur KMS local ce qui accorde 180 jours et ainsi de suite...<br />
<br />
<h3 class="formatter-title">Les types de puces</h3><br />
<br />
La carte mère embarque forcément quelque part une puce pour y loger le BIOS. Voici quelques formes les plus courantes. Elles sont de différentes formes selon la génération de la carte mère et elles n'ont pas le même protocole de lecture-écriture.<br />
<br />
<h4 class="formatter-title">L'époque DIP-32 (Parallel)</h4><br />
<br />
Une puce de BIOS avant les cartes-mères des années 2000 ça ressemblait à cela, un boitier DIP32 (Dual In-line Package, 32 broches, 2x16).<br />
<p style="text-align: center;"><br />
<img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/dip32.jpg" alt="" class="b-lazy" /></p><br />
<br />
<h4 class="formatter-title">L'époque PLCC32 (FWH-LPC)</h4><br />
<br />
Par la suite il fallait gagner en compacité, les DIL32 énormes ont été remplacées par des puces au format PLCC32 (Plastic Leaded Chip Carrier, 32 broches, 4x8).<br />
<p style="text-align: center;"><br />
<img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/plcc32.jpg" alt="" class="b-lazy" /></p><br />
<br />
<h4 class="formatter-title">L'époque DIL-8/SO-8/SOIC-8 (SPI)</h4><br />
<br />
En remplaçant les anciens protocoles FWH (Firmware Hub) & LCP (Low Pin Count) par le protocle SPI (Serial Peripheral Interface), les puces ont ensuite diminué en nombre de broches, plus besoin de 28 broches. Seulement 8 suffisent. Il existe donc des puces de BIOS au format DIP-8  (Dual In-line Package, 8 broches, 2x4).<br />
<br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/spi_dip8.jpg" alt="" class="b-lazy" /></p><br />
<br />
Mais aussi des variantes miniatures qui sont généralement plus courantes de nos jours (SO-8/SOIC-8) :<br />
<br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/spi_so8.jpg" alt="" class="b-lazy" /></p><br />
<br />
Pour plus d'informations et d'illustrations, voici un très bon lien à consulter : <a href="https://www.flashrom.org/Technology">https://www.flashrom.org/Technology</a><br />
<br />
<h4 class="formatter-title">Soudée ou sur socket</h4><br />
<br />
Notez également que les puces peuvent être soudées directement sur la carte mère ou bien être installées dans un connecteur (socket) et c'est donc seulement le socket qui est soudé. Dans ce cas la puce devient extractible. Que la puce soit installée ou non dans un socket relève du choix du constructeur de la carte mère et n'a aucune incidence sur son fonctionnement.<br />
<br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/socket.jpg" alt="" class="b-lazy" /></p><br />
<br />
Dessouder une puce de BIOS est un exercice complexe qui réclame dextérité et quelques bons outils, notamment une station à air chaud.<br />
<br />
<h3 class="formatter-title">Configurez votre BIOS putain !</h3><br />
<br />
On vous dira souvent qu'un BIOS mal configuré se traduit par un ordinateur plus lent que ce qu'il pourrait faire. Si cette affirmation a été pendant longtemps fortement valable, ceci est de moins en moins vrai de nos jours. En effet, maintenant les BIOS sont 100% automatiques, ça détecte tout, ça s'auto-configure un max, il n'y a plus rien à faire pour que le newbie soit tranquille. A tel point que dans les 365874 vidéos youtube qui vous expliquent comment assembler/monter votre PC vous-même, on passe souvent directement de l'allumage de la machine à l'installation de Windows sans passer par la case "BIOS". Sacrilège ! Chose qui était impossible à une époque.  De nos jours nous n'avons plus à y aller autant qu'avant, surtout depuis l&#8217;apparition des menu de boot sélectifs que l'on peut appeler via une touche comme ceux-ci :<br />
<br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/bootmenu1.jpg" alt="" class="b-lazy" /></p><br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/bootmenu2.jpg" alt="" class="b-lazy" /></p><br />
<br />
De plus Windows sachant faire du <a href="https://fr.wikipedia.org/wiki/NTP">NTP</a>, il met à jour l'heure tout seul comme un grand, même pas besoin d'aller mettre la bonne heure dans le BIOS. Toutefois, je conseille quand même d'aller y faire un tour histoire de "checker" que tous les paramètres soient OK. Malheureusement il faut "s'y connaitre" un peu pour savoir quel réglage influence quoi, à quelle valeur correspond quoi et si tout est correctement paramétré. Et cela, ben ça s'apprend avec l'expérience, dans les livres et autres vidéos de formation, à moins d'avoir la science infuse. En fait la plupart de ces vidéos justement vous disent que ce n'est pas nécessaire, ce qui n'est pas totalement faux. En réalité, c'est surtout parce-qu'ils ne peuvent pas le faire car :<br />
<br />
<ul class="formatter-ul">
<li class="formatter-li">tout le monde n'ayant pas les mêmes cartes mères, la diversité des modèles fait qu'ils devraient s'en tenir à des choses généralistes pas valables chez tout le monde.
</li><li class="formatter-li">il faudrait détailler les réglages et donc les expliquer ce qui prendrait trop de temps et rallongerai leur vidéo qu'ils veulent absolument au format court.
</li><li class="formatter-li">il faudrait détailler les réglages et donc les expliquer ce qu'ils ne sauraient pas faire <img src="https://www.jonathandupre.fr/images/smileys/whistle.png" alt=":whistle" title=":whistle" class="smiley" /><br />
</li></ul><br />
<br />
Or, ne pas savoir manipuler son BIOS c'est aussi ne pas savoir maitriser un outil qui pourrait vous permettre de sortir de certaines emmerdes  lorsque le PC déraille.<br />
<br />
<h3 class="formatter-title">Flasher (mettre à jour) son BIOS</h3><br />
<br />
<h4 class="formatter-title">Pourquoi mettre à jour son BIOS ?</h4><br />
<br />
Une mise à jour du BIOS peut-être nécessaire afin de corriger certains bugs (surtout de compatibilité) et aussi pour pouvoir supporter de nouveaux processeurs.<br />
<br />
<h4 class="formatter-title">Quels sont les risques ?</h4><br />
<br />
Mettre à jour son BIOS est une opération "risquée" dans le sens où si l'opération foire, le logiciel inscrit dans la puce flash se retrouve altéré, dans un état incohérent, et il ne peut démarrer. Ce qui mène à un ordinateur qui démarre électriquement mais qui reste sur un écran noir, inerte, ou qui reboote en boucle (selon les cartes mères). Dans ce cas la <a href="https://en.wikipedia.org/wiki/POST_card">post-CARD</a> dont je parle maintes fois dans mes vidéos permet de voir certaines choses.<br />
<br />
<h4 class="formatter-title">Comment procéder ?</h4><br />
<br />
Il existe des utilitaires permettant de flasher le BIOS directement sur l'ordinateur lui-même. Les plus anciens sont à utiliser sous MS-DOS ou FreeDOS. Il fallait alors sortir la disquette de boot de Windows 98/ME ou utiliser le CD bootable. Depuis près d'une décennie, il est bien sûr possible de le faire sous Windows 32/64 bits via des executables WinPE (.exe) directement, ou même dans le BIOS via une clé USB. Les constructeurs essayent de rendre la chose la plus facile possible avec des programmes de plus en plus automatiques du genre MSI LiveUpdate par exemple.<br />
<br />
<h4 class="formatter-title">Les BIOS moddés (modding)</h4><br />
<br />
Il existe sur une le net une large communeauté de bidouilleurs et d'experts qui sont capables (avec les outils adéquats) de modifier les BIOS originaux donnés par les constructeurs (Asus, MSI, Gigabyte, etc...), et on trouve de vrais maîtres en la matière. Les modifications apportées permettent de modifier la largeur LBA pour faire reconnaitre des disques plus gros (LOL c'est vieux ça), d'activer certains fonctions d'overclocking qui étaient cachées/bridées, de modifier les tables SLIC pour l'activation de Windows, prendre en charge des nouveaux processeurs (microcode), intégrer des Option ROMs (= Expansion ROMs) supplémentaires, ajouter un logo personnalisé, etc...<br />
Ces BIOS sont à utiliser à vos risques même si rares sont les plaisantins qui fournissent des BIOS pourris (volontairement corrompus) juste pour le plaisir de vous voir ruiner votre carte mère. Après il existe dans le même cadre la modification de BIOS pour carte graphique, de cartes RAID, etc...<br />
Si cela vous interesse consultez le site <a href="https://www.bios-mods.com/forum/">bios-mods.com</a>.<br />
Pour les plus vaillants trouvez le livre BIOS DISASSEMBLY NINJUTSU UNCOVERED &#8211; THE BOOK.<br />
<br />
<h4 class="formatter-title">Comment cela fonctionne ?</h4><br />
<br />
L'opération de flashage réalisée par l'utilitaire consiste en plusieurs étapes successives :<br />
<br />
<ul class="formatter-ul">
<li class="formatter-li">1 - l'effacement de la puce (la rendre vierge)
</li><li class="formatter-li">2 - la reprogrammation de la puce (inscription nouvelle version)
</li><li class="formatter-li">3 - le contrôle (vérification par relecture : contenu de la puce = contenu du fichier programmé ?)
</li><li class="formatter-li">4 - (facultatif) effacement des données dans la NVRAM
</li><li class="formatter-li">4 - (facultatif) Mise à jour/reprogrammation du BootBlock<br />
</li></ul><br />
<br />
Les logiciels peuvent fonctionner de deux façons, soit ils procèdent en faisant la puce complète (Méthode 1) ou par sections/pages (Méthode 2).<br />
<br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/prog1.png" alt="" class="b-lazy" /></p><br />
<br />
Dans tous les cas, un reboot sera nécessaire pour placer en mémoire et exécuter le nouveau BIOS fraîchement programmé.<br />
<br />
<h3 class="formatter-title">Les techniques pour récupérer un flash loupé (bad flash)</h3><br />
<br />
Flasher son BIOS (pour généralement le mettre à jour) peut se solder par une mésaventure. <em>Si à 50 ans tu n'a connu aucun "bad flash" c'est que tu as loupé ta vie d'informaticien.</em> De nos jours cela arrive moins, car les utilitaires de flash vérifient que le nouveau BIOS téléchargé est bien pour la carte mère en question, et il y a des contrôles de checksums automatiques, ce qui évite certaines étourderies et autres transferts de fichiers corrompus, mais il y a d'autres facteurs qui font que ça peut foirer.<br />
<br />
Déjà, on vous l'a déjà dit certainement mais, lorsqu'on met à jour son BIOS il ne faut pas couper l'alimentation de l'ordinateur, au risque de se retrouver avec un BIOS partiellement programmé et effacé. Le BIOS est donc logiquement dans les choux et le PC refuse de démarrer, cela se solde par un écran noir. On évitera donc de programmer son BIOS quand il y a de l'orage. Et pour un PC portable on le mettra sur secteur, flasher un BIOS alors que l'on tourne sur la batterie est une mauvaise idée (d'ailleurs certains utilitaires de flash le repère et vous empêchent). Même chose pour les ROM de smartphone, on met le chargeur.<br />
<br />
On peut se retrouver dans la panade lorsque on a choisit le mauvais BIOS pour sa carte mère. Déjà non seulement il faut s'assurer du bon modèle mais aussi de la révision de la carte lors du téléchargement sur le site. Certaines cartes un bon BIOS particulier par révision (REV/VER) de la carte et d'autres non, c'est au cas par cas.<br />
<br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/giga.jpg" alt="" class="b-lazy" /></p><br />
<br />
Et enfin quand on a vraiment pas de chance, on peut aussi tomber sur une puce Flash moisie. La programmation se passe mal car les cellules de la puce sont physiquement altérées en interne (cas déjà arrivé personnellement). Il faut donc remplacer la puce par une neuve qui fonctionne bien et recommencer.<br />
<br />
<h4 class="formatter-title">La récupération via le BootBlock</h4><br />
<br />
Vous ne le saviez peut-être pas, mais en réalité Award, AMI et consorts ont déjà prévu ces avaries et ont constitué leur BIOS "en deux parties" pour parrer à la chose. Une partie qu'on va qualifier de "critique" et l'autre un peu moins (le reste, le MainBlock). Toutes les cartes mère n'ont pas cela. Il s'agit d'un morceau de code (ou une zone) tout rikiki qu'on appele le BootBlock.<br />
<br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/bootblock0.jpg" alt="" class="b-lazy" /></p><br />
<br />
Lorsqu'un BIOS démarre, une de ses premières tâches et de se vérifier lui-même, il se lit intégralement et fait une somme de contrôle, si cette somme de contrôle n'est pas la même que celle calculée et placée à un endroit précis lors du dernier flash, cela signifie que le BIOS est corrompu. Si la carte mère peut le faire, la procédure de récupération via ce BootBlock s'active. Selon les BIOS vous aurez droit à un affichage vidéo clair et limpide :<br />
<br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/bootblock1.jpg" alt="" class="b-lazy" /></p><br />
<br />
ou alors à un écran noir, la procédure se faisant sans IHM dans le flou total (normalement il faudrait une carte vidéo ISA pour voir quelque chose). Rappel : ici on parle bien du BIOS et non pas du CMOS/NVRAM. Nuance.<br />
<br />
La procédure de BootBlock va enchainer (selon les générations et variantes) les étapes suivantes :<br />
<br />
<ul class="formatter-ul">
<li class="formatter-li">1 - Aller chercher un fichier ROM/BIN en urgence sur un périphérique bootable FAT (lecteur de disquettes, clé USB, CDROM). Ce fichier doit être nommé d'une certaine manière comme par exemple AMIBOOT.ROM pour les BIOS AMI. Evidemment un deuxième PC relié à Internet à coté sera nécessaire pour télécharger le BIOS et placer le fichier sur le support... (si vous avez encore un lecteur de disquettes celui-ci doit faire du bruit).
</li><li class="formatter-li">2 &#8211; Une fois le fichier trouvé celui-ci est lu et la puce est reprogrammée (il faut attendre quelques secondes).
</li><li class="formatter-li">3 &#8211; Un reboot final (normalement le PC reboot tout seul)<br />
</li></ul><br />
<br />
Et tout rentre dans l'ordre, desfois ça marche, mais desfois ça ne marche pas.<br />
<br />
Lors de la procédure de flash via un logiciel, vous pouvez généralement demander à programmer ou non le BootBlock en plus du MainBlock via des arguments ou commutateurs en ligne de commandes.<br />
<br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/bootblock5.jpg" alt="" class="b-lazy" /></p><br />
<br />
Ou des cases à cocher :<br />
<br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/bootblock3.jpg" alt="" class="b-lazy" /></p><br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/bootblock6.jpg" alt="" class="b-lazy" /></p><br />
<br />
Si ces options ne sont pas disponibles dans votre utilitaire de flash, cela est laissé à la discrétion de l'outil. <img src="https://www.jonathandupre.fr/images/smileys/smile.png" alt=":)" title=":)" class="smiley" /> Evidemment vous comprendrez de suite que vous prennez plus de risques lorsque vous décidez de reprogrammer le BootBlock en plus du MainBlock classique. D'autant qu'en général cette section ne bénéficie d'aucune amélioration au fil des versions. Cela est inutile.<br />
<br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/bootblock2.jpg" alt="" class="b-lazy" /></p><br />
<br />
On peut aussi demander à ne pas vider la NVRAM non plus si besoin. Sur cette image les 3 sections sont mises en évidence. On retrouve à chaque fois le trio : erase, write, verify.<br />
<br />
<h4 class="formatter-title">La récupération via une méthode similaire</h4><br />
<br />
Le BootBlock peut être en quelque sorte "caché", par exemple avec le "BIOS Flashback" d'Asus où il faut faire <a href="http://www.republic-of-gamers.fr/Forum/showthread.php/5353-Tutoriel-ASUS-USB-BIOS-Flashback">une manipulation spéciale pour l'activer</a>.<br />
<br />
<h4 class="formatter-title">La récupération via un jumper de "Recovery"</h4><br />
<br />
Certaines rares cartes mères, généralement sur les PC OEM d'entreprises ou les serveurs, comportent un jumper (ou un switch) pour manuellement déclencher la procédure de "Recovery" (= procédure de BootBlock).<br />
<br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/bootblock4.jpg" alt="" class="b-lazy" /></p><br />
<br />
Je le précise ce cavalier n'a rien à voir avec le classique vidage du CMOS/NVRAM (le fameux CLEAR CMOS) et il n'a rien a voir non plus avec la récupération ou l'effacement du mot de passe du BIOS (cavalier nommé PASSWORD RECOVERY ou CLEAR PASSWD).<br />
<br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/pass_clear.jpg" alt="" class="b-lazy" /></p><br />
<br />
Consultez le manuel de la carte mère.<br />
<br />
<h4 class="formatter-title">La méthode du Hot-Swap</h4><br />
<br />
La technique du Hot-Swap (dite de l'échange à chaud) est malheureusement de moins en moins possible de nos jours, mais il est bien de la citer. Pour pouvoir le faire il avoir sous la main une carte mère fonctionnelle en plus de celle qu'on veut dépanner. Le Hot-Swap se déroule en plusieurs étapes. C'est quoi le principe ? L'idée c'est de se servir d'une carte mère fonctionnelle, qui démarre elle, de la faire démarrer et une fois arrivé sous Windows ou DOS (amis Linuxiens bonjour !), on retire l'EEPROM fonctionnelle installée et ce à chaud, PC allumé. Pour la remplacer par l'EEPROM malade et ensuite de la flasher via l'outil awdflash, amiflash, uniflash ou autre... Une fois le flash terminé, on éteint tout et on remets les puces sur leurs cartes d'origine.<br />
<br />
Evidemment ce n'est pas sans risque si vous faites n'importe quoi avec le PC allumé..., du genre laisser tomber les puces sur le PCB durant vos manipulations, gare aux C/C ! Des outils comme le kit "RD1 BIOS SAVIOR" peut vous faciliter la vie. En fait c'est surtout facile lorsqu'on a une deuxième carte mère identique à celle que l'on veut sauver. Lorsque les cartes sont différentes c'est nettement plus hardu.<br />
<br />
Il y a beaucoup de limitations :<br />
<br />
<ul class="formatter-ul">
<li class="formatter-li">Déjà évidemment si la puce est soudée sur l'une ou l'autre des cartes mères c'est mort. A moins de déssouder et d'y placer des sockets à la place. Les cartes mères modernes équipées en SPI ont toutes leurs EEPROM soudées, sauf quelques rares encore en DIP8. D'où la présence de broches JSPI pas loin généralement.
</li><li class="formatter-li">Vérifiez les tensions des puces, certaines EEPROM sont en 12V, d'autres en 5V ou 3V pour les plus récentes, selon les cartes mères c'est différent selon ce qui a été installé, bien contrôler avant d'invertir les puces. Sur les plus vieilles cartes mère vous trouverez éventuellement un cavalier pour sélectionner la bonne tension. De plus toutes les puces ne sont pas compatibles entre-elles
</li><li class="formatter-li">Une fois la puce malade en place, prête à être flashée, il n'est pas sûr que les programmes de flash la reconnaissent, vous allez peut-être buter sur des vérifications et autres messages d'erreur car la carte mère est différente, et vous allez devoir passer outre en activant des modes/options de "forcing" pour contourner.<br />
</li></ul><br />
<br />
<h4 class="formatter-title">La reprogrammation "externe"</h4><br />
<br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/s-l300.jpg" alt="" class="b-lazy" /></p><br />
<br />
Quand on n'a pas le choix, et bien il faut retirer la puce de la carte mère et aller la placer dans un programmeur externe (USB ou parallèle) et via un logiciel et ensuite la replacer sur la carte mère. Vous trouverez tout ce qu'il faut comme matériel sur eBay et consorts provenant de Chine pour pas cher. Il en existe des tonnes et je ne saurais vraiment vous conseiller un modèle en particulier. Cherchez avec les mots-clés "universal bios programmer kit". Malheureusement cela devient de plus en plus compliqué à réaliser car les nouveaux BIOS dits UEFI (voir plus bas) sont tellement morcelés que de flasher le contenu d'une traite par une image ROM/BIN générique qui serait valide pour tout le monde n'est pas possible. Et ce en raison des données variables que certains UEFI contiennent (notamment pour les PC OEM). Il faut souvent la modifier via des logiciels spéciaux afin de la personaliser (voire même bidouiller), refaire les sommes de contrôles et ensuite dans un second temps procéder au flashage. D'autant plus que les fichiers ROM/BIN ne sont plus systématiquement fournis par certains fabriquants de cartes mère, <a href="http://www.phoronix.com/scan.php/bugs.debian.org/cgi-bin/forums/settings/subscriptions?page=news_item&px=MTc3NzI">la mise à jour passe par un simple fichier exécutable Windows d'on on ne peut pas extraire l'image binaire</a>...<br />
<br />
<h4 class="formatter-title">Le dual-BIOS</h4><br />
<br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/dualbios.jpg" alt="" class="b-lazy" /></p><br />
<br />
Bien conscient des risques liés au BIOS et surtout pour éviter des retours SAV lié à cela, Gigabyte est le premier constructeur qui a eu l'idée de mettre deux puces de BIOS séparées sur certaines de ces cartes mères. Une puce dite "principale" (toujours utilisée) et l'autre en mode "backup" (en secours). L'idée est simple : si l'utilisateur fout en l'air le BIOS et que l'ordinateur est dans l'incapacité de démarrer alors la deuxième puce de BIOS non altérée prends le relais automatiquement au prochain démarrage. Pour retrouver un système fonctionnel et aussi pour reflasher et ainsi stopper vos bêtises. Sachez que  <a href="https://www.google.si/patents/US20090063834">ces systèmes sont brevetés</a> et se basent finalement sur un vulgaire mécanisme de commutation soit hardware soit logique (translation d'adresse).<br />
<br />
Il existe deux implémentations possibles : le premier avec une seule puce flash, et le deuxième avec deux. Dans le premier cas : une unique puce de 4MB (par exemple) est découpée en deux zones de 2MB chacunes. Le programme BIOS d'une taille de 2MB est donc stocké en double dans la puce, une première fois dans la section 0-2MB et une seconde fois dans la section 2-4MB. Dans le deuxième cas : les deux puces de BIOS de 2MB sont connectées ensemble sur le même bus mais seule une est sélectionnée à la fois sur le bus.<br />
<br />
Grosso-modo après le signal RESET général au démarrage du PC, le BIOS principal, s'il est en état de le faire, doit déclencher l'envoi d'un signal après le POST vers un port GPIO du southbrige (ou du PCH), s'il ne le fait pas après une temporisation de quelques secondes, parce qu"il est corrompu suite à un bad flash par exemple, un circuit annexe spécial de commutation se charge alors de basculer vers la seconde puce et de reprovoquer un RESET général. La deuxième puce avec un BIOS sain est active et démarre le système normalement jusqu'au POST et envoie son signal BIOS_READY à temps. L'utilisateur a la main.<br />
<br />
Il existe différents mécanismes avec des temporatisations ou des FPGA, consultez les brevets pour plus de détails.<br />
<br />
<h4 class="formatter-title">Acheter une puce de BIOS sur eBay</h4><br />
<br />
Attention à bien faire la distinction entre les puces vendues chez les vendeurs de composants électroniques qui sont vierges et celles vendues prête à l'emploi avec le service "programmation" qui va avec, c'est à dire flashée avec le BIOS pour votre carte mère.<br />
<br />
Si vous n'avez pas de programmateur Willem et si votre EEPROM est sur un socket, vous pouvez vous procurer la puce pré-programmée pour votre carte mère sur eBay. Par contre niveau prix à voir si le jeu en vaut la chandelle...<br />
<br />
<h3 class="formatter-title">Les failles du BIOS</h3><br />
<br />
Déjà le fait que l'on puisse flasher le BIOS par logiciel est déjà une faille en soit. Cela apporte un réel confort pusiqu'il n'y a plus besoin d'ouvrir l'ordinateur pour mettre à jour le BIOS sauf que le contenu de l'EEPROM est donc modifiable depuis Windows/Linux ce qui a interessé les virus à une époque et notamment le plus connu d'entre eux : <a href="https://fr.wikipedia.org/wiki/Tchernobyl_%28virus%29">CIH alias Tchernobyl</a>. Ce dernier pouvait sur certaines cartes mère, reflasher le BIOS avec des données aléatoires, en sacageant la MBR du disque dur au passage. Un cavalier "WRITE PROTECT" boquant l'accès en écriture à l'EEPROM pouvait éventuellement limiter les dégats lorsque la carte mère en était équipé.<br />
<br />
Comme Windows et Linux sont de plus en plus fiables au fil des mises à jour, on trouve des moyens de plus en plus ingénieux pour corrompre un système. Comme on ne peut plus installer un driver ou un service Windows discret qui pourrait sniffer de manière totalement transparente sans que l'utilisateur ne se prenne une popup suspecte <a href="https://fr.wikipedia.org/wiki/User_Account_Control">UAC</a> (autorisez-vous une modification de votre système ?) dans la trouche, on n'essaye plus de corrompre l'OS mais carrément le firmware qui le fait démarrer. Certains (NSA entre autres) se creusent la tête (depuis belle lurette) afin de trouver des solutions pour compromettre le PC depuis ses couches logiques les plus basses, à tel point que l'OS ne se rend même plus compte que le BIOS lui-même possède un malware.<br />
<br />
Pour éviter cela diverses solutions ont été trouvées pour vérifier l'intégrité de toute la chaîne de démarrage sur une plateforme (machine) et ainsi s'assurer que rien n'a été modifié (comme des rootkits), comme le <a href="https://en.wikipedia.org/wiki/Trusted_Platform_Module">Trusted Platform Module</a> (<a href="https://technet.microsoft.com/library/jj131725.aspx">lien 2</a>) ou le <a href="https://docs.fedoraproject.org/fr-FR/Fedora/18/html/UEFI_Secure_Boot_Guide/chap-UEFI_Secure_Boot_Guide-What_is_Secure_Boot.html">Secure Boot</a> (<a href="https://fsfe.org/campaigns/generalpurposecomputing/secure-boot-analysis.fr.html">lien 2</a>) depuis l'UEFI, à coup de certificat et de chiffrement. Pour autant des failles existent même si elles sont pas faciles à mettre en place. Le problème vient sourtout de l'UEFI qui offre plus de "portes ouvertes" diront nous.<br />
<br />
Bref des malware dans un BIOS <a href="http://korben.info/le-virus-etait-dans-le-bios-et-regardait-linformaticien.html">ce n'est pas nouveau</a>.<br />
<br />
<h3 class="formatter-title">UEFI : le BIOS modernisé !</h3><br />
<br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/efi-logo.png" alt="" class="b-lazy" /></p><br />
<br />
L'EFI a été développé par Intel pour son architecture (et serveurs) <a href="https://fr.wikipedia.org/wiki/IA-64">IA-64</a>, à savoir le processeur Itanium. Face aux différentes limitations que connait le BIOS d'antant tel qu'il est toujours utilisé de nos jours (2008/2009) et qui posaient de nombreux problèmes, il fallait le remplacer. D'autant plus qu'il n'était pas facile à maintenir et peu flexible pour nos usages contemporains. Un consorcium s'est créé et l'<a href="https://fr.wikipedia.org/wiki/Unified_Extensible_Firmware_Interface">UEFI</a> est né sur la base des travaux d'Intel avec encore quelques adaptations et améliorations pour devenir une norme adoptée par tous les fabricants.<br />
<br />
L'UEFI est donc le BIOS nouvelle génération, moins "bête", rafraîchi, avec des fonctionnalités en plus, il est plus beau et plus gros aussi, on est loin des BIOS de 256 ou 512Ko voire de même 1Mo. En réalité il s'agit toujours d'un firmware normalisé qui joue exactement le même rôle que le BIOS (d'avant), à savoir démarrer un PC, mais son architecture est différente : on peut le résumer à un mini-BIOS invisible (routines de bases) plus une nouvelle couche logicielle supérieure intermédiaire avancée avant le système d'exploitation. L'UEFI est écrit en C ce qui le rend plus maintenable. Il est composé d'API et non plus d'interruptions logicielles. Le graphique de Wikipedia est explicite :<br />
<br />
<p style="text-align: center;"><img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/articles/2015/105/efi-simple-fr.svg.png" alt="" class="b-lazy" /></p><br />
<br />
Les avantages de l'UEFI sont nombreux : axé multi-architecture, reconnaissance native du réseau (plus besoin d'OptionROM externe pour faire du PXE), gestion des disques de grosse capacité (GPT), apparition du Secure Boot pour "valider la sécurité" depuis le démarrage (TMP du pauvre), un Shell intégré, des interfaces graphiques personalisables...<br />
<br />
L'UEFI permet de lancer des application UEFI (.efi) sans avoir à lancer de système d'exploitation, on pourrait donc le qualifier de mini-OS à lui tout seul car il fait bien plus que les petites routines bas-niveau du BIOS ancestral qui va chercher et éxecuter une MBR de manière bête et méchante.<br />
<br />
L'UEFI peut toutefois émuler le fonctionnement d'un BIOS via le module CSM (Compatiblity Support Module). J'en avais déjà parlé dans une vidéo.<br />
<br />
Pour connaitre plus en profondeur la différence entre un BIOS legacy et l'UEFI vous pouvez regarder <a href="https://www.youtube.com/watch?v=dRMIvY7BiL4">cette vidéo sur Youtube</a>.<br />
<br />
<h3 class="formatter-title">Conclusion : Le BIOS et le progrès</h3><br />
<br />
A force de mettre de plus en plus de chose directement dans le BIOS/UEFI qui est physiquement présent dans une puce de la carte mère, on rend le matériel de plus en plus dépendant du software. Sur certains aspects il y a du bon car cela rend les choses plus pratiques, moins figées, plus versatiles au niveau bidouillages et <a href="https://www.youtube.com/watch?v=MmBmiTWcOK0">le confort que cela apporte est non négligeable</a>. Mais il y a également les risques que cela provoque (incompatibilités, obsolescence programmée, et quelques failles de sécurité <a href="http://www.nextinpact.com/news/100963-secure-boot-microsoft-a-laisse-porte-derobee-ouverte.htm">par-ci</a>, <a href="http://www.techrepublic.com/article/is-the-intel-management-engine-a-backdoor/">par-là</a>). L'avenir nous le dira...<br />
<br />
<h3 class="formatter-title">Les bons liens</h3><br />
<br />
<ul class="formatter-ul">
    <li class="formatter-li"><a href="https://theretroweb.com/">https://theretroweb.com/</a>
    </li><li class="formatter-li"><a href="http://soggi.org/motherboards/motherboards.htm">http://soggi.org/motherboards/motherboards.htm</a> & <a href="http://soggi.org/motherboards/bios-update-utilities.htm">http://soggi.org/motherboards/bios-update-utilities.htm</a>
    </li><li class="formatter-li"><a href="http://www.elhvb.com/supportbios.info/Archives/index.html">http://www.elhvb.com/supportbios.info/Archives/index.html</a>
    </li><li class="formatter-li"><a href="http://www.arlabs.com/bios_history.html">http://www.arlabs.com/bios_history.html</a><br />
</li></ul>]]></description>
			<pubDate>Sun, 15 Nov 2015 17:37:00 +0100</pubDate>
			
		</item>
		
	</channel>
</rss>
