Fonctionnalités des composantes du système
Le MS-DOS est un système d'exploitation composé de plusieurs composantes principaux. Chacun de ces composantes a des fonctions spécifiques et des emplacements spécifiques lorsqu'il est enregistré sur un support de disque et lorsqu'il est chargé dans la mémoire du micro-ordinateur.
Cette page explique ce que fait chaque composante du système et où il le fait. Ces explications peuvent vous aider à comprendre les opérations invisibles que le système effectue pendant qu'il vous aide à effectuer vos activités sur le micro-ordinateur.
Cette page traite à la fois des composantes génériques et des composantes MS-DOS de ce système d'exploitation. Les composantes génériques sont les composantes communs à tous les systèmes d'exploitation de micro-ordinateurs, y compris MS-DOS. Les composantes MS-DOS sont les composantes spécifiques à MS-DOS.
Composantes génériques
Outre toutes ses fonctionnalités spéciales, les utilitaires l'accompagnant et les améliorations, le MS-DOS présente des aspects communs à la plupart des systèmes d'exploitation de micro-ordinateurs. La plupart des systèmes d'exploitation de micro-ordinateurs ont les cinq principaux composantes génériques suivants :
- Gestionnaire d'entrées/sorties : gestion des entrées et sorties du système
- Gestionnaire de fichiers : gestion du système de fichiers,
- Gestionnaire de mémoire : gestion de l'allocation de la mémoire du microprocesseur.
- Exécutif : charger des programmes et amener le micro-ordinateur à exécuter les instructions du programme.
- Chargeur de démarrage : début du processus de chargement des autres composantes du système (inactif une fois que tous les composantes ont été chargés).
Remarque : Pour exécuter les fonctions de ces cinq composantes génériques, ce système d'exploitation utilise quatre composantes MS-DOS. Ces composantes MS-DOS ; MSDOS.SYS, IO.SYS, COMMAND.COM et le chargeur de démarrage MS-DOS sont abordés dans la section suivante de cette page.
Gestionnaire d'entrée/sortie
Le gestionnaire d'entrée/sortie dirige le mouvement des informations dans le système. Il garde une trace des périphériques connectés au système et de l'endroit où ils sont connectés. A partir de ces informations et des directives de l'exécutif, le gestionnaire d'entrées/sorties coordonne tous les transferts d'informations entre les périphériques connectés au micro-ordinateur. Cette coordination permet à chaque périphérique d'envoyer et de recevoir des informations vers et depuis divers emplacements.
Les fonctions du gestionnaire d'entrée/sortie sont exécutées dans ce système par les deux composantes MSDOS.SYS et IO.SYS du MS-DOS.
Gestionnaire de fichiers
Le gestionnaire de fichiers gère toutes les demandes de manipulation de fichiers. Il regroupe les données en groupes et enregistre ces groupes dans une structure appelée fichier. Le gestionnaire de fichiers assure également le suivi de l'emplacement des fichiers individuels sur le disque et récupère les informations de ces fichiers lorsque les informations sont demandées. Il enregistre les noms et emplacements des fichiers dans un répertoire écrit sur le disque.
Chaque fois que de nouveaux disques sont insérés dans les unités de disque, le gestionnaire de fichiers doit lire les répertoires du disque pour savoir quels fichiers y sont entreposés et où ils se trouvent sur les disques.
Les informations entreposées sous le contrôle du gestionnaire de fichiers sont considérées comme un entreposage non volatile (ou à long terme) car les fichiers restent entreposés sur les disques, même lorsque le système est réinitialisé ou éteint.
Les fonctions du gestionnaire de fichiers sont exécutées dans ce système par la composante MSDOS.SYS du MS-DOS.
Gestionnaire de mémoire
Le gestionnaire de mémoire alloue la mémoire vive (RAM) du micro-ordinateur au logiciel et/ou aux données chargées pour exécuter une tâche.
Le gestionnaire de mémoire récupère également la mémoire en chargeant de nouveaux logiciels et/ou données à l'emplacement de l'ancien matériel (écrasant l'ancien matériel) lorsque l'ancien matériel n'est plus nécessaire.
La RAM gérée par le gestionnaire de mémoire est considérée comme un entreposage volatile (temporaire) car le matériel entreposé dans la RAM est détruit lorsque le système est réinitialisé ou éteint.
Les fonctions du gestionnaire de mémoire sont exécutées dans ce système par la composante MSDOS.SYS du MS-DOS.
Exécutif
L'exécutif est au centre de l'organisation du système d'exploitation. L'exécutif contrôle le système d'exploitation dans son ensemble, dirige les fonctions et s'assure que les bons programmes sont exécutés. L'exécutif agit comme l'interface entre l'entrée de l'utilisateur et les autres composantes génériques du système d'exploitation car l'exécutif interprète les commandes que vous entrez.
L'exécutif répond à votre demande de programme. Lorsque vous demandez un programme, l'exécutif dirige le composant du système d'exploitation approprié vers :
- localiser le programme demandé,
- copier le programme dans un espace de travail de la mémoire système, et
- commencer l'exécution des instructions du programme.
Les fonctions de l'exécutif sont exécutées dans ce système d'exploitation par la composante COMMAND.COM de MS-DOS.
Chargeur de démarrage
Le chargeur de démarrage permet de charger le reste du système dans la mémoire de l'ordinateur lors du démarrage.
Le chargeur de démarrage est enregistré sur le premier secteur du support d'entreposage amorçable. Il doit contenir suffisamment d'informations pour accéder au support de démarrage et trouver d'autres composantes du système.
Une fois le reste du système chargé en mémoire, le chargeur de démarrage peut ne plus être utilisé. Avec certains systèmes, le chargeur de démarrage peut même être écrasé après avoir exécuté sa fonction.
Les fonctions du chargeur de démarrage sont exécutées dans ce système par la composante MS-DOS appelé chargeur de démarrage MS-DOS, étant décrit plus loin dans cette page.
Composantes MS-DOS
Ce système d'exploitation est divisé en quatre composantes MS-DOS suivants :
Composante | Description |
---|---|
MSDOS.SYS | Directeur des activités indépendant du matériel |
IO.SYS | Communicateur dépendant du matériel avec les périphériques |
COMMAND.COM | Interpréteur de commandes indépendant du matériel |
Chargeur de démarrage MS-DOS | Déplacement dépendant du matériel du système du disque vers la mémoire. |
Cette section décrit les propriétés de chacun de ces composantes MS-DOS. Étant donné que les trois premiers composantes sont entreposés dans un fichier disque, cette section fait référence à ces composantes par leurs noms de fichier.
Propriétés MSDOS.SYS
Le MSDOS.SYS est considéré comme le directeur du système. Il émet des logiques (ou généralisées) pour le travail à faire. Ses instructions n'incluent pas d'informations spécifiques sur le matériel qui devrait faire le travail ou comment. Par conséquent, MSDOS.SYS est considéré comme indépendant du matériel car il exécute ses fonctions sans tenir compte des caractéristiques physiques ou de l'emplacement du matériel.
En raison de son indépendance matérielle, le MSDOS.SYS peut être utilisé sur des micro-ordinateurs avec n'importe quel matériel périphérique.
Le MSDOS.SYS fournit une interface de haut niveau pour les programmes utilisateur. Il se compose de routines de gestion de fichiers, de blocage/déblocage de données pour les routines de disque et d'une variété de fonctions intégrées facilement accessibles par les programmes utilisateur. Lorsque ces routines de fonction sont appelées par un programme utilisateur, elles acceptent des informations de haut niveau via le contenu des registres et des blocs de contrôle. Ensuite (pour le fonctionnement du périphérique), ils traduisent l'exigence en un ou plusieurs appels à IO.SYS pour terminer la demande.
Le MSDOS.SYS exécute toutes les activités de gestion de fichiers et de gestion de disque. Le MSDOS.SYS effectue également une partie des activités de gestion des entrées/sorties.
Propriétés IO.SYS
Le IO.SYS peut être considéré comme le travailleur du système. Il émet des instructions physiques, ou spécifiques, pour le travail à effectuer. Les instructions qu'il émet incluent des informations spécifiques sur le matériel devant effectuer le travail et sur la manière dont le matériel doit effectuer le travail. Pour cette raison, IO.SYS est considéré comme dépendant du matériel.
Le IO.SYS doit recevoir les instructions logiques ou généralisées de MSDOS.SYS et les traduire en instructions incluant les caractéristiques physiques spécifiques du matériel.
Par exemple, MSDOS.SYS peut donner à IO.SYS une instruction pour que certaines données soient sorties via le "périphérique logique CON". IO.SYS sait que "Périphérique logique CON" est la façon dont MSDOS.SYS fait référence à la "console", qui se compose d'un clavier et d'un écran d'affichage vidéo. Par conséquent, IO.SYS sortirait les données via l'écran vidéo de la console. Le IO.SYS devrait également prendre en considération les caractéristiques de l'écran telles que sa vitesse d'affichage (débit en bauds) ou son affichage avec (nombre de colonnes dans une ligne affichée.)
En raison de sa dépendance matérielle, une implémentation particulière de IO.SYS ne peut être utilisée que sur un type spécifique de micro-ordinateur et avec uniquement un certain type de matériel périphérique. Le IO.SYS doit être modifié chaque fois qu'il est utilisé sur du matériel dont les caractéristiques sont significativement différentes de celles du dernier environnement matériel dans lequel il a été utilisé.
Le IO.SYS réalise une partie des activités de gestion des entrées/sorties. (Voir la section de cette page sur les composantes génériques.)
Propriétés COMMAND.COM
Le COMMAND.COM exécute toutes les fonctions décrites dans l'explication de cette page de composante générique exécutif.
En général, COMMAND.COM agit comme l'interface entre l'entrée de l'utilisateur et les autres composants du système d'exploitation. Le COMMAND.COM fournit cette interface en interprétant les commandes saisies.
Le COMMAND.COM est parfois appelé «interpréteur de commandes», «processeur de commandes de console» ou «interpréteur de commande». Le MS-DOS vous permet de remplacer COMMAND.COM par un programme différent exécutant également les fonctions d'exécution. Pour effectuer cette substitution, reportez-vous à la section complétant la composante MSDOS.SYS de cette page.
Le COMMAND.COM se compose d'une partie résidente, d'initialisation et transitoire. Chacune de ces parties est décrite ci-dessous.
Portion résidente
La partie résidente comprend le logiciel permettant au système de charger des programmes, de gérer les erreurs de périphérique et d'interrompre l'exécution du programme lorsque vous entrez CTRL+BREAK ou CTRL+C. Cette partie reste résidente en mémoire à partir du moment où vous démarrez le système jusqu'au moment où vous réinitialisez le système. Il réside dans la mémoire immédiatement sous MSDOS.SYS et la zone de données MSDOS.SYS. La partie résidente comprend également un logiciel provoquant le rechargement de la partie transitoire de COMMAND.COM si elle a été écrasée par un programme transitoire chargé.
Partie d'initialisation
La partie d'initialisation est située sous la partie résidente et reçoit le contrôle lors du démarrage. Cette section contient la routine d'installation du processeur de fichier AUTOEXEC.BAT. La partie d'initialisation détermine l'adresse de segment à laquelle les programmes peuvent être chargés. Il est remplacé par le premier programme que COMMAND.COM charge car il n'est plus nécessaire.
Partie transitoire
La partie transitoire de COMMAND.COM inclut toutes les commandes résidentes MS-DOS, telles que DIR, EXIT, PATH et GOTO. Cette partie contient également le processeur de commandes résident et le processeur de lots.
La partie transitoire est chargée à l'extrémité supérieure de la mémoire. Cette partie contient les processeurs de commandes internes et le processeur de fichiers de traitement par lots. Il provoque également l'affichage du prompt système, lit les commandes saisies via le clavier (ou le fichier de commandes) et provoque l'exécution de ces commandes.
Lorsqu'une commande transitoire (autre que COMMAND.COM) est chargée pour exécution, cette commande peut remplacer la partie transitoire de COMMAND.COM si elle a besoin d'espace mémoire. Par conséquent, la partie transitoire de COMMAND.COM devra peut-être être rechargée à partir d'un disque ou d'une partition contenant le fichier COMMAND.COM après l'exécution de la commande transitoire.
La relation entre les parties transitoires et résidentes de COMMAND.COM et les commandes transitoires et résidentes peut prêter à confusion. Il est important de comprendre que les commandes résidentes n'ont pas besoin d'être en mémoire pendant l'exécution d'une commande transitoire car les commandes transitoires sont conçues pour effectuer leurs tâches sans l'aide des commandes résidentes. Par conséquent, les commandes résidentes sont entreposées dans la partie de COMMAND.COM pouvant être écrasée en mémoire lorsqu'une commande transitoire a besoin de plus de mémoire pour se charger ou s'exécuter. Cette partie de COMMAND.COM est connue sous le nom de partie transitoire car elle peut être écrasée et rechargée tandis que les autres composantes de COMMAND.COM restent résidents en mémoire.
Propriétés du chargeur de démarrage MS-DOS
Le chargeur de démarrage MS-DOS est un programme participant au chargement des autres composantes du système d'un unité de disque vers la mémoire du micro-ordinateur lors du démarrage.
Le chargeur de démarrage n'est pas contenu dans un fichier, mais enregistré sur le premier secteur de chaque disque ou partition formaté par la commande FORMAT de MS-DOS. Lorsque le démarrage commence, le chargeur de démarrage est chargé dans la mémoire du micro-ordinateur. Lorsqu'il est en mémoire, le chargeur de démarrage entraîne le chargement du fichier de composant système IO.SYS à partir du disque ou de la partition démarré.
Le chargeur de démarrage contient des informations sur le format du disque afin qu'il sache comment et où trouver les fichiers système qu'il doit charger. Lorsque IO.SYS a été chargé, le chargeur de démarrage transfère le contrôle à IO.SYS. Ensuite, le chargeur de démarrage n'est plus utilisé en mémoire. Les instructions émises par le chargeur de démarrage incluent des informations spécifiques sur le matériel devant effectuer le travail et comment. Pour cette raison, le chargeur de démarrage MS-DOS est considéré comme dépendant du matériel.
Le chargeur de démarrage utilisé par MS-DOS exécute toutes les fonctions décrites dans l'explication de cette page de la composante générique «Chargeur de démarrage».
Emplacements de disque des composantes
Les composantes MS-DOS du système d'exploitation peuvent être enregistrés sur un disque ou une partition par les commandes transitoires FORMAT et SYS.
Vous pouvez enregistrer les quatre composants MS-DOS en entrant une commande FORMAT avec le commutateur "/S". Cette commande copiera les composantes sur le disque ou la partition dans l'ordre suivant :
- Chargeur de démarrage
- IO.SYS
- MSDOS.SYS
- COMMAND.COM
La commande FORMAT copiera le chargeur de démarrage sur le disque ou la partition, que vous spécifiez ou non le commutateur /S dans la ligne de commande FORMAT.
Le FORMAT enregistre ces composantes dans l'ordre indiqué ci-dessus.
Le FORMAT enregistre la composante du chargeur de démarrage sur le premier secteur (au secteur 0 de la piste 0 sur la face 0) d'une disquette ou sur le premier secteur d'une partition de disque Winchester.
Sur les secteurs suivant le chargeur de démarrage, FORMAT enregistrera une zone de données réservée, une copie initiale de la table d'allocation de fichiers (FAT), une deuxième copie de la FAT, le répertoire racine et la zone de données.
Le FORMAT enregistrera les fichiers IO.SYS et MSDOS.SYS en commençant par les premiers secteurs de la zone de données. Le FORMAT donne à ces fichiers l'état de fichier caché afin qu'ils ne puissent pas être renommés ou déplacés de leur emplacement.
Note : L'état caché donné aux fichiers IO.SYS et MSDOS.SYS vous interdit également de visualiser ces fichiers avec la commande DIR ou de les manipuler avec toute autre commande fournie avec MS-DOS.
Lorsque le chargeur de démarrage est chargé en mémoire lors du démarrage, il examine la première entrée de répertoire pour rechercher et charger IO.SYS. Si l'entrée IO.SYS est introuvable à cet emplacement, le message d'erreur suivant s'affiche :
No system |
Ce message d'erreur peut se produire si vous essayez de démarrer un disque ou une partition ayant été formaté en entrant une ligne de commande FORMAT sans le commutateur /S.
Le fichier COMMAND.COM peut être enregistré sur n'importe quelle partie des données disponibles au-delà du fichier MSDOS.SYS. Le COMMAND.COM n'a pas l'état de fichier caché. Par conséquent, vous pouvez l'afficher avec la commande DIR, le copier avec la commande COPY ou le supprimer avec la commande DEL.
Si le fichier COMMAND.COM (ou un autre interpréteur de commandes spécifié dans le fichier CONFIG.SYS) ne réside pas sur un disque ou une partition lorsque vous essayez de démarrer ce support, le message d'erreur suivant s'affiche :
Bad or missing Command Interpreter |
Le but de la commande SYS est d'enregistrer trois des composantes MS-DOS sur un disque ou une partition formatée dans l'ordre suivant :
- Chargement de démarrage
- IO.SYS
- MSDOS.SYS
SYS donne aux fichiers IO.SYS et MSDOS.SYS l'état de fichier caché.
Le fichier COMMAND.COM n'est pas enregistré sur le disque ou la partition par SYS. Si vous utilisez SYS, vous devez enregistrer COMMAND.COM (ou un autre interpréteur de commandes approprié) sur le disque ou la partition avec la commande COPY. Étant donné que COMMAND.COM peut être enregistré n'importe où sur le disque ou la partition (au-delà des secteurs occupés par MSDOS.SYS), vous pouvez copier d'autres fichiers sur le disque ou la partition avant de copier COMMAND.COM sur le disque ou la partition.
Emplacements de mémoire des composantes
Les composantes MS-DOS du système d'exploitation se voient chacun attribuer une zone spécifique dans la mémoire vive (RAM) lorsque MS-DOS a été démarré et que le prompt système est affichée.
Le tableau suivante montre les dispositions relatives des composantes au moment où le prompt du système s'affiche :
Table de vecteur d'interruption |
IO.SYS - Interface MS-DOS vers le matériel |
MSDOS.SYS - Gestionnaire d'interruption MS-DOS, routines de service |
Tampon MS-DOS, régions de contrôle, et pilotes de périphérique installé. |
Portion résidente du COMMAND.COM - Gestionnaires d'interruption pour l'adresse de fin, l'adresse de sortie CTRL+BREAK et l'adresse et le code d'abandon d'erreur fatale pour recharger les parties transitoires. |
Zone de chargement des commandes transitoires - (fichier .COM ou .EXE). |
Partie transitoire de COMMAND.COM - Interpréteur de commandes, commandes résidentes, traitement par lots. |
Dans la figure suivante, les composantes du haut sont considérés comme étant dans des zones de "mémoire basse" ou de RAM avec des adresses basses. Les composantes en bas sont considérés comme étant dans des zones de "mémoire élevée" ou de RAM avec des adresses élevées.
Comportement de composante au démarrage
Lorsque vous démarrez avec succès, votre matériel, votre micrologiciel et vos logiciels participent à un effort coordonné pour vous donner le contrôle de votre environnement de micro-ordinateur. Au cours de cet effort, plusieurs étapes se produisent automatiquement et de manière invisible.
- Le démarrage commence. (Les instructions sur l'exécution d'une activité de démarrage peuvent être trouvées dans Fonctionnalités de démarrage).
- Si vous démarrez à partir d'une disquette, passez à l'étape 5. Si vous démarrez à partir d'une partition de disque Winchester, passez à l'étape 3.
- Le programme de surveillance charge l'enregistrement d'amorçage du premier secteur du disque Winchester dans la mémoire et transfère le contrôle à cet enregistrement d'amorçage.
- L'enregistrement de démarrage charge le programme du chargeur de démarrage à partir de la partition de démarrage spécifiée ou par défaut dans la mémoire et transfère le contrôle au chargeur de démarrage.
- Si la partition de démarrage spécifiée ou par défaut contient MS-DOS version 2, passez à l'étape 6.
- Si la partition de démarrage spécifiée ou par défaut contient un autre système d'exploitation MS-DOS version 2, alors cet autre système termine l'activité de démarrage à sa manière.
- Le programme de surveillance charge le programme du chargeur d'amorçage de la disquette dans la mémoire et transfère le contrôle au chargeur d'amorçage. (Reportez-vous à la documentation matérielle de votre micro-ordinateur pour plus d'informations sur le programme de surveillance.)
- Le programme de chargeur de démarrage charge le fichier IO.SYS du disque ou de la partition en mémoire et transfère le contrôle à IO.SYS.
- IO.SYS initialise les périphériques matériels et charge MSDOS.SYS.
- IO.SYS transfère le contrôle à son module SYSINIT.
- SYSINIT se déplace en mémoire.
- SYSINIT déplace le programme MSDOS.SYS en mémoire.
- La routine SYSINIT initialise les tables du programme MSDOS.SYS.
- MSDOS.SYS affiche un message d'identification sous le format suivante :
- SYSINIT recherche le fichier CONFIG.SYS.
- Si le fichier CONFIG.SYS existe dans le répertoire racine du disque ou de la partition, SYSINIT modifie MSDOS.SYS en fonction des sous-commandes répertoriées dans le fichier CONFIG.SYS. SYSINIT passe ensuite à l'étape 14.
- Si le fichier CONFIG.SYS n'existe pas dans le répertoire racine du disque ou de la partition, alors SYSINIT passe à l'étape 15.
- SYSINIT recherche dans le répertoire racine du lecteur par défaut ou spécifié l'interpréteur de commandes (ou l'interpréteur de commande) spécifié dans le fichier CONFIG.SYS, ou COMMAND.COM si aucun interpréteur de commande n'a été spécifié.
- Si COMMAND.COM existe dans le répertoire racine de l'unité de disque par défaut ou spécifié, et si un fichier CONFIG.SYS n'a pas spécifié de l'interpréteur de commande différent, alors SYSINIT se charge et transfère le contrôle à COMMAND.COM.
- Si COMMAND.COM n'existe pas dans le répertoire racine de l'unité de disque par défaut ou spécifié, ou si un fichier CONFIG.SYS a spécifié un intepréteur de commande différent n'existant pas dans le répertoire racine de l'unité de disque par défaut ou spécifié, alors le message d'erreur «Bad or missing Command Interpreter» s'affiche.
- Si le fichier CONFIG.SYS a spécifié un interpréteur de commande autre que COMMAND.COM, et si cette interpréteur de commande existe dans le répertoire racine de l'unité de disque par défaut ou spécifié, alors SYSINIT chargera et transférera le contrôle à cette interpréteur de commande. (Un interpréteur de commande autre que COMMAND.COM peut ne pas se comporter de la même manière que COMMAND.COM dans les opérations décrites tout au long de ce manuel.)
- COMMAND.COM recherche le fichier AUTOEXEC.BAT.
- Si le fichier AUTOEXEC.BAT existe dans le répertoire racine du disque ou de la partition démarré, COMMAND.COM déclenche l'exécution séquentielle des commandes répertoriées dans le fichier AUTOEXEC.BAT.
- Si le fichier AUTOEXEC.BAT n'existe pas dans le répertoire racine des disques ou de la partition démarrés, alors COMMAND.COM déclenche l'exécution séquentielle des commandes résidentes DATE et TIME.
- Le COMMAND.COM affiche le prompt du système et attend que vous saisissiez une ligne de commande via le clavier de la console.
Remarque : SYSINIT est un module logiciel lié à la fin de IO.SYS dans le but de déplacer et d'initialiser MSDOS.SYS.
MS-DOS version 2.11 Copyright 1981,82,83 Microsoft Corp. |
Remarque : Le numéro de version affiché par votre logiciel peut différer de celui indiqué dans les exemples de ce manuel.
Le fichier CONFIG.SYS est décrit dans la section Complément de composante MSDOS.SYS.
Comportement de composante après le démarrage
Lorsque tous les composantes MS-DOS ont été chargés en mémoire (au démarrage), votre micro-ordinateur attend soit l'entrée d'une commande au prompt du système, soit l'exécution d'une commande.
Les manières dont vous pouvez modifier et entrer des lignes de commande sont expliquées dans Fonctionnalités de commande.
Cependant, cette section décrit les activités se produisant généralement pendant le bref laps de temps entre la fin de la saisie de la ligne de commande et le début de l'exécution de la commande.
Interprétation des commandes
La séquence d'étapes suivante montre comment MS-DOS interprète et répond généralement à une ligne de commande entrée.
- La ligne de commande est entrée au prompt du système.
- Si la ligne de commande a été saisie par vous directement via le clavier de la console, la saisie de la commande s'est terminée lorsque vous avez appuyé sur la touche RETURN.
- Si la ligne de commande a été entrée à partir d'un fichier de traitement par lots, alors l'entrée de commande (invisible enregistrée dans le fichier de traitement par lots) a été automatiquement lue à partir du fichier de traitement de par lots.
- La ligne de commande saisie est reçue par la composante système COMMAND.COM.
- COMMAND.COM analyse la ligne de commande et compare la fonction de commande avec les fonctions de commande résidentes (telles que DIR,
PROMPT ou GOTO) entreposées dans COMMAND.COM.
- Si la fonction de commande entrée correspond à une fonction de commande résidente, l'exécution de la commande commence immédiatement.
- Si la fonction de commande saisie ne correspond pas à une fonction de commande résidente, passez à l'étape 4.
- COMMAND.COM examine le répertoire du disque ou de la partition dans l'unité de disque par défaut ou dans l'unité de disque spécifié par la ligne de commande.
- Si l'unité de disque par défaut ou spécifié contient un seul fichier de commande transitoire (avec une extension .COM, .EXE ou .BAT) correspondant à la fonction de commande saisie, ce fichier de commande transitoire est chargé et l'exécution de la commande commence.
- Si l'unité de disque par défaut ou spécifié contient plus d'un fichier de commandes transitoires correspondant chacun à la fonction de commande saisie, l'un de ces fichiers de commandes transitoires sera chargé et exécuté selon les priorités suivantes :
- Une commande transitoire avec l'extension de nom de fichier .COM (telle que CHKDSK.COM ou DEBUG.COM) sera chargée et exécutée - même si elle existe dans un unité de disque contenant un fichier .EXE et/ou un fichier .BAT avec le même nom du fichier principal.
- Une commande transitoire avec l'extension de nom de fichier .EXE (telle que FC.EXE ou FIND.EXE) sera chargée et exécutée - même si elle existe dans un unité de disque contenant un fichier .BAT avec le même nom de fichier principal.
- Si l'unité de disque par défaut ou spécifié ne contient pas de fichier de commande transitoire correspondant à la fonction de commande saisie, le message d'erreur Bad command or file name s'affiche et est suivi du prompt système.
Remarque : Si le fichier COMMAND.COM n'a pas été chargé lors du démarrage, l'interpréteur de commandes ayant été chargé recevra la ligne de commande saisie. Un interpréteur de commandes autre que COMMAND.COM peut ne pas se comporter de la même manière que COMMAND.COM dans les opérations décrites tout au long des étapes restantes.
Priorité d'exécution des commandes
Une fonction de ligne de commande peut faire référence à l'un des quatre types de commandes (une commande résidente, un fichier .COM, un fichier .EXE ou un fichier .BAT). Par conséquent, si une fonction de ligne de commande entrée correspond à plusieurs types de commande résidant dans le système ou enregistrées sur le disque, MS-DOS doit déterminer laquelle de ces commandes sera exécutée.
La composante système COMMAND.COM détermine que la commande à exécuter est la commande disponible la plus élevée dans la liste suivante de priorités d'exécution :
- Commande résidente (réside en mémoire et n'a pas d'extension de nom de fichier).
- Commande transitoire avec l'extension de nom de fichier .COM.
- Commande transitoire avec l'extension de nom de fichier .EXE.
- Commande transitoire avec l'extension de nom de fichier .BAT.
Par exemple, si la ligne de commande hypothétique suivante a été saisie au prompt système :
PROGRAM C:THISFILE.OBJ/K/R |
puis COMMAND.COM analysera la ligne de commande et trouvera la fonction "PROGRAM". COMMAND.COM essaiera d'abord de faire correspondre PROGRAM avec sa liste de fonctions de commande résidentes, comme indiqué :
- BREAK
- CD
- CHDIR
- CLS
- COPY
- CTTY
- DATE
- DEL
- DIR
- ECHO
- ERASE
- EXIT
- FOR
- GOTO
- IF
- MD
- MKDIR
- PATH
- PAUSE
- PROMPT
- RD
- REM
- REN
- RENAME
- RMDIR
- SET
- SHIFT
- TIME
- TYPE
- VER
- VERIFY
- VOL
Ensuite, si la fonction de ligne de commande PROGRAM entrée ne correspond à aucune des fonctions de commande résidentes valides (comme c'est le cas), COMMAND.COM essaiera de trouver un fichier de commande transitoire sur le disque ou la partition de l'unité de disque par défaut.
Si COMMAND.COM trouve plus d'une commande transitoire avec le nom de fichier principal PROGRAM dans l'unité de disque, il en sélectionnera une à charger et à exécuter. Le tableau suivant présente plusieurs scénarios possibles dans lesquels un ou plusieurs fichiers de commandes transitoires sont enregistrés sur le disque et indique lequel d'entre eux COMMAND.COM sélectionnerait :
Fichiers exécutables dans l'unité de disque par défaut | Fichier sélectionné par COMMAND.COM pour le chargement et l'exécution |
---|---|
PROGRAM.COM | PROGRAM.COM |
PROGRAM.EXE | PROGRAM.EXE |
PROGRAM.BAT | PROGRAM.BAT |
PROGRAM.COM PROGRAM.EXE |
PROGRAM.COM |
PROGRAM.EXE PROGRAM.BAT |
PROGRAM.EXE |
PROGRAM.COM PROGRAM.EXE PROGRAM.BAT |
PROGRAM.COM |
Les fichiers de commandes transitoires ne peuvent pas être exécutés tant qu'ils se trouvent sur le même unité de disque que d'autres fichiers de commandes transitoires ayant à la fois le même nom de fichier principal et des priorités d'exécution supérieures. SI vous souhaitez exécuter de telles commandes avec des priorités inférieures, utilisez la commande RENAME pour leur donner un nom principal unique ou utilisez la commande COPY pour les copier sur un disque ou une partition dans un unité de disque différent.
Remarque : Si la fonction de ligne de commande saisie ne correspond pas à une commande résidente ou à une commande transitoire dans l'unité de disque par défaut ou spécifié, l'exécution ne se produira pas et le message d'erreur suivant s'affichera :
Bad command or file name |
Le prompt du système s'affiche sous ce message d'erreur.
Compléter la composante MSDOS.SYS
Vous pouvez améliorer votre environnement d'exploitation MS-DOS pour l'adapter à vos propres préférences en créant ou en modifiant un fichier CONFIG.SYS. Le système chargera automatiquement un fichier portant ce nom au démarrage s'il existe dans le répertoire racine du disque ou de la partition démarré. Le chargement automatique de ce fichier vous permet d'apporter à MSDOS.SYS des ajouts ou des modifications dont la mise en ouvre prendrait autrement beaucoup de temps et d'expérience.
Ce fichier est un fichier ASCII contenant des sous-commandes pour l'achèvement de la séquence de démarrage et la configuration de certaines caractéristiques du système.
Commandes CONFIG.SYS
Les commandes suivantes peuvent être incluses dans un fichier CONFIG.SYS :
BUFFERS = number |
Dans cette commande, number est le nombre de tampons de secteur supplémentaires à ajouter à la liste système. Initialement, la liste système contient 2 tampons de disque. Chaque occurrence d'une commande BUFFERS ajoute n tampons à la liste. Un tampon est d'environ 528 octets et peut augmenter la vitesse de traitement MS-DOS.
FILES = number |
Dans cette commande, number est le nombre de fichiers ouverts accessibles par certains appels système. La valeur par défaut est 8. Si une valeur inférieure ou égale à 5 est spécifiée, la commande est ignorée.
DEVICE = filename |
Cette commande installe le pilote de périphérique contenu dans filename dans la liste système. Le filename spécifié doit être un pilote de périphérique valide. Votre logiciel MS-DOS inclut le pilote de caractères ANSI compatible ANSI.DVD. Vous pouvez implémenter ce pilote de périphérique avec une commande DEVICE dans un fichier CONFIG.SYS.
BREAK = ON |
BREAK = OFF |
Si ON est spécifié, une vérification de l'entrée CTRL+BREAK ou CTRL+C à l'entrée de la console est effectuée à chaque fois que le système est appelé. Le paramètre par défaut de cette commande est OFF.
SWITCHAR = char |
Cette commande spécifie le caractère de désignation du commutateur. Le MS-DOS renverra char comme caractère de basculement actuel lorsque l'appel du système d'exploitation pour renvoyer le caractère de basculement est effectué. Le caractère de commutation par défaut est la barre oblique (/).
Remarque : Le caractère de commutation spécifié peut affecter les caractères utilisés dans la commande SHELL. Cela est vrai pour l'interpréteur de commande par défaut, COMMAND.COM.
AVAILDEV = TRUE |
AVAILDEV = FALSE |
La valeur par défaut pour cette commande est TRUE. Cela signifie que \dev\dev et dev référencent tous deux le même périphérique (c'est-à-dire dev). Si FALSE est sélectionné, seul \dev\dev fait référence à un périphérique nommé dev. Dans ce cas, dev seul signifie un fichier dans le répertoire courant avec le même nom que l'un des périphériques.
SHELL = filename |
Cette commande spécifie le filename à appeler pour commencer l'exécution de l'interpréteur de commande. L'interpréteur de commande est le processeur de commandes de niveau supérieur, souvent appelé interpréteur de commandes. L'interpréteur de commande par défaut est COMMAND.COM, étant décrit dans la section Composantes physiques de cette page.
Exemple de CONFIG.SYS
Un fichier CONFIG.SYS peut contenir les lignes de commande suivantes :
BUFFERS = 15 FILES = 10 DEVICE = \DEV\ANSI.SYS BREAK = ON |
Cet exemple complète MSDOS.SYS avec les caractéristiques suivantes :
- Allouer 15 tampons disque,
- Autoriser 10 canaux de fichiers,
- Charger le périphérique ANSI.SYS depuis le répertoire \dev,
- Réglez BREAK sur ON
Message d'erreur CONFIG.SYS
Si un fichier CONFIG.SYS contient une commande n'étant pas sous la forme des commandes expliquées dans cette section, le message d'erreur suivant s'affichera lors de son chargement lors du démarrage :
Unrecognized command in CONFIG.SYS |
Ouvrez le fichier CONFIG.SYS, corrigez sa ou ses commandes à l'aide du ou des formats de commande CONFIG.SYS décrits, réinitialisez le système et redémarrez.
Sommaire
La plupart des systèmes d'exploitation de micro-ordinateurs ont les cinq principaux composantes génériques suivants :
- Gestionnaire d'entrées/sorties - gestion des entrées et sorties du système
- Gestionnaire de fichiers - gestion du système de fichiers,
- Gestionnaire de mémoire - gestion de l'allocation de la mémoire du microprocesseur,
- Exécutif - charger des programmes et amener le micro-ordinateur à exécuter les instructions du programme
- Chargeur de démarrage - début du processus de chargement des autres composants du système (inactif une fois que tous les composants ont été chargés).
Ce système d'exploitation exécute toutes les activités des composantes génériques, mais est divisé en ces quatre composantes MS-DOS :
- MSDOS.SYS - répertoire d'activités indépendant du matériel,
- IO.SYS - communicateur dépendant du matériel avec les appareils,
- COMMAND.COM - interpréteur de commandes indépendant du matériel,
- Chargeur de démarrage MS-DOS - Déplacement du système dépendant du matériel du disque vers la mémoire.
Les composantes IO.SYS et MSDOS.SYS peuvent être enregistrés sur un support disque en tant que fichiers cachés par FORMAT et SYS. Le COMMAND.COM peut être enregistré par FORMAT, mais pas par SYS. COMMAND.COM n'est pas un fichier caché. La composante du chargeur de démarrage peut être enregistré sur le média disque sur un secteur non-fichier réservé par FORMAT.
Lorsque vous démarrez MS-DOS à partir d'un support d'entreposage, ses composantes effectuent plusieurs étapes. Le programme de surveillance (Monitor) en ROM (Read Only Memory) charge leur chargeur de démarrage à partir du support (si le support est une disquette) ou il charge l'enregistrement de démarrage (si le support est une partition Winchester). (Si le support est une partition Winchester, l'enregistrement de démarrage charge le chargeur de démarrage.) Le chargeur de démarrage charge ensuite les fichiers IO.SYS et IO.SYS charge MSDOS.SYS. Le SYSINIT (un module de IO.SYS) déplace et initialise MSDOS.SYS. Ensuite, SYSINIT charge CONFIG.SYS (si présent) et COMMAND.COM (sauf si un autre interpréteur de commande est spécifié). COMMAND.COM charge AUTOEXEC.BAT (si présent). Après l'exécution de l'une des commandes dans AUTOEXEC.BAT ou des commandes DATE et TIME, COMMAND.COM affiche le prompt système.
S'il est possible que la fonction d'une commande entrée s'applique à plusieurs commandes accessibles. Lorsque cela se produit, COMMAND.COM détermine que la commande à exécuter est la commande disponible la plus élevée dans la liste suivante des priorités d'exécution :
- Commande résidente (réside en mémoire et n'a pas d'extension de nom de fichier)
- Commande transitoire avec l'extension de nom de fichier .COM
- Commande transitoire avec l'extension de nom de fichier .EXE
- Commande transitoire avec l'extension de nom de fichier .BAT
Vous pouvez personnaliser les composantes MSDOS.SYS en créant ou en modifiant un fichier ASCII nommé CONFIG.SYS, puis en redémarrant.