Académique Documents
Professionnel Documents
Culture Documents
1re anne
Alain Tarlowski
Architecture logicielle
des systmes informatiques
Cours 1 (systmes dexploitation)
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
119
203
293
3
8 3999 TG PA 01
Squence 1
2.
4.
5.
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.
7.
7A.
7B.
7C.
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.
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
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
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
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.
10
8 3999 TG PA 01
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
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.
14
8 3999 TG PA 01
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
Systme dexploitation
en mode caractre
Systme dexploitation
en mode graphique
Remarque
17
8 3999 TG PA 01
Squence 1
4.
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
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.
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
IBM PC 8088
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
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.
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
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.
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
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
6.
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
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.
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
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)
Code d'identification
(signature)
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
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
Nombre d'octets
concerns
Signification
2 et 3
6 et 7
8, 9, 10 et 11
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
36
8 3999 TG PA 01
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
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
Description
0x00
Vide
0x04
FAT16 (<32Mo)
0x05
Partition tendue
0x06
0x07
0x0B
FAT32
0x0C
37
8 3999 TG PA 01
Squence 1
0x0E
0x0F
0x14
0x16
0x17
NTFS cach
0x1B
FAT32 cache
0x1C
0x42
0x82
Linux, (swap)
0x83
0x85
Linux tendue
0x8A
Linux Kernel
0x93
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
Numro du secteur
07 06 15 14 13 12 11 10 09 08
Valeur 0
05 04 03 02 01 00
1
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
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
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.
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
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
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
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
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
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
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
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
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
56
8 3999 TG PA 01
57
8 3999 TG PA 01
58
8 3999 TG PA 01
59
8 3999 TG PA 01
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
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
Numro du secteur
N bit
07
06
15
14
13
12
11
10
09
08
05
04
03
02
01
00
Valeur
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
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
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
Image 2
Image 3
Image 4
Image 5
Image 6
Image 7
Image 8
Image 9
Image 10
Image 11
Image 12
68
8 3999 TG PA 01
7.
7A.
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
Squence 1
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.
72
8 3999 TG PA 01
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
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
7C.
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.
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.
76
8 3999 TG PA 01
Squence 2
1.
1.
Historique ................................................................................................ 77
2.
3.
4.
5.
6.
7.
7A.
7B.
7C.
7D.
8.
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
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.
8 3999 TG PA 01
Squence 2
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.
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 =
FILES =
BUFFERS =
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 =
SHELL =
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
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
84
8 3999 TG PA 01
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.
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
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
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
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
88
8 3999 TG PA 01
4.
Nom . Extension
La partie Nom :
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
90
8 3999 TG PA 01
6.
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.
7A.
92
8 3999 TG PA 01
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.
93
8 3999 TG PA 01
Squence 2
DOS ne fait pas de diffrence entre les caractres en majuscule et les caractres en minuscule.
Remarques
7C.
94
8 3999 TG PA 01
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
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.
96
8 3999 TG PA 01
Remarques
Maintenant que nous venons dapporter toutes ces prcisions, il ne reste plus qu nous
lancer dans ltude de certaines commandes. Allez cest parti !
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
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
100
8 3999 TG PA 01
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.
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.
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
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 :
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.
104
8 3999 TG PA 01
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.
105
8 3999 TG PA 01
Squence 2
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
date
interne
106
8 3999 TG PA 01
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
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
move
externe
fichier excutable de nom :
move.exe
prompt
interne
107
8 3999 TG PA 01
Squence 2
rd ou rmdir
interne
ren ou rename
interne
subst
externe
fichier excutable de nom :
subst.exe
sys
externe
fichier excutable de nom :
sys.com
time
interne
tree
externe
fichier excutable de nom :
tree.com
type
interne
vol
interne
xcopy
externe
fichier excutable de nom :
xcopy.exe
108
8 3999 TG PA 01
8.
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
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
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
call
choice
echo
for
goto
if
pause
rem
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
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
: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
113
8 3999 TG PA 01
Squence 2
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
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
116
8 3999 TG PA 01
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