Notre magasin

Rue Albert 1er, 7

6810 Pin - Chiny

Route Arlon - Florenville

(/fax: 061/32.00.15

Magasin de matériels et logiciels à Chiny

Formation technique sur les Systèmes d'exploitations de Microsoft

FORMATIONS Le MAGASIN YBET PRODUITS et SERVICES
Définitions Hardware 2 / Internet    

Se dépanner

   
YBET Formation Internet  

Le DOS 5. Config.sys et autoexec.bat

1. Commandes du config.sys - 2. Commandes de l'autoexec.bat - 3. Gestion de la mémoire - 4. Exemples de configuration - 5. Menus de démarrage sous DOS

Lorsqu'un ordinateur démarre, il lit d'abord les informations inclues dans le BIOS (paramétrable à partir des 80286 par le setup) ou l'uefi. Ce firmware permet de configurer l'hardware du PC, notamment de déterminer l'ordre de bootage (démarrage) des disques (lecteur de disquette, disque dur, CD-ROM).

Une fois le périphérique de démarrage déterminé, le dos va lire les fichiers systèmes sur le disque pour déterminer s'il est effectivement bootable et démarrer le système d'exploitation: command.com, io.sys et ms.sys (dans le cas d'un DOS Microsoft)

Dans le cas du DOS, il va lire deux fichiers de configuration de type texte l'un à la suite de l'autre:

  1. Config.sys reprend les configurations matérielles de la machine (configuration mémoire par exemple)

  2. autoexec.bat reprend les paramètres utilisateurs (clavier, souris, ...).

Ces deux fichiers sont optionnels et doivent se trouver à la racine du disque de démarrage.

Pour ne pas démarrer ces fichiers au démarrage:

Pour modifier ces fichiers, vous pouvez utiliser la commande DOS EDIT (y compris sous XP). C'est un petit éditeur de texte sous DOS implanté comme fichier externe.

1. Commande standard du config.sys

Toutes les commandes reprises ci-dessous ne sont pas forcément installées. Commençons par un résumé des commandes:

Break Spécifie au DOS de vérifier régulièrement la combinaison de touches <ctrl>+<c> (arrêter) ou <ctrl>+<Pause> suspendre temporairement le fonctionnement des lignes de commandes, programmes sous DOS
Buffers détermine la quantité de buffers disques (tampons) à réserver pour les transferts de données mémoire - disques durs: 1 à 99.
Country Permet de définir le pays
Device Permet de charger un pilote de périphérique
Devicehigh Permet de charger un pilote de périphérique en mémoire haute (entre 640Kb et 1 MB), depuis la version 5.0
DOS spécifie si DOS peut être chargé en mémoire supérieure
DRIVPARM Permet de définir les caractéristique d'un disque, quasiment pas utilisé
FILES Spécifie le nombre de fichiers maximum que le système d'exploitation peut ouvrir simultanément
INSTALL Charge un programme résident en mémoire, les programmes peuvent également être démarrés par l'autoexec.bat
Lastdrive Définit la lettre maximum autorisée pour les disques.
Numlock Définit si le pavé numérique est activé au lancement, peut être paramétré par le BIOS.
REM (ou ;) Remarque, commentaire
SET Permet de définir des variables d'environnement. 
SHELL Permet de définir un autre interpréteur de commande COMMAND.COM
STACKS Définit la quantité de mémoire pour les interruptions matérielles
Switches Permet de sélectionner des lignes de commandes dans un menu suivant le choix utilisateur, à partir de DOS 5.0

Quelques commandes spécifiques de périphériques sont également définies par MS-DOS. Ce sont des fichiers externes (inclus généralement dans le répertoire DOS). D'autres sont fournies directement par le constructeur du périphérique. Il se chargent par device=[emplacement]\commande ou si la mémoire haute est gérée par device=[emplacement]\commande

ANSI.SYS Crée une émulation de terminal ANSI
DISPLAY.SYS Gère la commutation de pages de code pour l'écran
DRIVER.SYS Crée une unité logique renvoyant à un lecteur disquettes physique
EMM386.EXE Stimule la mémoire supérieure pour les ordinateurs à base de 386 et supérieurs utilisant la mémoire étendue. Certaines options ne sont accessibles qu'à partir de la version 5.0
HIMEM.SYS Gère l'utilisation de la mémoire étendue (supérieure au 1 MB) pour les ordinateurs à base de 286 ou supérieurs
RAMDRIVE.SYS Crée une zone mémoire reprenant le contenu d'un disque dur.
SETVER.SYS Charge la table des versions en mémoire, utilisé pour la compatibilité avec les anciens programmes.
SMARTDRV.SYS Crée un tampon mémoire pour les accès disques durs.

L'ordre des commandes n'a pas réellement d'importance, sauf dans le cas de la gestion de la mémoire haute.

  • Device= [emplacement] himem.sys
  • Dos = high
  • Device = [emplacement] Emm386.exe Noems (RAM)
  • DOS=UMB

les commandes suivantes avec devicehigh

Dans ce cas, vous pouvez également utiliser DOS=HIGH,UMB (en supprimant la deuxième ligne).

3. Commandes du fichier AUTOEXEC.BAT.

Le fichier autoexec.bat est un fichier texte qui reprend les commandes utilisateurs. Quelques unes sont préprogrammées pas le système d'exploitation mais vous pouvez également démarrer vos propres programmes par ce fichier de commande (en fin de listes).

PROMPT Permet de modifier le prompt, l'invite de commandes. Le plus courant est Prompt $p$g qui affiche la lettre du disque dur et le répertoire courant.
MODE Permet de définir les caractéristiques des ports de communications (COM et PRN)
PATH Spécifie les répertoires de recherche et l'ordre dans lequel il sont analysés.
ECHO OFF Permet de ne pas afficher les commandes du fichier autoexec.bat lors de l'exécution
SET Définit des variables d'environnement pour certains programmes
CLS n'affiche pas les commandes exécutées

Ce fichier batch permet également de définir les programmes résidents à télécharger comme DOSKEY (mise en mémoire des commandes tapées) ou SMARTDRV qui accélère l'accès aux disques durs.

Loadhigh (LH en abrégé) permet d'exécuter le programme en mémoire haute.

4. Gestion de la mémoire.

Par la conception des premiers XT, la mémoire d'un PC est constituée de 3 zones:

Par défaut, DOS n'utilise que la zone de 0 à 640 KB (mémoire de base). Les commandes de gestion de la mémoire supérieure sont apparues avec la version 3.3. D'autres commandes, permettant notamment de récupérer les zones libres de la mémoire haute sont apparues avec le 5.0, les version 6 utilisent diverses commandes pour automatiser la gestion de cette zone mémoire. La configuration mémoire de l'ordinateur peut être affichée par la commande sous DOS mem.

Nous considérons que le dossier où est installé le DOS est C:\DOS.

Device=c:\dos\hymem.sys

C'est la première commande à insérer dans le config.sys. Ce programme assure la coordination de la mémoire étendue et s'assure que 2 applications n'utilisent pas la même zone. Différentes options existent mais ne sont pas utilisées.

DOS=HIGH: cette commande est liée à hymem.sys et permet de transférer le DOS vers la mémoire haute, libérant de l'espace dans la mémoire conventionnelle pour les programmes.

DEVICE=c:\DOS\emm386.exe permet la gestion de de mémoire supérieure. La quantité de mémoire utilisable peut être renseignée, mais ce n'est pas nécessaire. Par contre on retrouve 2 options: RAM et NOEMS. RAM permet d'utiliser la mémoire supérieure pour les programmes DOS, NOEMS permet d'utiliser la mémoire supérieure également mais pas pour les programmes DOS (uniquement Windows 3.0, 3.1 et 3.11). En gros, les joueurs utiliseront DEVICE=c:\DOS\emm386.exe RAM, les applications bureautiques sous Windows: DEVICE=c:\DOS\emm386.exe NOEMS. Une dernière remarque, les 286 ne permettent pas d'utiliser Noems, Windows 3.X ne fonctionne pas en mode étendu avec ce processeur, uniquement à partir des 386.

DOS=UMB permet aux programmes d'utiliser la mémoire supérieure.

Si emm386.exe est démarré, vous pouvez transférer les pilotes et programmes démarrés par config. sys et autoexec.bat vers la mémoire haute. Dans config.sys, la commande DEVICE est remplacée par DEVICEHIGH. Pour l'autoexec.bat, insérez devant les commandes LOADHIGH (LH en abrégé).

RAMDrive.sys est utilisé notamment pour les disquettes d'installation créée par Windows 98. Ce programme crée une zone disque dur en mémoire. Il est démarré par le config.sys. La syntaxe globale est device=[emplacement]ramdrive.sys taille disque en KB /e. Le /e impose la mémoire supérieure. D'autres options peuvent également être utilisées. La lettre du lecteur est la suivante de celle des partitions de disques durs.

Exemple: device=c:\dos\ramdrive.sys 1024 /e

SMARTDRV.exe est une commande du fichier autoexec.bat. Elle permet de créer un tampon mémoire du disque dur. Ceci accélère les échanges mais peut poser quelques problèmes si vous éteignez votre ordinateur. Pour cela, on crée un double tampon (à la fois en mémoire et sur le disque dur) en ajoutant l'option /c. Smartdrv /c.

L'utilitaire MEMMAKER est apparu avec la version 6.0. C'est un utilitaire qui va modifier les fichiers config.sys et autoexec.bat pour libérer le maximum de mémoire Ram.

5. Exemple de configuration standard

5.1. Configuration courante, souris en mémoire haute

CONFIG.SYS

AUTOEXEC.BAT

La gestion de la mémoire est assurée dans le config.sys. On charge également un pilote externe pour la souris. Le buffers disque dur est placé à 20 avec jusque 40 fichiers ouverts simultanément. L'autoexec.bat signale que le répertoire de recherche est c:\DOS, le clavier est de type français (be pour un clavier belge), les fichiers temporaires sont transféré dans le dossier c:\temp. On affiche le prompt sous la forme disque:répertoire. On charge également en mémoire haute l'utilitaire doskey avec l'option insert.

5.2. Gestion CD-ROM

L'installation d'un lecteur CD-ROM sous DOS se fait en 2 étapes. Dans le config.sys, on charge le pilote spécifique (ils sont généralement tous compatibles).

DEVICE = c:\cd-rom\cdrom.sys /d:CD001 où CD001 est le nom que vous donnez au lecteur.

Dans l'autoexec.bat, on utilise le fichiers DOS MSCDEX.EXE qui est le gestionnaire de lecteur CD.

c:\dos\mscdex.exe /d:CD001 CD001 est le nom du lecteur désigné dans le config.sys. Vous pouvez également utiliser la commande optionnelle HL pour le transférer en mémoire haute. Dans Windows 95 et supérieurs, ce fichier se trouve en c:\windows\command comme la majorité des commandes DOS. Il n'existe plus en 2000 et suivants.

6. Démarrage sélectif par menus.

Les commandes ci-dessus vont nous permettre de définir des configurations multiples au démarrage du DOS (à partir de DOS 5.0). Ceci permet par exemple de spécifier des programmes à démarrer dans certains cas. La majorité des commandes s'insèrent dans le CONFIG.SYS. Les branchements conditionnels de l'autoexec.bat passent par les commandes IF et goto.

Pour démarrer spécifiquement, vous pouvez également appuyé sur la touche F5 qui passe les fichiers config.sys et autoexec.bat ou sur la touche F8 qui permet d'accepter ou non chaque ligne de commande.

Les commandes ci-dessous ne fonctionnent qu'à partir de DOS 5.0. Elles sont également utilisables en mode DOS sous Windows 95 et suivant.

6.1. Les commandes de Menus.

Ces commandes peuvent être insérées n'importe où dans le config.sys.

Pour créer un menu, vous devez créer des blocs de commandes. La première reprend les choix possibles pour l'utilisateur.

[MENU]
MENUITEM=normal
MENUITEM=jeux

Le menu ci-dessus affiche deux choix possibles: normal et jeux. La suite va déterminer les commandes en fonctions du choix du menu de démarrage.

[normal]
Files=20
buffers=10
[jeux]
files=40
buffers=40

Dans l'exemple ci-dessus, si l'utilisateur choisit normal, Files va être définit à 20 et buffers à 10. Si le choix est jeux, files sera de 40 et buffers de 40.

Une définition de menu particulier [common] permet d'exécuter les commandes reprises dans le bloc quelque soit le choix de l'utilisateur. Il doit apparaître en premier si nécessaire. Un exemple de config.sys:

[MENU]
MENUITEM=normal
MENUITEM=jeux
[common]
Device=c:\DOS\himem.sys
[normal]
Device =c:\DOS\ Emm386.exe Noems
Files=20
buffers=10
[jeux]
Device =c:\DOS\ Emm386.exe RAM 2048
files=40
buffers=40
[common]
DOS=high,UMB
DEVICEHIGH=c:\mouse\mouse.sys

Cet exemple permet de gérer les 2 types de mémoires supérieures.

6.2. Utilisation des menus pour AUTOEXEC.BAT

Le choix utilisateur se fait dans le config.sys mais il peut permettre de modifier les commandes exécutées dans l'autoexec.bat avec la commande goto %config%, en utilisant des étiquettes. Les noms d'étiquettes doivent donc être définies à partir des choix possibles dans le config.sys.

Ceci nécessite quelques commandes spéciales. A la fin du fichier autoexec.bat, insérés l'étiquette :fin. Chaque groupe de commande (désigné par une étiquette) doit reprendre la commande goto fin.

Exemple de menu:

path=c:\dos
c:\dos\mscdex.exe /d:CD001
KEYB fr
REM fin de la configuration pour chaque menu
goto %config%
:normal
lh doskey /insert
goto fin
:jeux
goto fin
:fin

La suite du cours Operating System > 6. Commandes DOS réseaux

Le cours hardware PC et périphériques. Le cours Hardware réseaux et serveurs

revendeur YBET Informatique

Les compétences au service de la qualité.

Les activités d'YBET informatique (revendeur, maintenance, service technique et support, formations informatiques, matériel bureautique et caisses enregistreuses TEC - Acropaq),...

infos et trucs et astuces informatiques, formations logiciels, ...