Vous êtes sur la page 1sur 57

SYSTÈME D’EXPLOITATION

SOUS WINDOWS
Par GAKUBA
PLAN
IERE PARTIE: GENERALITES SUR LES SYSTEMES D’EXPLOITATION
• INTRODUCTION AUX SYSTEMES D’EXPLOITATION
• HISTORIQUE DES SYSTÈME D’EXPLOITATION
• FONCTIONALITES
• GESTION DE PROCESSUS
• GESTION DE LA MEMOIRE
• GESTION DES PERIPHERIQUES
• GESTION DES FICHIERS
IIEME PARTIE: ETUDE DU SYSTÈME D’EXPLOITATION WINDOWS
I. INTRODUCTION AUX SE
Définition

SE (en anglais Operating System ou OS) est un ensemble de


programmes responsables de la liaison entre les ressources
matérielles d'un ordinateur et les applications de l’utilisateur
(traitement de texte, jeu vidéos, etc.). Il assure le démarrage de
l'ordinateur, et fournit aux programmes applicatifs des
interfaces standardisées pour les périphériques.
Composition d’un SE(1)
Le SE est composé d'un ensemble de logiciels permettant de gérer les
interactions avec le matériel. On distingue généralement :

 Le noyau (en anglais kernel) représentant les fonctions fondamentales du


système d'exploitation telles que la gestion de la mémoire, des processus,
des fichiers, des entrées-sorties principales, et des fonctionnalités de
communication.
 L'interpréteur de commande (en anglais shell, traduisez «coquille» par
opposition au noyau) permettant la communication avec le système
d'exploitation par l'intermédiaire d'un langage de commandes, afin de
permettre à l'utilisateur de piloter les périphériques en ignorant tout des
caractéristiques du matériel qu'il utilise, de la gestion des adresses
physiques, etc.
Composition d’un SE(2)
 Le système de fichiers (en anglais «file system», noté FS), permettant
d'enregistrer les fichiers dans une arborescence.
Les SE actuels sont composés de 4 sous-systèmes distincts. Chaque sous-système
contrôle une catégorie de ressources systèmes ou périphériques. On distingue :
le gestionnaire de la mémoire, le gestionnaire de processeur, le gestionnaire de
fichier et le gestionnaire de périphérique.
Quelque soit la configuration du système, chaque gestionnaire doit effectuer les
tâches suivantes :
• Surveiller ses ressources continuellement
• Renforcer la stratégie qui dit qui fait quoi, quand et pendant combien de temps.
• Allouer les ressources au moment approprié
• Désallouer la ressources ou la réclamer au moment opportun.
Rôle d’un SE
1. Machine virtuelle.
• Masquer les éléments fastidieux du matériel pour fournir une
interface simple à utiliser.
• Permettre à plusieurs programme de fonctionner en même temps,
chaque programme ayant sa propre machine virtuelle. Le système
d’exploitation permet de maintenir cette illusion.
2. Gestionnaire de ressource.
• Ordonnancer et contrôler l’allocation des ressources.
• Processeur, mémoire, périphériques.
Exemples de SE
• Unix : Créé en 1969, rapidement multi-utilisateur, écrit en langage C.
• Linux : Clone gratuit d’UNIX pour les PC, open source.
• Mac OS :Premier à proposer le concept des fenêtres, du glisser-déposer, la
corbeille, le plug and-play; aujourd’hui possède le noyau Linux, avec une
interface graphique élégante et ergonomique, et optimisation particulière
des traitement multimédia.
• MS-DOS (Microsoft disque operating system) : SE des premiers PC, mono-
utilisateur, mono-tâche, interface ligne de commande.
• MS-Windows : Inspiré par l’interface Macintosh; tout d’abord, une coquille
graphique pour DOS. Seulement à partir de Windows 95 nous commençons
à assister à un transfert de nombreuses fonctionnalités de DOS vers
Windows.
• Windows NT : Système d’exploitation indépendant de DOS.
Techniquement nettement supérieur à Windows.
La place d’un SE
Quelques définitions(1)
1. Systèmes Multi-tache (Multitasking) :
• Un système d'exploitation est dit «multi-tâche»
lorsque plusieurs «tâches» (également appelées
processus) peuvent être exécutées simultanément ;
• Assurer l'éxécution de plusieurs programmes en
meme temps (c-à-d. plusieurs processus)
2. Systèmes Multi-processeurs :
• Le multiprocessing est une technique consistant à faire fonctionner plusieurs
processeurs en parallèle afin d'obtenir une puissance de calcul plus importante
que celle que obtenue avec un processeur haut de gamme ou bien afin
d'augmenter la disponibilité du système (en cas de panne d'un processeur).
• Un système multiprocesseur doit donc être capable de gérer le partage de la
mémoire
entre plusieurs processeurs mais également de distribuer la charge de travail.
Quelques définitions(2)
3. Systèmes Multi-utilisateurs (« time-sharing »)

• Ils ont pour but de partager équitablement l’unité


centrale à plusieurs utilisateurs et leur permettre a de
travailler avec un ordinateur en même temps
• connexion par
– via le terminal de l'ordinateur lui-même
– à distance (telnet, ssh, ftp, ...)
• donner l'impression à chaque utilisateur qu'il est seul Ceci à
cause des interruptions entrées/sorties et horloge qui
permettent de découper le temps en fragment de temps égal
qui sont attribués de manière cyclique à plusieurs utilisateurs
• exige une gestion des droits
– de fichiers (pour éviter la destruction des fichiers etc.)
– de processus
Quelques définitions(3)
4.Systèmes Temps réels ou systems réactifs
• Un système est qualifié de temps réels si le système de temps de réponse est <= 1 seconde.
• Servent à piloter les processus parallèles au sens industriel du terme tels que le pilotage automatique des
missiles, le montage des ateliers flexibles, les systèmes météorologiques
• Servent pour le pilotage et le contrôle des déroulements externes (p.ex. centrale électrique) doit garantir
des temps de réactions données pour des signaux extérieur urgents
• plusieurs systèmes d’exploitation n'y arrivent pas car l'interruption de certaines activités met le système
dans un état instable
5.Systèmes distribués / Repartis

• Ils sont conçus pour permettre le partage de ressources sur un ensemble de sites géographiquement
distribués entre plusieurs utilisateurs. Les données seront stockées sur plusieurs installations informatiques
connectées en réseau.
• doit permettre l'éxecution d'un seul programme sur plusieurs machines
• distribuer les processus et les remettre ensemble
• pour gros calculs, p.ex. inversion de grandes matrices
Quelques définitions(4)
6. SE Transactionnels
•Ils sont chargés de la gestion de grande bases de données accessibles par un grand nombre de
d’utilisateurs à la fois. Une transaction est une opération qui s’exécute entièrement pour résoudre
un problème ou une tâche précise. Par exemple, une opération peut être la réservation d’une place
dans un avion pour une catégorie de clients.

•Exemple de SE transactionnels : Minitel, Applications bancaires, Réservation de billets,…


7. SE pour mobiles
Systèmes d’Exploitation pour équipement mobile
• Ils sont conçus pour permettre l’utilisation des équipements mobiles
• Exemples: Symbian OS (Symbian Ltd dans les tel
Nokia), Android (Android Inc  Google; une
version modifiée du noyau Linux), Java ME (Sun
Microsystems), Iphone OS (Apple), Windows
Mobile (Microsoft), E-Linux, Palm OS, RIM de
BlackBerry
II. HISTORIQUE DES SE
• CP/M, sigle Control Program/Monitor ou /Microcomputer (depuis
1974), Digital Research
• UNIX (depuis 1969-1979), premier par AT&T
• MS-DOS (depuis 1981), Microsoft
• MacOS (depuis 1984), Apple
• Windows (depuis 1991), Microsoft
• Linux (depuis 1992), OpenSource
Historique(1)

CP/M (depuis 1974), Digital Research

– Gestion de disque dur, mais pas d'arborescence


– Pas de graphisme
– Exemple:
• CPU 8088, 2 MHz
• 64 KO de RAM
• 5 MO de disque dur
Historique(2)
UNIX (depuis 1969-1979), AT&T

– a servi de modèle pour MS-DOS, Windows, ..


– Multi-tâche et Multi-utilisateurs
• accès simultané aux fichiers, péripheriques,
mémoire, processeurs, ..
– Protection mémoire : aucun programme ne
peut faire planter le système
– systèmes de fichiers hiérarchique
– GUI X-Windows

MS-DOS (depuis 1981), Microsoft


Historique(3)
MacOS (depuis 1984), Apple
– premier GUI

Windows 3.11
– pas de multitâche, pas de multi-utilisateurs

Windows 95
– multi-tâche
– premier système 32 bit
Historique(4)
Windows 98
– Internet integré dans le GUI
– Plug & Play
• parallèlement Windows NT
– système d'exploitation réseaux multi-utilisateur

Windows 2000, et après Windows XP


– jumellage entre système d'exploitations réseaux et « stand-alone »
Historique(5)
Linux (depuis 1992), OpenSource
– finlandais Linus Thorwald
– Licence GPL (General Public Licence)
– OpenSource
– Multi-tâche et Multi-utilisateurs
– Distributions
• Red Hat
• Fedore
• S.u.S.e
• Debian
• Mandrake
III. FONCTIONNALITES
Buts d’un SE
• Fournir un environnement où l’utilisateur puisse exécuter des
programmes
• Rendre le système informatique pratique pour l’utilisateur
• Utiliser le matériel de façon efficace
• Programme d’allocation des ressources: gérer et allouer des
ressources
• Programme de contrôle: contrôler l’exécution des programmes
des utilisateurs et l’opération des dispositifs d’entrée/sortie
• Noyau (Kernel): le programme qui est exécuté tout le temps
(tout les autres sont des programmes d’application)
FONCTIONNEMENT EN MODE DOUBLE

• Au moment d’initialiser le système, le matériel démarre en mode


superviseur
• Ensuite le SE est chargé et démarre les processus utilisateurs en mode
utilisateur
• Chaque fois qu’un déroutement (trap) ou une interruption se produit, le
matériel commute du mode utilisateur au mode superviseur
• Chaque fois que le SE prend le contrôle de l’ordinateur, il est en mode
superviseur
• Le système commute toujours au mode utilisateur avant de donner la
main à un programme utilisateur
• Certaines instructions sont privilégiées, comme les instructions E/S.
Démarrage d’un Ordinateur : le BIOS
BIOS : Basic Input/Output System
• Stocké sur un circuit (sur une mémoire non volatile, mais remplaçable) de
la carte mère,
• Configurable par un menu lors du démarrage du système.
• Détermine ou chercher le système à démarrer (quel disque, lecteur CD
ou DVD, clef USB, disquette, par le réseau, . . . )
• Ici : démarrage d’un disque dur (par exemple le premier).
• Chaque disque contient une zone particulière qui est destinée au
démarrage du système. Lancement du binaire qui se trouve dans cette zone
du disque indiqué par le BIOS.
Concepts de base(1)

• Processus : Un processus est un programme en exécution,


• Programme: entité passive
• Processus: entité active (compteur d’instructions)
• Fichier : une unité de stockage logique, c’est-à-dire, un ensemble
d’informations en relation entre elles, qui est enregistré sur la
mémoire auxiliaire (disque).
• Le stockage dans un fichier permet la préservation d’une grande
quantité d’information de façon non volatile (résiste à la fin d’un
processus) et rend cette information disponible à plusieurs processus.
Concepts de base(2)
• Système de fichiers: Partie du SE responsable de la gestion de
fichiers.
• Shell : Principale interface entre un utilisateur placé devant son
terminal et le SE, sauf si l’utilisateur a recours à une interface
graphique.
• Quand un utilisateur se connecte un shell est lancé. Ce shell a pour
entrée standard le clavier du terminal et pour sortie standard son
écran. Il commence par afficher un prompt qui indique à l’utilisateur
que le shell est prêt à recevoir une commande.
III. GESTION DE PROCESSUS
1. Contexte et problématique
3. Les différentes fonctionnalités du processus:
3.1. Création et suppression du processus
3.2. Ordonnancement des processus
Différents stratégies d’ordonnancement
Méthode FIFO
Contexte du processus
IV. GESTION DES FICHIERS
Notion de fichier
Interface utilisateur
1. Les noms de fichier
Les types de fichiers
L’accès aux fichiers
Les attributs des fichiers
GESTION DES
PERIPHERIQUES (E/S)
Le Entrées/Sorties
Périphériques d’E/S
Les contrôleurs de périphériques
Modèle de connexion
Principes logiciels des E/S
Objectifs:

 indépendance vis-à-vis du matériel


Uniformisation des noms
Gestion des erreurs
Différentiation entres périphériques partagés et dédiés.
Structure du logiciel des E/S
Fonctions principales du logiciel d’E/S
GESTION DE LA MEMOIRE
La multiprogrammation avec des partitions
fixes
Le va-et-vient
La mémoire virtuelle
Emplacement et rôle de l’unité de gestion de
la mémoire

Vous aimerez peut-être aussi