Vous êtes sur la page 1sur 113

BTS Informatique de gestion

1re anne
Alain Tarlowski

Architecture logicielle
des systmes informatiques
Cours 1 (systmes dexploitation)

Directrice de publication : Valrie Brard-Trigo


Les cours du Cned sont strictement rservs lusage priv de leurs destinataires et ne sont pas destins une utilisation collective. Les personnes
qui sen serviraient pour dautres usages, qui en feraient une reproduction intgrale ou partielle, une traduction sans le consentement du Cned,
sexposeraient des poursuites judiciaires et aux sanctions pnales prvues par le Code de la proprit intellectuelle. Les reproductions par
reprographie de livres et de priodiques protgs contenues dans cet ouvrage sont effectues par le Cned avec lautorisation du Centre
franais dexploitation du droit de copie (20, rue des Grands Augustins, 75006 Paris).

Conseils gnraux
Voici votre premier cours du module Architecture logicielle des systmes informatiques du BTS
Informatique de gestion abrg sous lacronyme ALSI . Ce module a pour but de faire dcouvrir
linscrit, sur les deux ans, la partie logiciel des systmes informatiques. En effet, un ordinateur
sans la couche logicielle na aucun intrt pour les utilisateurs. Ce serait comme avoir une voiture
sans moteur, sans volant, sans pdale bref sans intrt car on ne peut rien faire avec.
Le module ALSI, pris dans son ensemble, commence par ltude gnrale de logiciels spcifiques
qui permettent de faire fonctionner un ordinateur, nous dirons plutt exploiter les capacits
dun ordinateur, il sagit vous lavez compris des systmes dexploitation . Ensuite, lALSI sattachera montrer linscrit lutilisation des logiciels dans le domaine de la bureautique, dInternet, mais encore dans le domaine des bases de donnes, des logiciels dits Client/Serveur , des
logiciels de gestion et dadministration des rseaux sans oublier la partie rseau des systmes
dexploitation. Cette dernire partie inclut bien entendu lexplication du mcanisme software
des rseaux. Celle-ci sera plus o moins approfondie en fonction de loption de linscrit mais ceci
est autre chose.
Ce premier cours a pour but dexpliquer, de manire gnrale, le rle et le vocabulaire associs
la notion de systme dexploitation mais aussi comment fonctionnent les plus connus dentre
eux (DOS, WINDOWS XP et LINUX). Nous tudierons galement le mcanisme du partitionnement dun disque dur car cest le point de dpart de linstallation dun systme dexploitation sur
un ordinateur mais galement le point de dpart de la mise en fonction de ce dernier lorsque
lutilisateur met sous tension son ordinateur. Enfin, nous terminerons sur ltude du principe des
systmes de gestion de fichiers qui permettent un systme dexploitation de grer les fichiers et
les rpertoires dun utilisateur.
Attention, ce premier cours contient peut tre des informations que vous connaissez depuis longtemps mais ne passez pas au dessus car on peut toujours apprendre de nouvelles choses et surtout
il faut avoir le bon vocabulaire pour la suite des cours. En effet, les bases dun cours doivent tre
acquises pour que ce ciment de la connaissance puisse permettre daller plus loin.
Voil je pense que cette introduction vous a mis leau la bouche alors allons-y sans plus attendre.

Sommaire
Squence 1 : Gnralits sur les systmes dexploitation
Squence 2 : tude du systme dexploitation DOS

5
77

Squence 3 : tude du systme dexploitation Windows XP Pro

119

Squence 4 : tude du systme dexploitation LINUX

203

Squence 5 : Systme de gestion de fichiers

293

3
8 3999 TG PA 01

Squence 1

Gnralits sur les systmes


dexploitation
u Contenu
1.

Quel est le rle des systmes dexploitation ? ......................... 6

2.

Chargement dun systme dexploitation en mmoire ........ 10

4.

Les diffrents types de systme dexploitation ....................... 18

5.

Quelques noms de systmes dexploitation.............................. 20

5A.
5B.
5C.
5D.
5E.

MS-DOS ....................................................................................................... 20
Windows 95 98 - Me ............................................................................... 22
Windows NT 2000 XP - Vista ............................................................... 25
UNIX LINUX .............................................................................................. 27
Conclusion ................................................................................................... 28

6.

Le partitionnement dun disque dur ............................................ 29

7.

Systme dexploitation et le travail en rseau ........................ 69

7A.
7B.
7C.

volution de larchitecture informatique des entreprises ...................... 69


Systme dexploitation et rseau ............................................................. 72
Le ncessaire pour placer un poste dans un rseau................................ 75

Lorsque vous vous installez devant un ordinateur et que vous le mettez sous tension, que se passe-il ? Vous pouvez remarquer que ce dernier ralise un certain
nombre doprations, qui peuvent tre plus ou moins longues, au bout desquelles il vous donne la main afin de vous laisser travailler avec les diffrents logiciels
installs. Ensuite, il ne vous reste plus qu prendre votre souris pour cliquer sur
certaines zones de lcran ou votre clavier pour taper des instructions, qui seront
ensuite excutes par lordinateur, du texte ou encore des chiffres.
En fait, la finalit dun utilisateur est dutiliser les possibilits de son ordinateur
sans se proccuper de comment cela peut se faire. Cela doit tre transparent pour
lui. Ainsi pour rpondre la question du dbut de ce paragraphe, on peut dire
que la premire tape aprs la mise sous tension de lordinateur consiste mettre en place tous les lments logiciels permettant dexploiter les possibilits de
lordinateur de lutilisateur. Il charge donc un systme dexploitation en mmoire.
Cependant cette premire tape est parfois longue alors, peut-on sen passer ?

5
8 3999 TG PA 01

Squence 1

1.

Quel est le rle des systmes dexploitation ?


Pour rpondre cette question, modlisons la scne de dpart. Nous avons dun ct un
utilisateur, en loccurrence vous, et de lautre un ordinateur.

En fait, comme vous pouvez vous en douter, en regardant les tiquettes des ordinateurs
mis en vente dans les magasins ou encore en lisant la presse spcialise en informatique,
un ordinateur est constitu dun ensemble de composants lectroniques (processeur,
carte mre, carte rseau, carte vido, contrleur de disque dur, mmoire, etc) sur lesquels
viennent parfois se connecter dautres lments appels priphriques (imprimante, graveur de CDROM, scanner, modem, etc).
Le problme rside donc dans le fait de faire fonctionner tout cela en harmonie et que
lensemble puisse communiquer quand il le faut et comme il le faut afin de rpondre vos besoins. Vous voulez imprimer, il faut que lensemble communique, ou du moins
les lments concerns, afin de sortir la feuille papier avec les donnes attendues. Vous
voulez faire une sauvegarde de votre travail, il faut que le systme informatique sexcute
et crive sur le disque dur, la disquette ou la cl USB, au bon endroit, la bonne information, sans dtruire les donnes qui sy trouvent dj. Le problme est bien l car pour faire
fonctionner un ordinateur, quelle que soit la catgorie dans laquelle il est class (micro,
mini, gros systme), il ne suffit pas de le mettre sous tension mais il faut galement que
lutilisateur lui fournisse, par un moyen ou un autre, des instructions comprhensibles par
celui-ci or un ordinateur ne connat quun seul langage : le langage machine.
Je vois dj vos sourcils se froncer sur cette dernire notion, alors une petite explication
simpose. Le langage machine, appel galement code machine , se compose dun
ensemble dinstructions codes en binaire, cest dire avec une suite de 1 et de 0, qui
sont directement comprhensibles et excutables par le processeur dun ordinateur. Cest
le seul langage que ce dernier comprenne. Cest son langage de base. En fait, le langage
machine contient un ensemble dinstructions primitives, mme sil volue aujourdhui
car les processeurs sont capables dexcuter des instructions plus complexes grce aux
technologies lectroniques de plus en plus performantes, qui permettent de demander
lordinateur dexcuter des tches simples. Il suffit ensuite dassembler des actions
simples pour raliser une tche plus complexe. Cest ce qui est fait au travers dun programme. On peut conclure sur ce sujet dune manire vidente en disant que le langage
machine nest pas directement comprhensible et utilisable par les utilisateurs lambda
mais plutt par des experts et encore au travers du langage Assembleur . En effet, il
nest pas vident de comprendre et utiliser une suite de 0 et de 1. Pour imager cela, cest
comme si on vous demandait de traduire un texte qui vous est fourni en morse. moins
dtre initi, ce nest pas vident et peut-tre pas trs intressant.
Si un ordinateur ne comprend que le langage machine, cela signifie que si vous voulez,
par exemple, faire une sauvegarde dinformation, il faut par un moyen ou un autre
que vous envoyez lordinateur la squence dinstructions codes en binaire qui ralise
lopration.

6
8 3999 TG PA 01

Gnralits sur les systmes dexploitation

Remarque

Dans les annes 50, on utilisait des cartes perfores pour communiquer avec lordinateur
et lui donner des instructions).
De plus en retour, lordinateur renvoie une valeur numrique qui indique si lopration
sest bien ralise ou non. vous ensuite de rcuprer cette valeur et den comprendre
la signification.
1001 1000 1100 1110
0000 0100 1001 1000

ce stade du cours, vous vous dites certainement : Je ne vois pas o il veut en venir
car moi lorsque je suis devant mon ordinateur, je ne parle pas en binaire mais je tape des
commandes au clavier ou je clique sur des icnes. Cest plus simple !
Justement, pour dmocratiser linformatique et la faire entrer dans tous les foyers, il a
bien fallu trouver une solution intermdiaire qui permette dexploiter plus simplement
les composants et les priphriques dun ordinateur. En fait, cette solution vient se placer
entre lutilisateur et lordinateur et elle se charge du dialogue avec lordinateur afin de
lui faire raliser les actions souhaites par lutilisateur.
Commande xcuter

Rponse en clair

1001 1000 1100 1110

0000 0100 1001 1000

Vous lavez devin, cette solution intermdiaire nest autre que le systme dexploitation.
Nous allons donc maintenant pouvoir donner une dfinition du systme dexploitation.
Dfinition : le systme dexploitation (ayant pour acronyme OS en anglais pour
Operating System ) est form dun ensemble structur de programmes qui ont
pour but de grer les ressources matriels dun ordinateur, savoir ses composants lectroniques et ses priphriques. Il sert ainsi dinterface entre lutilisateur et lordinateur. Il sagit donc dune couche logicielle qui se positionne
entre la couche matrielle et lutilisateur.

7
8 3999 TG PA 01

Squence 1

Ainsi, un systme dexploitation fournit un certain nombre doutils permettant de grer


un ordinateur plus simplement en prenant le relais entre lutilisateur et la machine.
Il fournit les moyens dutiliser correctement les ressources de lordinateur. Il
assure par exemple, linitialisation du systme informatique aprs une mise sous tension
ou encore le paramtrage de lenvironnement de travail de lutilisateur en fonction de
ses souhaits. Il peut grer les priphriques associs lordinateur et raliser des oprations comme laffichage des caractres lcran ou bien la lecture des donnes saisies au
clavier, mais aussi le pilotage dune imprimante ou dun scanner, etc.
Un systme dexploitation doit donc obligatoirement tre install sur votre ordinateur,
par votre revendeur ou par vous-mme, avant de pouvoir utiliser celui-ci, sans quoi vous
ne disposez que dun ensemble de composants lectroniques inutilisables et sans intrt.
Attention, le systme dexploitation reste proche de la couche matrielle car il pilote
les diffrents composants chaque sollicitation de lutilisateur. Nous dirons alors quil
doit tre compatible avec celui-ci.
Mais au fait, comment un utilisateur peut-il, lui, sadresser un systme dexploitation ?
Quel langage utiliser ? En effet, nous savons quun OS est capable de dialoguer avec les
diffrents composants dun ordinateur car les dveloppeurs de lOS ont programm toutes les fonctionnalits permettant de raliser cette tche mais lutilisateur, lui, comment
transmet-il ses ordres au systme dexploitation ? Cest simple, la communication entre
un utilisateur et un systme dexploitation stablit par lintermdiaire dun langage
de commandes et dun interprteur de commandes. Le langage de commandes
contient un ensemble de commandes, appeles commandes systmes , prdfinies
par le concepteur de lOS. Elles permettent lutilisateur de piloter lordinateur et ses
priphriques en ignorant tout des caractristiques du matriel quil utilise puisque cela
est du domaine du systme dexploitation. Pour linstant, nous nirons pas plus loin sur
cette notion de commande systme, mais ne vous inquitez pas, nous allons avoir loccasion dy revenir dans la suite du support.
Pour linstant, ce niveau davancement du cours, on peut dj distinguer deux types de
systme dexploitation.
Les systmes d'exploitation fonctionnant en mode caractre ou mode texte . Les
instructions sont entres sous forme de caractre partir du clavier et l'ordinateur fournit
des rponses sous forme de texte. Les systmes en mode caractre sont plus complexes utiliser car il faut explicitement taper au clavier la syntaxe exacte de toutes les
commandes souhaites. Cela est effectivement plus long mais l'OS offre une plus grande
souplesse car, en gnral, les commandes systmes possdent un grand nombre d'options
permettant d'affiner l'action souhaite. Elles demandent en contrepartie de connatre la
syntaxe des commandes systmes. Nous verrons des exemples plus loin dans le cours avec
l'tude du systme d'exploitation MS-DOS et LINUX.
8
8 3999 TG PA 01

Gnralits sur les systmes dexploitation

Les systmes d'exploitation fonctionnant en mode graphique . Ils prsentent des


icnes auxquelles sont associes des commandes systmes, permettant l'utilisation de
la souris pour les dclencher, ainsi que des applications graphiques avec boutons de
commande, zones de textes, botes de dialogue, etc. C'est le type de systme que la
plupart des utilisateurs utilisent et plbiscitent car plus simple, plus visuel voire plus
intuitif. Cependant toutes les commandes systmes et leurs options ne peuvent pas
tre reprsentes sous forme d'icnes graphiques sans risquer de surcharger l'cran.
Consquence, le nombre de commandes systmes excutables par ce moyen est limit
l'essentiel. Ceci est bien pour l'utilisateur occasionnel mais frustrant pour l'expert
lorsque ce dernier souhaite rparer un systme d'exploitation sans avoir tout
rinstaller. Remarquez, bien souvent, un systme en mode graphique permet
l'utilisateur averti d'ouvrir un espace de travail (une fentre) l'intrieur duquel (de
laquelle), il peut travailler en mode caractre . Nous verrons cela plus loin dans le
cours avec l'tude du systme d'exploitation WINDOWS XP.
Remarque

Un peu plus haut dans le cours, nous avons employ le terme interprteur de commandes . De quoi sagit-il ? En fait, un interprteur de commandes est un programme
intgr un systme dexploitation (voir dfinition des systmes dexploitation) qui, comme
son nom le laisse supposer, a pour rle dinterprter les caractres saisis au clavier par
lutilisateur afin de trouver une correspondance avec une commande systme de lOS. Au
final, linterprteur de commandes demande lOS dexcuter la commande souhaite si
elle existe sinon il affiche un message derreur.
Comme nous venons de le voir, le systme dexploitation fournit un ensemble de commandes mais aussi parfois quelques utilitaires comme par exemple une calculatrice ou
encore un diteur de texte. Bien entendu cela nest pas suffisant pour faire du traitement
de texte avec mise en page. Ainsi, autour des systmes dexploitations se sont dvelopps
des logiciels Applicatifs (traitement de texte, tableur, jeux, logiciels de dessin ou de
retouche dimage, etc), appels galement applications , qui permettent de rendre
encore plus attractifs les ordinateurs. Bien entendu, ces logiciels utilisent les capacits du
systme dexploitation install et, travers celui-ci, les capacits des ordinateurs et des
priphriques. En fait, nous pouvons complter la dfinition dun systme dexploitation
en disant que ce dernier a pour rle de mettre la disposition dun utilisateur final ou
dune application, une machine virtuelle, galement appele machine abstraite, qui propose un ensemble de services, plus simples dutilisation, qui sappuie sur les possibilits
de la machine physique. Au final, nous obtenons le schma suivant.

9
8 3999 TG PA 01

Squence 1

Allez une petite conclusion pour la route. Voyons ce que vous avez retenu de cette premire partie. Question : le systme dexploitation est .. ?
Bravo ! Il sagit effectivement dun logiciel qui se compose dun ensemble de programmes et qui joue le rle dinterface entre lutilisateur, dun ct, et lordinateur avec ses
composants et ses priphriques de lautre. En rsum, il est l pour :
fournir un environnement dans lequel l'utilisateur peut excuter des programmes
(des applications) de manire pratique et efficace. Ainsi tous les logiciels et toutes
les commandes auxquels l'utilisateur a accs ne sont pris en compte par l'ordinateur
qu'au travers du systme d'exploitation ce qui, en principe, scurise son utilisation ;
assurer le fonctionnement correct de l'ordinateur et de ses priphriques ;
contrler les ressources de l'ordinateur. L'OS est trs li au matriel car c'est lui qui
communique avec. Il doit donc le connatre dans ses moindres retranchements ce
qui libre l'utilisateur de cette tche ;
fournir la base sur laquelle seront construits les programmes d'application par les
dveloppeurs.
Voici quelques exemples de systmes d'exploitation : MS DOS, Windows, UNIX, Linux.

2.

Chargement dun systme dexploitation en mmoire


Prcdemment, nous avons dfini quun systme exploitation est constitu dun ensemble structur de programmes qui ont pour rle de grer lordinateur la place dun
utilisateur. Un systme dexploitation joue donc le rle du chef dorchestre en charge du
fonctionnement harmonieux et non conflictuel des ressources de lordinateur (processeur,
mmoire, priphriques, etc) et de la coordination des interactions entre lutilisateur et
les programmes en cours dexcution. Schmatisons cela de la manire suivante :

10
8 3999 TG PA 01

Gnralits sur les systmes dexploitation

Mais quel moment le systme dexploitation se met-il en action ? Eh oui, vous lavez
devin, au dmarrage de lordinateur, ou presque. En effet, lorsque vous mettez sous
tension lordinateur, le processeur de celui-ci excute dans un premier temps un mini
programme qui se trouve stock dans la mmoire ROM de la carte-mre. Il sagit du BIOS
(Basic Input Output System).
Avant daller plus loin dans lexplication de ce dernier terme, ouvrons une parenthse.
Sans entrer dans le dtail, la mmoire ROM (Read Only Mmory), appele galement
mmoire morte , est un composant lectronique dont le contenu ne peut tre modifi par lutilisateur et ne disparat pas larrt de lordinateur. Ce type de mmoire est
souvent oppos la mmoire RAM (Random Access Memory) que lon appelle galement la mmoire vive et dont le rle est de mmoriser de linformation le temps que
lordinateur reste sous tension. Dans ce dernier cas, linformation y est dite volatile .
En ce qui concerne la ROM, les donnes qui sy trouvent au dpart y ont t places par
le fabricant. Certes, aujourdhui, nous sommes lre de lEEPROM (Electrically Erasable
Programmable Read-Only Memory) qui est une mmoire morte dont le contenu peut
tre effac et reprogramm lectriquement mais le principe reste le mme car cette
mmoire garde linformation mme si lordinateur est hors tension. LEEPROM est plus
efficace car son contenu est volutif dans le temps mais plus dangereuse en cas de mauvaise manipulation au moment de lopration de mise jour. Fermons la parenthse.
Le BIOS (Basic Input Output System) est le premier programme qui est lanc au dmarrage (au boot en Anglais) de lordinateur. En fait, le BIOS ralise deux actions conscutives. La premire action consiste initialiser et contrler le bon fonctionnement des
composants de base de la machine: la carte mre, le processeur, la mmoire, le clavier,
laffichage et enfin les lecteurs de disques, disquettes, CDROM. Cette phase de contrle
sappelle le Power On Self Test (POST) et elle peut dboucher, en cas de problme
grave, sur larrt de la procdure de dmarrage de lordinateur avec parfois affichage
dun message derreur lcran ou mission dune squence de bips dont le nombre est
codifi et peut permettre de diagnostiquer lorigine de la panne. En gnral, si tout se
passe bien durant cette phase, lordinateur met un bip bref. La seconde action du BIOS
consiste excuter les premires commandes systmes lui permettant de lire, sur le disque dur ou sur lun des lecteurs de disque (lecteur de disquette dans le cas o il dtecte
une disquette lintrieur ou sur le lecteur de CDROM sil contient un CDROM), le tout
premier secteur.
Tiens voil encore un nouveau terme. Alors, ouvrons une parenthse. Un disque (disque dur, disquette, etc) est dcoup en petites units logiques (appeles secteur )
pouvant contenir des donnes. La taille dun secteur est de 512 octets, cest dire quil
peut contenir jusqu 512 caractres. Pourquoi faire un tel dcoupage ? La rponse est
simple. Sur un disque, on place des donnes qui proviennent de diffrents fichiers. Il peut
sagir de documents utilisateurs ou encore des programmes des diffrentes applications
installes ou encore ceux du systme dexploitation. Si on ne cre pas, sur le disque, des
zones spcifiques chacun des fichiers, toutes les donnes contenues dans ces derniers
risquent de se mlanger. Imaginez que dans lune des pices de votre habitation, vous
vidiez le contenu de tous vos cartons ! Inconcevable si on veut tre ordonn et retrouver rapidement ses affaires ! Dans le monde informatique, cest la mme chose. Afin de
regrouper les donnes concernant chacun des fichiers, on a mis en place la notion de
secteur. Ainsi, ce dcoupage permet un quadrillage du disque et donc une numrotation
des diffrentes zones appeles secteur . Ce principe permettra au systme dexploitation, via un mcanisme dnomm systme de fichiers ou File system en anglais

11
8 3999 TG PA 01

Squence 1

(genre FAT, FAT32 ou NTFS), daffecter un ensemble de secteurs chacun des fichiers et
de pouvoir ainsi grer et rechercher plus efficacement les donnes qui sy trouvent. En
rsum, la notion de secteurs permet de segmenter un disque (une disquette) afin de
rpartir, et surtout de retrouver, les donnes de chacun des fichiers. Avant de refermer la
parenthse, voil un schma permettant de se reprsenter visuellement un secteur :

La notion de secteur tant dfinie, revenons-en notre BIOS et la question que nous
sommes en droit de nous poser. Pourquoi doit-il tenter de lire les informations du premier secteur prcisment ? Encore une fois la rponse est simple. Par convention, et
pour uniformiser le mcanisme de boot dun ordinateur, il a t prvu que ce serait le
tout premier secteur dun disque (pourquoi chercher plus compliqu), qui sera ventuellement susceptible de contenir des informations permettant de lancer lexcution dun
systme dexploitation. cette tape, il nous faut diffrencier le principe du premier
secteur pour les disque durs du principe du premier secteur pour les autres priphriques
de stockage (disquette, CD-ROM).
Nous allons commencer par le premier secteur des disques durs. En effet, ces derniers
peuvent tre partitionns . Ae ! Je vous vois encore en train de froncer les sourcils
donc explication ! En fait, un utilisateur a la possibilit de diviser son disque dur physique
en plusieurs disques logiques appels partitions . Physiquement, dans lordinateur, il
ny a quun disque dur mais du point de vue du BIOS, et dans un deuxime temps, du
systme dexploitation lorsquil sera charg en mmoire, lutilisateur dispose de plusieurs
disques durs virtuels . Nous verrons plus loin dans cette squence lintrt de cela.
Pour linstant, revenons sur notre premier secteur dun disque dur. Celui-ci est appel
Master Boot Record ou MBR et comme tout secteur, il a une taille de 512 octets.
En effectuant un zoom sur son contenu, on peut observer que le MBR contient un programme crit en assembleur ayant une taille de 446 octets maximum, appel bootstrap
loader ou encore bootloader en anglais, ainsi quune structure de donnes appele la table des partitions . Cette table des partitions contient des informations sur
chacune des partitions cres, savoir, la position physique de la partition sur le disque
dur ( quel endroit elle commence et quel endroit elle se termine), la taille de la partition exprime en nombre de secteurs, le type de la partition (Ex: FAT, FAT32, NTFS) ainsi
quune indication permettant de savoir si la partition est active ou non. La partition
active est la partition, dsigne par lutilisateur, comme tant susceptible de contenir
un autre programme appel le programme de boot . Le rle de ce dernier est de
charger le code du systme dexploitation, install sur la partition, en mmoire RAM puis
de lancer son excution. Attention, on ne peut dsigner quune seule partition active et

12
8 3999 TG PA 01

Gnralits sur les systmes dexploitation

cela se fait au travers dutilitaires (genre fdisk de MS-DOS ou encore Partition Magic)
dont nous reparlerons ultrieurement. En rsum, le programme du MBR, le bootloader,
est excut par le BIOS et son rle consiste dune part, lire la table des partitions afin
de dterminer la partition active et la position du secteur de boot de cette partition, et
dautre part, vrifier si le secteur de boot de la partition active contient un programme de boot . Dans laffirmatif, il charge le programme de boot et lance son excution
ce qui va permettre ensuite celui-ci damorcer la mise en place du systme dexploitation install sur la partition active. Nous reviendrons plus en dtail sur ce mcanisme de
partition dans le paragraphe 6 de cette squence.
Venons en maintenant au premier secteur des autres priphriques de stockage
(Disquette, CD-ROM...). Pour ceci, le mcanisme est plus simple car le premier secteur
est le secteur de boot susceptible de contenir un programme de boot permettant de
charger puis de lancer lexcution du systme dexploitation.
Prcdemment, jai employ lexpression susceptible de contenir un programme .
Pourquoi ?
Eh bien oui, un disque, une disquette ou encore un CD-ROM nest pas oblig de contenir un programme de boot . Ce dernier est mis en place lors de linstallation du dit
systme dexploitation sur lordinateur ou encore en excutant lune des commandes
systme de celui-ci, par exemple format suivi de loption /s en MS-DOS.
Remarque

Pour crer un CD-ROM contenant un programme de boot, lopration est un peu plus complexe. Attention, nous naborderons pas ce sujet dans ce cours mais vous pouvez trouver sur
Internet des modes opratoires).
Ainsi le BIOS effectue la recherche du programme de boot , sur le premier secteur
de chacun des lments prcits, dans un ordre qui est paramtrable grce au fameux
Setup du BIOS. Il sagit dun programme, faisant parti du BIOS, activable gnralement par une touche du clavier, exemple la touche F2 ou encore la touche Suppr ,
lors de la mise sous tension de lordinateur. Le Setup affiche un menu partir duquel
lutilisateur averti peut modifier certains paramtres de base de lordinateur notamment lordre de parcours des lecteurs de disque la recherche du programme de
boot . Ces paramtres sont stocks dans la CMOS (Complementary Metal Oxide Semiconductor) galement situe sur la carte mre. Il sagit dun type de mmoire faible
consommation lectrique, alimente par une petite pile ou une batterie, qui contient
les informations de base ncessaires au bon fonctionnement de lordinateur et de son
BIOS (exemple : les caractristiques du ou des disques durs, lordre de test des lecteurs
de disque, la date et lheure, etc.). Au final, le BIOS lance lexcution du programme de
boot de la premire unit de disque qui en possde un. Il recherche ainsi la premire
unit de disque bootable . Sil nen trouve pas, il affiche un message derreur. Vous
comprenez peut-tre mieux maintenant pourquoi on entend dire parfois Est-ce que
ton disque est bootable ?

13
8 3999 TG PA 01

Squence 1

3.

Les diffrentes tches rserves un systme


dexploitation
Voil aprs toutes ces explications, le chargement de notre systme dexploitation est sur la
bonne voie. Vous comprenez mieux maintenant le pourquoi de cette premire phase dattente devant lcran de lordinateur avant de voir apparatre un frmissement du systme
dexploitation. Mais malheureusement ce nest pas encore fini ! Eh oui ! Le programme de
boot, a en fait pour rle de lancer le chargement en mmoire RAM du systme dexploitation,
ou du moins dune partie essentielle qui sappelle le noyau du systme dexploitation, puis
de lancer son excution mais ce nest pas suffisant pour avoir la main sur lordinateur. Et voil,
nous sommes repartis pour une nouvelle attente car le systme dexploitation doit encore
raliser un certain nombre doprations. Il doit entre autre :
Vrifier le bon fonctionnement des priphriques c'est--dire que la communication peut
s'tablir sans problme avec ces derniers.
Initialiser l'ordinateur et ses priphriques en vue de les rendre utilisables.
Charger, en mmoire RAM, les pilotes de priphriques ("driver" en anglais). Je vois votre
tte changer d'expression ! Pilote ? Qu'est-ce qu'un pilote ? Il s'agit tout simplement
d'un programme qui a pour rle de transformer les commandes, que lui passe le systme
d'exploitation, en instructions que vont excuter les composants lectroniques du priphrique. Pourquoi faut-il un pilote pour chaque priphrique ? La rponse est simple. Les
constructeurs de priphrique (carte graphique, carte son, graveur de CDROM, de DVD,
imprimante, etc.) mettent notre disposition un matriel de plus en plus performant avec
des composants lectroniques de plus en plus performant et qui voluent trs rapidement.
Chaque priphrique possde donc un jeu d'instructions systmes plus ou moins complexes
en fonction de la marque du fabriquant et de la finesse de travail demand au priphrique. (Rappel : le systme d'exploitation doit communiquer avec les priphriques qu'il
a sous ses ordres pour leur faire excuter les commandes ncessaires afin de ragir aux
sollicitations d'un utilisateur.) Cependant le systme d'exploitation ne peut pas connatre
toutes les caractristiques et toutes les commandes systmes particulires auxquelles obit
chaque matriel de chaque fabricant. De toute faon l'volution des priphriques est plus
rapide que l'volution des systmes d'exploitations. Pour contourner ce problme, une ruse
a t trouve : le pilote de priphrique. Ainsi, les concepteurs de systmes dexploitation
dfinissent un jeu dinstructions de base valables pour tous les priphriques quelque soit la
marque du constructeur et la qualit du priphrique. Puis lorsquun utilisateur sollicite un
priphrique, par exemple pour faire apparatre une fentre lcran, le systme dexploitation transmet les diffrentes commandes de base, correspondant lordre dessiner une
fentre , au pilote de priphrique qui connat les caractristiques du priphrique install
et qui traduit alors lordre de base en un ordre utilisant le jeu dinstructions spcifiques au
contrleur de la carte graphique qui sexcute alors en dessinant la fentre lcran. De
cette manire, le concepteur de systme dexploitation se dcharge sur le fabriquant de
priphrique qui lui de son ct peut faire voluer son matriel comme il le souhaite.
Chacun est libre une restriction prs, cest que le pilote de priphrique puisse ragir aux
commandes de base de lOS. Vous comprenez mieux maintenant, qu chaque fois que vous
installez un nouveau priphrique, on vous demande dinstaller les pilotes qui vont bien. En
fait, cest le pilote qui prend en charge les spcificits techniques particulires dun priphrique par rapport aux autres priphriques de mme type. De mme, un pilote peut tre
amlior au fur et mesure du temps en corrigeant par exemple les erreurs de fonctionnement (des bugs). Cest pourquoi pour un mme priphrique, vous pouvez installer des
versions diffrentes de pilote en les tlchargeant par exemple partir dInternet.

14
8 3999 TG PA 01

Gnralits sur les systmes dexploitation

Remarque

Si le systme dexploitation est dit Plug and play , et que les priphriques que vous
installez sont galement Plug-and-play , alors lOS dtecte et installe les pilotes de
ces nouveaux priphriques dune manire automatique sil les connat ou dans le cas
contraire aprs vous avoir demand de lui fournir la disquette ou le CD-ROM contenant
le pilote. Le Plug and play initie un dialogue entre le priphrique et lOS afin que
ce dernier prenne connaissance des caractristiques de ce premier.
Lire les fichiers de configuration du systme afin de mettre en place un environnement
de travail tel que le souhaite l'utilisateur.
Lire les fichiers de script (batch) crs par l'utilisateur dans le but d'automatiser son travail. Nous aurons l'occasion de reparler de cette notion dans le paragraphe consacr
MS-DOS.
Charger les programmes permettant de configurer les services annexes (exemple : gestion de file d'attente d'imprimante, gestion rseau).
Lancer automatiquement les programmes ncessaires l'interface de l'OS et ceux souhaits par l'utilisateur. Dans ce dernier cas, l'utilisateur dsigne les programmes lancer
automatiquement l'installation de l'OS ou en paramtrant l'OS ensuite.
Eh voil, aprs tout cela, notre systme d'exploitation est en place. Il vous place dans un environnement de travail en mode graphique ou en mode caractre puis vous donne la
main. Ouf !
Aprs ce travail d'initialisation, le systme d'exploitation va maintenant se consacrer son
rle d'interface entre l'utilisateur, les applications et le matriel. Mais de quoi s'occupe-t-il
rellement ? Sans entrer dans le dtail du fonctionnement d'un ordinateur et de ses composants, nous pouvons dire que l'OS est plus particulirement en charge :
De la gestion des entres-sorties, cest dire de lchange dinformations entre lordinateur et les priphriques.
Du chargement en mmoire RAM du code du programme demand par lutilisateur
puis du lancement de son excution.
De la gestion du temps d'utilisation du processeur par les diffrents programmes
en cours dexcution dans le cas des systmes dexploitation multitches (voir paragraphe
suivant dans cette squence).
De l'allocation et de la gestion de la mmoire en vitant quil y ait des conflits dallocation, dune mme zone mmoire, deux programmes en mme temps. Il gre un plan
doccupation de la mmoire.
De la lecture et de l'criture de fichiers sur les supports de masse (disque dur, disquette,
disquette ZIP, etc.).

15
8 3999 TG PA 01

Squence 1

De la gestion des fichiers (documents utilisateurs ou programmes excutables). Pour cela,


lOS fournit un outil qui sappelle le systme de fichiers ou File system en anglais.
travers cet outil, le systme dexploitation organise et gre la localisation des fichiers sur
un support de masse (disque dur, disquette, CD-ROM, Zip, etc.) afin de pouvoir les retrouver le plus rapidement possible et sans erreur. On peut comparer la notion de systme de
fichiers au sommaire dun magazine qui permet son lecteur de retrouver rapidement la
page de larticle qui lintresse. De mme que chaque diteur peut avoir son systme de
sommaire, chaque systme dexploitation peut avoir son propre systme de fichiers (ex :
FAT, FAT32, NTFS, Ext2fs). Certains permettent dappliquer une notion de droit sur un fichier
en fonction de la personne qui se connecte sur lordinateur, dautres permettent de grer
plus efficacement un grand nombre de fichiers ou des fichiers de grandes tailles ou encore
dautres permettent de nommer les fichiers avec des noms plus ou moins long. Cette liste
des diffrences nest pas exhaustive. Nous reparlerons des systmes de fichiers dans la
squence 5 de ce cours.
Dans le cadre d'un ordinateur plac dans un rseau d'ordinateurs, de la communication
avec les autres ordinateurs du rseau au travers de protocoles de communication.
De mettre la disposition de l'utilisateur un interprteur de commande en
mode caractre ou graphique travers lequel, il peut entrer en communication
avec lordinateur afin de lui donner des instructions, des ordres (par exemple pour lancer lexcution dun programme applicatif ).
Le mode caractre oblige lutilisateur connatre et taper au clavier les instructions
avec ventuellement leurs options. Le mode graphique propose des objets graphiques (des
icnes) sur lesquels il peut cliquer grce la souris. Le deuxime mode doit, en principe,
tre plus intuitif mais le premier est apprci des experts car plus performant grce toutes
les commandes et les options dont on dispose. Bien souvent les systmes dexploitation
proposent les deux solutions. Ainsi tout le monde y trouve son compte.

Systme dexploitation
en mode caractre

Systme dexploitation
en mode graphique

Remarque

Un systme dexploitation peut galement contenir un langage de programmation, parfois


sommaire parfois assez complet, permettant un utilisateur dcrire des mini-programmes
que lon appelle Batch ou Script-shell . Ces derniers permettent dautomatiser des
tches que lutilisateur ralise souvent ou encore de faciliter son travail en runissant sous un
seul nom un ensemble de commandes quil devait auparavant taper les unes aprs les autres
au clavier. Les instructions contenues dans les fichiers Batch ou Script-shell sont
interprtes puis excutes les unes aprs les autres par linterprteur de commandes de lOS.
Prcdemment, je vous ai dit que le programme de boot chargeait une partie essentielle
du systme dexploitation. Eh oui, tous les programmes dun systme dexploitation ne
sont pas chargs ds le dbut. En fait, le programme de boot charge le noyau du
systme dexploitation. Le noyau est la partie essentielle de lOS. Il doit tre de taille
16
8 3999 TG PA 01

Gnralits sur les systmes dexploitation

raisonnable car il reste constamment en mmoire RAM et ce jusqu ce que lutilisateur


arrte lordinateur. La taille de son code ne peut donc pas tre trop grande sous peine
doccuper trop despace mmoire au dtriment des autres programmes applicatifs
que lutilisateur souhaite excuter. Il ne faut pas oublier que le noyau de lOS ne peut
tre retir de la mmoire avant la fin puisquil se charge de faire la liaison entre les
applicatifs et le matriel. Cest lui qui est en charge des tches frquemment excutes par lOS, comme la gestion de la mmoire ou encore la gestion des processus (processus = programme en cours dexcution).
En plus du noyau, le systme dexploitation peut proposer un ensemble dutilitaires
comme un diteur de texte, une calculatrice, un explorateur de fichiers, un gestionnaire
dimages, des programmes permettant de paramtrer le systme. Bref, il sagit dun
ensemble de programmes dont le systme dexploitation et lutilisateur non pas besoin
en permanence. Dans ce cas, les utilitaires sont chargs en mmoire et retirs de la
mmoire au mme titre que les autres programmes applicatifs installs sur lordinateur. Tous ces programmes utilisent le noyau du systme dexploitation pour communiquer avec la machine.
Un systme dexploitation fournit des utilitaires mais pas forcment en nombre suffisant
et pas forcment pour tous les domaines ncessaires un utilisateur. Ce dernier a donc
la possibilit de lancer lexcution dautres applications quil a dvelopp lui-mme ou
bien quil a achet dans le commerce. L encore, le systme dexploitation va fournir une
aide prcieuse aux applications qui sexcuteront sur lordinateur. En effet, ces programmes auront besoin un moment ou un autre de faire appel des services du systme
dexploitation, par exemple pour accder aux priphriques afin de lire ou crire dans
un fichier sur disque, pour connatre la date systme, pour communiquer avec dautres
ordinateurs situs sur le rseau ou encore pour imprimer un document. Lensemble de
ces services quun systme dexploitation est capable de rendre une application est
appel API (Application Programming Interface). Du point de vue du dveloppeur dapplication (personne en charge de dvelopper un programme) une API est un ensemble
de fonctions, regroupes dans une ou plusieurs bibliothques, exemple une DLL pour
Dynamic Link Library sous WINDOWS, quil est possible dappeler travers le programme afin dobtenir des services de la part de lOS. Cette ou ces bibliothques sont
installes lors de linstallation de lOS sur un ordinateur et elles sont disponibles une fois
que lOS fonctionne. De ce fait, tout programme est donc conu pour fonctionner dans le
contexte dun systme dexploitation particulier puisquil utilise linterface de programmation (API) de ce systme. En rsum : une API est une interface de programmation
dapplications, contenant un ensemble de fonctions courantes de bas niveau (proche de
la couche matrielle) permettant de programmer des applications de Haut Niveau ,
cest--dire qui ne soccupent pas des contraintes de la couche matriel.

17
8 3999 TG PA 01

Squence 1

Rsumons cela travers un schma :

4.

Les diffrents types de systme dexploitation


Dans les paragraphes prcdents, nous avons dfini quun systme dexploitation est
proche des caractristiques dun ordinateur et plus particulirement du processeur. Nous
aurons ainsi des systmes dexploitation spcifiques pour les compatibles PC ou encore
pour les Macintosh. Je ne parlerais pas ici des diffrences de technologie entre ces deux
familles, mais cela nous permet dj de dfinir des familles de systmes dexploitation lies aux familles dordinateurs. Mais ce nest pas tout car lintrieur de chaque
famille dOS, il existe galement diffrents types de systmes dexploitation. Si je vous
dis monotche , multitches , mono-utilisateur , multi-utilisateurs , vous me
rpondez ? Eh oui, voil encore une liste de mots lis la notion de systme dexploitation. En fait, ce sont des termes qui mritent que lon sinterroge sur leur signification
car, dans lenvironnement informatique, on les entend souvent sans forcment savoir
quoi cela correspond. Alors, allons-y pour une petite srie de dfinitions !
Remarque avant de commencer

Un programme en cours dexcution sappelle un processus ou une tche. Un processus (tche) utilise donc les ressources de la machine notamment celles du processeur
et de la mmoire afin de pouvoir drouler les instructions prvues par le dveloppeur du
programme.
Monotche : un systme dexploitation est dit monotche lorsquil ne peut grer le
fonctionnement que dun seul programme la fois. LOS ne peut allouer les ressources
machine qu un seul programme la fois. Cela a pour consquence que le systme
18
8 3999 TG PA 01

Gnralits sur les systmes dexploitation

dexploitation, et bien entendu lutilisateur, devront attendre que le programme en


cours dexcution se termine avant de pouvoir lancer lexcution dun autre et malheur
lOS si le programme se plante car tout est bloqu. Dans ce cas, on se rappelle de la
squence de touches magiques Ctrl + Alt + Suppr afin de lancer le redmarrage de la
machine (on dit alors que lon doit rebooter lordinateur) si cela est possible. En effet,
dans le pire des cas, il faut faire un arrt brutal en coupant lalimentation lectrique de
lordinateur.
Multitches : un systme dexploitation est dit multitches lorsquil est capable
de faire fonctionner plusieurs programmes (processus) simultanment. En fait, nous
devrions dire plutt quasi-simultanment . En effet, un processeur quoi que lon fasse
ne peut soccuper que dun programme (processus) la fois. Cest ce niveau quintervient la notion dOS multitches car ce dernier la charge de suspendre lexcution
dun programme afin de donner la main un autre programme dont lexcution a
elle-mme t suspendue auparavant ou dont on vient juste de lancer lexcution. LOS
alloue donc tour de rle, pendant une courte dure de temps (quelques millisecondes), le processeur aux diffrents programmes en cours dexcution. On parle de time
sharing (temps partag). Le temps allou chaque processus sappelle galement le
quantum de temps. Le programme qui occupe le processeur un instant donn est
appel le programme (processus) actif. Comme cette opration de changement de programme (processus) actif peut se drouler un trs grand nombre de fois par seconde,
du point de vue de lutilisateur, les programmes ont lair de sexcuter simultanment.
Attention, plus on lance de programmes en simultan plus le dlai dattente avant quun
programme ne puisse rcuprer le processeur, afin de continuer le droulement de ses
instructions, peut tre long. Dans ce cas, on se rend visuellement compte de la non
simultanit des programmes. Allons plus loin dans cette notion de multitches . Il
existe en fait, deux modes de multitches, le premptif et le coopratif . Dans le
premier cas, le systme dexploitation possde un programme qui se charge de partager
de faon quilibre mais autoritaire le temps doccupation du processeur entre les diffrents programmes en grant parfois des rgles de priorit. Ce programme faisant partie
intgrante de lOS sappelle le scheduleur ou ordonnanceur . Dans le deuxime
cas, il sagit dune forme simple de multitches dans laquelle chaque processus doit
explicitement permettre un autre processus de sexcuter. Il revient donc aux applications de se rpartir elles-mmes le temps doccupation du processeur. Le problme de
cette deuxime solution est que si un des processus ne redonne pas la main un autre
processus, par exemple dans le cas o il est bloqu sur une erreur, le systme entier peut
sarrter. Dans le mode premptif , lorsquun programme se bloque, le scheduleur
peut alors larrter ou bien ne plus lui donner la main ce qui vite de consommer du
temps processeur pour rien.
Mono-utilisateur : un systme dexploitation mono-utilisateur est un systme dans
lequel on nautorise quun seul utilisateur la fois utiliser les ressources de lordinateur
(processeur, mmoire, fichiers, priphriques). En fait, le seul utilisateur qui peut utiliser
les ressources de lordinateur est celui qui travaille dessus.
Multi-utilisateurs : un systme dexploitation multi-utilisateurs est un OS permettant
plusieurs utilisateurs dutiliser lordinateur, sur lequel est install lOS, simultanment
ou les uns la suite des autres. Bien entendu, il nous faut apporter une petite nuance
tout cela car dans le terme simultanment , il ne faut pas comprendre quils travaillent
avec le mme clavier et le mme cran en mme temps. Par contre, il est parfaitement
envisageable que les utilisateurs puissent partager les ressources (processeur, mmoire,
fichiers, priphriques) de cet ordinateur partir dautres ordinateurs, si ceux-ci sont
19
8 3999 TG PA 01

Squence 1

connects un mme rseau. Ainsi, par exemple, on peut aller chercher un document sur
le disque du premier, utiliser une imprimante ou tout autre priphrique install sur celuici ou encore utiliser son processeur et sa mmoire afin de lui faire excuter un programme.
Bien entendu, un systme dexploitation multi-utilisateurs doit imprativement tre multitches afin dexcuter en parallle les demandes de chacun des utilisateurs des ressources de lordinateur. De plus, il faut mettre en place une politique de scurit avec des
sessions de connexion (saisie dun login de connexion et dun mot de passe) afin de ne pas
laisser toutes les ressources dun ordinateur disponibles tous les utilisateurs se trouvant
sur le rseau. LOS se charge donc de faire respecter les droits de chaque utilisateur. Par
extension, un OS multi-utilisateurs permet galement, comme nous lavons dit quelques
lignes plus haut, lutilisation dun ordinateur par un ensemble dutilisateurs qui sen serviront les uns la suite des autres. Dans ce cas, chaque utilisateur a la possibilit de se crer
son propre espace de travail (son propre profil ) dans lequel le systme dexploitation
le placera automatiquement chaque connexion. Lutilisateur doit donc pralablement
ouvrir une session de travail sur lordinateur en donnant son login et son mot de passe ce
qui lui octroie des droits, ou des interdits, sur le poste de travail qui peuvent tre diffrents
des autres utilisateurs de ce mme poste. Dans ce cadre, il existe toujours un utilisateur
particulier appel de faon gnrale administrateur qui lui a tous les droits.

5.

Quelques noms de systmes dexploitation


Les systmes dexploitation existent depuis les annes 60 voire avant et bien entendu, ils
ont beaucoup progress avec lvolution du matriel. Il nest pas question dans ce paragraphe de prsenter tous les systmes dexploitation, car cela na que peu dintrt, mais
dcrire sommairement ceux dont on entend parler le plus. Bien sr, il nest pas prvu non
plus, dans ce paragraphe, de polmiquer ou de critiquer tel ou tel systme dexploitation
mais juste dexpliquer brivement leur histoire. Nous napprofondirons pas non plus larchitecture technique de chacun deux car il nous faudrait des centaines de pages, parfois
barbares, et cela na pas forcment dintrt dans les premiers cours. Qui plus est, vous
dcouvrirez cela au fur et mesure de lavancement des cours de votre formation, dans
vos recherches sur Internet ou encore dans les livres traitant de ces sujets. Vous tes prts,
alors allons-y.

5A.

MS-DOS
Parmi tous les systmes dexploitation fourmillant dans la jungle des systmes dexploitation, il y en un qui est devenu un standard dans les annes 80 sur la plupart des
ordinateurs personnels, cest le MS-DOS (Microsoft DISK OPERATING SYSTEM) ou tout
simplement, de son petit nom, le DOS. Ah le DOS que daventures et de souvenirs. Il est
n dun besoin exprim par la socit IBM qui souhaite se lancer sur le march du microordinateur car ce sont des ordinateurs de plus petite taille et que ce march est dj
occup depuis 1977, entre autre, par Apple (avec son Apple II) et Commodore (avec son
PET (Personal Electronic Transactor). En 1981, IBM lance sur le march un micro-ordinateur du nom de Personal Computer (IBM PC) compos dun cran, dun clavier indpendant de lunit centrale, dun processeur Intel 8088 cadenc 4,77 Mhz, dune
capacit mmoire de 64 Ko de RAM, extensible 256 Ko, et qui dispose galement dun
lecteur de disquettes 51/4 simple face dune capacit de 160 Ko (plus un emplacement
pour un second). Non, non il ne faut sourire car pour lpoque pas si lointaine, ctait
bien. Allez squence souvenir !

20
8 3999 TG PA 01

Gnralits sur les systmes dexploitation

IBM PC 8088

Disquette 5"1/4 dune capacit lorigine de 160


Ko (sensiblement 160 000 octets)

Bien entendu, pour faire fonctionner le Personal Computer, il fallait un systme dexploitation. IBM se tourne vers Microsoft (et Bill Gates) dj connu pour son langage
de dveloppement BASIC. Ainsi PC-DOS (Personnel Computer Disk Operating System)
est n. Auprs des entreprises, lIBM PC fut un grand succs et a attir la convoitise des
constructeurs concurrences. Ces derniers, futs, ont alors bas leurs propres machines sur
le mme microprocesseur quIBM ( Intel 8088 ) et leur ont donn le titre de compatible IBM Personal Computer ou compatible PC . la longue, seul est rest lacronyme
PC . Quant Microsoft, IBM ne lui ayant pas fait signer de clause de non concurrence
pour le systme dexploitation PC-DOS, il en profita pour promouvoir son OS, qui devint
MS-DOS (Microsoft Disk Operating System), et linstaller sur les ordinateurs des concurrents. Voil, lempire Microsoft est sur les rails.
Aprs cette petite histoire qui nous permet de mieux comprendre larrive de Microsoft,
revenons-en MS-DOS. Ce systme porte son nom du fait que les fonctions de base
de MS-DOS taient surtout en charge de la gestion des fichiers, do son nom de Disk
Operating System . Pour le reste, il faisait appel la plupart du temps aux fonctions du
langage systme incorpor au BIOS. Bien entendu, MS-DOS ralise les tches attendues
par un OS. Il entre dans la catgorie des systmes monotche et mono-utilisateur. Petite
parenthse. Microsoft a lanc le tableur Multiplan en 82 et Word en 83. Ces
logiciels fonctionnent dans lenvironnement MS-DOS. Fermons la parenthse. Dune
manire gnrale et pour des raisons historiques, MS-DOS fonctionne uniquement avec
les ordinateurs quips dun processeur de la socit Intel (du 8088 au Penthium). Il a
volu au cours des annes et se dcline de la version 1.0 la version 6.22 (voire 7.0 avec
Windows 95/98). Ces versions diffrent considrablement dans leurs possibilits, ce qui
se manifeste par lapparition de nouvelles commandes mais aussi par une augmentation
du besoin en mmoire RAM. Le MS-DOS 1.0 pouvait se contenter de 64 Ko, le MS-DOS
2.11 a besoin au minimum de 128 Ko, le MS-DOS 3.0 a besoin de 256 Ko et les versions
4.0, 5.0 et 6.X ncessitent 640 Ko et la prsence dun disque dur. Nous aurons loccasion
de revenir sur le systme dexploitation MS-DOS plus loin dans ce cours.
Petit dfaut, MS-DOS possde une interface en mode caractre ce qui oblige les utilisateurs taper les commandes quils souhaitent faire excuter lordinateur et donc en
connatre la syntaxe et les options. Pour dmocratiser lutilisation des micro-ordinateurs,
ce nest pas forcment la solution. Cest pourquoi, assez rapidement (1985), Microsoft a
ajout une couche logicielle supplmentaire au dessus de MS-DOS. Vous lavez immdiatement compris, il sagit de linterface graphique Windows.

21
8 3999 TG PA 01

Squence 1

Remarque

1 octet reprsente 8 bits, 1 Ko (Kilo-octet) reprsente 1024 octets et 1 Mo reprsente 1024 Ko.
Prcisons le terme bit . Ce dernier est la contraction du terme binary digit . Il sagit
de la plus petite unit dinformation manipulable par un ordinateur. Cette information peut
prendre deux tats 0 ou 1. Il sagit donc dune information binaire qui peut physiquement tre
reprsente par un signal lectrique. En effet, on peut considr que, en dessous dun certain
seuil, le signal lectrique reprsente la valeur 0 et au dessus la valeur 1. On peut galement
utiliser le sens du courant gnr par un champ magntique ou encore la profondeur des asprits sur une surface. Ainsi, en associant des valeurs binaires (exemple en assemblant 8 bits
1 octet), on peut coder des valeurs numriques interprtables par un ordinateur.

5B.

Windows 95 98 - Me
Tout comme MS-DOS, Windows a subi de nombreuses modifications depuis son origine
et cela continue encore aujourdhui. Au dpart (1985), Windows nest pas un systme
dexploitation mais simplement une couche logicielle supplmentaire qui vient se placer
au dessus de MS-DOS. On peut le considrer simplement comme un utilitaire apportant
un environnement graphique linformatique.

Dans la premire version, on y trouve le concept dapplications fentres avec un arrangement des fentres en mosaque, cest dire les unes cts des autres sans chevauchement possible, des botes de dialogue et un certain nombre dutilitaires graphiques
en complment du mode commandes MS-DOS qui lui est rest non graphique. Cette
premire version a t conue pour tourner sur une machine disposant de deux lecteurs
de disquette 5"1/4 et de 256 Ko de mmoire vive. Quelques captures dcran :

Gestionnaire de chier

Le PaintBrush

22
8 3999 TG PA 01

Gnralits sur les systmes dexploitation

La notion dinterface graphique tait dj trs en vogue chez Apple et les premires
versions, Windows 1.0 en 1985 puis Windows 2.0 en 1987 (avec en prime larrive dExcel, Word pour Windows appel galement WinWord) nont pas eu le succs espr. Il
faut attendre 1990 avec Windows 3.0 pour voir enfin les utilisateurs sintresser ce
logiciel. Il est plus ergonomique et plus simple demploi, avec des fentres recouvrement qui peuvent se dplacer sur lcran, avec des polices de caractres proportionnelles, des ombrages trois dimensions, un bon gestionnaire de fichiers graphique, avec
des icnes, des menus droulants et en prime la possibilit dajouter des icnes associs
aux programmes les plus frquemment utiliss. En Avril 1992, la version 3.1 sort sur le
march. Celle-ci corrige plusieurs bogues apparus dans la prcdente version. Microsoft
y ajoute la technologie OLE (Object Linking and Embedding) qui permet dinsrer, dans
un document dune application, des lments crs avec une autre application (ex : un
tableau Excel dans un document Word). Avec cette version, les PC peuvent accueillir des
composants multimdia et les lecteurs de CD-ROM. Allez souvenir souvenir encore des
captures dcran.

Gestionnaire de programmes (fentre


principale de Windows 3.x)

Le gestionnaire de chier

En octobre 1992, la version 3.11 for Workgroup arrive. Celle-ci comprend un support
rseau et marque donc le dbut des ordinateurs en rseau sous Windows. Elle permet le
partage de fichiers et dimprimantes sur le rseau.
Les versions Windows 3.x ont amen le principe du multitches coopratif. Cela explique
pourquoi, des clics forcens sur une application donne, alors que le sablier est affich, ne produisent aucun effet puisquil faut attendre que lapplication active rende la
main pour que Windows puisse rpondre aux clics. Autre remarque, ces versions Windows
3.x fonctionnent en mode 16 bits, puisque MS-DOS fonctionne en mode 16 bits donc il ne
tire pas pleinement profit de la possibilit des processeurs qui eux fonctionnent en mode
32 bits depuis larrive du processeur 80386.

23
8 3999 TG PA 01

Squence 1

Remarque

Le mode 32 bits permet de coder des instructions sur 32 positions binaires (ensemble de 1
ou 0) ce qui offre plus de possibilits de codage que le mode 16 bits. De plus le mode 16
bits donne accs un espace mmoire de 1 Mo maximum lintrieur duquel les informations des programmes en cours dexcution ne sont pas protges les unes des autres et
cela peut entraner des plantages . En effet, il arrive parfois que deux programmes en
cours dexcution puissent atteindre et crire dans la mme zone mmoire et donc que lun
deux ne comprenne plus ce quil a faire. Il se bloque alors ce qui est embtant en mode
multitches coopratif.
Aot 1995, apparat Windows 95. Linterface est compltement remanie. Elle propose la
notion de bureau, de raccourcis, une barre des tches permettant de passer dune application une autre, des noms de documents sur 255 caractres, elle utilise pleinement le
bouton droit de la souris avec les menus contextuels. Windows 95 propose directement
des solutions rseaux en intgrant notamment le protocole TCP/IP, trs utile pour interagir avec Internet, mais aussi des outils facilitant la configuration et la visibilit des ressources disponibles sur le rseau. Linstallation de nouveaux matriels est facilite grce
la technologie Plug and Play qui permet au systme de dtecter et de configurer
automatiquement certains priphriques (carte graphique, rseau, imprimante, modem,
etc.) en installant des pilotes proposs en standard ou se trouvant sur un CD-ROM ou une
disquette fournis par le constructeur. Les applications qui fonctionnent sur Windows 95
sont des applications 32 bits car celui-ci fonctionne en mode 32 bits ce qui permet une
meilleure gestion de la mmoire puisque lon a accs une mmoire pouvant aller jusqu
4 Go ce qui permet aux applications 32 bits de pouvoir utiliser une zone mmoire ddie
chacune delles, donc protge. Cependant, Windows 95 peut toujours fonctionner en
mode 16 bits afin de garder une compatibilit avec les versions de Windows prcdentes
ainsi quavec MS-DOS. Windows 95 doit pouvoir faire fonctionner les applications utilisant MS-DOS (Notamment les jeux (eh oui !)). Cette compatibilit avec le mode 16 bits
lui fait perdre les bnfices du mode 32 bits et provoque bon nombre de plantage
des programmes fonctionnant en mode 16 bits, et par voie de consquence de Windows
lui-mme, puisque lon retrouve la problmatique de gestion des adresses mmoires lie
aux applications en mode 16 bits. Autre point, Windows 95 est multitches premptif.
Dans les nouveauts, on peut galement noter lapparition de la base des registres qui
remplace les fichiers de configuration (les fichiers .ini) des versions prcdentes. Il sagit
dune base de donnes o sont classes les informations principales de la configuration
matrielle et logicielle ainsi que la configuration spcifique des utilisateurs.

24
8 3999 TG PA 01

Gnralits sur les systmes dexploitation

Suite lapparition de Windows 95, la suite Office 95 est apparue avec Word (traitement de texte), Excel (tableur), Access (base de donnes) puis en 97, arrivera la suite
Office 97 avec de plus en plus de fonctionnalits internet.
En 1998, sort la version 98 de Windows, avec support de nouvelles technologies (AGP et
USB) et lutilisation du systme de fichiers FAT32 (voir squence 5 de ce cours). En 1999
sort un second Windows 98 ( seconde dition ou Windows 98 SE), qui contient une
mise jour des pilotes, ce qui lui permet dtre plus Plug and Play , avec en plus la
correction des erreurs de Windows 98.
Vrai ou faux systme dexploitation, nous nentrerons pas dans la polmique en disant
que la partie MS-DOS devient de plus en plus minime et que les Windows 9x durant leur
volution ont intgr de plus en plus de bibliothques (API) contenant les fonctions permettant de prendre en charge les tches dun systme dexploitation. Le seul problme
rside dans le fait que pour faire fonctionner les applications MS-DOS, il a t conserv
un petit noyau MS-DOS. En faisant abstraction de cela, nous pouvons dire quil sagit
dun systme dexploitation puisquil ralise toutes les tches attendues pour un OS.
Finalement en septembre 2000, Windows Millenium (Me) arrive. Il augmente la convivialit avec lutilisateur par rapport Windows 98, amliore la scurit; intgre encore
plus le multimdia avec Windows Mdiaplayer , ajoute le protocole WIA ( Windows
Image Acquisition ) permettant de grer simplement son scanner, son appareil photo
numrique, sa camra numrique.. Autre nouveaut, MS-DOS nest plus directement
accessible. Les applications qui ont besoin de MS-DOS pour sexcuter le feront dans un
environnement DOS virtuel, une mulation, ce qui peut empcher certaines applications
DOS de fonctionner. Attention, Windows Millenium nest pas un rapprochement entre
la branche de la srie Windows NT et la branche grand public (Windows 95 et 98). Cette
dernire version marque simplement la fin de la branche des Windows 9x

5C.

Windows NT 2000 XP - Vista


Paralllement sa srie des Windows 9.x, Microsoft a dvelopp une nouvelle architecture
de systme dexploitation appele Windows NT (Windows New Technology ou Nouvelle
Technologie) ddie exclusivement aux serveurs et aux stations donc tourns plus vers les
entreprises. Bien sr, avec tout ce que lon peut lire sur le sujet, on peut lancer encore un
dbat sur le fait que Microsoft est invent ou non cette nouvelle technologie mais cela ne
fait pas avancer notre cours. La premire version sort en 1993 sous le nom de Windows
NT 3.1. Il sagit dun systme dexploitation, totalement dbarrass de MS-DOS, qui fonctionne en mode 32 bits ce qui permet daccder une ressource mmoire allant jusqu 4
Go et donc cela offre la possibilit de grer au mieux le partage des ressources mmoire
entre les applications puisque la zone mmoire alloue chaque application est protge. Ce systme dexploitation est multitches premptif et propose un nouveau systme
de fichiers NTFS permettant de scuriser laccs aux fichiers. Windows NT sest dbarrass
de MS-DOS mais il permet toujours aux applications DOS de fonctionner sous certaines
conditions, savoir, que le programme DOS ne contienne pas des appels systmes directs
au DOS mais passe par les fonctions API. De toute faon, NT ne propose pas un vrai DOS
mais une mulation de DOS ce qui fait que NT garde le contrle de ce que fait le programme et peut donc lempcher de planter le systme contrairement aux versions Windows 9.
x. Il y aura une version Windows NT 3.1 et une version Windows NT 3.1 Advance Server.
Cette dernire intgre les outils dadministration dun rseau alors que la premire nest
destine qu une station de travail (Workstation). En 1994 et 1995 suivront les versions
NT 3.5 et NT 3.51 intgrant des outils rseau supplmentaires comme TCP/IP, intgrant
25

8 3999 TG PA 01

Squence 1

les disques durs IDE et les lecteurs CD-ROM. Ces versions ont une interface graphique
semblable celle de Windows 3.0 et se dclinent toujours en version Serveur et en
version Workstation . En 1996 apparat Windows NT 4.0 (Server et Workstation). Elles
prsentent une interface graphique semblable Windows 95 et sont notamment beaucoup plus performantes au niveau des fonctionnalits rseau. On retrouve une version
Workstation ainsi quune version Server . En 2000 apparat Windows NT 5.0 ou si
vous prfrez Windows 2000 apportant toujours plus de simplicit dutilisation en station
de travail mais aussi en gestion de rseau pour un administrateur rseau. En 2001 sort
Windows XP (Windows NT 5.1), mlange entre Windows 2000 et Windows ME, permettant daccrotre encore la convivialit et en 2003, sort Windows Server 2003 (Windows NT
5.2). Ce dernier est une amlioration du systme Windows 2000 server. Il est a not que
Windows 2000 Server et Windows 2003 Server proposent le principe Active directory
qui est un service dannuaire permettant de recenser toutes les informations concernant
le rseau, que ce soit les utilisateurs, les machines ou les applications ainsi que la mise en
place des droits sur chacun de ces lments au travers de stratgies de scurit.
Enfin en janvier 2007, apparat le dernier n de Microsoft vendu sous le nom de Windows
Vista (NT 6.0). Il existe en version 32 bits et en version 64 bits. Ce nouvel OS apporte des
nouveauts, par rapport ces prdcesseurs, comme par exemple au niveau de linterface
oriente 3D, au niveau des droits accords par dfaut aux applications en cours dexcution, au niveau du protocole IP utilisant la norme IPV6 et bien dautres lments encore
que nous nallons pas dtailler ici. Pour linstant, il doit encore faire ses preuves par rapport Windows XP.
Dernier point, Windows XP et Vista ne sont dvelopps quen version Workstation
puisque la branche serveur est laisse Windows 2000 Server, 2003 Server et maintenant 2008 Server.
Rsumons les apports de la branche NT.
NT est devenu un systme d'exploitation 32 bits, voire 64 bits maintenant, avec un vrai
multitches premptif.
Elle autorise la mise en place d'une vraie politique d'administration rseau avec
authentification par login et mot de passe mis en place par un administrateur. Cette
politique d'authentification peut tre centralise sur un serveur ou en local sur un
poste de travail. L'administrateur peut autoriser ou non l'accs des ressources au cas
par cas en fonction d'un nom d'utilisateur ou de l'appartenance un groupe. Bref l'aspect scurit a t pleinement mis en avant par cette branche.
Mise en place du systme de fichiers NTFS permettant de scuriser un ou plusieurs documents grce notamment des attributs (des droits) supplmentaires.
Du point de vue interne, outre le fait de passer 32 bits, le systme est conu pour tre
portable sur diffrentes architectures de processeur. En fait, NT est un systme d'exploitation modulaire, conu comme une srie de couches logicielles, crites en langage
C, indpendantes du matriel. Le seul code spcifique au matriel rside dans la HAL
(Hardware Abstraction Layer) qui est une toute petite partie du systme d'exploitation.
La couche HAL fonctionne au niveau le plus bas traduisant les fonctions du systme
d'exploitation de bas niveau en instructions comprhensibles par le matriel spcifique
utilis. Pour passer d'une architecture de processeur une autre, il suffit de rcrire la
HAL et de recompiler le code C des diffrents modules afin de crer des excutables
fonctionnant sur le nouveau systme.

26
8 3999 TG PA 01

Gnralits sur les systmes dexploitation

Remarque

Windows 2000 et les versions suivantes possdent des Services Pack (SP1, SP2, etc.) qui
permettent de corriger des bugs (des erreurs) trouvs dans une version mais galement
apporter des outils complmentaires. Ainsi il se peut quune application ne fonctionne,
sur une version donne de lOS, que si un Service Pack prcis est ajout. Pour ajouter
un Service Pack , il faut le tlcharger sur Internet et lancer le processus dinstallation ce qui aura pour effet de mettre jour votre version Attention, il faut tlcharger
un Service Pack qui concerne votre version de Windows. On ne peut pas utiliser un
Service Pack pour passer une nouvelle version de Windows.

5D.

UNIX LINUX
Quoi que lon en dise, LINUX devient aujourdhui un systme dexploitation incontournable car il fait partie de la catgorie des logiciels dits libres et possde de nombreux
logiciels applicatifs libres dvelopps pour lui par un nombre trs important de personnes impliques dans ce principe du libre.
lorigine de LINUX, il y a les concepts dvelopps pour un autre systme dexploitation
du nom dUNIX en 1969. Lide tait lpoque de crer un systme dexploitation avec
des ides novatrices incluant notamment :
un systme de gestion de fichiers hirarchis ;
un principe identique pour envoyer des donnes dans un fichier ou sur un priphrique (en Unix : tout est vu comme un fichier) ;
la possibilit que des processus (programme en cours d'excution) puissent gnrer
d'autres processus afin de leur faire excuter de nouvelles tches. Cela implique que
le systme soit multitches ;
un ou plusieurs interprteurs de commandes ;
un systme d'exploitation portable et fiable.
Sous limpulsion de Ken Thompson, qui travaillait la socit Bell Labotories , et avec
laide entre autre de Denis Ritchie, Rudd Kanaday et Brian Kernigham, la premire version dUNIX sort en 1969.
Il sen suit diffrentes volutions que nous dtaillerons de manire plus prcise dans la
squence 4 de ce cours.
Dans les annes qui suivirent, Unix fut dabord utilis en interne, puis distribu quelques universits et enfin des socits commerciales ont cr leurs propres versions dUnix
mais en respectant une base commune. Nous avons UNIX SCO, Solaris chez SUN, AIX
chez IBM. Le problme est que ces UNIX sont propritaires, cest dire quune socit en
dtient le code source et vend les excutables trs chers. En effet, la rputation de fiabilit et de puissance dUNIX commence faire son petit bonhomme de chemin dautant
plus quil est galement portable sur diffrentes architectures matriels, multitches
premptif et multi-utilisateurs. Cependant une problmatique demeure, il nest pas forcment fait pour le grand public.
En 1984, Richard Stallman cre la fondation FSF ( Free Software Foundation ou
Fondation pour les logiciels libres ) et y dveloppe un projet nomm GNU (qui est
un acronyme rcursif signifiant GNU is Not Unix) afin de permettre la distribution de
programmes libres de droit. Ce projet a pour but dessayer de crer un systme dexploitation fonctionnant comme UNIX mais gratuit.
27

8 3999 TG PA 01

Squence 1

Au dbut des annes 1990, Linus Torvalds, un tudiant finlandais de luniversit dHelsinki
dcide lui galement dcrire un systme dexploitation type UNIX pour le besoin de ses
tudes. Il ralise LINUX en 1991 et diffuse son code source sur Internet pour que toute
personne qui le souhaite puisse laider faire voluer son OS. Amuses par cette initiative,
de nombreuses personnes ont contribu aider Linus Thorvald raliser ce systme et
dautres versions de LINUX suivirent. Le libre est sur les rails dautant plus que le rapprochement de LINUX avec le projet GNU se met en place naturellement. Cela a permis de ce
fait le dveloppement dune multitude dutilitaires afin de rendre le produit LINUX plus
intressant car ce nest quun systme dexploitation. Rapidement, LINUX intgra tous les
outils prsents sous UNIX et de nombreux autres. Il ft crit pour de nombreuses architectures informatiques. Aujourdhui, LINUX est utilis comme serveur de mail, serveur de
ftp, serveur Web ou encore firewall. Il propose un grand nombre de langages de dveloppement de base (C++, java, fortran, lisp, basic, python, Objective C, smalltalk, etc.). Il
est difficilement plantable mais galement difficilement attaquable par des pirates
informatiques ou des virus. Il est rapide, mutitches premptif, fonctionne en mode 32
bits et 64 bits. Il possde des mulateurs pour Mac et Windows. De plus il volue trs
rapidement avec le potentiel de personnes qui dveloppent pour lui. Juste une petite touche ngative, il peut tre pour certains non initis de linformatique assez impermable
dans son fonctionnement, dans la configuration des priphriques et dans linstallation
des nouveaux programmes par rapport Windows ou les systmes MAC. Pas de panique,
aujourdhui tout est mis en uvre pour modifier cela par lintermdiaire des distributions
LINUX qui proposent des packages dinstallation cl en main plus ou moins simples. De
plus Internet fourmille de sites et de forums de discussion pour une entraide efficace. Nous
dvelopperons de manire plus longue tout cela dans la squence 4 de ce cours.

5E.

Conclusion
Systme

Mode

Mono-utilisateur

16 bits

16/32 bits

Coopratif

Windows 95/98/Me

32 bits

Premptif

Windows NT/2000

32 bits

Premptif

Windows 2000
Server / 2003 Server

32/64 bits

Premptif

Windows XP

32/64 bits

Premptif

Windows Vista

32/64 bits

Premptif

Unix / Linux

32/64 bits

Premptif

DOS
Windows 3.x

Multi-utilisateurs

Mono-tche

Multitches

28
8 3999 TG PA 01

Gnralits sur les systmes dexploitation

6.

Le partitionnement dun disque dur


Prcdemment, nous avons numr un ensemble de systmes dexploitations. Ces
derniers devront tre installs sur un ordinateur pour que vous puissiez les travailler et
approfondir leur fonctionnement. Pour cela, vous pouvez les installer successivement sur
un ordinateur en fonction de celui que vous tes en train dtudier ou alors vous pouvez
avoir plusieurs disques durs sur lordinateur afin dinstaller les diffrents OS sur chacun
deux ou encore avoir un systme de disques durs amovibles ou enfin partager un disque
dur unique entre tous les systmes dexploitation. Le problme de cette dernire solution
rside dans le fait que lon ne peut pas mlanger les programmes de tous les systmes
dexploitation dautant plus que, nous le verrons plus tard (dans la squence 5), ils nont
pas tous le mme mode de systme de fichiers (FAT16, FAT32, NTFS, Ext3fs de Linux).
Heureusement il existe une solution pour contourner ce problme. Cette dernire consiste allouer une partie du disque dur chacun des systmes dexploitation. Comment
faire cela ? Eh bien, cest l quintervient la notion de partition dont nous avons dj
parl succinctement plus haut dans ce cours. Le partitionnement dun disque dur permet
de crer des zones indpendantes (des partitions) sur un disque dur contenant chacune
leurs propres donnes. Ainsi, une fois les partitions dun disque dur dfinies, nous pouvons installer des systmes dexploitation diffrents sur chacune delles mais ce nest pas
la seule utilisation possible.
En effet, par ce procd, il est galement possible dinstaller les diffrents programmes
dun systme dexploitation sur lune des partitions et les fichiers de travail sur une autre
partition. Ainsi on spare les fichiers systmes des fichiers utilisateur . On peut y voir
deux avantages. Le premier est que cela peut viter, par une mauvaise manipulation de
la part de lutilisateur, dendommager les fichiers systmes puisquil ne travaille pas dans
la partition les contenant mais dans celle contenant ses donnes. Le deuxime avantage,
est que si lutilisateur doit, pour une raison quelconque, rinstaller le systme dexploitation, il le fait sur la partition prvue cet effet ce qui lui vite dcraser ses fichiers
de donnes qui, eux, sont sur une autre partition. Voici encore une autre utilisation du
partitionnement. Il peut servir dcouper logiquement un gros disque dur en units plus
petites afin de permettre au systme dexploitation daccder plus rapidement aux donnes.
En rsum, pour imager la notion de partition, votre disque dur peut tre vu comme une
armoire dans laquelle vous installez des rayonnages (les partitions) afin dy ranger vos
affaires de manire indpendantes dun rayonnage lautre. Bien entendu, la notion de
partition ne concerne que les disques durs. De plus, si votre disque dur a un problme
physique un moment donn, vous perdez tout quelque soit la partition.
Ah ! Je vois poindre deux questions. quel moment doit-on mettre en place le partitionnement ? Comment raliser lopration ?
La partitionnement dun disque dur se fait aprs le formatage physique de celui-ci et
avant le formatage logique. Ah je vous vois de nouveau froncer les sourcils, alors ne
drogeons pas la rgle et ouvrons une parenthse sur ces notions de formatage physique et formatage logique. Sans trop entrer dans les dtails, car cela fait plutt partie
du domaine du hardware que du domaine des OS, un disque dur est organis en plateaux circulaires, tournant autour dun axe. Chacun des plateaux est recouvert de part
et dautre par des particules ayant des proprits magntiques, comme par exemple de
loxyde de fer, qui en tant polaris par les ttes de lecture/criture du disque dur
vont avoir le pouvoir de stocker des donnes codes sous forme dun ensemble de 0 et
de 1. videmment, il ne sagit pas dcrire explicitement un 0 ou un 1 sur la surface du
29

8 3999 TG PA 01

Squence 1

disque. Par contre, les ttes de lecture/criture , qui se trouvent de part et dautre de
chacun des plateaux, sont composes chacune dun lectro-aimant. Elles ont en plus la
possibilit de se lever, de se baisser et de se dplacer latralement.
Ainsi, pour raliser lopration dcriture il suffit de faire passer un courant faible travers
llectro-aimant de lune des ttes ce qui aura pour effet de gnrer un champ magntique
positif ou ngatif en fonction du sens du courant. Les particules magntiques se trouvant
la surface de la zone du disque soumises au champ magntique vont alors sorienter naturellement dans un sens ou dans un autre en fonction du sens du champ magntique ce qui
sera interprt comme un 0 ou un 1. Pour lopration de lecture, il suffit de placer la tte de
lecture/criture au-dessus de la zone du disque souhaite ce qui aura pour consquence,
avec la rotation du disque, de gnrer des variations de champs magntiques induisant,
dans llectro-aimant de la tte de lecture/criture un courant lectrique dont le sens
permettra de savoir sil sagit dun 0 ou dun 1. Attention, un instant donn, seule une tte
de lecture/criture peut raliser une opration de lecture ou dcriture.

Et notre formatage physique dans lhistoire ? Au dpart, la surface de chacun des plateaux
dun disque dur est uniforme, comme une feuille blanche de papier A4, avec les particules magntiques positionnes de manire alatoires. Or nous savons que par la suite,
lutilisateur va stocker des donnes que le systme dexploitation devra localiser le mieux
possible. Si je reprends mon parallle avec ma feuille de papier A4, en dessinant dessus
un quadrillage avec des lignes et des colonnes, il est facile dorganiser les donnes que je
souhaite crire, et par consquent, il est plus facile de les retrouver. Il suffit pour cela de
prciser ventuellement la ligne et la colonne o la donne se trouve. Avec notre disque
dur, nous allons appliquer le mme principe car je vous rappelle que lon ne peut pas
mlanger les donnes des milliers de fichiers que lutilisateur peut placer dessus. Le formatage physique, galement appel le formatage de bas niveau, permet dorganiser la
surface de chacun des plateaux en pistes et secteurs et ce en polarisant, grce aux ttes de
lecture/criture du disque dur, des zones sur chacun des plateaux. Pour cela, les ttes de
lecture/criture vont polariser concentriquement la surface des plateaux afin de former
des pistes. chaque fois que la tte dcriture passe la piste suivante, elle laisse entre
les deux une sparation non polarise appel gap en anglais. Ensuite, chaque piste est
elle-mme organise en secteurs, dune capacit de 512 octets, spars galement entre
eux par des gaps. Le formatage de bas niveau a donc pour but de prparer la surface du
disque accueillir des donnes en dlimitant de petites zones qui pourront plus facilement
tre repres (cest--dire crer le quadrillage sur notre feuille de papier). Il ne dpend
pas du systme dexploitation et permet en plus, grce des tests effectus par le
constructeur, de marquer les secteurs dfectueux.

30
8 3999 TG PA 01

Gnralits sur les systmes dexploitation

Remarque

Les pistes sont numrotes depuis la piste la plus externe en partant de 0 et les secteurs,
l'intrieur d'une piste, en partant de 1.

Dans notre systme de reprage (pistes et secteurs), il existe galement la notion de


cylindre Il sagit de lensemble des pistes situes au mme niveau sur chacun des
plateaux (cest--dire la verticale les unes des autres). Cette notion vient du fait, que
les diffrentes ttes de lecture / criture sont montes sur le mme support mobile et
donc quelles nont pas un mouvement indpendant. Ainsi lorsquune tte se trouve au
dessus dune piste, par exemple le numro 10, les autres ttes se trouvent obligatoirement sur la piste numro 10 de leur plateau respectif. Le cylindre n10 est donc form
de lempilement des pistes n10 de chaque plateau.

Chaque secteur commence par une zone rserve aux informations du systme appele
prfixe et se termine par une zone appele le suffixe. Lors du formatage physique, le
systme y place les coordonnes du secteur ainsi qu'une valeur de contrle permettant
de vrifier si les donnes lues sur le secteur correspondent aux donnes qui ont t
crites. Cela permet de contrler la dtrioration du secteur.
Le formatage physique dun disque dur se fait en usine. Bien quil existe des utilitaires

Ofournis par les constructeurs pour que vous puisiez le faire ou que certains BIOS vous
le permette, ne le faites pas car cela peut rendre inutilisable votre disque dur. De toute
faon, lorsque vous achetez un disque dur, le formatage physique a dj t fait.
Le formatage de haut niveau lui par contre dpend du systme dexploitation. En effet,
il permet de mettre en place le systme de fichiers utilis par le systme dexploitation
que vous allez installer. Rappel : le systme de fichiers (FAT, FAT32, NTFS, etc..) dtermine
la manire dont lOS va organiser le suivi de lespace disque allou vos donnes,
de lespace libre restant ainsi que la gestion de vos fichiers et rpertoires (appels galement dossiers ) sur le disque afin de pouvoir y accder le plus rapidement possible. Le

31
8 3999 TG PA 01

Squence 1

formatage de haut niveau se ralise avant linstallation dun systme dexploitation sur
le disque dur laide dune commande systme particulire, lie lOS que vous installez
(ex : format de MS-DOS), ou au cours de lune des phases de la procdure dinstallation de lOS. Voil, nous pouvons maintenant refermer la parenthse et poursuivre notre
explication de la notion de partitionnement.
Pour partitionner un disque dur, il faut passer obligatoirement par un utilitaire. Il en existe un certain nombre plus ou moins performants comme fdisk de MS-DOS/Windows
9.x, fdisk de Linux, FreeDisk de FreeDos, Partition magic de PowerQuest (rachet
fin 2003 par Symantec), Partition expert de MicroApplication, ou encore Partition
Manager de Paragon Software. Cette liste nest pas exhaustive. Attention, certains sont
gratuits, dautres payants et dautres encore sont fournis avec le systme dexploitation
auquel ils sont rattachs. De mme leur mode dutilisation peut diffrer dune version
lautre. Par exemple, Fdisk doit tre excut partir dune disquette bootable.
Prenez garde au fait que si vous modifiez les partitions dun disque dur aprs y avoir install votre systme dexploitation et vos fichiers de travail, vous perdrez les donnes de
la ou les partitions que vous modifiez. Le logiciel payant Partition magic propose, lui,
une interface graphique ainsi que de nombreuses options supplmentaires permettant
ainsi de prserver les informations qui se trouvent sur des partitions dj existantes en
fonction du nouveau partitionnement. Ce logiciel nest pas le seul faire cela mais il est le
plus connu. De toute faon avec aucun vous ntes sr que lopration de partitionnement
se passe bien. En conclusion, avant de toucher aux partitions dun disque dur contenant
dj des donnes, il faut mieux faire des sauvegardes des donnes importantes.
Remarque

Sur Internet, vous pouvez trouver des versions dvaluation de ces diffrents utilitaires.
Revenons maintenant sur la notion de partition en elle-mme. En fait, il existe 3 types
de partition qui sont : primaire (galement appele principale), tendue et logique (galement appele lecteur logique ). Ces trois types existent indpendamment de tout
systme dexploitation. Alors pourquoi ces trois appellations ?
Une partition primaire , galement appele principale , est une partition dont le
premier secteur, le secteur de boot , a la possibilit de contenir un programme de
boot permettant de charger un systme dexploitation. En dautres termes, une partition primaire est prvue pour contenir un systme dexploitation. Sur un disque dur,
le BIOS nest capable de reconnatre, au maximum, que 4 partitions appeles partition
primaire . Chacune delles tant susceptible de contenir un systme dexploitation diffrent avec son propre systme de fichiers. Bien entendu, dans ce cas, cela signifie que
chacune delles a subit auparavant un formatage logique (formatage de haut niveau),
afin de lui permettre de contenir un systme de fichiers correspondant au systme dexploitation install dessus.
Attention toutefois, sur un disque dur, nous avons la possibilit de crer jusqu 4 partitions primaires mais une seule peut tre active la fois. Active signifie que le BIOS, au
dmarrage de lordinateur, ira voir sur le premier secteur de cette partition uniquement
si elle contient un programme de boot. Si elle nen contient pas, un message derreur
apparatra vous indiquant que le disque nest pas bootable (sauf si le BIOS trouve
une disquette ou un CD-ROM bootable). Cela implique que la partition active de votre
ordinateur doit tre celle qui contient le systme dexploitation que vous souhaitez
dmarrer au lancement de lordinateur. Que deviennent les autres partitions primaires
si elles existent ? En fonction du systme dexploitation en cours dexcution, les autres
32
8 3999 TG PA 01

Gnralits sur les systmes dexploitation

partitions primaires peuvent tre visibles, caches ou inaccessibles. Bien entendu si ces
partitions restent accessibles, il faut que le systme de fichiers utilis sur ces dernires soit
compatible avec le systme dexploitation en cours dexcution afin que lOS puisse lire
les fichiers qui sy trouvent. Mais au fait, comment peut-on dsigner une partition active ?
Le choix de la partition active se fait laide des utilitaires de partitionnement comme par
exemple fdisk ou Partition magic .
Revenons-en la limitation de 4 partitions primaires dfinie prcdemment. Cette limitation, si on peut appeler cela une limitation, trouve son origine dans le Master Boot
Record ou MBR, dont nous avons dj parl plus haut dans le cours. En effet, si vous
vous rappelez bien, le MBR est situ sur le tout premier secteur dun disque dur et dispose dune capacit de 512 octets. Il partage son espace entre la table des partitions
et un programme (le bootloader) permettant de lire les donnes de cette table puis de
lancer le programme de boot se trouvant ventuellement sur le secteur de boot de la
partition active. Effectuons un zoom sur le secteur MBR et observons son contenu.

Nous voyons mieux maintenant pourquoi nous sommes limits quatre partitions
primaires car dans la table des partitions il ny a que quatre emplacements prvus.
Historiquement, les disques durs taient de petites tailles donc avoir la possibilit de
crer beaucoup de partitions navait que peu dintrt. Aujourdhui les disques durs ont
des capacits de stockage beaucoup plus importantes mais pour des raisons de compatibilit avec lexistant, on a conserv ce principe de 4 entres maximum dans la table des
partitions tout en essayant quand mme de le contourner indirectement en introduisant
les notions de partition tendue et de partitions logiques. Un peu de patience nous
allons revenir sur ce dernier point plus loin dans le cours pour linstant, finissons-en avec
le MBR. Voici un autre schma montrant la rpartition des 512 octets de ce secteur :

33
8 3999 TG PA 01

Squence 1

Et pour finir voici une capture dcran montrant les octets du Master Boot Record
dun disque dur comportant 3 partitions primaires.

Code du programme
du MBR (bootloader)

table des partitions

Code d'identification
(signature)

Traduction de la valeur des


octets de la MBR sous
forme de caractres ASCII

Remarque

La visualisation des octets de la MBR est possible en passant par un diteur hexadcimale
comme Hex Workshop ou encore WinHex . Ces logiciels offrent la possibilit de visualiser les octets contenus dans un fichier ou dans un programme applicatif, et par extension,
ils offrent galement la possibilit de consulter les octets dun secteur particulier dun disque.
Cest pratique pour visualiser voire modifier le contenu du secteur MBR. Vous pouvez trouver
ces logiciels ou dautres en version de dmonstration ou en graticiel (freeware) sur Internet.
Avant de poursuivre, claircissons le terme valeur hexadcimale . Une valeur hexadcimale est une valeur numrique code en base 16 (base hexadcimale). Faisons un
parallle avec la base 10 que nous employons tous les jours. Les nombres en base 10 utilisent les chiffres de 0 9 pour tre formaliss. La base 16 (base hexadcimale) utilise les
nombres de 0 15 qui se reprsentent avec les chiffres allant de 0 9 et des lettres allant
de A F permettant de reprsenter respectivement les valeurs de 10 15. Exemple: la
valeur 123 en base 10 se reprsentera par la valeur hexadcimale 7B , la valeur 65 en
base 10 se reprsentera par la valeur hexadcimale 41 , la valeur 255 en base 10 se
reprsentera par la valeur hexadcimale FF . Vous trouverez sur Internet et dans la
littrature informatique toutes les prcisions que vous souhaitez sur lutilisation de la
base hexadcimale ainsi que sur le passage de la base 10 la base 16 et inversement.
Cest pourquoi, nous ne dtaillerons pas ici les diffrents mcanismes de calcul. Sachez
34
8 3999 TG PA 01

Gnralits sur les systmes dexploitation

toutefois que pour des raisons de clart, lorsquune valeur est donne en base hexadcimale, pour viter toute confusion, on ajoute 0x devant la valeur ou h derrire la
valeur afin de prciser que la valeur est une valeur en base hexadcimale. Exemple : la
valeur 123 en base 10 se reprsentera par la valeur hexadcimale 0x7B ou 7Bh , la
valeur 65 en base 10 se reprsentera par la valeur hexadcimale 0x41 ou 41h , la
valeur 255 en base 10 se reprsentera par la valeur hexadcimale 0xFF ou FFh . On
prfrera la premire syntaxe (0x). Maintenant, si on vous donne la valeur 25, vous savez
immdiatement quil sagit dune valeur donne en base 10 et si on vous donne la valeur
0x25, vous savez immdiatement quil sagit dune valeur donne en base 16 et qui vaut
1
0
donc 37 en base 10 (obtenue avec le calcul : 2*16 + 5*16 soit 2*16 + 5).
Revenons notre capture dcran prcdente et analysons la. Au centre, nous pouvons
voir apparatre les 512 octets du secteur MBR qui se rpartissent en 3 groupes, comme
nous lavons vu dans le schma du zoom du secteur MBR, savoir le code du programme
MBR (446 octets) correspondant au bootloader (bootstrap), les 4 entres de la table
des partitions (4 x 16 Octets) et enfin les deux derniers octets du secteur qui reprsentent
le code didentification du MBR.
Que reprsente le code didentification du MBR ? Comme vous pouvez le constater sur la
capture dcran, le premier des deux octets vaut 0x55 et le deuxime 0xAA.

Le 0x plac devant permet de spcifier que la valeur qui suit utilise la base 16).
Cela forme donc la signature 0xAA55. Cette valeur est, pour le secteur MBR, trs importante car elle permet de prciser au BIOS que le disque dur a bien t partitionn et que
le BIOS trouvera dans ce secteur, le code du programme MBR et la table des partitions.
Si cette valeur nest pas prsente, le BIOS ne tentera pas de lire les octets du programme
du secteur du Master Boot Record et par voie de consquence ceux de la table des
partitions. Pour lui le disque dur est tout simplement non exploitable. Cela implique que
pour quun disque dur soit exploitable, il faut au moins crer dessus une partition
primaire afin que par le biais de cette opration, les octets du secteur MBR soient mis
en place savoir le code du programme MBR, la table des partitions et la signature.
Peut-tre vous tes vous tonns de la valeur de la signature qui est 0xAA55 alors

Oque le premier octet a pour valeur 0x55 et le deuxime 0xAA. En fait, les processeurs Intel et compatibles inversent les octets lors de la lecture dun mot. Un mot
reprsente deux octets conscutifs. Dans notre exemple, nous sommes justement
dans le cadre dune architecture Intel et compatibles . Cest pourquoi, il faut lire
la valeur de la signature de la manire suivante : 0xAA55.
Et les octets de la table des partitions que reprsentent-ils ? Chaque entre dans la table
des partitions comprend 16 octets et contient des informations sur lune des partitions
cres sur le disque dur. Voici la rpartition des octets de la table des partitions par
rapport notre capture dcran des octets du MBR (voir prcdemment). Attention, les
valeurs sont donnes en hexadcimale.
0
re

10

11

12

13

14

15

1 Entre

80

01 01 00

06 FE 7F 04

3F

00 00

00

86

FA

3F

00

2e Entre

00

01 41 05

0B FE BF 08

04 FB 3F

00

C5

BB

3F

00

3e Entre

00

00 81 09

0C FE FF

FF

C9 B6 7F

00

FC

86

7C

00

00

00 00 00

00 00 00 00

00 00 00

00

00

00

00

00

4 Entre

Dans lexemple qui correspond la capture dcran du MBR, nous avons mis en place trois
partitions primaires, cest pourquoi, les octets de la quatrime entre sont tous 0.
35
8 3999 TG PA 01

Squence 1

Voici la signification des 16 octets dune entre de la table des partitions


N de l'octet
Concern

Nombre d'octets
concerns

Signification

Indique si la partition est active ou non.


Loctet vaut 0x80 si la partition est active
ou 0x00 dans le cas contraire. Nous
pouvons observer dans notre exemple, que
la premire partition est la partition active

Numro de la tte de lecture marquant le


dbut de la partition

2 et 3

Numros du secteur et du cylindre marquant


le dbut de la partition

Type de partition (FAT, FAT32, NTFS)

Numro de la tte de lecture marquant la


fin de la partition

6 et 7

Numros du secteur et du cylindre marquant


la fin de la partition

8, 9, 10 et 11

Distance, en nombre de secteurs, entre


la table des partitions (secteur MBR) et le
premier secteur de la partition

12, 13, 14, et 15

Nombre total de secteurs dans la partition

En rsum, nous avons comme informations : ltat de la partition (active : 0x80 ou inactive :
0x00), la position du premier secteur de la partition ( secteur de boot de la partition), la
position du dernier secteur de la partition, le type de systme de fichiers employe pour
stocker les fichiers sur cette partition, la distance, en nombre de secteurs, sparant le premier secteur de la partition du secteur MBR et enfin la taille de la partition en secteurs.
Toutes ces informations permettent au BIOS ou un OS de localiser une partition.
Pour mieux comprendre et savoir interprter les valeurs des octets des entres de la
table des partitions, nous allons essayer dinterprter la premire entre de la table des
partitions de notre exemple. Elle contient les valeurs suivantes :
N Octet

Valeur Octet 80 01 01 00 06 FE

7F

04 3F

10 11 12 13 14 15

00 00 00 86 FA 3F

00

Voici linterprtation que nous pouvons faire :


L'octet 0 contient la valeur 0x80 Il sagit de la partition active.
L'octet 1 contient la valeur 0x01 ce qui correspond la valeur 1 en base 10. La partition
commence donc sur la tte n1.
Les octets 2 et 3 valent respectivement 0x01 et 0x00. Ils reprsentent les numros
du cylindre et du secteur du dbut de la partition. Cependant la lecture de leur valeur
respective nest pas si immdiate que cela. En effet, nous avons notre disposition 2
octets, reprsentant chacun 8 bits (cest--dire 8 valeurs binaires 0 ou 1), soit au total 16
bits. Lensemble de ces 16 bits code le numro du cylindre et le numro du secteur avec
un partage non quitable, savoir 10 bits sur les 16 codent le numro du cylindre et 6
bits sur les 16 codent le numro du secteur. Voici le dcoupage que cela donne sachant
que les bits sont numrots partir de 0 et de droite gauche.

36
8 3999 TG PA 01

Gnralits sur les systmes dexploitation

N bit

Numro du cylindre

Numro du secteur

15 14 13 12 11 10 09 08 07 06

05 04 03 02 01 00

Attention, les bits n6 et 7 sont considrs comme les bits de poids fort pour la partie
numro du cylindre . Il faut donc les faire passer devant. Nous obtenons au final le
schma suivant :

N bit

Numro du cylindre

Numro du secteur

07 06 15 14 13 12 11 10 09 08

05 04 03 02 01 00

Mettons cela en pratique sur notre exemple. Attention, les processeurs Intel et compatibles inversent les octets lors de la lecture dun mot. Un mot reprsente deux octets
conscutifs. Dans notre exemple, nous sommes justement dans le cadre dune architecture Intel et compatibles . Ainsi, les deux octets (n2 et n3) de notre exemple valant
respectivement 0x01 et 0x00 forment le mot 0x0001 ( On inverse les valeurs des octets).
Traduisons cette valeur en binaire.
N bit

15

14 13 12 11 10 09

08 07

06

05

04 03

02

01

00

Valeur

Appliquons le dcoupage vu prcdemment afin de distinguer le numro du cylindre et


le numro du secteur.

N bit

Numro du cylindre

Numro du secteur

07 06 15 14 13 12 11 10 09 08

05 04 03 02 01 00

Valeur 0

Traduisons les valeurs binaires obtenues. Le numro du secteur o commence la partition


est le numro 1. Le numro du cylindre o commence la partition est le numro 0. Au
final, la partition commence Cylindre 0, Tte 1, Secteur 1.
le secteur MBR est aux coordonnes Cylindre 0, Tte 0, Secteur 1. Cela nous permet
de constater que le premier secteur de la premire partition commence 63 secteurs
plus loin. Nous reviendrons sur ce dtail la fin de ce paragraphe concernant les
partitions.
L'octet 4 contient une valeur permettant de connatre le type de la partition. Elle
peut prendre une valeur parmi celles du tableau suivant :
Valeur (heka)

Description

0x00

Vide

0x04

FAT16 (<32Mo)

0x05

Partition tendue

0x06

FAT16 (> 32Mo et <2Go)

0x07

NTFS (NT et XP)

0x0B

FAT32

0x0C

FAT32x utilisant le mode LBA

37
8 3999 TG PA 01

Squence 1

0x0E

FAT16 utilisant le mode LBA

0x0F

Partition tendue utilisant le mode LBA

0x14

FAT16 (<32Mo) cache

0x16

FAT16 (>32Mo et <2Go) cache

0x17

NTFS cach

0x1B

FAT32 cache

0x1C

FAT32x utilisant le mode LBA, partition cache

0x42

Disque dynamique Windows 2000

0x82

Linux, (swap)

0x83

Linux, systme de fichier

0x85

Linux tendue

0x8A

Linux Kernel

0x93

Linux, systme de fichier, cache

0xA5

FreeBSD

0xA6

OpenBSD

0xA9

NetBSD

0xEB

BeOS

Attention cette liste nest pas exhaustive. Vous pourrez trouver sur Internet lensemble
des valeurs allant de 0x00 0xFF mais la plupart dentre elles nont que peu dintrt.
L'octet 5 contient la valeur 0xFE ce qui correspond la valeur 254 en base 10. La
partition se termine donc sur la tte n254.
Les octets 6 et 7 valent respectivement 0x7F et 0x04 ce qui correspond au mot
0x047F. Ils reprsentent les numros du cylindre et du secteur de fin de partition. En
reprenant le mode de calcul vu prcdemment, nous obtenons :
N bit

15

14 13 12 11 10 09

08 07

06

05

04 03

02

01

00

Valeur

Appliquons le dcoupage vu prcdemment afin de distinguer le numro du cylindre et le numro du secteur.


Numro du cylindre
N bit

Numro du secteur

07 06 15 14 13 12 11 10 09 08

Valeur 0

05 04 03 02 01 00
1

Traduisons les valeurs binaires obtenues. Le numro du secteur o se termine la


partition est le numro 63. Le numro du cylindre o se termine la partition est
le numro 260. Au final, la partition commence Cylindre 0, Tte 1, Secteur 1 et se
termine Cylindre 260, Tte 254, Secteur 63.
Les octets 8, 9, 10 et 11 valent respectivement 0x3F, 0x00, 0x00 et 0x00. Rappel:
nous utilisons un processeur Intel et compatibles . Nous obtenons 2 mots 0x003F
et 0x0000 quil faut galement inverser entre eux. Au final, nous obtenons le double mot 0x0000003F. Cette valeur reprsente la distance, en nombre de secteurs,
entre la table des partitions et le premier secteur de la partition. Nous obtenons la
38
8 3999 TG PA 01

Gnralits sur les systmes dexploitation

valeur 63. Il y a donc 63 secteurs entre le MBR et le secteur de boot de la premire


partition.
Les octets 12, 13, 14 et 15 valent respectivement 0x86, 0xFA, 0x3F et 0x00. Nous
obtenons 2 mots 0xFA86 et 0x003F quil faut galement inverser entre eux. Au final,
nous obtenons le double mot 0x003FFA86. Cette valeur reprsente le nombre total
de secteurs dans la partition. Nous obtenons la valeur 4192902. Il y a donc 4192902
secteurs dans cette partition.
Nous pouvons remarquer quil y a redondance dinformations parmi celles permettant
dexprimer la position du premier et du dernier secteur dune partition. En effet, ces
informations sont contenues dans les octets 1, 2, 3, 5, 6 et 7 travers un systme de coordonnes dit CHS (pour Cylinder Head Sector en Anglais) mais aussi dans les octets
de 8 15 qui fournissent des valeurs permettant de calculer leurs positions respectives
par rapport au premier secteur du disque dur (le MBR). Pourquoi deux mthodes de
reprage du dbut et de la fin dune partition ? Tout simplement parce quil existe deux
mthodes pour localiser un secteur donn sur un disque dur, le systme de coordonnes
CHS et le mode dadressage LBA (Logical Block Addressing).
Sans entrer dans le dtail, voyons en deux mots ce que sont le systme de coordonnes
CHS et le mode LBA. Commenons par le premier. Prcdemment, nous avons dfini
quun disque dur se compose de plateaux encadrs par des ttes de lecture/criture et
que lopration de formatage de bas niveau permettait de dfinir, sur le disque, des pistes (donc des cylindres) et des secteurs. Le systme de coordonnes CHS ( Cylinder
Head Sector ou CTS en franais pour Cylindre Tte Secteur ) dfinit la position dun
secteur sur le disque dur partir dun numro de cylindre, un numro de tte de lecture/
criture et enfin un numro de secteur sur une piste. Ainsi, les deux premiers paramtres permettent de localiser une piste sur lun des plateaux, et le dernier, un secteur sur
cette piste. Par exemple, le secteur Master Boot Record se situe Cylindre 0, Tte 0,
(Head 0), Secteur 1. De mme, dans notre exemple prcdent, concernant les 3 partitions
primaires, le secteur de boot de la premire partition se trouve aux coordonnes CHS :
Cylindre 0, Tte 1, Secteur 1. Le dernier secteur de cette mme partition se trouve lui aux
coordonnes CHS : Cylindre 260, Tte 254, Secteur 63.
Pourquoi un tel systme de coordonnes ? Pour trouver une rponse, il nous faut nous
tourner vers le BIOS. Le BIOS, outre le fait de raliser toutes les tches dont nous avons
dj parl, possde un certain nombre de fonctionnalits de base (appels interruption ) pouvant tre appeles par le systme dexploitation, ou par un programme en
cours dexcution, permettant ainsi de raliser diffrentes tches systmes comme
par exemple accder aux informations dun disque dur ou dune disquette, accder
la mmoire, grer le clavier, crire une information lcran, etc. Ces fonctionnalits
de base sont appeles des interruptions car lorsque lon fait appel lune delles, le
programme en cours dexcution est momentanment interrompu afin de drouler les
instructions de la fonction de base appele. Ensuite, le programme momentanment
interrompu reprend son excution partir de lendroit o il a t suspendu. Chaque
interruption disponible nest pas repre par un nom mais par un numro donn
en hexadcimale. Ainsi, linterruption 13h (remarques : 13 en hexadcimale)
est lune des plus importante car elle rgit tout accs physique aux disques et offre des
options permettant entre autre la lecture, lcriture, le formatage et la rinitialisation
des disques durs. Nous pouvons donc rpondre maintenant notre question pose un
peu plus haut. Le systme de coordonnes CHS est utilis par linterruption 13h du
BIOS pour atteindre un secteur sur le disque dur afin deffectuer une opration de lecture ou dcriture. Le BIOS se charge de converser avec le contrleur du disque afin de
raliser un positionnement physique sur le secteur partir des coordonnes CHS .
39
8 3999 TG PA 01

Squence 1

Remarque

le principe de fonctionnement des interruptions est indpendant de tout systme dexploitation. Ds quun systme dexploitation ou un programme fait appel aux interruptions du
BIOS, il doit se plier leurs modes de fonctionnement.
Lutilisation de la technique des coordonnes CHS a ses limites. Comme nous venons de
le voir avec les octets dune entre de la table des partitions, le numro dune tte se
code sur 1 octet et les numros du secteur et du cylindre se partagent, de manire non
quitable, 2 octets. Ce principe de dcoupage des coordonnes CHS utilis dans le cadre
de la table des partitions est le mme que celui employ par linterruption 13h du
BIOS donc cela nous donne les mmes limitations. Mais quelles sont-elles ?
Pour rpondre la question, il nous faut dterminer le nombre maximum de secteurs
que nous pouvons grer par le systme de coordonnes CHS. Voici le calcul :
Le nombre de ttes est cod sur 1 octet (8 bits) ce qui implique que la plus grande
valeur que l'on puisse coder est 255 (soit 1111 1111 en binaire) mais comme les numros de tte commencent 0, nous avons donc 256 valeurs possibles (de 0 255).
Le nombre de cylindres est cod sur 10 bits donc la plus grande valeur que l'on
puisse coder est 1023 (soit 11 1111 1111 en binaire) mais comme les numros de
cylindre commencent 0, nous avons donc 1024 valeurs possibles (de 0 1023).
Le nombre de secteur est cod sur 6 bits donc la plus grande valeur possible est 63.
Comme les numros de secteur commencent 1, nous avons donc 63 valeurs possibles (de 1 63).
En rsum, le principe des coordonnes CHS nous permet de grer au maximum
1024 x 256 x 63 secteurs soit 16515072 secteurs. Cela reprsente un disque dur de quelle
taille ? Un secteur contenant 512 octets, nous avons accs au maximum 16515072 x 512
= 8455716864 octets soit sensiblement 7,9 Go que l'on peut arrondir 8 Go.
1 Go reprsente 1024 Mo (Mga-octet), 1 Mo reprsente 1024 Ko (Kilo-octet), 1 Ko
reprsente 1024 octets, donc 1 Go reprsente 1024 x 1024 x 1024 = 1 073 741 824
octets).
Cette limitation n'est plus acceptable aujourd'hui. C'est pourquoi, nous ne parlerons plus
de ce systme de coordonnes CHS dans la suite Il nous a juste permis de comprendre les
principes lis leur utilisation et manipuler des calculs bianires.
Avec des disques durs ayant de plus en plus de capacit, il a t ncessaire de trouver
un moyen de repousser cette limite de 8 Go. Ainsi est apparu le mode d'adressage LBA
(Logical Block Addressing). Dans ce mode, on considre que les secteurs du disque dur
concern sont numrots de faon linaire partir de 0 jusqu N-1 . ( N reprsente
le nombre total de secteurs sur le disque dur). Le premier secteur de numro LBA 0 correspond aux coordonnes CHS : Cylindre 0, Tte 0, Secteur 1. Le mode dadressage LBA
utilise des numros cods sur 28 bits ce qui permet de coder 228 secteurs soit 268435456
secteurs. (Remarque : le codage se fait sur 4 octets soit 32 bits mais les 4 bits
de poids forts sont rservs, il nen reste donc plus que 28 disponibles). Nous
pouvons donc disposer au maximum de 268435456 x 512 octets soit 137438953472 octets
ou encore 128 Go avec, au maximum, des secteurs numrots de 0 268435455 (rappel:
1Ko = 1024 octets). Attention toutefois pour que le mode LBA soit utilisable, il faut que
le BIOS et que le systme dexploitation le prenne en charge ce qui est toujours vrai

40
8 3999 TG PA 01

Gnralits sur les systmes dexploitation

aujourdhui. La norme LBA continue voluer afin de dpasser la limite des 28 bits et
ainsi pouvoir prendre en compte des disques encore plus volumineux. Ainsi depuis 2002,
il existe la norme LBA48 qui code le numro des secteurs sur 48 bits au lieu de 28. Cette
norme permet donc de coder 248 secteurs soit 281474976710656 secteurs. Cela permet de
grer 281474976710656 x 512 octets soit 144115188075855872 octets ou encore environ
128 Po (Pta-octets) 1 Po = 1024 To = 1024 x 1024 Go. Cette norme LBA48 ncessite
davoir un BIOS jour, dorigine ou aprs flashage, afin de prendre en charge le LBA48
et un systme dexploitation capable de grer le LBA48 comme par exemple Windows
2000 depuis le Service Pack 3 ou Windows XP depuis son Service Pack 1 . Dans
certains cas, il faut encore aller dans la base des registres Windows et modifier une cl.
Nous reviendrons sur la notion de base des registres dans la squence 4. Bien entendu les
dernires versions de Linux prennent galement en charge le LBA48. Je nen dirais pas
plus pour Linux car il faudrait galement prendre en compte les distributions utilises.
Et notre limitation 4 partitions primaires dans tout a, finalement peut-on la contourner ? Vous vous doutez bien de la rponse ! Oui nous pouvons la contourner mais de
manire indirecte. En effet, comme on ne peut pas agir sur le nombre dentres dans la
table des partitions, il a t dfini un type de partition particulier : la partition tendue.
Dans la liste des valeurs possibles pour un type de partition (voir octet n4 de lentre
dune partition dans la table des partitions), il a t rserv les valeurs 0x05 et 0x0F pour
dfinir le type Partition tendue .
quoi correspond ce type et quapporte-t-il ? Une partition tendue est une partition
spciale dont le seul but est dtre un conteneur pour dautres partitions appeles logiques ou lecteurs logiques . Attention, au moins une partition logique est ncessaire
dans une partition tendue, car nous ne pouvons pas y stocker de donnes directement
contrairement aux partitions primaires. De mme, il ne peut exister quune et une seule
partition tendue sur un disque dur. En rsum, un disque peut contenir au maximum
quatre partitions primaires ou trois partitions primaires et une partition tendue. Bien
entendu, ceci est un maximum car vous pouvez avoir une seule partition primaire qui
utilise la totalit des capacits du disque ou alors une partition primaire avec le systme
dexploitation et une partition tendue avec des lecteurs logiques afin dy placer linstallation des logiciels applicatifs ou encore vos fichiers de donnes.
Remarque

Pour les fichiers de donnes, cela peut tre intressant car si pour une raison quelconque, vous
devez rinstallez le systme dexploitation, les donnes, elles, sont protges et ne seront pas
dtruites par la rinstallation de lOS sauf en cas de mauvaises manipulations bien entendu.
En rsum : une partition tendue peut contenir une ou plusieurs partitions logiques
(appeles galement lecteurs logiques ). Ces dernires ne peuvent exister sans partition tendue tout comme une partition tendue ne peut tre utile que si elle contient
au moins une partition logique. Attention, une partition logique est faite plutt pour
contenir des donnes mme si ventuellement elle peut contenir un systme dexploitation la condition que celui-ci puisse tre lanc partir dun lecteur logique (ex : Linux).
Nous reviendrons succinctement sur ce dernier point plus loin dans le cours.

41
8 3999 TG PA 01

Squence 1

Remarque

Une partition primaire doit tre formate avant dtre utilise de mme quune partition
logique, ceci afin que le systme dexploitation actif puisse lire ou stocker des fichiers grce
au systme de fichiers mis en place par laction de formatage. Il faudra donc utiliser un utilitaire de formatage de haut niveau comme format.exe de MS-DOS/Windows ou encore
utiliser lune des fonctionnalits du logiciel de partitionnement utilis.
Allez, un petit exemple pour mieux visualiser le concept de partition tendue . Nous
allons considrer que nous avons mis en place un disque dur avec une partition primaire
sur laquelle est install Windows XP Pro avec un systme de fichiers FAT32, une autre
partition primaire avec un systme de fichiers NTFS et une partition tendue composes
de trois partitions logiques (lecteurs logiques).
Remarque

Windows XP Pro est capable de visualiser plusieurs partitions primaires mais bien entendu,
comme toujours, une seule peut tre active la fois, celle qui contient le boot secteur avec
le programme de boot.
Voici un schma de notre exemple :

Vu sous un autre angle, voici une reprsentation linaire de nos partitions avec en plus
la liste des noms de lecteurs que nous avons notre disposition et qui ont t attribus
par dfaut par Windows XP Pro.
Partition tendue
Partition
primaire
N1
(Lecteur C)

Partition
primaire
N2
(Lecteur E)

Partition
Logique
N1
(Lecteur F)

Partition
Logique
N2
(Lecteur G)

Partition
Logique
N3
(Lecteur H)

Et enfin, vu partir de Windows XP Pro, voici la liste des lecteurs disponibles et le nom
de volume attribu chacune des partitions.
Remarque

Un nom de volume est le nom associ une partition. Ce nom peut tre donn au moment du
formatage de haut niveau ou encore laide dun utilitaire fourni avec lOS ou non.
42
8 3999 TG PA 01

Gnralits sur les systmes dexploitation

La capture dcran prcdente nous montre bien quune partition tendue peut contenir
des lecteurs logiques mais que du point de lutilisateur rien ne transparat. Pour lui, il
a accs plusieurs lecteurs un point cest tout. Regardons nanmoins avec un diteur
hexadcimale le secteur Master Boot Record , et plus particulirement le contenu de
la table des partitions, dun disque dur sur lequel nous avons mis en place les partitions
prvues dans le cadre de notre exemple.

Type "Partition tendue"

partir de cette capture dcran, nous pouvons observer que loctet n4 de la troisime
entre de la table des partitions contient la valeur 0x0F qui indique quil sagit dune
partition tendue. Nous pouvons observer galement que les deux premires entres de
la table des partitions contiennent les informations sur les deux premires partitions primaires (lune en FAT32 et lautre en NTFS) mais rien sur les partitions logiques . Alors
comment sont-elles repres?
Pour rpondre cette question, nous allons nous rappeler limportance de la notion de
premier secteur . Le premier secteur dun disque dur est le MBR. Le premier secteur
43
8 3999 TG PA 01

Squence 1

dune partition primaire est le secteur de boot pouvant contenir ventuellement un programme de boot permettant de lancer le chargement dun OS. Voici le secteur de boot
de notre premire partition primaire :

Le premier secteur dune partition tendue quant lui nest pas un secteur de boot mais
un secteur dont la structure est identique celle du secteur MBR. Ce secteur sappelle
Extended Boot Record ou EBR. En rsum, il contient la partie des 446 octets rserve ventuellement au code dun programme, la partie des 64 octets rserve aux octets
des 4 entres dune table des partition et enfin la signature 0xAA55.
En gnralisant, la signature 0xAA55 est mise en place pour permettre de spcifier
au BIOS et un OS que le secteur concern est un secteur spcial (MBR, EBR, secteur
de boot). On peut dailleurs la visualiser sur la capture dcran prcdente. Si cette
signature nest pas prsente, cest que le secteur ne contient pas les donnes attendues. Il ne faut donc pas supprimer par inadvertance cette signature sous peine de
ne plus pouvoir avoir accs correctement aux informations stockes sur le disque).
Voici une capture dcran montrant le secteur EBR (premier secteur) de la partition tendue de notre exemple en cours.

44
8 3999 TG PA 01

Gnralits sur les systmes dexploitation

Sur cette image de lEBR, nous pouvons observer que les octets des deux premires entres
de la partie Table des partitions contiennent des valeurs. quoi correspondent-elles ? En
fait, les octets de la partie table des partitions de lEBR ont pour rle de reprer les partitions
logiques via un mcanisme de chanage que nous allons maintenant mettre en vidence.
Lorsque lon cre une partition tendue laide dun utilitaire appropri, celui-ci modifie
les octets de lune des quatre entres de la table des partitions du secteur MBR afin de
mmoriser les informations sur la localisation de la partition tendue ainsi que sa taille.
Bien entendu, il lui donne galement ce moment l le type partition tendue (voir
octet n4 de lentre concerne). Voici un schma du secteur MBR de notre exemple
aprs avoir mis en place les deux partitions primaires et la partition tendue.

Nous ne faisons pas apparatre le secteur EBR sur le schma prcdent car comme il ny

O a pas encore de partition logique cre, celui-ci ne contient pas dinformation prcise.

Nanmoins, partir des informations sur la partition tendue contenues dans le secteur
MBR, il est simple de localiser le premier secteur de la partition tendue, savoir le secteur EBR. Cest pourquoi, ds que lutilisateur cre la premire partition logique, notre
programme utilitaire peut facilement complter la partie table des partitions du
secteur EBR et plus prcisment la premire entre de cette dernire (les diffrents octets
des entres de cette table des partitions ont le mme rle que ceux de la table des partitions du secteur MBR). Les 16 octets de la premire entre du secteur EBR vont permettre
de localiser le dbut et la fin de notre premire partition logique ainsi que son type (FAT,
FAT32, NTFS, etc). Tous les autres octets de la table des partitions de lEBR sont zro.
Le premier secteur de la partition logique est un secteur de boot qui peut ventuellement
contenir un programme damorage si lOS install peut sexcuter partir dune partition
logique et si le programme du secteur MBR est capable de lancer lexcution dun programme
se trouvant dans le secteur de boot dune partition logique, ce qui nest pas le cas par dfaut.

45
8 3999 TG PA 01

Squence 1

Pour la suite du cours, nous allons donnes le nom EBR1 ce secteur EBR. Vous allez
comprendre pourquoi aprs. O en sommes nous par rapport notre exemple ? Allez
un petit schma.

Que se passe-t-il maintenant si on ajoute une deuxime partition logique ? Notre utilitaire va alors modifier la deuxime entre de notre secteur EBR1 afin dy inscrire les
informations permettant de localiser le dbut et la fin de la portion de partition tendue
dans laquelle la deuxime partition logique est cre. Cette portion de partition tendue
commence en gnral la suite du dernier secteur de la partition logique prcdente et
son premier secteur est de nouveau un secteur EBR que nous allons appeler EBR2 afin de
mieux nous reprer. La premire entre de la zone de la table des partitions du secteur
EBR2 va son tour contenir les informations permettant de localiser le dbut et la fin
de la partition logique n2. Les autres octets de la table des partitions du secteur EBR2
sont 0. Vite un schma.

46
8 3999 TG PA 01

Gnralits sur les systmes dexploitation

En gnralisant le mcanisme des secteurs EBR, nous pouvons dire que seules les deux
premires entres de la table des partitions de ces derniers sont susceptibles de contenir
des informations. La premire permet de localiser le dbut et la fin dun lecteur logique
ainsi que son type (FAT, FAT32, NTFS, etc). La deuxime permet de localiser le dbut et la
fin de la portion de partition tendue qui contient le lecteur logique suivant sil en existe
un. Bien entendu, cette portion comprend son tour, en tant que premier secteur, un
secteur EBR qui reprend les notions prcdentes. Pour un secteur EBR donn, sil nexiste
pas de lecteur logique suivant, tous les octets de la deuxime entre sont 0. Ce mcanisme que nous venons de dcrire est un mcanisme de chanage. Le dbut du chanage
est repr par lintermdiaire de lune des entres de la table des partitions du secteur
MBR qui permet de localiser le premier secteur de la partition tendue (premier secteur
EBR). La fin du chanage est repre par le fait que tous les octets, de la deuxime entre
de la table des partitions du dernier secteur EBR, sont 0. Dans le cas o une partition
tendue est cre sans partition logique lintrieur, le secteur EBR que lon atteint
partir de la table des partitions du secteur MBR ne contient pas la signature 0xAA55
ce qui permet dindiquer au BIOS ou un OS que le secteur EBR ne contient pas les
donnes attendues ce qui est normal puisque quil ne localise aucune partition logique.
Remarque : les octets des deux dernires entres de la table des partitions dun secteur
EBR seront toujours 0 car ils nont aucune utilit prcise.

47
8 3999 TG PA 01

Squence 1

Voici le dernier secteur EBR de notre exemple

Remarque

Lorsque la deuxime entre dun secteur EBR contient des informations permettant de
localiser la portion de partition tendue contenant la partition logique suivante, loctet
n4 marquant le type de la partition repre contient le type Partition tendue . Voici les
valeurs de la table des partitions du secteur EBR1 de notre exemple en cours.

48
8 3999 TG PA 01

Gnralits sur les systmes dexploitation

Au final, notre exemple en cours nous donne le chanage suivant :


Partition pr ima ir e
Sec teur MBR

Sec teur d e boot

Code Progra mme


Entre n1 (Primaire)

Autres secteur s de la
partition primaire

Entre n2 (Primaire)
Entre n3 (Etendue)
Signature 0 xAA 55

Partition primaire
Sec teur d e boot

Autres secteur s de la
partition pr imaire

Faisons-en une reprsentation linaire ;


49
8 3999 TG PA 01

Squence 1

Prcision : dans le schma, chaque ligne avec une flche reprsente une entre dans la table
des partitions du secteur MBR ou dun secteur EBR. Laccolade reprsente le dbut et la fin de
la zone repre par lune des entres de la table des partitions considre.
Remarque

Les secteurs vides matrialiss sur le schma prcdent, sont dus au fait que les utilitaires de partitionnement font toujours commencer une partition sur le premier secteur
dune piste. Ainsi, ils laissent tomber les secteurs qui suivent le secteur MBR ou EBR et
qui se trouvent sur la mme piste que ce dernier. Cela correspond 62 secteurs perdus.
Rappel : une piste contient 63 secteurs.
Avant den terminer avec notre voyage au cur de la notion de partition, nous allons ajouter
un petit commentaire sur le programme contenu dans le secteur MBR. Par dfaut, comme
nous lavons dj dit, celui-ci est conu pour lancer le programme de boot de la partition
active. Cependant, rien empche un dveloppeur chevronn, un programme utilitaire, le
programme dinstallation dun OS ou encore un virus, de modifier le code du secteur MBR.
Pourquoi modifier ce code ? Dans le cas dun virus, on peut facilement imaginer que le but
est de poser des problmes un utilisateur en empchant par exemple le BIOS de booter
sur le disque dur ou encore de lire les donnes de la table des partitions du MBR. Pour un
dveloppeur chevronn, cela peut permettre de personnaliser le boot ou de le rendre plus
performant. Dans le cas dun OS, cela peut permettre de mettre en place un programme
capable de lancer un programme de boot se trouvant sur le secteur de boot dune partition
logique au lieu de celui se trouvant sur le secteur de boot dune partition primaire. Bien
entendu, il faut dans ce cas que lOS soit capable de fonctionner partir dune partition
logique. Enfin, il existe un cas pour lequel la possibilit de modifier le code du programme
MBR prend tout son intrt : le multiboot. Au dbut du paragraphe concernant les partitions,
nous avons parl de la possibilit dinstaller plusieurs systmes dexploitation sur le mme
ordinateur puis du moyen de booter sur lun ou lautre en modifiant, laide dun utilitaire de
partitionnement, la partition active. Cette solution nest pas forcment une solution simple.
Heureusement, il existe une autre solution qui consiste remplacer le code du MBR par un
programme dit de multiboot . Ce programme permet dafficher un menu partir duquel
lutilisateur va dsigner le systme dexploitation de dmarrage. Bien entendu les diffrents

50
8 3999 TG PA 01

Gnralits sur les systmes dexploitation

OS doivent avoir t pralablement installs sur lordinateur. Il existe diffrents programmes


de multiboot. Linux propose LILO (LInux Loader) ou encore GRUB. Windows NT/2000/XP proposent NTLoader. Il existe galement des utilitaires comme System Commander , Boot
Magic inclus dans Partition Magic ou encore XOSL. Ces utilitaires disposent dune procdure dinstallation qui se charge de linstallation du programme de multiboot dans le MBR.
Remarque

Ces programmes peuvent dpasser les 446 octets du secteur MBR car comme nous lavons
dj prcis prcdemment, une partition commence toujours au dbut dune piste ce qui
laisse des secteurs libres derrire les secteurs MBR ou EBR que le programme de multiboot
peut utiliser son profit. Ainsi derrire le secteur MBR, on dispose de 62 secteurs de 512
octets en plus des 446 octets du secteur MBR. Cela laisse environ 32 Ko de disponible.

51
8 3999 TG PA 01

Application

Dcryptage dune table des partitions


Pour faire cette exercice dapplication, vous aurez besoin de faire des conversions de valeurs
entre hexadcimale, base 10 et binaire. Pour vous aider, vous pouvez utiliser la calculatrice de Windows que vous atteigniez en passant par [Dmarrer] [Programmes] [Accessoires]
[Calculatrice]. Une fois la calculatrice affiche, passez en affichage scientifique . Ensuite
lutilisation est simple. Il suffit de slectionner la nature de la valeur que vous allez saisir (Hex,
Dec,, Oct, Bin) puis vous saisissez la valeur et enfin vous cliquez sur le type de conversion
effectuer (Hex, Dec, Oct, Bin). Remarque : le type Dec correspond la base 10.

Question 1
Vous allez dcouvrir ci-aprs, une table des partitions extraite du secteur MBR dun disque dur.
partir des valeurs contenues dans le tableau prcdent, indiquez le nombre de partitions cres
sur le disque dur puis donnez toutes les informations que lon peut dduire sur chacune des
partitions dfinies mme les informations CHS. Les valeurs des octets sont en hexadcimale.
Remarque : nous sommes dans une architecture Intel et compatibles .
N octet
re

10

3F

11

12

13 14 15

Entre

00

01

01

00

06

FE

7F 04

00

00

00

86 FA 3F 00

2me Entre

80

00

41

05 0B

FE

FF 58 C5 FA

3F

00

54

19 92 00

me

Entre

00

00

00

00

00

00 00 00 00

00

00

00

00

00 00 00

me

Entre

00

00

00

00

00

00 00 00 00

00

00

00

00

00 00 00

3
4

Question 2
Vous allez dcouvrir ci-aprs, une srie de captures dcran montrant le contenu de diffrents secteurs dun disque dur. Vous trouverez, en dessous de chacune des captures dcran,
le numro du secteur associ limage. partir du contenu de ces diffrentes captures
dcran, vous allez essayer de dessiner (de cartographier) les partitions du disque
dur concern. Pour cela, partir de la valeur de certains octets contenus dans les diffrentes
captures dcran prcdentes, dduisez-en la manire dont a t partitionn le disque dur
de lordinateur, savoir sil y a des partitions primaire , tendue et logique . Puis,
toujours partir de la valeur de certains octets contenus dans les diffrentes captures dcran
prcdentes, calculez le numro de secteur associ aux diffrents secteurs importants (MBR,
Secteur de boot, EBR, Secteur de boot de lecteur logique) ainsi que la taille en secteurs des
diffrentes partitions. Vous justifierez vos rponses et vous ferez, en conclusion, un schma sur
lequel vous dessinerez les diffrentes partitions ainsi que les secteurs importants. Sur ce schma
vous porterez galement le type des partitions (FAT, FAT32, NTFS), le n de secteur des secteurs
importants et la taille des partitions en secteurs. Attention, petit pige, toutes les captures
dcran ne sont pas forcment utiles pour rpondre la question mais le numro de secteur
port sur certaines dentre elles peut vous permettre de contrler la validit de vos calculs.

53
8 3999 TG PA 01

Remarques pour vous aider :


Vous ne vous occuperez pas des octets donnant des informations sur les coordonnes
CHS.
Dans le cadre d'une partition primaire, les octets n8 11, de l'entre de la table des
partitions associe, permettent de calculer la distance en nombre de secteurs entre la
table des partitions, donc le secteur MBR, et le premier secteur de la partition primaire.
Ces informations nous permettent d'en dduire le numro de secteur du premier secteur de la partition puisque l'on connat le numro du secteur MBR.
Dans le cadre de la table des partitions d'un secteur EBR, les octets n8 11 de la premire entre permettent de calculer la distance en nombre de secteurs entre la table des
partitions contenue dans le secteur EBR associ la partition logique considre et le
premier secteur de cette partition logique. Par contre, les octets n8 11 de la deuxime
entre d'un secteur EBR, si elle existe, donne la distance en nombre de secteurs entre
le secteur EBR grant la partition logique suivante et le premier secteur de la partition
tendue . Allez faisons un schma pour mieux comprendre les explications.

Sur ce schma, le secteur not EBR1 est le premier secteur de la partition tendue . Ainsi, les octets n8 11 de la premire entre permettent de connatre la
distance en nombre de secteurs d'avec le secteur de boot de la premire partition
logique et les octets n8 11 de la deuxime entre permettent de connatre la
distance en nombre de secteurs d'avec le secteur EBR2 grant la deuxime partition logique. Passons au secteur EBR2, Les octets n8 11 de la premire entre
permettent de connatre la distance en nombre de secteurs d'avec le secteur de
boot de la deuxime partition logique et les octets n8 11 de la deuxime entre
permettent de connatre la distance en nombre de secteurs entre le secteur EBR1
(point A), qui est le secteur EBR de la partition tendue , et le secteur EBR3
(point B) grant la troisime partition logique. Le principe se rpte ainsi de
suite.
Voici les diffrentes captures dcran (page suivante) annonces au dbut de la question :

54
8 3999 TG PA 01

Image 1 : secteur n0

Image 2 : secteur n1

55
8 3999 TG PA 01

Image 3 : secteur n2

Image 4 : secteur n63

56
8 3999 TG PA 01

Image 5 : secteur n64

Image 6 : secteur n30780540

57
8 3999 TG PA 01

Image 7 : secteur n30780603

58
8 3999 TG PA 01

Image 8 : secteur n47568465

Image 9 : secteur n47568528

Image 10 : secteur n47568530

59
8 3999 TG PA 01

Image 11 : secteur n69689970

Image 12 : secteur n69690033

60
8 3999 TG PA 01

Question 3
Compltez le tableau suivant en prcisant quel type de secteur (MBR, Secteur de boot, EBR)
chacune des 12 images (captures dcran) prcdentes correspond. Si lune des images correspond un secteur nayant aucune particularit prcise dans le cadre de lexercice, vous lindiquerez dans le tableau avec la mention Secteur non utile dans le cadre de lexercice .
Numro dimage

Image 1

Commentaires
Secteur MBR. Le secteur n0 est le secteur principal permettant davoir des
informations sur le partitionnement dun disque dur. Il contient galement un
programme, le bootloader, permettant de lancer ventuellement le programme
de boot dun OS.

Image 2

Image 3

Secteur non utile dans le cadre de lexercice

Image 4

Image 5

Image 6

Image 7

Image 8

Image 9

Image 10

Image 11

Image 12

61
8 3999 TG PA 01

Corrig
Question 1
En analysant la table des partitions prcdente, nous pouvons voir que seulement deux des
4 entres contiennent des valeurs. Cela implique que notre disque dur se compose de deux
partitions. Pour en connatre la nature, il faut interprter la valeur de loctet n4. Cela nous
donne la valeur hexadcimale 0x06 pour la premire et la valeur 0x0B pour la deuxime. La
premire partition est donc une partition primaire de type FAT16 et, la deuxime, une partition primaire de type FAT32. En poursuivant lanalyse, nous pouvons observer que, loctet
n0 de la deuxime entre de la table des partitions vaut la valeur hexadcimale 0x80. La
partition active est donc la deuxime.
Voyons maintenant les octets concernant la localisation de la premire partition. Ces octets
sont dans la premire entre de la table des partitions. Rappel : les octets n1, 2 ,3 permettent, en mode CHS, de localiser le dbut de la partition. Ainsi loctet n1 vaut, en
hexadcimale, la valeur 0x01 Le numro de la tte de lecture/criture marquant le dbut de
la partition est la tte n1. Les octets n2 et 3 valent respectivement 0x01 et 0x00. Attention,
les processeurs Intel et compatibles inversent les octets lors de la lecture dun mot. Un
mot reprsente deux octets conscutifs. Dans notre exercice, nous sommes justement dans
le cadre dune architecture Intel et compatible . Ainsi, les deux octets (n2 et n3) valant
respectivement 0x01 et 0x00 forme le mot 0x0001 ( On inverse les valeurs des octets).
Traduisons cette valeur en binaire.
N bit

15

14

13

12

11

10

09

08

07

06

05

04

03

02

01

00

Valeur

Valeur Octet n 3

Valeur Octet n 2

Appliquons le dcoupage vu dans le cours afin de distinguer le numro du cylindre et le


numro du secteur. Cela nous donne :
Numro du cylindre

Numro du secteur

N bit

07

06

15

14

13

12

11

10

09

08

05

04

03

02

01

00

Valeur

Traduisons les valeurs binaires obtenues. Le numro du secteur o commence la partition


est le numro 1. Le numro du cylindre o commence la partition est le numro 0. Au final,
la partition commence Cylindre 0, Tte 1 (Head 1), Secteur 1.
De la mme manire, les octets n5, 6 ,7 permettent, en mode CHS, de localiser la fin de la
partition. Voyons cela.
Loctet n5 vaut, en hexadcimale, la valeur 0xFE Le numro de la tte de lecture/criture
marquant la fin de la partition est la tte n254.
Les octets n6 et 7 valent respectivement 0x7F et 0x04. Nous obtenons en binaire et aprs
inversion des octets :
N bit

15

14

13

12 11 10 09 08 07 06

05

04 03 02 01 00

Valeur

Valeur Octet n7

Valeur Octet n6

63
8 3999 TG PA 01

Appliquons le dcoupage vu prcdemment an de distinguer le numro du cylindre et le


numro du secteur.
Numro du cylindre

Numro du secteur

N bit

07

06

15

14

13

12

11

10

09

08

05

04

03

02

01

00

Valeur

Traduisons les valeurs binaires obtenues. Le numro du secteur o termine la partition est
le numro 63. Le numro du cylindre o termine la partition est le numro 260. Au final, la
partition termine Cylindre 260, Tte 254 (Head 254), Secteur 63.
Les octets n8 11 de la premire entre reprsentent la distance, en nombre de secteurs,
entre la table des partitions et le premier secteur de la partition. Les octets ont respectivement pour valeur en hexadcimale 0x3F, 0x00, 0x00, 0x00. Nous sommes dans le cadre dun
processeur Intel et compatibles , nous obtenons donc deux mots 0x003F et 0x0000 quil
faut ensuite inverser entre eux pour les mmes raisons que prcdemment. Nous obtenons
donc au final la valeur 0x0000003F. Cette valeur reprsente le nombre de secteurs qui sparent la MBR et le premier secteur de la partition. Nous obtenons la valeur dcimale (en base
10) de 63. La distance est donc de 63 secteurs. Le premier secteur, le secteur de boot,
de cette partition est situ au numro 63. En effet, si on se dcale de 63 positions en
partant du secteur n0 (le secteur MBR), on arrive au secteur 63.
Poursuivons avec les octets de 12 15 qui reprsentent le nombre total de secteurs de la partition et qui valent respectivement en hexadcimale 0x86, 0xFA, 0x3F, 0x00. Nous obtenons
donc deux mots 0xFA86 et 0x003F qui nous donne au final la valeur hexadcimale suivante :
0x003FFA86. Cela correspond la valeur en base 10 de 4192902. La taille de la partition
est donc de 4192902 secteurs. Allons plus loin, mme si cela nest pas demand dans la
question, si le premier secteur de la partition est le n63 et que la partition a une taille de
4192902 secteurs, le dernier secteur se trouve au n 4192964 63 + 419202 -1 On fait -1
car le secteur n63 est dj comptabilis dans le 419202 secteurs.
Avec le mme procd de calcul, avec la deuxime entre de partition, nous obtenons les
informations suivantes :
la deuxime partition commence en Cylindre 261, Head 0, Secteur 1 et se termine
Cylindre 856, Head 254, Secteur 63 ;
la distance, en nombre de secteurs, entre la table des partitions et le premier secteur
de la deuxime partition est de 4192965 secteurs. Le premier secteur, le secteur
de boot, de cette partition est situ au numro. 4192965. La taille de cette partition est de 9574740 secteurs. Le dernier secteur se trouve donc au numro 4192965
+ 9574740 1 13767704.
Rsum
Premire partition

Type FAT16
Partition non active
Dbut : Cylindre 0, Head 1, Secteur 1
Fin : Cylindre 260, Head 254, Secteur 63.
Distance davec le secteur MBR : 63 secteurs
Taille en secteurs : 4192902

Deuxime partition

Type FAT32
Partition active
Dbut : Cylindre 261, Head 0, Secteur 1
Fin : Cylindre 856, Head 254, Secteur 63
Distance davec le secteur MBR : 4192965 secteurs
Taille en secteurs : 9574740

64
8 3999 TG PA 01

Question 2
Pour rpondre cette question, il faut commencer par analyser la table des partitions de la
MBR soit le secteur 0. Attention, dans la suite, je ne reprends pas tous les calculs que nous
avons dj r-explicit dans la correction de lexercice prcdent. De la table des partitions
de la MBR, nous obtenons les informations suivantes :
N Octet

10

11

12

13

14

15

1re Entre

80

01

01

00

0C

FE

FF

FF

3F

00

00

00

3D

AC

D5

01

me

Entre

00

00

C1

FF

0F

FE

FF

FF

7C

AC

D5

01

D1

36

F5

02

me

Entre

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

me

Entre

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

Deux entres sont remplies. Loctet n0 de la premire entre nous informe quil sagit de
la partition active (valeur 0x80) et loctet n4 quil sagit dune partition primaire de type
FAT32. Quant la deuxime entre, loctet n4 nous informe quil sagit dune partition
tendue.
Les octets 8 11 de la premire entre nous informe que la distance entre la MBR et le premier secteur de la partition est de 63 secteurs. Le premier secteur dune partition primaire
est le secteur de boot de la partition. Il a donc pour numro de secteur le numro 63. (Petit
rappel : les secteurs sont numrots partir de 0). Les octets 12 15 nous donne la taille de
cette partition. Celle-ci est de 30780477 secteurs. Cette valeur est obtenue en traduisant la
valeur hexadcimale 0x01D5AC3D en base 10.
Les octets 8 11 de la deuxime entre nous informe que la distance entre la MBR et le premier secteur de la deuxime partition est de 30780540 secteurs. Cette valeur est obtenue en
traduisant la valeur hexadcimale 0x01D5AC7C. Le premier secteur de la deuxime partition,
qui est une partition tendue, se trouve donc au numro 30780540. Les octets 12 15 de la
deuxime entre nous donne la taille de cette partition. Celle-ci est de 49624785 secteurs.
Cette valeur est obtenue en traduisant la valeur hexadcimale 0x02F536D1 en base 10.
Le premier secteur de la deuxime partition que nous venons de localiser prcdemment
est le secteur EBR de la partition tendue. Il faut donc consulter la table de partition de
ce secteur EBR pour localiser la partition logique quelle rfrence mais aussi savoir sil y a
dautres partitions logiques. Voici les valeurs de la table des partitions de ce secteur EBR.
Nous appellerons ce secteur EBR1 pour faciliter la suite de la correction.
N Octet
re

10

11

12

13

14
2

15
01

Entre

00

01

C1

FF

0B

FE

FF

FF

3F

00

00

00

96

29

00

2me Entre

00

00

C1

FF

05

FE

FF

FF

D5

29

00

01

21

8C

51

01

3me Entre

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

me

Entre

La premire entre, de cette table des partitions de lEBR, et plus prcisment les octets n8
11, donne la distance entre le secteur EBR1 et le premier secteur de la partition logique.
La valeur hexadcimale trouve est 0x0000003F ce qui correspond la valeur 63 en base 10.
Sachant que le secteur EBR1 se trouve au numro 30780540, il suffit de se dcaler de 63
secteurs pour trouver le numro du premier secteur de la partition logique. Ainsi, le premier
secteur de la partition logique a pour numro : 30780540 + 63 = 30780603.

65
8 3999 TG PA 01

Le premier secteur de la partition logique est le secteur de boot de cette partition.


Dterminons maintenant la taille de cette partition en consultant la valeur hexadcimale
contenue dans les octets n12 15. Cette valeur vaut 0x01002996 16787862 en base 10.
La partition logique a une taille de 16787862 secteurs. Enfin pour connatre le type de la
partition logique, nous consultons loctet n4 de la premire entre qui contient la valeur
0x0B, ce qui indique que la partition est de type FAT32.
La deuxime entre de cette mme table des partitions de lEBR1 nest pas vide. Il y a donc
une suite. Loctet n4 de cette deuxime entre vaut 0x05 ce qui signifie bien que la partition
repre est une partition tendue contenant un autre lecteur logique. Calculons la position du
premier secteur de cette partition tendue trouve ce qui correspondra au secteur EBR, que
nous appellerons EBR2, contenant la table des partitions pour ce deuxime lecteur logique. Les
octets n8 11 pour cette deuxime entre de lEBR1 nous donne la valeur 0x010029D5 soit
16787925 en base 10. Pour trouver le numro de secteur de EBR2, nous prenons le numro
de secteur de lEBR1 soit 30780540 que nous dcalons de 16787925 positions. Nous obtenons
30780540 + 16787925 47568465. Le secteur EBR2 se trouve donc au numro 47568465.
Voici les valeurs de la table des partitions de ce secteur EBR2.
N Octet
re

Entre

me

00

01

C1

FF

07

FE

FF

FF

3F

00

10
00

11

12

00

E2

13

14

15

8B

51

01

Entre

00

00

C1

FF

05

FE

FF

FF

F6

B5

51

02

DB

80

A3

00

3me Entre

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

4me Entre

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

De la premire entre de cette table des partitions, nous pouvons dduire que le premier
secteur de la partition logique se trouve 63 secteurs du secteur EBR2. Le secteur EBR2
se trouvant au numro 47568465, le secteur de boot de la deuxime partition logique se
trouve au numro 47568465 + 63 47568528. Cette deuxime partition logique une
taille de 22121442 secteurs et elle est de type NTFS (voir octet n4).
La deuxime entre de cette mme table des partitions de lEBR2 nest pas vide. Il y a
donc une suite. Loctet n4 de cette deuxime entre vaut 0x05 ce qui signifie bien que la
partition repre est une partition tendue contenant un autre lecteur logique. Calculons
la position du premier secteur de cette partition tendue trouve ce qui correspondra au secteur EBR, que nous appellerons EBR3, contenant la table des partitions pour ce
troisime lecteur logique. Les octets n8 11 pour cette deuxime entre de lEBR2 nous
donne la valeur 0x0251B5F6 soit 38909430 en base 10. Pour trouver le numro de secteur
de EBR3, nous prenons le numro de secteur de lEBR1 soit 30780540 que nous dcalons de
38909430 positions. Nous obtenons 30780540 + 38909430 69689970. Le secteur EBR3
se trouve donc au numro 69689970. Voici la table des partitions du secteur EBR3.
N Octet

10

11

12

13

14

15

00

01

C1

FF

0B

FE

FF

FF

3F

00

00

00

9C

80

A3

00

Entre

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

3me Entre

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

00

re

Entre

me

me

Entre

De la premire entre de cette table des partitions, nous pouvons dduire que le premier
secteur de la partition logique se trouve 63 secteurs du secteur EBR3. Le secteur EBR3 se
trouvant au numro 69689970, le secteur de boot de la troisime partition logique se trouve
au numro 69689970 + 63 69690033. Cette troisime partition logique une taille de
10715292 secteurs et elle est de type FAT32 (voir octet n4).
La deuxime entre du secteur EB3 tant vide, il ny a plus dautre lecteur logique.

66
8 3999 TG PA 01

Voici le schma nal de la cartographie du disque dur concern par les captures dcran de
lexercice.

67
8 3999 TG PA 01

Question 3
Voici le tableau complt
Numro dimage

Commentaires

Image 1

Secteur MBR. Le secteur n0 est le secteur principal permettant davoir


des informations sur le partitionnement dun disque dur. Il contient
galement un programme, le bootloader, permettant de lancer
ventuellement le programme de boot dun OS.

Image 2

Secteur non utile dans le cadre de lexercice

Image 3

Secteur non utile dans le cadre de lexercice

Image 4

Secteur de boot de la partition primaire

Image 5

Secteur non utile dans le cadre de lexercice

Image 6

Secteur EBR de la partition tendue (EBR1)

Image 7

Secteur de boot de la premire partition logique

Image 8

Secteur EBR concernant la deuxime partition logique (EBR2)

Image 9

Secteur de boot de la deuxime partition logique

Image 10

Secteur non utile dans le cadre de lexercice

Image 11

Secteur EBR concernant la troisime partition logique (EBR3)

Image 12

Secteur de boot de la troisime partition logique

68
8 3999 TG PA 01

Gnralits sur les systmes dexploitation

7.

Systme dexploitation et le travail en rseau


Dans ce paragraphe, nous allons mettre en avant quelques notions de base sur le fonctionnement des rseaux du point de vue des systmes dexploitation. Attention, nous
nallons pas entrer dans le dtail du fonctionnement des rseaux, car ce nest pas le but
de ce support consacr aux gnralits sur les systmes dexploitation, mais nous allons
donner le vocabulaire dont nous aurons besoin dans ce cadre.

7A.

volution de larchitecture informatique des entreprises


Dans notre prsentation sur les systmes dexploitation, nous avons eu loccasion de
mettre en avant diffrents modes de fonctionnement comme les systmes monotche
ou multitches, mono-utilisateur ou multi-utilisateurs. Dans ce dernier cas, nous avons
indiqu que cela offrait la possibilit plusieurs personnes de travailler les unes la
suite des autres sur le mme poste informatique mais galement de pouvoir partager
des ressources machines, voire logiciels dans le cas des architectures Clients/Serveurs ,
au travers dun ensemble dordinateurs placs dans un rseau. Ah le rseau, matre mot
aujourdhui ! Comment pourrions nous dfinir ce terme ?
Voici une dnition possible : un rseau est un regroupement dordinateurs relis entre
eux au travers dun assemblage de composants lectroniques (carte rseau, hub, switch,
routeur, etc), de cbles et de logiciels spcialiss an de permettre ces ordinateurs de
communiquer ensemble pour changer des donnes ou partager des ressources matriels
(imprimante, disque, etc).
Mais avant den arriver une architecture de rseau local tel que lon peut la voir et
lutiliser aujourdhui, il a fallu faire voluer larchitecture informatique des entreprises.
En effet, dans les annes 70, linformatique est centralise autour de gros systmes
propritaires avec un OS propritaire, capables de grer un grand nombre dutilisateurs.
Chaque utilisateur dispose dun terminal (ensemble clavier/cran) dpourvu dunit
centrale et permettant denvoyer vers un ordinateur central (un mainframe ) des
caractres saisis au clavier et afcher les rponses de ce dernier lcran. Vous comprenez
facilement que lordinateur central doit donc tre pourvu dune importante puissance
de calcul et de traitement an de supporter la charge de travail de lensemble des
applications en cours dexcution de tous les utilisateurs. Ces gros systmes ont pour
vocation de grer linformation de toute une entreprise nationale voire internationale.
On les trouve dans de grandes compagnies comme les banques, les assurances ou encore
les services de rservation. Lordinateur central (le mainframe) se compose de diffrents
lments occupant parfois un espace de quelques dizaines de mtres carrs et doit utiliser
un systme dexploitation adapt.
Remarque

Un systme dexploitation propritaire ou exclusif est un OS qui ne peut sexcuter que


sur un seul type dordinateur et qui est conu est vendu par le constructeur de cet ordinateur.
Vers le milieu des annes 70, sont apparus des ordinateurs ayant une capacit de
traitement plus limite conus pour grer les donnes dune entreprise moyenne ou
dun dpartement dune grande entreprise. Ces systmes, moins chers, sont amens
changer des informations avec un ordinateur central (un mainframe) ou avec dautres
ordinateurs dautres dpartements de lentreprise. cette occasion, la logique de fonctionnement des ordinateurs a d tre repense. Ainsi, sont ns des systmes dexploitation plus ouverts capables de communiquer avec dautres systmes crs par dautres
constructeurs. On voit cette poque arriver le systme UNIX.
69
8 3999 TG PA 01

Squence 1

Comme nous en avons parl au tout dbut de ce support, les annes 80 ont vu natre
lordinateur personnel (le PC dIBM) avec MS-DOS. Ces ordinateurs sont conus pour
tre produits plus faible cot et pour tre utiliss par une seule personne sans avoir
besoin de solliciter le service informatique pour faire fonctionner une application ou
pour obtenir le rsultat dun calcul ou dune recherche. Ces micro-ordinateurs ont ce
titre commencer envahir les entreprises pour palier la lourdeur de fonctionnement des
architectures dcrites prcdemment. De plus, ils commencent disposer dune offre
logiciel importante et souvent trs sophistique ce qui en a vite fait llment de
travail incontournable pour les entreprises au dtriment du partage des donnes entre
collaborateurs.
Cependant, petit petit, les utilisateurs de PC en entreprise ont souhait avoir la
possibilit de mettre en commun leur travail avec dautres personnes de lentreprise
ou atteindre des ressources installes sur dautres ordinateurs comme les imprimantes
par exemple. De plus, la ncessit dintgrer les micro-ordinateurs dans le systme
informatique global de lentreprise, an daccder des donnes se trouvant sur des
ordinateurs centraux ou dpartementaux voire sur dautres micro-ordinateurs, ont
amen la logique de travail individuel migrer vers une logique de travail en groupe.
La notion de rseaux locaux fut la rponse trouve ce besoin de fdrer les ressources
informatiques de lentreprise. Ainsi dans les annes 90, les systmes dexploitation ont
volu pour que les micro-ordinateurs puissent souvrir aux partages des ressources. Il
y a, ou il y a eu, Windows 3.11 for workgroup, Windows 95 et sa suite, Windows NT et
sa suite, Novell, UNIX, Linux et bien dautre encore. Dabord simple module ajout un
systme dexploitation existant, le module rseau fait partie aujourdhui, de manire
pleine et entire, du package de base dun systme dexploitation.
Dans ce contexte, la puissance du systme informatique global est rpartie sur autant de
petits systmes capables de cooprer et de dialoguer pour assurer cohrence et scurit
de lensemble. Prenez lexemple du rseau Internet .
Aujourdhui, suite toute lvolution dcrite prcdemment, on dnit diffrents types
de rseau avec les sigles suivants :
LAN (Local Area Network) : il s'agit d'un rseau local limit un btiment ou a quelques centaines de mtres. C'est ce que nous trouvons le plus communment.
MAN (Metropolitan Area Network) : il s'agit d'un rseau l'chelle d'une ville.
WAN (Wide Area Network) : rseau grande chelle comme par exemple Internet .
Chacun de ces types de rseau met en uvre diffrents types de composants informatiques
plus ou moins complexes, diffrents types de cblage (exemple : la paire torsade ou encore
la bre optique) ou de mode de communication (direct, par ligne tlphonique, par onde,
par satellite) mais galement de systmes dexploitation permettant de piloter le tout.
Aujourdhui, nous nous retrouvons donc dans un monde de rseaux htrognes et qui
doivent pourtant communiquer de manire cohrente. Les rseaux se doivent dtre
ouvert et ce de manire totalement transparente pour les utilisateurs. En effet, je ne
dois pas avoir besoin de connatre la structure dun rseau distant (type dordinateurs,
OS install dessus) pour communiquer avec lui. Dans le cas contraire, sur Internet, il me
faudrait connatre tous les rseaux de toutes les entreprises connectes Internet pour
que mon ordinateur puisse dialoguer avec eux.
Pour assurer cette transparence, tout se passe encore une fois au niveau des systmes
dexploitation. En effet, les OS sont capables de jouer le rle dinterface entre un
utilisateur et un ordinateur donc pourquoi ne pourraient-ils pas galement jouer le rle
dinterface entre deux ordinateurs condition, bien entendu, que ces deux ordinateurs
sachent comment dialoguer ensemble. Cest pourquoi, les OS donnent une unit
lensemble des lments dun ou plusieurs rseaux interconnects en fournissant ou en
acceptant des protocoles de communication (exemple TCP/IP).

70
8 3999 TG PA 01

Gnralits sur les systmes dexploitation

Dfinition : un protocole de communication dfinit un ensemble de rgles et de


procdures suivre pour que deux ordinateurs puissent se comprendre, cest dire
puissent mettre ou recevoir des donnes via un rseau.
Extrapolons un peu. Dans la vie courante, pour que deux personnes puissent se comprendre, ils doivent respecter un ordre dans la discussion. On ne donne pas une rponse une
question avant davoir eu la question sinon la rponse risque de ne pas correspondre
lattente du demandeur. Autre exemple, lorsque je tlphone, je compose le numro de
mon interlocuteur, jattends quil dcroche et dise allo avant de commencer parler,
sen suit alors un dialogue entre les deux personnes et pour terminer chacun dit au
revoir et raccroche. Ceci constitue un autre protocole. De mme, chaque continent,
chaque pays a ses propres usages, ses propres coutumes, ses propres rgles (protocoles)
de communication. Pour que deux personnes de deux continents diffrents puissent
communiquer ensemble, il est ncessaire quils se dfinissent un protocole commun ou
que lun connaisse et applique le protocole de lautre. Transposons cette problmatique
en informatique.
Pour que ce monde htrogne puisse communiquer, il a t ncessaire de dfinir des
protocoles de communication connus de tous. Certains sont propritaires comme par
exemple le protocole IPX/SPX des systmes Netware (Novell) ou encore le protocole
NETBEUI des systmes Microsoft dans le cadre des rseaux poste poste et dautres
sont devenus des normes de communication au fil du temps comme le protocole TCP/IP
(Tranmission Control Protocol / Internet Protocol) utilis dans le monde Internet ,
exemple le plus parlant de liaison entre rseaux htrognes.
Aujourdhui, le protocole TCP/IP est le protocole universel pour le dialogue entre ordinateurs du LAN au WAN en passant par les mini-rseaux que lon peut mettre en place
chez soi. Mme les applicatifs Client/Serveur utilisant des protocoles propritaires
acceptent TCP/IP. Les systmes dexploitation doivent donc tre capable de grer et fournir en standard au moins ce protocole. charge ensuite lutilisateur de paramtrer son
systme informatique pour que celui-ci utilise ce protocole moins que lOS ne le fasse
au travers dun assistant fourni dans la package dinstallation.
Pour en finir avec TCP/IP, il faut savoir que le protocole TCP/IP est en fait compos dun
ensemble de protocoles ddis chacun une tche prcise sur le rseau, comme par
exemple HTTP pour le transfert de donnes hypertexte, FTP pour le transfert de fichiers,
POP3 pour la rcupration des courriels sur un serveur de messagerie, SMTP pour lenvoi
des courriels sur un serveur de messagerie, Telnet permettant douvrir une session de
travail sur une machine distante et bien dautres encore comme IP et TCP qui sont eux
mme des protocoles en charge pour le premier de grer lacheminement des donnes
souhaites sous forme de datagrammes (de paquets) sur lordinateur destinataire et
pour le deuxime de contrler que les donnes envoyes sont bien arrives. On peut
faire une comparaison avec La Poste qui peut acheminer des lettres, des colis simples ou des colis suivis. chaque tape, les employs effectuent ou non des contrles
et les employs qui rceptionnent un courrier ne font pas les mmes oprations quun
employ qui rceptionne un colis. De mme la manire dont un employ amne un
courrier un destinataire nest pas la mme quun employ qui amne un colis un destinataire. En rsum, le protocole gnral de La Poste se compose de plusieurs protocoles spcifiques dont lapplication dpend de la nature de llment achemin mais le
fonctionnement est normalis et connu de tous. Si lexpditeur ou le destinataire ne le
respectent pas ou ne le connaissent pas, la lettre ou le colis ne pourra pas arriver. Chacun
doit respecter le protocole sil veut voir sa lettre ou son colis arriver au bon endroit. Il
71
8 3999 TG PA 01

Squence 1

en va de mme avec les OS qui connaissent le fonctionnement du protocole TCP/IP et


qui doivent limplmenter pour avoir une chance que la donne transmise sur le rseau
arrive quelque soit la nature du destinataire puisque daprs le protocole, le destinataire
sait ce quil a faire dans le cadre de TCP/IP.
Remarque

TCP/IP est normalis au travers dun modle de nom modle TCP/IP lui-mme issu
du modle OSI qui rgit de manire gnrale la manire dont doivent communiquer
les ordinateurs dun rseau. Nous nirons pas plus loin sur TCP/IP mais sur les sites
Internet , vous trouverez de nombreux cours trs bien formaliss en tapant le mot cl
TCP/IP sur un moteur de recherche.
En conclusion, nous pouvons dire quaujourdhui pas un ordinateur et pas un systme
dexploitation ne peut ignorer de base la connexion possible un rseau quelconque et
doit proposer dans ce sens tout le ncessaire composants ou logiciels.
Cette notion de connexion rseau amener dautres soucis au niveau scurit que ce soit
les failles dun systme dexploitation utilises par les pirates pour entrer sur un poste
informatique mais galement au niveau de lauthentication des utilisateurs autoriss
utiliser un poste informatique du rseau. Pour rsoudre le premier problme, les
concepteurs dOS sy affrent tous les jours sachant que LINUX tient la corde de lOS le
moins sujet ce genre de problme via le nombre important de dveloppeurs bnvoles
qui sen occupent. Concernant le deuxime problme, il y a deux philosophies dont le
choix dpend de la taille du rseau :
grer la liste des personnes autorises utiliser un poste informatique poste par
poste mais cela entrane une multitude de listes.
centraliser la liste des personnes autorises sur un serveur d'authentification. Cette
liste doit alors tre gre par un administrateur et son accs scuris au maximum.
Nous reviendrons sur cela dans la suite de cette squence.

7B.

Systme dexploitation et rseau


Dans le cadre des rseaux, nous venons de le voir, les systmes dexploitation ont une
norme importance mais vous vous en doutiez. Avec les gros systmes (les mainframes),
les systmes dexploitation sont propritaires, cest dire quils sont conus pour faire
fonctionner un type spcifique dordinateurs. Avec IBM et son PC, lOS propos au dbut
est monoposte. Il ne sait pas dialoguer avec les autres ordinateurs. Face la demande,
petit petit, les OS des micro-ordinateurs ont d souvrir lextrieur afin de prendre
en compte le besoin de partage de ressources (fichiers et imprimantes) avec dautres
ordinateurs connects ensemble via un rseau local.
Dans ce cadre, nous trouvons diffrents modes de fonctionnement des OS. Il y a dabord
les OS dits multipostes comme UNIX ou LINUX. Cest plus petite chelle ce qui existe
dans le cas des mainframes. Ainsi, ce type dOS est install sur un ordinateur central. Il peut
grer plusieurs postes de travail en mme temps et traite toutes demandes lui tout seul.
Pour cela, les utilisateurs disposent dun espace mmoire rserv (espace priv) sur lordinateur centrale, et accdent certains fichiers se trouvant sur le serveur grce un mot
de passe. Tous les traitements se font sur lordinateur central qui est le seul disposer des
capacits de traitement. Ce genre dOS est forcment multitaches et multi-utilisateurs.

72
8 3999 TG PA 01

Gnralits sur les systmes dexploitation

Or dinateu r cen tral a ve c un


Ordinateur central avec
systm e d'explo itation
un
systme d'exploitation
mu ltipos tes (E x: Un ix )

multipostes (Ex : Unix)

Ter mi nau x relis


relis
Terminaux
l'ordina
teu r cen
tral
l'ordinateur
central

Dans le cadre des rseaux, nous trouvons galement une autre catgorie dOS. Il sagit
des systmes dexploitation pour rseau local galement appel NOS (Network Operating
system) qui ont pour vocation dajouter une couche logicielle aux fonctions standard
dun OS afin de permettre la communication entre les ordinateurs relis au rseau, via
les protocoles, ainsi que le partage de fichiers et de priphriques. Il sagit de systmes
dexploitation installs de manire autonome sur des stations de travail (Workstation).
En rsum, une station de travail est un ordinateur classique et autonome possdant son
propre systme dexploitation. Dans la catgorie des systmes dexploitations utilisables
sur des ordinateurs autonomes placs dans un rseau, on trouve Unix et Linux mais
galement la branche Windows 9x et la branche NT de Windows avec Windows 2000,
XP et Vista. Chaque ordinateur peut tre la fois client de ressources partages mais
galement serveur de ressources partages. Ces ordinateurs sont connects les uns
aux autres, via des hubs ou des switchs, sans avoir besoin dtre relis un serveur central
pour changer des donnes. On parle de rseau poste--poste ( peer-to-peer en
anglais). Les ordinateurs sont traits dgal--gal dans un groupe de travail et ainsi par
exemple, chaque utilisateur est libre de rendre accessible ses fichiers en partageant ses
dossiers ou non avec dautres utilisateurs du rseau.

73
8 3999 TG PA 01

Squence 1

Comme vu prcdemment, que ce soit avec un OS multipostes ou avec un OS pour


rseau, il est primordial quun utilisateur soit oblig de sidentifier pour accder un
ordinateur, on dira ouvrir une session de travail, car cela lui ouvre ensuite la porte des
ressources partages du rseau. Ainsi ce type dOS doit prvoir une politique de gestion
dutilisateurs.
Dans le cas dun OS multipostes, la cration des comptes utilisateurs se fait sur lordinateur central. Dans le cas des stations de travail, la cration des comptes utilisateurs peut
se faire au niveau de chacun des postes, ce qui peut alourdir considrablement la tche
dun administrateur ou se faire dune manire centralise sur un seul ordinateur appel
le serveur didentification ou dauthentification. Windows appelle ce serveur, le serveur
de domaine. Crer un compte utilisateur permet de contrler les accs et les droits des
utilisateurs sur lensemble des ressources partages. Aujourdhui, cette centralisation
a le vent en poupe et offre beaucoup de possibilits de gestion des utilisateurs, des
ordinateurs situs sur le rseau et des ressources partages au travers de systmes dannuaire comme Active Directory sous Windows 2000 Server ou Windows 2003 Server
et LDAP sous LINUX.

Serveur D'authenfication
Serveur d'impression

Les systmes dexploitation utiliss dans le cadre des rseaux permettent aux stations de
travail datteindre diffrents types de ressources partages : des fichiers, des priphriques comme les imprimantes ou encore des applications. Ces diffrentes ressources peuvent tre dissmines sur les postes dun rseau ou tre sur des ordinateurs ddis une
tche spcifique comme les serveurs de fichiers, les serveurs dimpression ou encore les
serveurs dapplication. Un mme ordinateur peut remplir un ou plusieurs de ces rles.
Dans son rle de serveur de fichiers, l'OS install rend accessible le ou les disques
durs du serveur de fichiers aux utilisateurs comme si le disque tait dans leur propre station afin que ceci puissent y stocker leurs fichiers. L'intrt d'un serveur de
fichiers et que bien souvent l'OS install, ou au pire une application ddie installe
sur le serveur, permette de faire des sauvegardes automatiques du contenu des
disques sur bandes. Ceci vite les pertes de donnes importantes des utilisateurs
lorsque leur poste informatique tombe en panne.
Dans son rle de serveur d'application, l'OS install permet des applications excutes sur les stations de travail de solliciter les services d'une application installe
et excute sur le serveur. L'utilisation la plus courante de ce principe concerne
les bases de donnes (les SGBD comme Oracle, SQL Server, MySQL). Ainsi dans ce
cadre, une application excute sur une station envoie une requte (une demande
d'information) une application SGBD excute sur le serveur. Cette dernire

74
8 3999 TG PA 01

Gnralits sur les systmes dexploitation

rpond en envoyant la station client les informations demandes. On parle


alors de dialogue Client/Serveur . Il existe beaucoup d'exemples de fonctionnement Client/Serveur . Cela a pour avantage d'avoir une petite application sur les
postes Clients ayant juste pour rle d'interroger ou solliciter des services d'une
application Serveur qui elle est bien entendu plus consquente puisque c'est elle
qui ralise la tche demande. L'application Serveur enverra ensuite la rponse
attendue l'application Client qui pourra alors l'afficher sur l'cran de la station
de travail Client .
Dans son rle de serveur d'impression, l'OS install gre les imprimantes connectes
au serveur ou connectes directement au rseau. Cela permet de librer plus vite la
station de travail car les donnes imprimer sont envoyes au serveur d'impression
qui les imprime ensuite son rythme. Cela permet galement d'ordonnancer les
tches d'impression avec des priorits ventuelles mais galement de garder des
traces des impressions effectues (une journalisation). En fait un serveur d'impression gre une file d'attente d'impression pour viter un engorgement de l'accs
l'imprimante partage.
Aujourdhui, il existe une autre catgorie de serveur, les serveurs de communication
parmi lesquels on trouve les serveurs Web hbergeant des pages Web, les serveurs de
messagerie permettant un utilisateur denvoyer ou de recevoir des Emails ou encore les
serveurs de transfert de fichiers (serveur FTP) permettant des ordinateurs Clients de
transfrer des fichiers, se trouvant sur le serveur, sur leur disque local
Remarques

Microsoft dcline Windows en version Station de travail et en version Serveur . Les


versions Serveurs par rapport aux versions Station de travail incluent des outils et
des services supplmentaires pour centraliser la gestion et la surveillance du rseau mais
galement pour mettre en place lun des types de serveurs dfinis prcdemment. Ainsi, nous
avons Windows 2000, XP ou Vista dans la catgorie des OS servant aux stations de travail
et nous avons Windows 2000 Server ou Windows 2003 Server dans la catgorie des OS
pour Serveur. LINUX lui peut servir dans les deux cas, il ny a pas une telle diffrenciation
bien que de base tous les packages ncessaires, pour mettre en place les services dun des
types de serveur dfinis prcdemment, ne soient pas forcment installs par dfaut. Dans
ce cas, il faut soit ajouter les packages manquants partir des CD-ROM fournis soit aller
les chercher sur le site du distributeur.

7C.

Le ncessaire pour placer un poste dans un rseau


Encore une fois, sans entrer dans le dtail des rseaux qui nest pas le but de ce support,
nous pouvons dire que pour placer un poste de travail dans un rseau, il faut :
Une carte rseau, appele galement NIC pour Network Interface Card , installe sur l'ordinateur concern qui permet ce dernier d'envoyer ou de recevoir
des informations du rseau. Il s'agit d'une interface entre le poste de travail et le
rseau. Cette carte doit tre compatible avec la technologie du rseau (Ethernet
ou Token Ring) et dote d'un connecteur compatible avec la nature des cbles du
rseau (RJ45, Coaxial, fibre optique).
Les pilotes de la carte rseau compatibles avec le systme d'exploitation utilis qui
permettent de faire fonctionner la carte.
Un OS contenant les fonctionnalits ncessaires pour placer l'ordinateur dans un
rseau.
75

8 3999 TG PA 01

Squence 1

Le ou les protocoles de communication utiliss. Les OS rseaux supportent la plupart des protocoles soit de faon standard soit sous forme de produit indpendant
propos par l'diteur de l'OS.

Le protocole TCP/IP est le protocole universel pour le dialogue entre ordinateurs.


Un nom d'ordinateur ou encore une adresse IP dans le cas du protocole TCP/IP. Ceci
est fonction du protocole utilis. Ces donnes se configurent soit l'installation de
l'OS soit par la suite dans la configuration de l'OS. Attention, un nom d'ordinateur
ou une adresse IP doit tre unique sur le rseau car c'est par ce moyen que les ordinateurs, via les protocoles, se reconnaissent entre eux.
Remarque

Une adresse IP est donne sous la forme de 4 octets spars les uns des autres par un
point (exemple 192.168.1.10). Aujourd'hui, les OS intgrent de base l'utilisation de
l'IPV6 o les adresses IP ont une longueur de 16 octets ce qui va permettre d'tendre le
nombre de possibilit d'adresses sachant que le protocole TCP/IP, donc l'adressage IP,
est le protocole du rseau mondial Internet et que l'on souhaite pouvoir connecter,
sur le rseau Internet, de plus en plus d'lments divers et varis comme par exemple
des tlphones portables, des camras ou pourquoi pas des tlviseurs ou des frigos. On
peut rver toutes les possibilits. Sachez toutefois que ces OS restent compatibles avec
l'IPV4 que l'on utilise actuellement car le monde n'est pas encore prt tout faire migrer
vers l'IPV6 puisque cela aura un coup non ngligeable.
Dfinir les services que l'ordinateur peut proposer aux autres ordinateurs du rseau
comme par exemple le partage des fichiers et des imprimantes.
Un compte utilisateur cr soit en local sur un poste soit sur un serveur d'identification.

Il existe toujours un compte administrateur permettant de crer les autres


comptes utilisateurs .
Voil maintenant les gnralits sur les systmes d'exploitation et tout ce qui gravite
autour tant nonc, nous allons maintenant travailler avec certains OS. Si vous le souhaitez, vous pouvez partitionner le disque dur de votre ordinateur afin de pouvoir y
installer les diffrents systmes d'exploitation tudis. Attention, vous risquez de perdre
ce qui se trouve dj sur le disque de votre ordinateur. Pour vous aidez, vous trouverez
sur Internet, avec le mot cl Multiboot , des procdures suivre afin de raliser la mise
en place d'un multiboot.

76
8 3999 TG PA 01

Squence 2

Etude du systme dexploitation


DOS
u Contenu

1.

1.

Historique ................................................................................................ 77

2.

Les constituants de base du systme MS-DOS ......................... 79

3.

Les notions de fichiers et de rpertoires .................................... 85

4.

Nom de fichiers et de rpertoires sous MS-DOS ..................... 89

5.

La notion de chemin ........................................................................... 90

6.

La variable denvironnement PATH ........................................ 91

7.

Commencer avec MS-DOS................................................................. 92

7A.
7B.
7C.
7D.

Accder lenvironnement MS-DOS ........................................................ 92


Le nom dune unit de disque .................................................................. 93
Syntaxe dune commande systme .......................................................... 94
Quelques commandes systmes ............................................................... 96

8.

Les fichiers batch ......................................................................... 109

Historique
Le premier des systmes dexploitation dont nous allons parler est le MS-DOS. Pourquoi ?
La rponse est simple, car il est lun des tous premiers OS (Operating System) grand public
des annes 80 dont on parle encore aujourdhui. De plus, il permet dintroduire simplement lutilisation du mode ligne de commande et il est parfois utilis pour tenter
de dpanner une machine plante . Hier, il tait encore sous-jacent Windows 9x,
aujourdhui, il nexiste plus quau travers dun programme standard intgr la branche
Windows NT (2000, XP, Vista) mais ses commandes restent toujours accessibles partir
dune fentre dexcution dans laquelle on lance un interprteur de commande MS-DOS.
Voici la fentre dexcution de Windows XP Pro dans ce cas.

77
8 3999 TG PA 01

Squence 2

travers cette fentre, nous nous retrouvons en mode ligne de commande , cest-dire un mode dans lequel nous avons la possibilit de saisir le nom des commandes
MS-DOS, que nous souhaitons excuter, avec ventuellement les diffrentes options.
Bien entendu, Windows intgre de manire graphique la plupart des commandes DOS
surtout celles concernant la gestion des fichiers et des rpertoires (appels galement
dossiers ) mais MS-DOS est riche de beaucoup dautres commandes avec une multitude doptions ce qui permet parfois de travailler plus finement dans le paramtrage
de son ordinateur ou bien tout simplement de le dpanner. Bien matriser le mode
commande dun systme dexploitation, que ce soit avec MS-DOS/Windows ou encore
Linux, permet de mieux connatre, exploiter et donc matriser son environnement de
travail.
MS-DOS a beaucoup volu depuis 1981, anne de sa naissance. Il sest dclin de la version 1.0 la version 6.22 avant dtre ensuite intgr au systme dexploitation Windows
lui-mme, partir de Windows 95, et de continuer voluer avec ce dernier. Voici quelques repres succincts :
1981 : Apparition de MS-DOS 1.0 mis en place pour lordinateur IBM PC 8088 . Il
ne reconnat que les disquettes 5 pouces de 160 Ko simple face dans un premier temps puis celles de 360 Ko ensuite. Attention, on ne parle pas encore de
disque dur. Lensemble des programmes de lOS doit tenir sur disquettes.
1982 : MS-DOS 1.1 supporte les disquettes 5 pouces double face.
1983 : Un petit tournant avec MS-DOS 2.0 (puis 2.1 et 2.11) car il est maintenant capable de grer les disque durs de 10 Mo. Avec cette version apparat galement la
notion de rpertoire et sous rpertoire (dossier et sous-dossier) ce qui introduit
le principe de la hirarchie des fichiers et des rpertoires. Nous reviendrons sur
cette notion plus loin dans le cours. Cette version de DOS supporte galement
les jeux de caractres internationaux et des pilotes de priphrique.
De 1984 1987 : La famille des MS-DOS 3.X apparat et grandit. Tout dabord la
version 3.0 qui supporte les disquettes 5 pouces 1/4 dune capacit
de 1,2 Mo et les disques durs de 20 Mo. Ensuite, la version 3.1 permettant la gestion dun rseau local, la version 3.2 qui accepte les
disquettes 3 pouces de 720 Mo et enfin, la version 3.3 qui accepte
les disquettes 3 pouces dune capacit de 1,44 Mo et qui propose
mme la notion de partition dun disque dur.
1988 : Cest au tour de la famille de MS-DOS 4.x de faire parler delle avec la possibilit de grer des partitions de plus grandes tailles et avec une pseudo interface
graphique du nom de DOSSHELL
78
8 3999 TG PA 01

tude du systme dexploitation DOS

De 1991 1994 : Les versions 5.0 et 6.X font leur apparition apportant leurs lots de
nouvelles commandes avec, entre autre, la compression des donnes
du disque dur et une meilleur gestion de la mmoire. La version MSDOS 6.22 est la dernire de la srie.
De 95 Aujourdhui : MS-DOS se trouve intgr de plus en plus au systme Windows
lui-mme jusqu ne plus en tre quun programme utilitaire dans le cas de Windows branche NT. Il a t pur de
certaines de ses commandes et dautres ont t modifies afin
de prendre en compte les nouvelles particularits comme par
exemple la gestion des noms longs de fichiers et de rpertoires
(dossiers). Il sert de lanceur pour les versions 9X de Windows ce
qui nest plus le cas avec la branche NT.

2.

Les constituants de base du systme MS-DOS


Bien entendu, MS-DOS nest plus trs utilis de manire directe. Alors pourquoi ce
paragraphe ? Tout simplement parce que pour comprendre le mcanisme des systmes
dexploitation et des lments qui sont mis en uvre pour son fonctionnement, il peut
tre intressant den tudier des simples.
Nous venons encore de le prciser prcdemment, MS-DOS est aujourdhui intgr
Windows 9X et Windows branche NT. Nanmoins, il est toujours possible de travailler
avec un ordinateur fonctionnent en mode MS-DOS. Comment ? Il y a plusieurs solutions.
La premire consiste installer lune des versions MS-DOS (jusqu la version 6.22) sur
une partition primaire active, afin de pouvoir booter dessus, ou sur une machine virtuelle. Une machine virtuelle est tout simplement une application (exemple VMware
Workstation) qui simule le fonctionnement dun ordinateur complet. Sur cette machine
virtuelle, on peut installer toutes sortes dOS puis lancer leur excution, comme sils
taient installs sur une vraie machine, et enfin les utiliser pour en tudier leur comportement sans risque pour la machine relle puisque tout se passe dans lenvironnement
de la machine virtuelle. Dans le paragraphe 1D de la squence 4, nous reviendrons sur
cet aspect de machine virtuelle. La deuxime solution consiste dmarrer lordinateur
avec une disquette bootable MS-DOS dans le lecteur aprs avoir vrifier dans le Setup
du BIOS que le lecteur de disquette est en premier dans lordre de recherche du secteur
bootable. La troisime solution consiste, partir de Windows, ouvrir une fentre
dexcution afin dy excuter linterprteur de commandes DOS pour Windows 9X ou dy
dclencher lexcution dun programme nous plaant dans un environnement simulant
MS-DOS dans le cas de Windows branche NT. Nous reviendrons plus loin sur ces deux
dernires solutions.
Mais au fait, quels sont les lments significatifs qui se mettent en place lorsque nous
souhaitons travailler dans un environnement MS-DOS ? Mon problme est que je ne
peux pas vous apporter une seule rponse mais obligatoirement trois car rappelez vous
que MS-DOS a volu dabord seul jusqu la version 6.22 puis avec Windows 9X et enfin
avec Windows branche NT.
Commenons avec la premire phase de la vie de MS-DOS savoir jusqu la version 6.22.
Sans entrer dans le dtail du fonctionnement de MS-DOS, car ce nest pas le but principal
de ce paragraphe, nous pouvons dire quil est constitu de cinq lments de base. Voyons
cela. Rappelez vous, au dmarrage de lordinateur, une fois que le BIOS a test le bon
79

8 3999 TG PA 01

Squence 2

fonctionnement des composants de ce dernier, il cherche un secteur de boot contenant


un programme de boot capable de lancer le chargement de lOS souhait. Dans le cadre
de MS-DOS, le programme de boot charge un programme de nom io.sys en mmoire.
Celui-ci contient un ensemble de fonctionnalits (appeles des routines) en charge de la
communication (nous dirons plutt des entres/sorties) avec les priphriques (exemple:
clavier, cran, disque dur, lecteur de disquette, etc.). Le programme io.sys a pour
fonction disoler le DOS des spcificits du matriel en jouant le rle dinterface de bas
niveau entre les deux. En fait, les routines de io.sys ont pour rle de faire appel aux
fonctions systmes (les interruptions) du BIOS et sont donc au contact direct avec le
matriel et ses spcificits do le terme de bas niveau employ prcdemment. Cela
implique quil est ncessaire de r-crire ce module si lon souhaite porter MS-DOS sur une
nouvelle architecture dordinateur. Une fois que io.sys a t charg en mmoire, il
lance, son tour, le chargement dun deuxime programme : msdos.sys .
Ce programme msdos.sys contient des routines MS-DOS indpendantes du matriel
pour la gestion des donnes (rpertoires et fichiers), la gestion de la mmoire, la gestion
des programmes en cours dexcution. Il a galement pour rle dinterprter les appels
systmes dentre/sortie des programmes en cours dexcution afin dappeler la routine
correspondante dans io.sys . En fait, un dveloppeur qui souhaite crire un programme fonctionnant sous MS-DOS crira du code faisant appel aux routines de msdos.
sys . Celui-ci joue donc le rle dinterface de haut niveau car il est indpendant du type
darchitecture de lordinateur.
Remarque

Ce que nous venons de dcrire est un fonctionnement idal qui peut tre contourn. En
effet, un dveloppeur sous MS-DOS peut, sil le souhaite, appeler directement les routines
du BIOS sans passer par msdos.sys et io.sys . Dans ce cas le problme est que cela
cre une dpendance vis--vis du matriel. Ce type de programme DOS ne fonctionne plus
sous Windows branche NT.

Les deux fichiers msdos.sys et io.sys forment le noyau du systme dexploitation


MS-DOS. Dune manire gnrale, ils sont en charge de grer, diffrents niveaux, le dialogue entre le matriel et les programmes. Ces deux fichiers possdent les attributs Read
Only, Hidden et System (Lecture Seule, Cach et Systme) et se trouvent la racine du
disque. Nous reviendrons plus loin dans le cours sur le terme racine du disque .
Pour linstant, poursuivons les tapes du chargement de MS-DOS. Une fois que msdos.
sys a fini dtre charg en RAM, il rend la main io.sys qui va alors lire le contenu
du fichier de configuration systme de nom config.sys si celui-ci existe. Ce fichier est
un fichier en mode texte, ce qui signifie que lutilisateur peut consulter son contenu ou le
modifier laide dun diteur de texte, et il se trouve galement la racine du disque. Il
est constitu dun ensemble de lignes de commande dbutant par un mot-cl particulier
permettant de charger en mmoire des gestionnaires de priphrique ou de dfinir
ou modifier des paramtres systmes comme par exemple le nombre de fichiers qui peuvent tre ouvert simultanment en mmoire. Ah, je vois que vous vous interrogez sur
le terme gestionnaire de priphrique . Il sagit tout simplement dun synonyme du
terme pilote de priphrique dont le rle est de prendre en charge la communication
avec le priphrique concern la place de lOS. Ce dernier nest donc plus dpendant
des caractristiques du priphrique. En fait, au niveau de DOS, il existe deux types de
gestionnaires de priphriques, ceux qui sont chargs automatiquement par io.sys
80
8 3999 TG PA 01

tude du systme dexploitation DOS

et ceux dont lordre de chargement se trouve inscrit dans le fichier config.sys . Parmi
les gestionnaires de priphriques chargs automatiquement, on trouve celui pour le clavier et lcran (gestionnaire CON: ), ceux pour les interfaces parallles (gestionnaires
PRN: , LPT1: LPT3: ), ceux pour les interfaces sries (gestionnaires AUX: ,
COM1: COM4: ), celui pour le lecteur de disquette (gestionnaire A: ), celui
pour le premier disque dur (gestionnaire C: ) ou encore celui pour lheure systme
(gestionnaire CLOCK$ ) . Voyons une capture montrant le rsultat de la commande
DOS : mem /d qui permet de visualiser le contenu de la mmoire. Nous pouvons y
observer la prsence des gestionnaires de priphriques cits prcdemment.

Remarque

Dune manire gnrale, la commande MS-DOS mem permet dobtenir des informations sur loccupation de la mmoire. Cette commande propose diffrentes options que lon
peut obtenir en tapant mem /? . (voir suite du cours pour lutilisation des commandes
MS-DOS).
Prcdemment, nous avons indiqu que le fichier config.sys contient un ensemble
de lignes de commande dbutant par un mot-cl. En voici quelques-uns.
Mot-cl

Signification

DEVICE =

Permet de charger un gestionnaire de priphrique spcifique.


Ex : DEVICE=himem.sys
gestionnaire de mmoire haute.

FILES =

Nombre de fichiers qui peuvent tre ouverts simultanment en mmoire.


Ex : FILES=40

BUFFERS =

Nombre de mmoires tampon devant tre rserves. Une mmoire tampon


est utilise comme intermdiaire pour le transfert de donnes destination ou
en provenance dun disque.
Ex : BUFFERS=20

81
8 3999 TG PA 01

Squence 2

LASTDRIVE =

Dfinit la dernire lettre autorise comme nom pour un lecteur. Par dfaut, on
ne peut donner un nom que jusqu la lettre E: ce qui peut tre insuffisant
parfois notamment lorsque lon travaille avec un ordinateur plac dans un
rseau avec des lecteurs logiques.
Ex : LASTDRIVE=Z

COUNTRY =

Dfinit le jeu de caractres utiliser, le format utiliser pour la date et lheure,


le caractre utilis comme sparateur de dcimal.
Ex : COUNTRY = 033,850, country.sys
coutry.sys est un gestionnaire de priphrique en charge de la gestion
des jeux de caractres et des conventions de ponctuation correspondant aux
diffrentes langues prises en charge par le systme.

SHELL =

Permet de spcifier un autre interprteur de commande que command.com


ou permet de prciser le nom du rpertoire le contenant dans le cas o il ne se
trouve pas la racine du disque.
SHELL = c:\DOS\command.com
Nous considrons que le programme command.com se trouve dans le
rpertoire c:\DOS . (Cf la notion de rpertoire plus loin dans ce support).

Nous nirons pas plus loin dans la description du contenu du fichier config.sys car
dans la littrature informatique, vous trouverez de nombreux exemples. De mme, vous
en trouverez sur Internet avec le mot-cl config.sys . Bien sr, aujourdhui, connatre
lexistence du fichier config.sys nest peut-tre plus aussi primordial que cela mais
vous serez peut-tre un jour confront au besoin de travailler avec une application en
mode DOS. Tous les environnements informatiques que vous rencontrerez ne seront pas
toujours fait que de dernires technologies !
ce stade du chargement de notre systme dexploitation, lutilisateur ne peut toujours
pas saisir de commande car il na pas encore la main. Ltape suivante va donc consister
charger en mmoire un interprteur de commandes qui est, je vous le rappelle, un
programme qui permet de mettre en place une interface entre lutilisateur et lOS afin
que le premier puisse donner ses ordres au second. Avec MS-DOS, Le programme qui
est charg sappelle command.com . Son rle consiste interprter les commandes
saisies au clavier et dterminer sil sagit de commandes valides. Dans laffirmatif, il lance
leur excution, dans le cas contraire, il affiche un message derreur. Notre interprteur
de commande est donc capable de lancer lexcution de programmes utilisateur mais
il est galement capable de rpondre aux ordres de lutilisateur dans la gestion de lordinateur. En effet, command.com possde intrinsquement les fonctionnalits les
plus couramment demandes par un utilisateur comme par exemple copier un fichier, le
supprimer ou encore lister le contenu dun rpertoire. Ces fonctionnalits sont appeles
des commandes internes . Cependant, pour viter que le command.com ne soit
trop volumineux pour tenir en mmoire, les fonctionnalits qui sont moins frquemment utilises, comme le formatage dune disquette ou encore le partitionnement dun
disque dur sont des programmes part fournis avec le systme dexploitation DOS et
placs dans un rpertoire (dossier) du disque dur connu par le systme dexploitation ou
sur une disquette. Ces commandes sont appeles des commands externes et sont
charges en mmoire au moment o lutilisateur en a besoin puis retires de la mmoire
lorsque lopration prvue par la commande est termine. Ainsi, lorsque lutilisateur saisit une commande par lintermdiaire de linterprteur de commande, celui-ci vrifie la
bonne syntaxe de la commande, puis, sil sagit dune commande interne , il lexcute
immdiatement. Par contre, sil sagit dune commande externe, linterprteur de commande recherche un fichier excutable (un programme) qui porte le mme nom que la
commande saisie, et sil le trouve, lexcute. En rsum, les commandes internes sont des
fonctionnalits de MS-DOS transfres en mmoire avec command.com alors que les
82
8 3999 TG PA 01

tude du systme dexploitation DOS

commandes externes sont des programmes utilitaires transfrs en mmoire lappel de


leur nom et uniquement le temps de leur utilisation.
Une fois que linterprteur de commande est charg en mmoire, il cherche son tour un
fichier de configuration de nom autoexec.bat . Ce dernier a pour rle de lancer lexcution automatique dun certain nombre de commandes la mise en route de lordinateur. A la diffrence de config.sys , il peut contenir des lignes dinstructions excuter,
des noms de programmes excuter, des noms de programmes rsidents charger en
mmoire (comme des gestionnaires de clavier franais, des gestionnaires de cartes rseaux)
ou encore initialiser des variables denvironnement . Une variable denvironnement est
une donne dont la valeur est utilise par command.com pour son fonctionnement.
Par exemple, la variable denvironnement PATH est une donne dont le contenu reprsente la liste des rpertoires (dossiers) dans lesquels command.com doit rechercher le
programme que lui demande dexcuter lutilisateur si ce programme ne se trouve pas
dans le rpertoire (dossier) courant. (Remarque : nous reviendrons sur cette notion de
rpertoire courant plus loin dans le cours). Comme config.sys , autoexec.bat est
un fichier texte modifiable par lintermdiaire dun diteur de texte. Cependant la
diffrence de config.sys , dont le contenu ne sera interprt quau dmarrage de lordinateur, le fichier autoexec.bat peut tre modifi par lutilisateur puis de nouveau
interprt par command.com en tapant tout simplement le nom de ce fichier sur la
ligne de commande puis en appuyant sur la touche Entre .
Voici un schma de ce que nous venons de dcrire sur MS-DOS prcdemment.

Venons-en maintenant la branche Windows 9X et ses quelques diffrences avec le


mcanisme que nous venons de dcrire. Au dmarrage de lordinateur, sur lequel le
systme est install, le bootloader charge un programme de nom io.sys contenant le
83
8 3999 TG PA 01

Squence 2

code permettant dinitialiser la machine. Ce fichier remplace lui seul les deux fichiers
MS-DOS io.sys et msdos.sys vus prcdemment. Le programme io.sys est toujours un fichier cach se trouvant la racine du disque. Une fois que les diffrentes initialisations de lordinateur ont t effectues, le fichier msdos.sys est charg. Attention,
dans Windows 9X, ce fichier na plus la mme fonctionnalit que celui des versions
MS-DOS antrieures. Il ne sagit plus dun programme mais dun fichier texte dont le
contenu est accessible et modifiable partir dun diteur de texte . Il contient en fait
la dfinition de paramtres de dmarrage pour Windows. Aprs la lecture de msdos.
sys , cest au tour du fichier config.sys dtre lu, puis au programme command.
com dtre excut et enfin au fichier autoexec.bat dtre interprt avant que ne
soit lanc, au final, lexcution de linterface graphique.
Remarque

Dans ce contexte, les fichiers texte de noms config.sys et autoexec.bat ne sont


pas obligatoires mais ils permettent de configurer lenvironnement MS-DOS dans le cas
o lutilisateur lance lexcution dapplications fonctionnant en mode DOS (en mode 16
bits) mais galement dans le cas o lutilisateur se place en environnement DOS partir
de Windows 9X.
Et pour Windows branche NT ? En fait, Il nest plus question de dcrire les composants
MS-DOS sous-jacent car DOS nest plus quun programme utilitaire parmi les autres
programmes. Pourquoi utilitaire ? Tout simplement parce quil est uniquement l
pour rendre service. Il ne faut pas oublier que, dans la mesure du possible, il est ncessaire de garder une compatibilit avec lexistant. Ainsi lorsquun utilisateur demande
lexcution dun programme MS-DOS partir de Windows branche NT, celui-ci doit
pouvoir le faire mme si structurellement il ne fonctionne pas de la mme manire que
MS-DOS. Ainsi, pour masquer les diffrences au programme DOS qui tente de sexcuter, Windows procde en deux temps. Dans un premier temps, il lance lexcution du
programme utilitaire de nom ntvdm.exe (NT Virtual Dos Machine), qui simule un
ordinateur fonctionnant en mode DOS, puis dans un deuxime temps, lapplication DOS
demand sera excute dans cet environnement virtuel. Attention, deux fichiers cachs
io.sys et msdos.sys sont encore prsents la racine du disque mais ils ne sont l
que pour intercepter les appels systmes des applications DOS afin de les renvoyer vers
le programme VDM (Virtual Dos Machine) qui les traite alors. Nanmoins, une restriction
est prendre en compte. Dans cet environnement virtuel, tout appel direct au matriel,
de la part de lapplication DOS, est interdit ce qui explique que certaines applications
DOS ne puissent plus fonctionner. Lavantage de travailler avec une machine virtuelle
est que si le programme DOS plante , il suffit darrter le programme VDM (Virtual
Dos Machine) comme on peut arrter tout autre programme et tout rentre dans lordre.
Windows ne risque pas de planter son tour.
Revenons quelques instants sur notre VDM (Virtual Dos Machine). Celle-ci utilise trois
fichiers pour fonctionner. Il y a :
ntvdm.exe , qui joue le rle d'mulateur MS-DOS (vous l'avez compris, un mulateur a pour rle de faire comme ) ;
ntio.sys , qui est l'quivalent de io.sys ;
ntdos.sys , qui est l'quivalent de msdos.sys .

84
8 3999 TG PA 01

tude du systme dexploitation DOS

Enn, lors du lancement de ntvdm.exe , il est possible d'initialiser des variables d'environnement mais aussi de charger des gestionnaires de priphrique et des programmes
rsidents l'intrieur de l'environnement virtuel mis en place. En effet, il existe deux
chiers de nom autoexec.nt et cong.nt , situs dans le rpertoire \Windows\
System32 , qui sont utiliss par dfaut pour personnaliser la VDM comme le faisaient
les anciens autoexec.bat et cong.sys pour lenvironnement MS-DOS.

3.

Les notions de fichiers et de rpertoires


Quel que soit le systme dexploitation que vous utiliserez, il y a deux mots que vous
rencontrerez souvent. Il sagit des mots fichier ( file en anglais) et rpertoire
( directory en anglais).
Remarque

Ce dernier peut tre remplac par le mot dossier ( folder en anglais).


De quoi sagit-il ? En informatique, comme dans la vie courante du reste, il est important de pouvoir retrouver facilement des donnes. Ainsi, lorsquun utilisateur cre un
document, par exemple un Curriculum Vitae , via un logiciel comme un traitement
de texte, il est important que tout ce qui fait le document, savoir les caractres du
texte mais galement les codes de la mise en page du texte (gras, italique, les cadres, les
paragraphes justifis, la valeur des marges), soit regroup au sein dun mme ensemble
logique que lon appelle fichier . En fait, un fichier est un regroupement de donnes
(dinformation). En donnant une dfinition plus prcise, nous dirons quun fichier est
un regroupement doctets, cest--dire de donnes numriques codes sur 8 bits, devant
tre vu comme un tout par un systme dexploitation.

8 bits correspond 8 positions binaires valent chacune soit 0 soit 1 ce qui permet
de coder des valeurs numriques entre 0 et 255.
Pour grer au mieux, cet ensemble logique doctets composant un fichier, un systme
dexploitation va le placer un endroit prcis du disque et lui attribuera un nom afin de
pouvoir diffrencier les fichiers entre eux. En effet, un disque dur, une disquette, une cl
USB ne va pas contenir quun seul fichier mais des dizaines voire des milliers.
Remarque

La manire dont un fichier est gr par un OS dpend du type de systme de fichiers


( file system ) dont celui-ci dpend (FAT, FAT32, NTFS, Ext2fs, Ext3fs). Nous reviendrons sur ce point dans la dernire squence de ce cours.
Ah, je vois que certains dentre vous sinterrogent sur une notion voque prcdemment
dans laquelle nous disions quun fichier est en fait un regroupement de donnes numriques codes sur 8 bits (1 octet). Pourquoi numrique ? Vous vous dites certainement que
lorsque vous tapez votre CV , vous tapez des caractres pas des chiffres. Cela est vrai,
mais noubliez pas que pour taper votre CV vous passez par lintermdiaire dune
application adapte, qui elle, insidieusement, va traduire les caractres du texte que
vous tapez en des valeurs numriques qui seront alors enregistres sur disque. En effet, il

85
8 3999 TG PA 01

Squence 2

faut bien comprendre que lon ne peut pas stocker un caractre directement sur disque,
car je vous le rappelle, en informatique nous ne pouvons stocker que des 0 et des 1 traduisant le sens du courant passant lintrieur des ttes de lecture/criture dun disque
dur. Ces 0 et ces 1 permettent seulement de coder des valeurs numriques. Que cela ne
tienne, dans les annes 60, est ne une norme pour les PC. Il sagit de la table ASCII
( American Standard Code for Information Interchange ) dans laquelle chaque caractre possde un quivalent numrique appel code ASCII. Ainsi par exemple, le caractre
a a pour code ASCII 97 , le caractre A a pour code ASCII 65 , lespace a
pour code ASCII 32 , etc. Vous pouvez trouver sur Internet de nombreux exemples de
table ASCII. Au dpart, les codes ASCII taient cods sur 7 bits car la langue anglaise na
pas de caractre accentu donc cela suffisait. Rapidement, le codage est pass sur 8 bits
afin de faire apparatre un code pour des caractres spcifiques, comme les caractres
accentus, ce qui a donn naissance la table ASCII tendue . Revenons-en notre
CV . Le logiciel (lapplicatif) enregistre, par lintermdiaire de lOS concern, le code
ASCII des caractres du texte que vous avez tap et lorsque vous souhaiterez consulter
ultrieurement le contenu de votre document, ce mme logiciel lira le code ASCII des
diffrents caractres contenus dans le fichier et les traduira visuellement en caractre. En
consultant, laide dun diteur hexadcimale , le contenu dun fichier, on saperoit
facilement que ce sont bien des codes numriques qui sont enregistrs sur le disque et
pas directement des caractres.
Les fichiers gnrs par un utilisateur, via un logiciel quelconque, sont appels des
fichiers utilisateur ou encore des documents utilisateur . Certains contiennent du
texte et des codes de mise en page, comme pour notre exemple de CV , mais dautres
contiennent uniquement les caractres saisis par lutilisateur sans code de mise en page.
On dit, dans ce cas, quils contiennent du texte brut . Cette particularit permet de les
modifier laide dun simple diteur de texte . Cest le cas des fichiers comme config.
sys et autoexec.bat dont nous avons parl prcdemment. Dune manire gnrale,
ces fichiers sont dnomms des fichiers texte et on les retrouve bien souvent dans le
cadre des fichiers contenant la configuration initiale dun systme dexploitation ou dun
logiciel dapplication. Il existe encore une autre utilisation pour les fichiers texte , ce
sont les fichiers appels batch contenant des lignes de commandes interprtables
par linterprteur de commandes dun OS permettant ainsi dautomatiser des tches
rptitives ou longues.
Remarque

Lorsquun logiciel applicatif comme un traitement de texte , par exemple dans le cas
de notre CV , enregistre le travail dun utilisateur, il enregistre les octets reprsentant
le code ASCII des caractres saisis par lutilisateur mais aussi des codes spcifiques correspondant la codification de la mise en page du document. Cela signifie bien entendu, que
les caractres du texte seront enregistrs dans le fichier avec le code ASCII correspondant
mais que les codes de la mise en page seront stocks avec une valeur numrique qui dpend
du logiciel utilis. Cela implique, bien entendu, que seul le logiciel ayant permis de crer
le document ou un logiciel ayant t programm pour comprendre les codes spcifiques de
mise en page de celui-ci, seront capables de restituer le texte et sa prsentation. Nous avons
pris en exemple un traitement de texte mais cette remarque est vraie pour tous les logiciels
du march qui mmorisent toujours dans un fichier utilisateur des codes ASCII pour les
caractres mais aussi des codes spcifiques au fonctionnement du logiciel concern.

86
8 3999 TG PA 01

tude du systme dexploitation DOS

En plus des fichiers utilisateur , il existe une autre catgorie de fichiers, ce sont
les fichiers dits excutables . Ces fichiers ont la particularit de contenir des codes
(valeurs numriques) correspondant des instructions systmes directement comprhensibles par un ordinateur ou par un OS. Ils sont donc lis la nature de lordinateur ou
lOS. Ces fichiers sont gnrs par des dveloppeurs de programme laide de logiciels
spcifiques appels des compilateurs. Un compilateur est un programme capable de
traduire un fichier texte, contenant les instructions que lordinateur doit excuter crits,
par un dveloppeur, dans un langage de programmation donn (Langage C, VB, C++,
Delphi, etc) en un fichier contenant les ordres traduits en code excutable par lOS et ou
par lordinateur. Lorsque vous dclenchez lexcution dune application, que ce soit en
tapant son nom sur une ligne de commande ou en cliquant sur une icne partir dune
interface graphique, vous faites appel un fichier excutable .
En conclusion : un fichier excutable est li un OS ou une famille dordinateurs.
Un fichier utilisateur (un document utilisateur) est li bien souvent lapplicatif qui a
permis de le gnrer (par exemple un document Word sera lisible travers Word
ou un autre logiciel capable de comprendre les codes de mise en page Word ). Un
fichier texte ne contient que du texte brut donc il nest li ni un OS ni un applicatif si ce nest parfois par le fait de ce que lon souhaite faire avec. Ainsi le fichier config.
sys peut tre lu et modifi par un diteur de texte sur nimporte quel OS, cependant,
son contenu ne prend toute sa dimension quavec MS-DOS. Un autre OS pourra lire le
contenu du fichier mais ne saura pas quoi en faire.
Remarque

Un fichier texte peut tre galement utile lorsque lon souhaite transmettre des donnes brutes
partir dun logiciel fonctionnant sur un OS vers un autre logiciel fonctionnant sur un autre OS
voire parfois entre deux logiciels fonctionnant sur le mme OS mais incompatibles entre eux.
Bon si nous faisions un peu de rangement maintenant. Vous vous en tes peut tre dj
rendu compte, dans le disque dur dun ordinateur, il peut y avoir des milliers de fichiers
et pour travailler de faon optimale, il faut tre ordonn. Dans la vie courante, pour
tre ordonn, nous rangeons les factures dans un dossier FACTURE , les commandes
des clients dans un dossier COMMANDES , les lettres dans un dossier COURRIER .
En informatique, il est conseill de faire la mme chose avec les documents (les fichiers)
pour pouvoir les retrouver plus facilement. Cest pourquoi, les systmes dexploitation
mettent notre disposition la notion de rpertoires (de dossiers). En fait un rpertoire
peut tre vu comme une chemise cartonne pour un utilisateur. Il contiendra les documents (les fichiers) que lutilisateur y mettra. Les rpertoires sont crs par lutilisateur
au niveau des commandes de lOS et non pas par lintermdiaire dun logiciel comme les
fichiers. En conclusion, un rpertoire (un dossier) contient des fichiers. Il doit porter un
nom afin de pouvoir distinguer les rpertoires entre eux.
La conclusion prcdente est un peu trop restrictive. En effet, un rpertoire peut contenir des fichiers mais galement des sous-rpertoires qui peuvent eux-mmes contenir
des fichiers et des sous-rpertoires et ainsi de suite. Lorganisation des fichiers et des
rpertoires dune disquette ou dun disque dur est dite hirarchise. On parle galement
darborescence des rpertoires.

87
8 3999 TG PA 01

Squence 2

Exemple : Voici un exemple darborescence de rpertoires

Explications du schma :
le rpertoire principal (rpertoire \ ) contient 3 fichiers et 2 sous-rpertoires
COURRIER et FACTURE ;
le rpertoire COURRIER contient 2 fichiers et 1 sous-rpertoire INTERNE ;
le rpertoire INTERNE contient uniquement 1 fichier ;
le rpertoire FACTURE contient 2 sous-rpertoires PROVINCE et PARIS ;
le rpertoire PROVINCE contient 2 sous-rpertoires BORDEAUX et LILLE ;
les rpertoires PARIS , BORDEAUX et LILLE sont vides.
Le rpertoire PROVINCE est appel le rpertoire fils de FACTURE et le rpertoire
FACTURE est le rpertoire pre de PROVINCE et PARIS . Sacre famille !
Remarques

Au dpart de l'arborescence (au dbut de la hirarchie), il y a le rpertoire Principal


(appel galement Racine ). Il est le pre de tous les rpertoires. A partir de lui, l'utilisateur peut crer ses rpertoires et ses sous-rpertoires mais il peut galement accder
tous les sous-rpertoires de l'arborescence.
Le rpertoire principal est le seul ne pas tre cr par l'utilisateur. En effet, il est cr et
mis en place par le systme d'exploitation lors de l'opration de formatage (Cf la commande Format de MS-DOS). Attention, cette remarque est trop restrictive dans le sens o
lors de l'installation d'un OS, il peut y avoir d'autres rpertoires fonctionnels mis en place
mais ils seront forcment placs en dessous du rpertoire Racine .
Le rpertoire principal (rpertoire racine ) ne peut jamais tre supprim.
Dans le cadre de MS-DOS et Windows, le rpertoire principal est reprsent par le symbole
\ (Antislash). Il est obtenu en appuyant simultanment sur la touche AltGr et la touche 8 du pav machine crire ou encore en maintenant la touche Alt enfonce
puis en tapant la valeur 92. Cette valeur correspond au code ASCII du caractre \ .
Remarque : le rpertoire principal sous Linux se reprsente par le symbole / (Barre
de division appele galement SLASH) mais nous aurons l'occasion d'en parler dans la
squence 4 de ce support.

88
8 3999 TG PA 01

tude du systme dexploitation DOS

4.

Nom de fichiers et de rpertoires sous MS-DOS


Sous MS-DOS, le nom dun fichier est compos de deux parties (le nom et lextension).
Les deux parties se trouvent spares par un point. Cela donne :

Nom . Extension
La partie Nom :

elle permet de donner un nom au fichier. Le nom est donn


par lutilisateur au moment de la sauvegarde de son document.
Attention, dans les versions MSDOS jusqu 6.22, il ne peut y
avoir, au maximum, que 8 caractres dans le nom. Si lutilisateur
en indique plus, soit les caractres supplmentaires sont limins, soit le nom fourni au document est refus. Un nom ne peut
contenir que des lettres (A-Z), des chiffres (0-9) ou le caractre
soulign _ (il se trouve sur la touche 8 du pav machine
crire ). Attention, un nom doit obligatoirement commencer
par une lettre. Lorsque lon se place en mode DOS sous Windows,
on peut utiliser des noms long allant jusqu 255 caractres.

La partie Extention : elle doit tre manipule avec prcaution. Elle donne une indication sur le nom du logiciel qui a permis de crer le document. Cest
la signature du logiciel. Elle se compose de 3 caractres au maximum (lettres, chiffres, soulign) dans les versions MS-DOS jusqu
6.22. En rgle gnrale, cest le logiciel qui place lextension et
non lutilisateur, mais bien entendu rien ne lempche de le faire.
Exemple dextension : Extension DOC Logiciel WORD
Extension XLS Logiciel EXCEL
Extension MDB Logiciel ACCESS
Extension EXE Fichier excutable
Extension BAT Fichier Batch
Extension TXT Fichier Texte
Lextension est dautant plus importante dans les versions Windows 9X et Windows branche NT que lextension est bien souvent associe un logiciel. Cela permet, en mode graphique Windows, en double cliquant sur le nom dun fichier douvrir automatiquement
lapplication associe.
Les rpertoires (dossiers) quant eux ont un nom qui se compose que dune seule partie : la partie nom . Attention, rien ne vous empche dajouter une partie extension
votre nom de rpertoire mais ce nest pas usuel. Un nom de rpertoire respecte les
mmes rgles que celles nonces prcdemment.

89
8 3999 TG PA 01

Squence 2

5.

La notion de chemin
Un chemin est la route quil faut suivre travers larborescence des rpertoires pour
atteindre un point de larborescence partir dun autre point. Pour dcrire un chemin,
il suffit de donner le nom des rpertoires traverss en sparant chacun des noms par le
symbole \ (Antislash) pour DOS et Windows et le symbole / (slash) pour LINUX.
Remarque

Le rpertoire courant est le rpertoire de travail. Il sagit du rpertoire sur lequel nous nous
sommes physiquement positionns laide des commandes DOS dont nous parlerons dans
la suite de ce cours.
Exemple : partir de larborescence des rpertoires que nous avons donn en exemple
prcdemment :
Si le rpertoire courant est le rpertoire principal (rpertoire \ ), alors COURRIER\
INTERNE\fichier111 est le chemin suivre pour atteindre fichier111 partir du
rpertoire principal.
Si le rpertoire courant est le rpertoire FACTURE , alors PROVINCE\BORDEAUX
est le chemin suivre pour atteindre BORDEAUX partir du rpertoire
FACTURE .
En fait, il faut distinguer deux types de chemin: le chemin relatif et le chemin absolu .
Un chemin relatif est un chemin qui dcrit la route suivre dans l'arborescence
partir du rpertoire de travail (rpertoire courant).
Un chemin absolu est un chemin qui dcrit la route suivre dans l'arborescence
partir du rpertoire principal (rpertoire \ ). Un chemin absolu commence
toujours par \ (Ceci pour indiquer qu'on part du rpertoire principal et non du
rpertoire courant).
Remarque

Sous Linux, un chemin absolu commence toujours par / .


Exemple : partir de la hirarchie des rpertoires que nous avons donn en exemple
prcdemment :
Si le rpertoire courant est le rpertoire COURRIER , alors INTERNE\fichier111
est le chemin relatif suivre pour atteindre fichier111 partir du rpertoire
COURRIER et \COURRIER\INTERNE\fichier111 est le chemin absolu.
Si le rpertoire courant est le rpertoire PROVINCE , alors ..\..\COURRIER\
INTERNE\fichier111 est le chemin relatif suivre pour atteindre fichier111 partir du rpertoire PROVINCE (L'utilisation de .. indique que l'utilisateur veut
remonter d'un niveau dans l'arborescence) et \COURRIER\INTERNE\fichier111 est
le chemin absolu.

90
8 3999 TG PA 01

tude du systme dexploitation DOS

Pour faire apparatre le caractre \ (antislash), il faut utiliser la squence de


touche AltGr + Touche 8 du pav machine crire . Dune manire gnrale, il existe un autre moyen pour faire apparatre un caractre. Il suft de connatre son code ASCII puis de taper Alt + Code ASCII . Ainsi le caractre \ a
pour code ASCII 92. Donc pour le faire apparatre, il suft dappuyer sur la touche
Alt en la maintenant enfonce puis de taper 92. En lchant la touche Alt ,
le caractre associ au code saisi apparat.

6.

La variable denvironnement PATH


Prcdemment, nous avons voqu le fait que linterprteur de commandes Command.com
avait pour rle de lancer lexcution des commandes dont lutilisateur saisit le nom au clavier.
Si cette commande correspond une commande interne , elle est immdiatement excute.
Dans le cas contraire, linterprteur de commande va chercher, sur le disque, le nom dun fichier
excutable correspondant au nom de la commande saisie. Cependant, lOS ne va pas chercher
partout. Il se contente de chercher dans un premier temps dans le rpertoire courant (le rpertoire
de travail). Ensuite, sil ne trouve pas de correspondance, il va alors consulter lune de ses variables
denvironnement qui porte le nom PATH .
Une variable denvironnement contient une information consultable par toutes les
applications qui le souhaitent quand elles le souhaitent. Ce mcanisme permet de
paramtrer le fonctionnement de command.com mais galement dans certains
cas, le fonctionnement de programmes applicatifs (des logiciels).
La variable denvironnement PATH contient une liste de rpertoires dans lesquels
command.com doit rechercher par dfaut le fichier excutable dont le nom correspond la commande tape par lutilisateur. Plus gnralement, elle dfinit les chemins de recherche pour les fichiers dextension .com , .exe ou .bat .
Remarques

La liste des rpertoires de recherche doit tre associe la variable d'environnement


PATH dans le fichier autoexec.bat . Pour cela, il suffit de donner, en mode chemin absolu , la liste des chemins pour atteindre les rpertoires de recherche. Bien entendu pour ceux qui connaissent MS-DOS, ils savent quil est possible dassocier la liste
des rpertoires de recherche la variable PATH en cours dutilisation de MS-DOS.
Cependant, le problme est que, dans ce cas, cette association nest plus valable une fois
que lon quitte lOS. Cest pourquoi, il est conseill de dfinir la variable PATH dans
le fichier Autoexec.bat dont le contenu est lu chaque boot de DOS.
Pour associer la liste des rpertoires de recherche la variable PATH , il faut taper la
commande suivante :
PATH=ListeRpertoires
ou
PATH ListeRpertoires
Dans la liste de rpertoires de recherche, chaque chemin doit tre spar du suivant par
un point-virgule ; .

91
8 3999 TG PA 01

Squence 2

Exemple de dclaration :
PATH=C:\;C:\DOS;C:\COURRIER
Dans cet exemple, on spcifie galement, pour chaque chemin, le nom du disque
contenant les rpertoires. Ici, il sagit du disque de nom C: (voir suite du support)
Attention, en employant la syntaxe prcdente pour associer la liste des rpertoires de
recherche la variable PATH , nous avons rinitialis cette dernire avec une nouvelle
liste. Il se peut parfois que nous souhaitions ajouter de nouveaux rpertoires de recherche
la liste existante. Dans ce cas, la syntaxe devient :
PATH=%PATH%;ListeRpertoires
ou
PATH %PATH%;ListeRpertoires
Exemple de dclaration :
PATH=%PATH%;C:\COURRIER
Dans cet exemple, on ajoute, la liste des rpertoires de recherche en cours, le rpertoire
de nom C:\COURRIER .
En tapant le mot PATH sur la ligne de commande puis en appuyant sur la touche
Entre , MS-DOS affiche la liste actuelle des rpertoires de recherche.

7.

Commencer avec MS-DOS

7A.

Accder lenvironnement MS-DOS


Pour utiliser les commandes que nous allons dfinir dans la suite de ce support, il nous
faut nous placer soit totalement en environnement MS-DOS soit nous placer dans une
fentre ligne de commande partir de Windows 9X ou Windows branche NT. Dans
le premier cas, il suffit dinstaller MS-DOS (par exemple version 6.22) sur un disque
dur, ou du moins sur une partition principale active, ou dans une machine virtuelle. En
ce qui concerne Windows 9X, prenons par exemple Windows 98, on peut cliquer sur
[Dmarrer] [Programmes] [Commandes MS-DOS] ou encore cliquer [Dmarrer] [Excuter]
puis taper command dans la zone de saisie de la boite de dialogue qui souvre. En
ce qui concerne Windows branche NT, prenons par exemple Windows XP Pro, il suffit de
cliquer sur [Dmarrer] [Programmes] [Accessoires] [Invite de commandes] ou de prendre
[Dmarrer] [Excuter] puis taper cmd dans la zone de saisie. Dans les deux cas concernant Windows, nous nous retrouvons dans une fentre Ligne de commandes partir
de laquelle nous pouvons taper et tester nos commandes MS-DOS.
Quel que soit le mode que vous avez choisi pour vous retrouver dans un espace permettant de taper des commandes MS-DOS, vous verrez apparatre lcran un PROMPT
(une invite) qui indique lutilisateur que celui-ci peut taper la commande DOS quil
souhaite. Voici un exemple de prompt :

92
8 3999 TG PA 01

tude du systme dexploitation DOS

Dans notre capture cran prcdente, le prompt safche sous la forme : c:\> , ce qui
a pour signication :

Le PROMPT indique donc le nom du lecteur courant ainsi que le nom du rpertoire
courant. Ouvrons une parenthse sur cette notion de lecteur courant et de rpertoire
courant. Un ordinateur peut se composer de plusieurs lecteurs (lecteur de disquette,
disque dur, lecteur de CD-ROM). Or on ne peut pas travailler simultanment sur tous les
lecteurs donc il est ncessaire den dsigner un comme lecteur par dfaut. Cest ce que
lon appelle le lecteur courant. De mme, sur une disquette, un disque dur ou encore un
CD-ROM, il peut y avoir plusieurs rpertoires crs. Comme pour les lecteurs, on ne peut
pas travailler simultanment sur tous les rpertoires. Il faut donc l aussi en dsigner un
par dfaut. Cest le rpertoire courant galement appel rpertoire de travail. Ainsi, par
dfaut, les commandes effectuent leur travail sur lunit de disque courante et dans le
rpertoire courant moins de spcifier explicitement une autre destination (voir suite).
Nous verrons galement dans la suite du cours comment changer de lecteur courant et
de rpertoire courant.
Remarque

Le caractre > est un caractre indiquant la fin de linvite. Lutilisateur peut donc taper
les commandes DOS sa suite. Nous pouvons dailleurs observer la prsence du curseur
clignotant (curseur dinsertion) matrialisant le dbut de la zone de saisie.

7B.

Le nom dune unit de disque


Prcdemment, nous avons indiqu que dans le prompt apparat le nom du lecteur courant. Dans notre capture dcran, il sagit du lecteur c: correspondant au disque dur ou
du moins une partition du disque dur dans le cas o celui-ci en contient plusieurs. Pour
changer de lecteur de disque courant, il suffit de taper la commande qui suit et valider.
Nom_de_lunit :

93
8 3999 TG PA 01

Squence 2

Exemple : si lutilisateur veut activer le lecteur de CD-ROM, condition que ce dernier


contiennent un CD-ROM, il doit taper D: sans espace entre le D et le : puis appuyer sur la touche Entre pour valider son action.
Remarque

DOS ne fait pas de diffrence entre les caractres en majuscule et les caractres en minuscule.

Remarques

Avec MS-DOS et en gnralisant sous Windows, par convention, un lecteur de disquette


aura toujours pour nom A: ou B: , un disque dur ou la partition active aura pour
nom C: . Pour les autres lettres possibles, on peut les associer indiffremment un
lecteur de CD-ROM (bien que dans ce cas, on ait une prfrence pour D: ), un autre
disque dur ou une partition logique. Avec MS-DOS, il est galement possible d'attribuer
une lettre de lecteur un lecteur logique. Il s'agit d'un nom de lecteur attribu un
rpertoire donn ce qui permet, lorsque l'utilisateur tape le nom du lecteur logique, d'tre
directement positionn sur le rpertoire concern (voir la commande subst plus loin
dans ce support).
Si l'utilisateur active un lecteur de CD-ROM dans lequel il n'y a pas de CD-ROM, une
erreur se produit.

7C.

Syntaxe dune commande systme


Dune manire gnrale, voici la syntaxe employer pour une commande DOS que lon
tape la suite du prompt :
NomCommande Paramtres Options
NomCommande : nom de la commande MS-DOS excuter. Il peut sagir dune
commande interne ou dune commande externe. Dans ce dernier cas, la commande
se prsente sous la forme dun fichier excutable portant le nom de la commande
souhaite suivi de lextension .exe ou .com . Je vous rappelle que les commandes
externes sont des commandes dont lutilisateur a besoin ponctuellement ce qui implique
que le code na pas besoin de rester en permanence en mmoire RAM. Par exemple, la
commande format (utilise pour effectuer un formatage de haut niveau) est une
commande externe. Elle se prsente donc sous la forme dun fichier excutable de
nom format.com . Ce fichier peut tre situ dans le rpertoire des commandes DOS
du disque dur ou sur une disquette. Lorsque lutilisateur tape le nom dune commande
externe, MS-DOS cherche le fichier excutable dans le rpertoire courant du lecteur

94
8 3999 TG PA 01

tude du systme dexploitation DOS

courant ou dans un rpertoire se trouvant dans la liste des rpertoires de recherche


dfinie par la variable denvironnement PATH (voir prcdemment). Les commandes
internes, elles, sont contenues dans le programme command.com et se trouvent donc
en mmoire tant que command.com sy trouve. Ce nest donc pas la peine de chercher un fichier excutable sur disque ou sur disquette pour les commandes internes.
Paramtres : permet de prciser ce sur quoi va porter la commande excute. (par exemple, quel est le nom du fichier qui doit tre copi, quel est le nom du rpertoire en cours
de cration, quel est le nom du rpertoire dont on souhaite lister le contenu, etc).
Exemple 1 : copy Fichier1 Fichier2
copy est le nom de la commande. Son rle est de copier le contenu dun fichier
dans un autre (voir plus loin dans le cours).
Fichier1 et Fichier2 sont les paramtres de la commande. En effet, la commande copy demande lutilisateur de prciser sur quel fichier doit porter
laction et quel sera le nom du fichier rsultat.
Exemple 2 : dir d:
dir est le nom de la commande. Son rle est de lister le contenu dun rpertoire.
d: est le paramtre de la commande. Ce paramtre reprsente le nom du
lecteur de CD-ROM donc laction de la commande va porter sur le CD-ROM. En
conclusion, dans notre exemple, il sagit de lister le contenu du rpertoire courant
du CD-ROM (voir plus loin dans le cours).
Options : permet de modier le fonctionnement par dfaut dune commande ou
de lui faire faire des actions complmentaires. Une option commence toujours par un
caractre / (appel barre de division ou slash ).
Exemple 1 : del Fichier1 /p
del est le nom de la commande. Son rle est de supprimer le fichier dont on
donne le nom en paramtre (Cf plus loin dans le cours).
Fichier1 est le paramtre de la commande, donc le nom du fichier supprimer.
/p est une option de la commande del . Par dfaut, cette commande supprime le fichier, dont on donne le nom en paramtre, sans demander de confirmation. En ajoutant loption /p , on modifie le comportement par dfaut de la
commande del en lui imposant de demander une confirmation lutilisateur.
Exemple 2 : format a: /s
format est le nom de la commande. Son rle est deffectuer un formatage de
haut niveau dun disque dur, dune partition ou dune disquette.
a: est le paramtre de la commande. Ce paramtre reprsente le nom du lecteur de disquette donc laction de la commande va porter sur la disquette contenue dans le lecteur.
/s est une option de la commande format . Par dfaut, cette commande
effectue le formatage souhait un point cest tout. En ajoutant loption /s ,
on lui demande de raliser en plus du formatage, la copie des fichiers io.sys ,
msdos.sys et command.com sur la disquette afin de la rendre bootable.

95
8 3999 TG PA 01

Squence 2

Remarque

Toutes les commandes MS-DOS nont pas besoin de paramtre lors de leur excution et
toutes ne disposent pas des mmes options. Il est difficile de retenir toutes les possibilits de
toutes les commandes. Cependant, il existe une option commune toutes les commandes
qui est /?. Cette option permet dobtenir de laide sur la commande concerne notamment son objectif, les paramtres attendus et les options possibles. Ceci est dautant plus
utile quen fonction de la version de DOS que vous allez utiliser, une mme commande peut
avoir des options en plus ou en moins.
Exemple : dir /?
permet dafficher de laide sur la commande dir

Certaines commandes externes peuvent refuser de sexcuter si la version de

O MS-DOS utilise nest pas compatible avec celle attendue. Dans ce cas, il faut soit
se placer dans un environnement DOS compatible avec la version attendue par la
commande, soit lancer lexcution de la commande dveloppe pour la version
MS-DOS en cours.

7D.

Quelques commandes systmes


7D1. Avant de commencer
Nous allons maintenant parler plus en dtail de certaines commandes MS-DOS. Attention,
nous ne parlerons pas de toutes les commandes MS-DOS mais seulement de certaines qui
vont nous permettre dacqurir les bases de lutilisation dun OS en mode ligne de
commande , cest dire sans le mode graphique . Je vous rappelle que le travail en
mode ligne de commande permet parfois de travailler plus finement avec un OS ne
serait-ce que pour la configuration de lordinateur ou son dpannage. Vous trouverez
la fin du paragraphe 7D12, un tableau rcapitulant les commandes MS-DOS les plus
utiles. Pour en connatre le fonctionnement, vous pouvez soit utiliser loption /? qui
apporte une aide sur la commande concerne, soit vous rfrer un livre traitant du
sujet ou encore aller sur Internet avec le mot-cl MS-DOS ou DOS .
Pour tester les commandes MS-DOS, il faut bien entendu que vous soyez dans un environnement MS-DOS rel, virtuel ou via une fentre de commande (Cf prcdemment). Il
vous suffit alors de taper la commande souhaite avec ventuellement ses paramtres et
ses options puis de valider votre saisie avec la touche Entre . A cet instant, linterprteur de commande analysera le nom de la commande saisie puis il la comparera avec la
liste des commandes internes. Sil trouve une correspondance, il lexcute. Dans la ngative, il cherche un fichier excutable de mme nom que la commande ayant pour
extension dans lordre .com , .exe ou .bat . La recherche seffectue dabord dans
le rpertoire courant puis dans la liste des rpertoires de recherche dfinie par la variable
denvironnement PATH
Pour connatre cette liste, il suft de taper PATH la suite du prompt et valider.
Si la commande demande na pas de correspondance, alors MS-DOS afche un
message derreur. Uns fois la commande excute ou le message derreur afch,
MS-DOS fera rapparatre le prompt en attendant lordre suivant.

96
8 3999 TG PA 01

tude du systme dexploitation DOS

Remarques

Les commandes peuvent tre saisies en majuscule ou en minuscule indiffremment.


En appuyant sur la touche F3 , l'interprteur de commande fait rapparatre la dernire commande saisie qu'il ne reste plus qu' modifier ventuellement puis rexcuter
en appuyant sur la touche Entre .
En appuyant plusieurs fois sur la touche F1 , l'interprteur de commande fait rapparatre la dernire commande saisie lettre par lettre.
En appuyant sur le touche flche haut ou flche bas , l'interprteur de commande
vous permet de lister les dernires commandes saisies. Attention si vous utilisez une fentre de commandes Windows, la liste est vide chaque fois que vous refermez la fentre
de commandes.

Maintenant que nous venons dapporter toutes ces prcisions, il ne reste plus qu nous
lancer dans ltude de certaines commandes. Allez cest parti !

7D2. La commande cls


Syntaxe : cls
Description : Il sagit dune commande interne qui permet deffacer tous les caractres
actuellement affichs lcran.

7D3. La commande dir


Syntaxe : dir NomLecteur CheminRep NomFichiers
Lors de lutilisation de cette commande, il nest pas obligatoire de prciser un
nom de lecteur ni un chemin de rpertoire ni un nom de fichier.
Description : Permet de visualiser le contenu dun rpertoire, savoir, les fichiers et les
sous-rpertoires quil contient. Par dfaut, la commande permet de visualiser le contenu
du rpertoire courant du lecteur courant. Dans la liste affiche aprs excution de la
commande, les sous-rpertoires sont reprs par le mot <REP>.
Exemple :
dir
affiche le contenu du rpertoire courant du lecteur courant.
Il est possible de prciser laction de la commande dir en lui ajoutant des paramtres
supplmentaires. Ainsi :
NomLecteur : permet de prciser le nom du lecteur concern par la commande dir
CheminRep : permet de prciser le nom du rpertoire dont vous souhaitez lister le
contenu ainsi quventuellement le chemin pour latteindre. Le chemin peut tre donn
en relatif ou en absolu (voir prcdemment).
NomFichiers : permet de prciser le nom du fichier recherch dans le rpertoire ou
ventuellement un masque employant des caractres joker appels galement
mtacaractres (voir suite) permettant de spcifier un ensemble de noms possibles pour
les fichiers recherchs dans le rpertoire. Si NomFichiers nest pas prsent, MS-DOS
affiche par dfaut la totalit du contenu du rpertoire dsign.

97
8 3999 TG PA 01

Squence 2

Voici quelques exemples labors partir de lexemple de hirarchie des rpertoires vue
prcdemment.
dir a :
affiche le contenu du rpertoire courant de la disquette se trouvant dans le
lecteur de disquette. Cela permet de voir le contenu de la disquette sans avoir
besoin de dsigner le lecteur de disquette comme lecteur courant auparavant.
dir \Courrier\Interne
affiche le contenu du rpertoire de nom Interne se trouvant sur le lecteur
courant. Le paramtre \Courrier\Interne reprsente le chemin absolu qui faut
suivre pour atteindre ce rpertoire.
dir c:\Courrier\Interne
affiche le contenu du rpertoire de nom Interne se trouvant sur le lecteur c: .
Comme dans lexemple prcdent, le paramtre \Courrier\Interne reprsente le
chemin absolu qui faut suivre pour atteindre ce rpertoire.
dir Interne
affiche le contenu du rpertoire Interne se trouvant sur le lecteur courant
la condition que le rpertoire courant soit le rpertoire Courrier En effet, ce
dernier contient justement le rpertoire Interne . (voir notre exemple de hirarchie des rpertoires vu prcdemment).
La commande dir possde un certain nombre doptions dont on peut obtenir la liste
en tapant dir /? . Elle possde entre autre les options suivantes :
/p :

/w :

option utile lorsque le nombre de chiers ou de sous-rpertoires est trop important. En effet, cette option permet de faire un afchage page cran
par page cran . Entre chaque page cran afche, la commande effectue
un arrt laissant ainsi le temps lutilisateur de lire les donnes afches.
afche le rsultat sur cinq colonnes.

Remarque

Certaines options peuvent tre combines. Ainsi loption /p/w permet dafficher le rsultat sur cinq colonnes avec un arrt chaque page cran .
/s :
/b :
/o :

afche le contenu du rpertoire souhait ainsi que celui de tous ses sous-rpertoires.
afche le rsultat rduit au nom des chiers et des sous-rpertoires.
afche le contenu du rpertoire dune manire tri. Cette option ralise, par
dfaut, un tri suivant lordre alphabtique du nom des chiers et des sousrpertoires. Pour spcier un autre ordre, il faut complter loption avec :
s tri par taille en ordre croissant
e par extension
d par date et heure
n par nom
En ajoutant un tiret - devant lun des choix de tri, le tri se fait en ordre
inverse. Ainsi :
dir /os
afche le rsultat par ordre croissant de taille

98
8 3999 TG PA 01

tude du systme dexploitation DOS

dir /o-s
afche le rsultat par ordre dcroissant de taille
Remarque

Avant Windows 95, un nom de fichier ou de rpertoire devait respecter le format 8.3,
cest--dire un maximum de 8 caractres pour le nom et un maximum de 3 caractres pour
lextension, sans espace lintrieur mais avec un point pour sparer la partie Nom et
la partie Extension . Avec Windows 95, les noms longs sont apparus pour les fichiers
et les rpertoires. Ils autorisent jusqu un total de 255 caractres pour le nom et lextension
avec en plus la possibilit dajouter des espaces, des caractres accentus et ventuellement
plusieurs points lintrieur. Bien entendu, si le nom de votre fichier contient plusieurs
points, seul le dernier sera considr comme le sparateur entre la partie Nom et la
partie Extension . Pour rester compatible avec les programmes MS-DOS et les programmes Windows fonctionnant en mode 16 bits, Windows 95 et les diffrents successeurs
possdent, pour chaque fichier et chaque rpertoire, une traduction de leur nom au format
8.3 que nous appellerons le format court . Si le nom du fichier ou du rpertoire est
dj au format 8.3 , la traduction en nom court est identique. Par contre, ds quun
nom dpasse 8 caractres pour la partie Nom , 3 caractres pour la partie Extension
ou encore quil contient des espaces, des accents ou plusieurs points, Windows opre une
traduction du nom afin que celui-ci respecte les rgles du format court (format 8.3 ).
Un nom court est mis en majuscule.
Comment se fait la traduction ? Voici quelques rgles de passage et quelques exemples :
Si la partie Nom dpasse 8 caractres, Windows ne garde que les 6 premiers
caractres, ajoute le caractre ~ (tilde) et un numro d'ordre, ce qui permet de
diffrencier les noms courts dans le cas o plusieurs traductions de nom long
en nom court sont semblables.
Si la partie Nom contient des espaces, Windows ne garde que les 6 premiers
caractres aprs avoir enlev les espaces dans le nom long , ajoute le caractre
~ (tilde) et un numro d'ordre comme prcdemment.
Si la partie Extension dpasse 3 caractres, Windows ne garde que les 3 premiers
caractres de la partie Extension , ajoute le caractre ~ (tilde) dans la partie
Nom et un numro d'ordre comme prcdemment.
Si le nom contient plusieurs points, Windows les enlve et ne garde que le dernier
en tant que sparateur d'avec la partie Extension , ajoute le caractre ~ (tilde)
dans la partie Nom et un numro d'ordre comme prcdemment.
Voici des exemples :
Le fichier de nom lettres.doc ne possde pas de traduction spcifique en nom
court car il correspond aux exigences du format 8.3 . Le nom court sera
donc LETTRES.DOC .
Le fichier de nom lettres05.doc possde une traduction en nom court
car la partie Nom dpasse 8 caractres. La traduction en nom court sera
LETTRE~1.DOC .
Le rpertoire de nom Ma Sauvegarde possde une traduction en nom court
car la partie Nom dpasse 8 caractres. La traduction en nom court sera
MASAUV~1 .
Le fichier de nom mon.fichier.personnel.xls possde une traduction en nom court
car la partie Nom dpasse 8 caractres et possde plusieurs points. La traduction
en nom court sera MONFIC~1.XLS . Si dans le mme rpertoire, on dispose
99
8 3999 TG PA 01

Squence 2

d'un fichier de nom mon fichier.xls , Windows gnrera un nom court qui sera
MONFIC~2.XLS avec un autre numro d'ordre puisque le nom court est identique celui qui a t gnr pour le fichier de nom mon.fichier.personnel.xls .
Le fichier de nom fichier.abcde possde une traduction en nom court car
la partie Extension dpasse 3 caractres. La traduction en nom court sera
FICHIE~1.ABC . Dans cet exemple, la partie Nom a galement t rduite,
car aprs ajout du caractre ~ (tilde) et du numro d'ordre, celle-ci dpassait la
limite des 8 caractres..
Pour visualiser les noms courts d'un fichier ou d'un rpertoire, il faut tre dans

O un environnement DOS sous Windows 9X ou Windows branche NT.


7D4. Les caractres joker ou les mtacaractres

Les caractres joker galement appels mtacaractres sont au nombre de DEUX.


Leur rle est de remplacer des combinaisons de caractres dans certaines commandes
MS-DOS (DIR, DEL, COPY, REN ...). Il sagit de :
L'astrisque * qui remplace toutes combinaisons possibles de caractres. S'il est
plac dans la partie Nom d'un fichier ou d'un rpertoire, il peut remplacer de
0 8 caractres (voire 255 dans le cas des noms longs de fichiers ou de rpertoires
utiliss dans l'environnement Windows 9X et Windows branche NT). S'il est plac
dans la partie Extension , il peut remplacer de 0 3 caractres (voire plus dans
le cas des noms longs de fichiers ou de rpertoires utiliss dans l'environnement
Windows 9X et Windows branche NT).
Le point d'interrogation ? , qui au contraire de l'astrisque, ne remplace qu'un
et un seul caractre obligatoire.
Exemples :
dir A*.DOC
permet dafficher tous les fichiers dont le nom commence par un A quelles que
soient les autres lettres et ayant pour extension .DOC .
dir *.XLS
permet dafficher tous les fichiers quel que soit le nom et ayant pour extension
.XLS .
dir Bidon.*
permet dafficher tous les fichiers dont le nom est Bidon quelle que soit lextension.
dir ?a*.DOC
permet dafficher tous les fichiers dont le nom possde la lettre a en deuxime
position quels que soient les autres caractres et ayant pour extension .DOC .
dir *.e*
permet dafficher tous les fichiers quel que soit le nom et dont lextension commence par la lettre e .
dir test.*
permet dafficher tous les fichiers ayant pour nom test quelle que soit lextension. Ces fichiers sont recherchs dans le rpertoire courant du lecteur courant.

100
8 3999 TG PA 01

tude du systme dexploitation DOS

dir c:test.*
permet dafficher tous les fichiers ayant pour nom test quelle que soit lextension. Ces fichiers sont recherchs dans le rpertoire courant du lecteur C: .
dir c:\Courrier\Interne\*04.*
permet dafficher tous les fichiers dont le nom se termine par 04 quelle que
soit lextension. Ces fichiers sont recherchs dans le rpertoire \Courrier\Interne du
lecteur C: . Le chemin est donn en mode absolu.
dir c:??o*.com
Affiche tous les fichiers dont la troisime lettre du nom est un o et ayant pour
extension .COM . Ces fichiers sont recherchs dans le rpertoire courant du lecteur
C: .
dir *.
Affiche tous les fichiers nayant pas dextension quel que soit le nom. Ces fichiers
sont recherchs dans le rpertoire courant du lecteur courant. Cette syntaxe permet
de voir apparatre les sous-rpertoires car ces derniers nont, en gnral, pas dextension.

7D5. La commande tree


Syntaxe : tree NomLecteur CheminRep
Lors de lutilisation de cette commande, il nest pas ncessaire de prciser un chemin de rpertoire ni un nom de lecteur.
Description : permet de lister larborescence des rpertoires du disque dur ou de la
disquette en partant du rpertoire spcifi.
NomLecteur : permet de prciser le nom du lecteur concern
CheminRep : permet de prciser le nom du rpertoire partir duquel vous souhaitez
lister larborescence des rpertoires. Le chemin peut tre donn en relatif ou en
absolu . (voir prcdemment).
Exemple :
tree
affiche larborescence des rpertoires partir du rpertoire courant dans le lecteur
courant.
tree c:\
liste larborescence des rpertoires du lecteur de nom c: en partant du rpertoire principal.

7D6. La commande cd
Syntaxe : cd CheminRep
Description : Permet de changer de rpertoire courant dans le lecteur courant.
CheminRep : permet de prciser le nom du rpertoire que vous souhaitez atteindre
avec ventuellement le chemin pour latteindre. Le chemin peut tre donn en relatif
ou en absolu . (voir prcdemment).
Voici quelques exemples labors partir de lexemple de larborescence des rpertoires
vue prcdemment.

101
8 3999 TG PA 01

Squence 2

cd Interne
Si le rpertoire courant est COURRIER , la commande cd Interne permet de
descendre dans le rpertoire fils de nom INTERNE .
cd \Courrier\Interne
Permet de descendre dans le rpertoire de nom INTERNE sous-rpertoire de
Courrier quel que soit le rpertoire courant. Nous avons spcifi un chemin
absolu.
Remarques

Il faut que le rpertoire que vous souhaitez atteindre existe, sinon MS-DOS dclenche une
erreur.
Si vous employez la commande cd sans spcifier de rpertoire, MS-DOS vous affiche
le nom du rpertoire courant ainsi que le nom du lecteur courant.
Pour remonter au rpertoire pre du rpertoire courant, il suffit de taper la commande :
cd ..
Les deux-points reprsentent toujours le rpertoire pre dun rpertoire donn. Attention,
seul le rpertoire principal \ na pas de rpertoire pre.

7D7. La commande md (ou mkdir)


Syntaxe : md CheminRep
mkdir CheminRep
Description : Permet de crer un nouveau rpertoire. Si vous donnez le nom du
nouveau rpertoire sans spcifier de chemin, le nouveau rpertoire sera cr dans le
rpertoire courant, par contre, si vous spcifiez un chemin, il sera cr lemplacement
dsign par le chemin.
Voici quelques exemples labors partir de lexemple de larborescence des rpertoires
vue prcdemment.
md Externe
Si le rpertoire courant est COURRIER , la commande md Externe permet
de crer un rpertoire de nom Externe lintrieur du rpertoire COURRIER .
md \Courrier\Externe
Permet de crer le rpertoire de nom Externe sous-rpertoire de Courrier
quel que soit le rpertoire courant. Nous avons spci un chemin absolu.
Remarques

Attention, lorsque vous crez un nouveau rpertoire, il ne devient pas le nouveau rpertoire
courant. Il faut employer la commande cd pour cela.
Le nom du rpertoire ne doit pas dpasser 8 caractres et ne doit tre compos que de
lettres, chiffres ou le caractre soulign. Bien entendu, si vous tudiez les commandes MSDOS partir de la fentre Ligne de commande de Windows 9X ou Windows branche
NT, vous pouvez donner un nom de rpertoire jusqu' 255 caractres et si vous mettez des
espaces l'intrieur du nom, il faut que le nom du rpertoire soit plac entre guillemets.
Exemple : md "Mon Nouveau rpertoire"

102
8 3999 TG PA 01

tude du systme dexploitation DOS

7D8. La commande rd
Syntaxe : rd CheminRep
Description : permet de supprimer un rpertoire. Si vous donnez le nom du rpertoire
sans spcifier de chemin, le rpertoire supprimer sera recherch dans le rpertoire courant. Sil nexiste pas, un message derreur apparatra. Si vous spcifiez un chemin, il sera
supprim lemplacement dsign par le chemin sauf si ce rpertoire nexiste pas.
Voici quelques exemples labors partir de lexemple de larborescence des rpertoires
vue prcdemment.
rd Externe
Si le rpertoire courant est COURRIER , la commande rd Externe permet de
supprimer le rpertoire de nom Externe lintrieur du rpertoire COURRIER .
rd \Courrier\Externe
Permet de supprimer le rpertoire de nom Externe sous-rpertoire de Courrier
quel que soit le rpertoire courant. Nous avons spcifi un chemin absolu.
Remarques

Un rpertoire ne peut tre supprim que s'il est vide et qu'il ne soit pas le rpertoire courant.
Un rpertoire est considr vide si lorsqu'on liste son contenu avec la commande dir
par exemple, il n'apparat que le rpertoire . et le rpertoire .. . Le rpertoire .
reprsente le rpertoire courant et le rpertoire .. reprsente le rpertoire pre.
Voici une capture d'cran de ce que nous obtenons avec la commande dir sur un
rpertoire vide :

7D9. La commande del


Syntaxe : del [NomLecteur] [CheminRep] NomFichiers
Dans la syntaxe, il apparat les signes [ et ] . Cela signifie que llment se trouvant entre les crochets peut tre prsent 0 ou 1 fois. Ainsi, lors de
lutilisation de cette commande, il nest pas ncessaire de prciser un chemin
de rpertoire ni un nom de lecteur.
Description : permet de supprimer un ou plusieurs fichiers. Par dfaut, la commande
supprime les fichiers demands partir du rpertoire courant du lecteur courant. Il est
possible de spcifier le ou les fichiers supprimer laide des caractres jokers (les
mtacaractres) vus prcdemment.
NomLecteur : permet de prciser le nom du lecteur concern par la commande del .
CheminRep : permet de prciser le nom du rpertoire contenant les fichiers supprimer. Le chemin peut tre donn en relatif ou en absolu . (voir prcdemment).
NomFichiers : prcise le nom du fichier supprimer.
La commande del possde une option que lon peut visualiser en tapant del /? . Il
sagit de loption :
103
8 3999 TG PA 01

Squence 2

/p : qui indique que vous souhaitez confirmer la suppression des fichiers avant que
lopration ne se fasse.
Voici quelques exemples labors partir de lexemple de larborescence des rpertoires
vue prcdemment.
del a:*.*
supprime les fichiers du rpertoire courant de la disquette quel que soit leur nom
et leur extension.
del /Courrier/Interne/Fichier12
supprime le fichier de nom Fichier12 qui se trouve dans le rpertoire /Courrier/
Interne du lecteur courant. Il sagit dun chemin absolu.
del c:/Courrier/Interne/Fichier12
supprime le fichier de nom Fichier12 qui se trouve dans le rpertoire /Courrier/
Interne du lecteur c: .
del Interne/Fichier12
supprime le fichier de nom Fichier12 qui se trouve dans le rpertoire Interne
se trouvant sur le lecteur courant la condition que le rpertoire courant soit
Courrier .
del A*.DOC
supprime, dans le rpertoire courant et le lecteur courant, tous les fichiers dont
le nom commence par un A quelles que soient les autres lettres et ayant pour
extension .DOC .
del *.XLS
supprime, dans le rpertoire courant et le lecteur courant, tous les fichiers quel que
soit le nom et ayant pour extension .XLS .
del Bidon.*
supprime, dans le rpertoire courant et le lecteur courant, tous les fichiers dont le
nom est Bidon quelle que soit lextension.

7D10. La commande copy


Syntaxe : copy Source Destination
Source reprsente le fichier ou les fichiers copier et Destination reprsente le rpertoire destination.
Source a pour syntaxe : [NomLecteur:][CheminRep] NomFichiersSource
Destination a pour syntaxe : [NomLecteur:][CheminRep] [NomFichierDest]

Dans la syntaxe, il apparat les signes [ et ] . Cela signie que llment se


trouvant entre les crochets peut tre prsent 0 ou 1 fois.

104
8 3999 TG PA 01

tude du systme dexploitation DOS

Description : Permet de copier un ou plusieurs fichiers dans un rpertoire destination . Il est possible de spcifier le ou les fichiers copier laide des caractres
jokers (les mtacaractres) vus prcdemment.
Voici quelques exemples
copy *04.xls \Sauve\Budget
copie, partir du rpertoire courant et du lecteur courant, tous les fichiers, dont
le nom se termine par 04 et ayant pour extension xls , dans un rpertoire
dont le nom est Budget sous-rpertoire de Sauve . Attention, si le rpertoire
Budget nexiste pas, le contenu de lensemble des fichiers copis sera copi dans
un nouveau fichier ayant pour nom Budget .
copy Frais04.xls Frais05.xls
copie, partir du rpertoire courant et du lecteur courant, le fichier de nom
Frais04.xls sous un autre nom Frais05.xls quil place dans le mme rpertoire
que le fichier dorigine.
copy Frais04.xls a:
copie, partir du rpertoire courant et du lecteur courant, le fichier de nom
Frais04.xls sur la disquette.

Avec cette commande, si la destination est un nom de rpertoire existant, les chiers indiqus en source seront copis dans le rpertoire destination . Si la destination nest pas un nom de rpertoire existant alors le chier Source sera
dupliqu avec comme nom, le nom prcis en destination.
Remarques

Il existe la commande xcopy qui permet de faire des copies plus complexes de fichiers
notamment des copies de rpertoires en incluant les sous-rpertoires du rpertoire Source .
La commande move permet de dplacer des fichiers. Attention, il ne faut pas confondre dplacer et copier . Dans le premier cas, les fichiers Sources sont supprims
du rpertoire Source alors que dans le deuxime cas, ils sont dupliqus.
La commande ren permet de renommer un fichier.
Toutes ces commandes spcifies dans ce paragraphe prennent des options dont vous
pouvez obtenir la liste avec l'option /? applique chacune d'elles.

7D11. La commande attrib


Syntaxe : attrib [ListeAttributs] NomFichier

Dans la syntaxe, il apparat les signes [ et ] . Cela signie que llment se


trouvant entre les crochets peut tre prsent 0 ou 1 fois.
Description : Il peut tre parfois ncessaire quun fichier (voire un rpertoire) soit cach
ou protg contre lcriture ou leffacement. Cela est possible en modifiant les attributs
de ce dernier. Il existe 4 attributs possibles :
cach ou hidden (attribut h ) qui permet de ne plus voir apparatre le

105
8 3999 TG PA 01

Squence 2

fichier lorsque l'utilisateur liste le contenu du rpertoire le contenant.


lecture seule ou read only (attribut r ) qui permet de protger un fichier
contre les modifications ou contre une suppression.
archive (attribut a ) indique si le fichier a t modifi depuis sa dernire sauvegarde. Cet attribut peut servir pour la commande xcopy .
systme (attribut s ) indique au systme d'exploitation si le fichier est un
fichier faisant partie de ceux utiliss par le systme d'exploitation.
Seuls les deux premiers attributs sont utiles dans la pratique pour protger un fichier ou
le masquer.
Exemples
attrib +r Frais04.xls
active lattribut Lecture seule pour le fichier Frais04.xls
attrib -r Frais04.xls
dsactive lattribut Lecture seule pour le fichier Frais04.xls
attrib +r +h Frais04.xls
active les attributs Lecture seule et cach pour le fichier Frais04.xls
attrib +r *04.xls
active lattribut Lecture seule pour tous les fichiers dont le nom se termine par
04 et ayant pour extension .xls se trouvant dans le rpertoire courant et le lecteur
courant.
attrib *04.xls
affiche la liste des attributs activs pour tous les fichiers dont le nom se termine
par 04 et ayant pour extension .xls se trouvant dans le rpertoire courant et
le lecteur courant.

7D12. Les autres commandes


Dans les points prcdents, nous avons tudi la syntaxe dun certain nombre de commandes de MS-DOS. Comme la majorit de commandes MS-DOS obissent aux mmes
rgles syntaxiques, nous nallons pas poursuivre en dtail leur explication dautant plus
que je vous rappelle que loption /? des commandes vous apporte toute laide ncessaire. Voici donc un tableau des commandes principales de MS-DOS.
Nom commande
attrib

Interne /Externe

fonction et commentaires
Afficher ou modifier les attributs dun ou
plusieurs fichiers. Cette commande accepte les
caractres jokers .

cd

externe
fichier excutable de nom :
attrib.exe
interne

cls

interne

Effacer lcran.

copy

interne

Copier un ou plusieurs fichiers un emplacement


donn. Cette commande accepte les caractres
jokers .

date

interne

Afficher ou modifier la date interne de


lordinateur.

Changer de rpertoire courant.

106
8 3999 TG PA 01

tude du systme dexploitation DOS

del

interne

deltree

externe
fichier excutable de nom :
deltree.exe

dir

interne

diskcopy

externe
fichier excutable de nom :
diskcopy.com

edit

externe
fichier excutable de nom :
edit.com

Application Editeur de texte fournie avec


MS-DOS.
Cf la commande del
Crer ou supprimer des partitions sur un disque
dur. La commande suivante :
fdisk /mbr
permet de remettre le programme de boot par
dfaut dans le mbr du disque dur dans le cas
o celui-ci aurait t cras par erreur ou par un
virus.
Permet deffectuer un formatage de haut niveau
sur une disquette, sur un disque ou une partition.
Loption /s permet de copier sur le support
format les fichiers ncessaires pour que MSDOS puisse booter savoir les fichiers cachs io.
sys et msdos.sys ainsi que linterprteur de
commande command.com .

Supprimer un ou plusieurs fichiers. Cette


commande accepte les caractres jokers .
Supprimer un rpertoire et tout ce quil contient
y compris les sous-rpertoires.
Lister le contenu dun rpertoire donn ainsi
quun certain nombre dinformations sur chacun
des lments affichs (Taille, Date de cration,
Heure de cration). Il est possible de prciser le
nom dun fichier ce qui permet dobtenir que
des informations sur ce dernier sil existe. Cette
commande accepte les caractres jokers .
Effectuer une copie physique dune disquette sur
une autre.

erase

interne

fdisk

externe
fichier excutable de nom :
fdisk.exe

format

externe
fichier excutable de nom :
format.com

keyb

externe
fichier excutable de nom :
keyb.com

label

externe
fichier excutable de nom :
label.exe

md ou mkdir

interne

mem

externe
fichier excutable de nom :
mem.exe

Afficher la quantit de mmoire utilis et


disponible

move

externe
fichier excutable de nom :
move.exe

Dplacer un ou plusieurs fichiers. Cette


commande accepte les caractres jokers .

prompt

interne

Permet de charger en mmoire le programme


de gestion du clavier correspondant au nom du
pays fourni en paramtre. Ainsi pour avoir un
clavier franais , il faut taper la commande
keyb fr .
Permet de donner un nom de volume un
disque ou une partition.
Crer un nouveau rpertoire.

Changer le message du prompt DOS.

107
8 3999 TG PA 01

Squence 2

rd ou rmdir

interne

Supprimer un rpertoire. Il faut obligatoirement


que le rpertoire soit vide.

ren ou rename

interne

Changer le nom dun fichier. Cette commande


accepte les caractres jokers .

subst

externe
fichier excutable de nom :
subst.exe

Associer une lettre de lecteur un rpertoire.


Cela permet daccder plus rapidement un
rpertoire souvent utilis. Attention, il faut
donner le chemin du rpertoire sous forme de
chemin absolu .
Remarque : si vous utilisez cette commande en
mode ligne de commande dans lenvironnement
Windows, Ce dernier reconnatra galement
le lecteur logique que vous venez dajouter. Il
apparatra dans lexplorateur de fichiers (Cf plus
loin dans le cours)..

sys

externe
fichier excutable de nom :
sys.com

Copier sur le support spcifi les fichiers cachs


io.sys et msdos.sys ainsi que linterprteur
de commande command.com afin de le
rendre bootable.

time

interne

Afficher ou modifier lheure interne de


lordinateur.

tree

externe
fichier excutable de nom :
tree.com

Afficher le schma de larborescence des


rpertoires soit partir du rpertoire courant du
lecteur courant soit partir du rpertoire spcifi
en paramtre. Attention, cette commande a t
retire dans lenvironnement DOS de Windows 98.

type

interne

vol

interne

Afficher le nom de volume du lecteur spcifi.


Par dfaut, la commande sapplique sur le lecteur
courant.

xcopy

externe
fichier excutable de nom :
xcopy.exe

la commande xcopy est une commande


plus volue que la commande copy car
elle permet de copier des fichiers et des sousrpertoires contenus dans le rpertoire de
dpart.

Afficher lcran le contenu dun fichier.

108
8 3999 TG PA 01

tude du systme dexploitation DOS

8.

Les fichiers batch


Un fichier batch , galement appel parfois script (notamment sous Windows et
Linux), est un fichier texte dont le contenu est interprtable par un OS ou plus exactement par linterprteur de commandes de celui-ci. Dans le cas de MS-DOS, il sagit, je
vous le rappelle, de command.com . Attention, il ne faut pas confondre un fichier
batch et un fichier programme (un fichier excutable ). En effet, un fichier
programme contient du code excutable (du code machine) alors quun batch
contient, sous forme de texte, un enchanement de commandes connues de lOS, qui vont
sexcuter de manire automatique. Le contenu dun fichier batch est modifiable via
un simple diteur de texte , ce qui nest pas le cas pour un fichier programme . Le
rle dun batch est de simplifier le travail des utilisateurs en automatisant un travail
long ou rptitif. Sous MS-DOS, un fichier batch a obligatoirement pour extension
.bat . Le fichier autoexec.bat est un exemple de fichier batch dont le contenu
permet dinitialiser lenvironnement de travail mais aussi de lancer de manire automatique dautres programmes. Les fichiers batch peuvent intgrer du code plus ou moins
complexe en fonction de la version de DOS. Pour linstant, dans ce paragraphe, nous
nous plaons dans le contexte du MS-DOS dans sa plus simple expression. Nous reviendrons sur les commandes batch lies Windows XP dans la prochaine squence. Eh
oui on peut encore faire de la programmation de batch sous Windows XP.
Voici un premier exemple que lon peut trouver dans le contenu dun fichier autoexec.
bat :
@echo off
Path=c:\;c:\dos
keyb fr
prompt $p$g
cd c:\travail

Et bien, entendu, quelques explications sur ces lignes :


@echo off

Dsactive les affichages intempestifs lcran. En effet, sans cette commande, command.
com affiche lcran le nom de la commande du batch quil est en train de traiter, et
ce juste avant de lexcuter, ce qui pollue un peu lcran.

Path=c:\;c:\dos

Dfinit les rpertoires de recherche des fichiers excutables et des fichiers batch .
Cela correspond aux extensions .com , .exe et .bat .

keyb fr

prompt $p$g

cd c:\travail

Excution dun programme qui reste en mmoire, appel galement programme rsident,
et qui a pour rle, dans cet exemple, de grer le clavier franais (clavier AZERTY ).
Attention, cela demande la prsence du fichier de configuration de nom keyboard.
sys dans le rpertoire courant ou dans lun des rpertoires de recherche (voir variable
denvironnement PATH ).
Dfinition des caractres affichs par le prompt DOS. Dans notre cas, on affiche le nom du
lecteur courant et du rpertoire courant ( $p ) ainsi que le symbole > ( $g ). Pour
connatre les autres codes de cette commande, noubliez pas la possibilit dappeler de
laide avec loption /? .
On se positionne sur le rpertoire travail se trouvant la racine du disque de nom
c: . Ce rpertoire devient le rpertoire courant. Attention, il doit exister.

109
8 3999 TG PA 01

Squence 2

En conclusion, un fichier batch est un fichier texte contenant un ensemble de


commandes qui seront traites automatiquement par lOS, et plus particulirement par
linterprteur de commandes, comme si elles taient entres au clavier par lutilisateur,
les unes aprs les autres. Toutes les commandes DOS tapes directement au clavier peuvent tre utilises dans un fichier batch .

O Un fichier batch , sous MS-DOS, doit avoir imprativement lextension .bat .


Au fait, comment faut-il procder pour mettre en place un fichier batch ? Pour crer
un fichier batch , il suffit de lancer lexcution dun programme diteur de texte ,
de taper les instructions souhaites et enfin de sauvegarder le fichier en lui donnant
lextension .bat . MS-DOS propose edit comme diteur de texte. Sous Windows,
on peut utiliser NotePad (le bloc-notes).
Et pour lancer lexcution dun fichier batch ? Il suffit de taper le nom du fichier
batch la suite du prompt DOS. Il nest pas ncessaire dans ce cas dajouter lextension .bat . Bien entendu, le fichier doit tre dans le rpertoire courant du lecteur
courant ou dans lun des rpertoires de recherche dfinis par la variable denvironnement PATH . Si tel nest pas le cas, vous devez imprativement changer de rpertoire
courant afin de vous placer dans celui qui contient le batch avant de lancer son
excution. Remarquez, il existe une autre solution qui consiste ajouter la description
du chemin relatif ou absolu permettant datteindre le fichier batch souhait.
Ainsi, par exemple, en supposant que le fichier batch souhait se nomme essai.
bat et quil se trouve dans le rpertoire c:\travail , il est possible de taper sur la ligne
de commande c:\travail\essai puis valider.
Ah je vois que vous souhaitez voir des exemples, alors lisez la suite. Sachez toutefois que
ce ne sont que quelques exemples permettant de mettre en avant les principes dutilisation des instructions des fichiers batch mais que nous ne dtaillerons pas toutes les
possibilits dutilisation.
Exemple 1 : Nous allons crire un programme batch qui affiche le texte Bonjour
tout le monde lcran. Pour cela, nous allons lancer lexcution dun programme
diteur de texte , par exemple edit , et taper le texte suivant :
@echo off
echo Bonjour tout le monde

Il ne vous reste plus qu sauvegarder le fichier batch , par exemple sous le nom
bonjour.bat , puis quitter lditeur de texte et enfin lancer lexcution du fichier
batch . Le texte souhait saffiche alors. Voil, ce nest pas plus difficile que cela de
mettre en place un batch .
Exemple 2 : Nous allons crire un programme batch qui effectue la sauvegarde sur
disquette du contenu de notre rpertoire de travail de nom c:\travail . Il faut, partir
dun diteur de texte, mettre en place le code suivant :
@echo off
echo Sauvegarde des fichiers
cd c:\travail
copy *.* a:
echo Fin sauvegarde

110
8 3999 TG PA 01

tude du systme dexploitation DOS

Les programmes batch , sous MS-DOS, peuvent utiliser toutes les commandes MS-DOS
dont nous avons parl prcdemment mais ils disposent galement dun jeu dinstructions spcifiques ce cadre.
En fonction de lOS sur lequel vous travaillez et de son numro de version, les
fichiers batch (les script) peuvent disposer dun jeu dinstructions supplmentaires plus ou moins riche, plus ou moins puissant. Voici quelques-unes des instructions de base du jeu MS-DOS :
Instructions

Descriptions

:label

Dfinit un label, un repre, une tiquette. Un label dfinit un point de


branchement partir duquel le batch doit poursuivre son excution.
(voir galement la commande goto ). Attention, le nom dun label est
prcd par deux-points ( : ) et ne doit pas dpasser 8 caractres.

call

Permet de lancer lexcution dun second fichier batch .

choice

Utiliser pour mettre en place des fichiers batch proposant un menu.


Attention, cette instruction nexiste pas avec Windows 2000. (Cf exemples
dutilisation plus loin).

echo

Affiche le texte pass en paramtre.

for

Dfinit une boucle. Cette instruction permet dexcuter des commandes


MD-DOS en boucle.

goto

Permet dindiquer, linterprteur de commande, que la suite des


commandes excuter se trouve au niveau du repre (label ou encore
tiquette) dont on prcise le nom la suite de linstruction goto .

if

Permet de mettre en place lexcution conditionne dune commande


MS-DOS. Si la condition teste est vraie, linstruction ou la commande
MD-DOS qui suit est alors excute.

pause

Suspend lexcution du batch jusqu ce que lutilisateur appuie sur


une touche.

rem

Le texte qui suit linstruction rem est du commentaire. Il nest donc


pas interprt par linterprteur de commande, il permet simplement
lutilisateur dapporter des prcisions pour lui-mme ou pour dautres
utilisateurs sur tout ou partie des instructions du fichier batch .

Exemple 3 : Nous allons crire un programme batch qui cre le rpertoire de nom
c:\travail si celui-ci nexiste pas. Voici le code :
@ECHO OFF
if exist c:\travail\nul goto present
md c:\travail
echo cration effectue
goto fin
:present
echo rpertoire dj prsent
:fin
echo Au revoir

Explication :
Si le rpertoire c:\travail existe, on effectue un saut l'tiquette de nom present . Dans le cas contraire, les instructions du batch continuent se drouler
squentiellement. Ainsi, le rpertoire c:\travail est cr en utilisant la commande
111
8 3999 TG PA 01

Squence 2

md , puis on affiche un message l'cran afin que l'utilisateur sache o il en est,


enfin on effectue un saut jusqu' l'tiquette fin de manire ne pas raliser les
instructions suivantes, ce qui aurait pour consquence d'afficher le message rpertoire dj prsent alors que l'on vient tout juste de le crer. L'utilisateur du programme batch risquerait de se poser beaucoup de questions si cela se produisait.
Dans la ligne d'instruction permettant de tester la prsence du rpertoire c:\travail , nous avons crit : c:\travail\nul . En fait, nul reprsente, en DOS, un
fichier virtuel. Il est notamment employ pour tester l'existence d'un rpertoire.
Avec la commande if dans le cas o la condition qui suit est vraie, dans notre cas
exist c:\travail\nul , alors on excute linstruction qui suit, pour nous goto
present .
Exemple 4 : Nous allons crire un programme batch qui teste la prsence de fichiers
ayant pour extension .bat dans le rpertoire c:\travail . Sil en existe, on change
lextension de ces fichiers en .sav . Voici le code :
@ECHO OFF
if exist c:\travail\*.bat ren c:\travail\*.bat *.sav

Dans cet exemple, linstruction if teste la condition exist c:\travail\*.bat . Si cette dernire est vraie, DOS excute la commande ren c:\travail\*.bat *.sav .
Exemple 5 : Nous allons crire un programme batch qui permet dexcuter un certain nombre doprations sur le rpertoire c:\travail . Pour cela, nous allons mettre en
place un menu avec linstruction choice . Attention, cette instruction nexiste pas dans
lenvironnement MS-DOS de Windows XP. Nous verrons cela dans la prochaine squence.
Pour linstant, voici le code :
@echo off
echo Menu de dmarrage:
echo 1) Faire sauvegarde vers disquette
echo 2) Lister le contenu du rpertoire
echo 3) Crer rpertoire de travail
echo 4) Quitter le batch
choice /C:1234 Votre choix ?
if errorlevel 4 goto Fin
if errorlevel 3 goto Creer
if errorlevel 2 goto Liste
if errorlevel 1 goto Copie
:Copie
if not exist c:\travail\nul goto NonRep
copy c:\travail\*.* a:
echo copie effectue
pause
goto fin
:Liste
if not exist c:\travail\nul goto NonRep
dir c:\travail\
pause
goto fin

112
8 3999 TG PA 01

tude du systme dexploitation DOS

:Creer
if exist c:\travail\nul goto RepPrs
md c:\travail
echo rpertoire cr
pause
goto fin
:NonRep
echo Impossible rpertoire inexistant
pause
goto fin
:RepPrs
echo: Impossible rpertoire existant
pause
goto fin
:fin
echo au revoir

Lors de lexcution de ce batch, nous obtenons lcran :

An de pouvoir traiter le choix effectu par lutilisateur, il faut employer la commande


if errorlevel suivi dun numro qui correspond la position du choix effectu par rapport la liste des choix se trouvant derrire loption /c de linstruction CHOICE . Attention, dans le batch , la liste des if errorlevel doit tre mise en place dans lordre
dcroissant des choix, cest--dire du dernier choix vers le premier (voir code de lexemple).
Remarque

Linstruction pause permet dinterrompre le droulement du batch jusqu ce que


lutilisateur appuie sur une touche.
Exemple 6 : Nous allons reprendre le programme prcdent mais cette fois-ci, lorsque
lun des choix effectu par lutilisateur a t ralis, on raffiche de nouveau le menu afin
que ce dernier puisse faire un autre choix. Le programme boucle jusqu ce que lutilisateur
choisisse Quitter le batch . Pour cela, on utilise linstruction goto afin de faire repartir
le programme au niveau du label de nom debut aprs quun des choix ait t trait.

113
8 3999 TG PA 01

Squence 2

Voici le nouveau code.


@echo off
:debut
echo Menu de dmarrage:
echo 1) Faire sauvegarde vers disquette
echo 2) Lister le contenu du rpertoire
echo 3) Crer rpertoire de travail
echo 4) Quitter le batch
choice /C:1234 Votre choix ?
if errorlevel 4 goto Fin
if errorlevel 3 goto Creer
if errorlevel 2 goto Liste
if errorlevel 1 goto Copie
:Copie
if not exist c:\travail\nul goto NonRep
copy c:\travail\*.* a:
echo copie effectue
pause
goto debut
:Liste
if not exist c:\travail\nul goto NonRep
dir c:\travail\
pause
goto debut
:Creer
if exist c:\travail\nul goto RepPrs
md c:\travail
echo rpertoire cr
pause
goto debut
:NonRep
echo Impossible rpertoire inexistant
pause
goto debut
:RepPrs
echo: Impossible rpertoire existant
pause
goto debut
:fin
echo au revoir

Dans un programme batch de MS-DOS, il est possible, comme pour les commandes
MS-DOS, de transmettre un paramtre sur la ligne de commande afin de gnraliser laction dun programme batch . Par exemple, le programme prcdent a t conu pour
raliser des oprations sur le rpertoire c:\travail . Cependant, rien ne vous empche
de vouloir crer un batch plus gnraliste et qui ralise les diffrentes oprations sur
un rpertoire dont on prcisera le nom sur la ligne de commande lorsque lon fera appel
au batch . Voyons comment fonctionne la notion de paramtre. En fait, il existe des
paramtres formels de nom %1 , %2 , ., %9 qui reprsentent respectivement le premier paramtre pass sur la ligne de commande, le deuxime paramtre, etc.

114
8 3999 TG PA 01

tude du systme dexploitation DOS

Voici des exemples de code :


@echo off
echo le paramtre est : %1

Nous enregistrons ce programme batch sous le nom param.bat puis nous excutons les lignes suivantes :

Dans le deuxime exemple dexcution, nous navons pas pass de paramtre donc le
programme naffiche rien la suite du texte le paramtre est : . Modifions notre code
afin de prendre en compte cette possibilit :
@echo off
rem on teste si le paramtre est vide
if "%1"==" " goto PasParam
echo le paramtre est : %1
goto fin
:PasParam
echo Il ny a pas de paramtre
:fin
echo Au revoir

Remarque

Dans cet exemple, on compare le contenu du paramtre %1 plac entre guillemets avec la
chane de caractres vide. Une chane de caractres vide se reprsente par deux guillemets
qui se suivent sans espace entre les deux.
Maintenant, modions notre exemple de batch prcdent dans lequel nous ralisions un certain nombre doprations sur le rpertoire c:\travail . Cette fois-ci, nous
allons passer en paramtre le nom et ventuellement le chemin du rpertoire sur lequel
nous souhaitons travailler. Sil existe, on afche le menu des oprations possibles. Sil
nexiste pas, on demande lutilisateur sil souhaite le crer.

115
8 3999 TG PA 01

Squence 2

@echo off
if "%1"==" " goto PasParam
if not exist %1\nul goto NonRep
echo Menu de dmarrage:
echo rpertoire de travail : %1
echo 1) Faire sauvegarde vers disquette
echo 2) Lister le contenu du rpertoire
echo 3) Quitter le batch
choice /C:123 Votre choix ?
if errorlevel 3 goto Fin
if errorlevel 2 goto Liste
if errorlevel 1 goto Copie
:Copie
copy %1\*.* a:
echo copie effectue
pause
goto fin
:Liste
dir %1
pause
goto fin
:NonRep
choice /c:on rpertoire inexistant, le crer ?
if errorlevel 2 goto Fin
if errorlevel 1 goto Creer
: Creer
md %1
echo rpertoire cr
goto fin
:PasParam
echo: Il manque un paramtre
:fin
echo au revoir

Dernier exemple : on afche les paramtres prsents sur la ligne de commande et on


afche un message pour ceux qui ne sont pas prsent parmi 9 possibles.
@echo off
if not "%1"=="" echo les paramtres sont : %1 %2 %3 %4 %5 %6 %7 %8 %9
if "%1 "=="" echo pas de paramtre 1 : %1
if "%2 "=="" echo pas de paramtre 2 : %2
if "%3 "=="" echo pas de paramtre 3 : %3
if "%4 "=="" echo pas de paramtre 4 : %4
if "%5 "=="" echo pas de paramtre 5 : %5
if "%6 "=="" echo pas de paramtre 6 : %6
if "%7 "=="" echo pas de paramtre 7 : %7
if "%8 "=="" echo pas de paramtre 8 : %8
if "%9 "=="" echo pas de paramtre 9 : %9

116
8 3999 TG PA 01

tude du systme dexploitation DOS

Remarque

On teste sil y a au moins un paramtre sur la ligne de commande afin de le ou les afficher,
puis on teste les paramtres manquants pour afficher un message dinformation.
Nous nirons pas plus loin dans la notion de batch sous MS-DOS car lessentiel est l
et nous en reparlerons dans le cas des batch avec Windows XP. Nanmoins, vous
trouverez des informations complmentaires sur Internet avec le mot-cl Batch ,
Batchs ou encore cours sur les batchs .

117
8 3999 TG PA 01

Vous aimerez peut-être aussi