Le DOS est le système d'exploitation le plus connu, sa version la plus commercialisée est celle de Microsoft, baptisée MS-DOS (il en existe d'autres comme DR-DOS). MS-DOS a vu le jour en 1981 lors de son utilisation sur un IBM PC.
Le DOS, comme tout système d'exploitation, contrôle les activités de l'ordinateur. Il gère des opérations telles que la circulation, l'affichage, et l'entrée de données entre les divers éléments constitutifs du système.
Le rôle du DOS est d'interpreter les commandes saisies au clavier par l'utilisateur. Ces commandes permettent d'effectuer les tâches suivantes :
- la gestion des fichiers et des répertoires - la mise à jour des disques - la configuration du matériel - l'optimisation de la mémoire - l'exécution des programmes
Ces commandes sont tapées à l'invite, c'est-à-dire dans le cas de MS-DOS (Microsoft DOS, le plus connu) une lettre d'unité suivi d'une barre oblique inverse (antislash), ce qui donne A:\ ou C:\ par exemple.
Pour exécuter une commande il suffit de taper la commande puis d'appuyer sur ENTREE.
Sur un ordinateur les informations sont stockées dans des fichiers. Lorsqu'on exécute un programme, MS-DOS traite les informations situées dans le fichier et les transmet au système. Sous MS-DOS chaque fichier peut être aussi volumineux que possible, cependant le nom que vous lui donnez est soumis à des restrictions, on ne peut en effet lui donner un nom d'une longueur maximale de 8 caractères plus 3 pour l'extension.
De plus, les fichiers ne doivent contenir que les caractères suivants :
- lettres de A à Z - chiffres de 0 à 9 - caractères spéciaux suivants: _ ^ $ ~ ! # % & - { } ( ) @ '
Enfin, les noms de fichiers ne doivent pas contenir : - de blanc (espace) - de virgule - de barre oblique inverse - de point (hormis le point qui sépare le nom de l'extension)
et ils ne doivent pas non plus appartenir à la liste de noms réservés :
Un disque dur peut contenir, suivant sa taille, plusieurs milliers de fichiers. Cependant, plus leur nombre est élevé plus il est difficile de les gérer, il devient alors nécessaire de les stocker dans des répertoires. Sous MS-DOS, les noms de ces répertoires sont soumis aux mêmes restrictions de longueur que les fichiers (8 caractères pour le nom, ainsi qu'une extension de 3 caractères.
Pour installer MS-DOS, il faut s'assurer que les paramètres du BIOS sont configurés de telle façon que le disque s'amorce sur le lecteur A puis sur le disque (boot sequence: A,C). Il faut ensuite mettre la disquette 1 dans l'unité A, mettre l'ordinateur sous tension, puis suivre les instructions affichées à l'écran. Il faudra ensuite fournir les informations suivantes :
- l'heure et la date - le pays de référence - le support sur lequel le système va être installé (il doit être accessible et comporter suffisamment d'espace libre) - le répertoire de stockage des fichiers MS-DOS - le shell MS-DOS doit-il apparaître à chaque démarrage? - MS-DOS doit-il être sur une seule partition qui occupe tout le disque dur?
Suite à l'installation de MS-DOS il vous faudra créer une disquette système Après avoir inséré une disquette dans le lecteur, il suffit de taper la commande: format a: /s L'argument /s signifie "copier les fichiers système"
Cette disquette vous permettra de réamorcer le système en insérant cette disquette dans le lecteur puis en redémarrant l'ordinateur
Commandes principales
Commande
Description
dir
liste le contenu d'un répertoire
cd
change de répertoire
cd ..
répertoire parent
mkdir
crée un nouveau répertoire
deltree
supprime un répertoire
copy, xcopy
copie de fichier
move
déplacement de fichier
del
supprime le fichier
type
affiche le contenu du fichier
type |more
affiche le contenu du fichier avec des pauses
help
aide sur la commande demandée
print
imprime le fichier demandé
attrib (-/+r, -/+a, -/+s, -/+h)
change les attributs d'un fichiers (- désactive, + active, r: lecture seule, a: archive, s: système, h: fichier caché
La mémoire est une zone dans laquelle les programmes doivent être stockés pour pouvoir être exécutés.
Un ordinateur compatible PC peut posséder trois types de mémoire :
- conventionnelle - étendue - paginée
La quantité de mémoire présente (et disponible) dans le système peut être connue en exécutant la commande "mem" (ou "mem /c |more" pour avoir des informations détaillées).
La mémoire conventionnelle est la partie de la mémoire dans laquelle les programmes peuvent se charger sans instruction spécifique. sa taille varie suivant les systèmes de 256Ko à 640Ko (sur tous les ordinateurs récents: 386, 486, Pentium...).
La quantité de mémoire disponible est la mémoire qui reste pour les programmes après que le DOS se soit chargé en mémoire (c'est-à-dire le système lui-même ainsi que tous les gestionnaires de périphériques et toutes les commandes contenues dans les fichiers config.sys et autoexec.bat).
La mémoire étendue permet au système d'accéder à plus de mémoire. Ce type de mémoire est disponible sur les ordinateurs dotés d'un processeur de type 80286 ou supérieur.
Seules les adresses de la mémoire conventionnelle sont naturellement reconnues, pour accéder à la zone de mémoire située au-delà des 640Ko les programmes ont besoin d'instructions spécifiques. C'est un programme qui se charge de gérer l'accès à la mémoire étendue, il empêche par exemple deux programmes d'utiliser simultanément la même plage de mémoire. On appelle ce programme "gestionnaire de mémoire étendue".
MS-DOS est livré en standard avec le gestionnaire de mémoire nommé HIMEM.SYS (il est encore présent sur Windows 98). Il se déclare dans le config.sys par la ligne: DEVICE=chemin/himem.sys où chemin représente le chemin d'accès au fichier
Un autre moyen d'accéder à la mémoire située au-delà des 640Ko consiste à utiliser de la mémoire paginée. Certains programmes (peu aujourd'hui) sont optimisés pour utiliser ce type de mémoire.
Tout comme la mémoire étendue, ce type de mémoire nécessite un programme pour la gérer, il est appelé "gestionnaire de mémoire paginée". Les programmes prévus pour utiliser ce type de mémoire ne peuvent pas l'utiliser directement: le gestionnaire de mémoire doit copier des segments de 16Ko (appelés pages) dans une zone (appelée segment de cadre) située en mémoire supérieure. Ce type de mémoire est apparu avant la mémoire étendue, cette mémoire est donc plus lent et ne permet l'utilisation que d'une portion limitée de mémoire à un instant donné.
Beaucoup de systèmes disposent de 384Ko de mémoire supérieure HMA, High Memory Adresses), situés immédiatement après les 640Ko de mémoire conventionnelle. Cette zone de mémoire peut être utilisée par le matériel. Les zones non utilisées par le matériel sont appelées "blocs de zone de la mémoire supérieure" (UMB, upper memory blocks), ils permettent d'exécuter les programmes se servant de la mémoire paginée.
Fonctionnement
La procédure d'amorçage du DOS est définie dans les fichiers autoexec.bat et config.sys situés dans la racine de votre lecteur "C:". Avant de les modifier il est vivement conseillé d'en faire une copie de sauvegarde. Pour désactiver une ligne dans un de ces deux fichiers il n'est pas nécessaire d'effacer la ligne correspondant à cette commande, il suffit de rajouter la commande "rem" (mise en remarque) en début de ligne.
Le fichier config.sys est un fichier texte qui charge les gestionnaires de périphérique et définit la configuration de MS-DOS.
- device permettent de charger les gestionnaires de périphériques - devicehigh charge le gestionnaire de périphérique dans la zone de mémoire supérieure - dos définit la zone de mémoire dans laquelle le DOS se chargera - drivparm définit les caractéristiques d'une unité de disque - fcbs définit le nombre de blocs de contrôle de fichier - files définit le nombre de fichiers pouvant être ouverts simultanément - install exécute un programme résident (TSR, Terminate and stay resident) - lastdrive spécifie le nombre d'unités valides - shell indique qu'un interpréteur de commandes autre que COMMAND.COM doit être utilisé - stacks spécifie la quantité de mémoire réservée au traitement des interruptions matérielles
Le fichier autoexec.bat est (comme son extension l'indique) un fichier batch, c'est-à-dire que c'est un fichier texte qui contient l'ensemble des commandes exécutées les unes à la suite des autres, chacune d'entre-elle étant sur une nouvelle ligne du fichier. Exemples de commandes pouvant être inclues dans le fichier autoexec.bat (n'importe quel programme fonctionnant sous DOS peut être inclu dans ce fichier)
- la commande path indique à MS-DOS les répertoires dont les fichiers peuvent être accessible à partir d'un autre répertoire. - la commande prompt définit le type d'invite MS-DOS - la commande doskey permet de remonter grâce aux touches du pavé directionnel dans les commandes précédemment exécutées.
Il est possible pour les systèmes fonctionnant sous dos, windows95 ou 98 de faire un menu de démarrage dans lequel on peut choisir les périphériques qui seront chargés sous dos, et même (dans le cas de windows 95 ou 98) de choisir au démarrage d'amorcer le système sous windows ou bien sous dos. Il suffit de modifier les fichiers config.sys et autoexec.bat (et dans le cas de windows le fichier msdos.sys) pour pouvoir choisir entre dos et windows.
[COMMON] contient les informations du fichier config.sys qui seront communes aux configurations 1 et 2.
[MENU] contient les intitulés des éléments du menu (ici dos et windows98) ainsi que les options du menu :
- la couleur du fond (ici 15) et la couleur du texte (ici 0) - l'élément lancé en cas de non choix (ici la 2ème) au bout d'un temps déterminé (ici 4 secondes)
Puis les deux configurations après les signes [1] et [2].
la modification du fichier autoexec.bat n'est pas compliquée, elle contient deux sections dans lesquelles le système se dirige suivant votre choix dans le config.sys (car le système traite d'abord le fichier config.sys).
Au cas ou vous désireriez choisir entre dos et windows il faudrait éditer le fichier msdos.sys, en prenant soin de désactiver l'attribut lecture seule, ajouter ou modifier les lignes suivantes:
[Options]
BootMulti=1
BootGUI=0
puis ajouter à la fin de la configuration correspondant à Windows dans le fichier autoexec.bat la ligne "win" qui permettra le chargement ou non de windows suivant le choix effectué.
Le lecteur de CD-ROM se déclare dans les fichiers config.sys et autoexec.bat. Dans le fichier config.sys il faut déclarer le gestionnaire de périphérique pour votre lecteur CD-ROM (bien qu'il soit détecté automatiquement sous Windows). Pour ce faire il faut copier ce gestionnaire de périphérique dans un répertoire de votre disque dur (on supposera par la suite qu'il s'appelle cdrom.sys et qu'il est situé dans le répertoire "cd-rom"). Il vous suffit d'ajouter la ligne:
DEVICE=c:\cd-rom\cdrom.sys /d:CD001
(CD001 est le nom que vous donnez au lecteur...)
Il faut de plus ajouter le gestionnaire de CD-ROM (appelé mscdex.exe) dans l'autoexec.bat en ajoutant la ligne:
c:\windows\command\mscdex.exe /d:CD001
(Où CD001 est le nom que vous aviez donné à votre lecteur et la lettre de lecteur à laquelle il sera affecté sera la lettre qui suit la dernière affectée, c'est-à-dire que si vous avez des disques durs d: et e:, et que f: est libre, le CD-ROM sera affecté à f: ...)
Pour faire une copie de fichier il existe 2 commandes principales sous DOS: copy et xcopy. La commande xcopy est la plus pratique, elle s'utilise de la manière suivante: xcopy source destination (où "source" représente un nom de fichier et "destination" désigne un nom de fichier ou un nom de répertoire)
On peut copier l'intégralité d'un répertoire en désignant un nom de répertoire par "source". La destination doit alors être un nom de répertoire - il serait effectivement étrange de copier un répertoire (c'est-à-dire un ensemble de fichiers) dans ... un seul fichier. Le commutateur "/s" permet de copier les sous-répertoires: xcopy repertoire1 repertoire2 /s permet de copier le répertoire1 dans le répertoire2.
C'est la variable d'environnement "PATH" qui permet de définir les répertoires dont le contenu peut être accessible y compris lorsque l'on se trouve dans un autre répertoire. On l'utilise de la façon suivante:
PATH=c:\dos;c:\utils;
Les fichiers contenus dans les répertoires c:\dos et c:\utils pourront être exécutés lorsque vous vous trouvez dans n'importe quel répertoire de votre ordinateur. Lorsque vous avez déjà spécifié les répertoires situés dans la variable d'environnement et que vous voulez en ajoutez un, vous pouvez utiliser la commande suivante:
PATH=%PATH%;c:\repertoi;
qui va ajouter au PATH déjà existant (%PATH%) le répertoire c:\repertoi
La variable PATH est limitée à 127 caractères. Sachant que le nom de variable PATH et le signe égal occupent déjà 5 caractères, il n'en reste plus que 122 pour spécifier les noms des répertoires.
Astuce: Pour utiliser cette variable de façon optimale il faut veiller à :
- supprimer les espaces dans la commande path - supprimer les répertoires peu accédés - donner des noms de répertoire courts si possible
Transformer un répertoire en un lecteur factice c'est possible grâce à la commande subst. Elle s'utilise de la manière suivante:
subst f: c:\truc
Le répertoire c:\truc sera alors accessible à partir d'un lecteur virtuel que l'on appelle "f:". Cela implique naturellement que le lecteur f: ne soit pas affecté avant d'exécuter la commande, auquel cas le système vous renverra un message du genre "erreur d'analyse 10". Il faudra alors changer la lettre du lecteur cible...
Un fichier peut avoir de nombreuses propriétés vis-à-vis de l'utilisation que l'on peut en faire. Ces propriétés peuvent être activées et désactivées sous DOS par la commande attrib. Cette commande s'utilise de la manière suivante :
attrib +/-a +/-h +/-s +/-r
où + active et - désactive l'attribut qui le suit .
- a: attribut d'archive - h: attribut de fichier caché (on ne peut pas le voir en faisant un listage des fichiers normal) - r: attribut de fichier en lecture seule (on ne peut pas le supprimer à moins de désactiver l'attribut) - s: attribut de fichier système (fichier important auquel il faut faire attention)
"attrib config.sys -a -r +h" désactive les attributs d'archive et de lecture seule mais cache le fichier.
C'est la commande dir qui permet de lister les fichiers. Cependant ce listage peut être fait selon un très grand nombre de critères (ordre alphabétique, date ...), ces critères peuvent être choisis par l'intermédiaire de paramètres :
- /p: affiche le résultat en marquant des pauses à chaque page - /w: affiche le résultat sous forme de 5 colonnes
Pour afficher les fichiers selon un critère : - /ah: affiche les fichiers cachés - /ad: affiche uniquement les répertoires - /ar: affiche les fichiers en lecture seule - /aa: affiche les fichiers prêts à être archivés - /as: affiche les fichiers système
Pour afficher les fichiers selon un ordre trié : - /QN: trié par nom - /QS: trié par taille croissante - /QE: trié par extension - /QD: trié par date - /QG: trié par répertoire en tête - /QA: trié par attribut
- /s: affiche les fichiers d'un répertoire et de tous ses répertoires - /b: présentation abrégée - /l: affiche le résultat en minuscules - /u: affiche des informations supplémentaires
Pour une commande donnée intervenant sur des fichiers, au lieu de donner un nom de fichier, on peut utiliser des caractères génériques spécifiant les fichiers dont le nom commence par certains caractères :
- le caractère "*" remplace des parties de nom ou d'extension - le caractère "?" remplace un caractère (comme le caractère blance au scrabble)
Ainsi la commande "dir *.com" listera tous les fichiers dont l'extension est .com. La commande "dir b*.*" listera tous les fichiers dont le nom commance par un b
Grâce à une redirection ( >> ) on peut par exemple envoyer le résultat d'un dir dans un fichier: La commande "dir >> test.txt" enverra le résultat du listage dans le fichier test.txt qu'il créera dans le répertoire courant s'il n'existe pas, ou auquel le résultat sera concaténé (ajouté à la suite de) si le fichier existe déjà.