Cours sur les systèmes d'exploitation - Introduction aux systèmes d’exploitation SE Windows - Linux

1-     Notions sur les SE
       1.1        Définition
       1.2     Classification des SE
                 1.2.1     Le système mono-tâche
                 1.2.2     Le système multitâche 
                 1.2.3     Le système multi-utilisateur (étude en 2éme année)

2-     les fonctions du SE
 
       2.1     Le chargement 
       2.2     La communication Homme-Machine 
       2.3     Fournir des services d’accès aux ressources 
       2.4     Gérer des fonctions complexes 
                 2.4.1     La gestion de l’unité centrale 
                 2.4.2     Gestion des processus 
                 2.4.3     La gestion de la mémoire centrale 
                 2.4.4     La gestion des entrées-sorties 
                 2.4.5     La gestion des fichiers

3-     Les principaux SE du marché
 
       3.1     Gros systèmes 
       3.2     Les serveurs 
       3.3     Les postes de travail
   
1     Notions sur les SE 
  
1.1     Définition

Le système d’exploit ion SE ou OS en anglais (Operating System) est un logiciel nécessaire au fonctionnement d’un ordinateur, il est l’interface entre le  matériel  et  l’utilisateur.  Tous les logiciels auxquels l’utilisateur a accès ne sont  pris en compte par la machine qu’au travers du système d’exploit ion.  A chaque type de matériel correspond un type de système d’exploit ion(Ms-Dos, Windows, Mac-OS, Unix…)
  


Le SE :
 
  • Pilote les organes de l'ordinateur (écran, clavier, disque, mémoire centrale...) 
  • Lance en exécution les divers programmes


Le SE  est composé :
  
  • D’un noyau (kernel) : qui assure la gestion des processus : cœur du système
  • Le noyau est de plus en plus restreint à sa fonction principale.
  • On parle de micro noyau.
  • D’autres composants logiciels assurant les fonctions du système :
    • Gestion de fichiers 
    • Gestion de mémoire
    • Gestion des entrées-sortes
    • Interpréteur de commande :

Schéma complet d'un SE 
   

  
1.2     Classification des SE
  
Il existe trois types de SE :

1.2.1  Le système mono-tâche

  
Il ne gère qu'une seule tâche à la fois (un seul programme). Quand le programme est lancé, il utilise seul  les ressources de  la  machine  et  ne  rend  la  main  au  système  d'exploit ion  qu'en  fin  d'exécution,  ou  en  cas d'erreur.
 
Exemple : MS-DOS
 
1.2.2  Le système multitâche
  
Le système multitâches (mono-utilisateur) gère simultanément plusieurs programmes sur une même machine. Il  permet  de partager le temps du  processeur pour plusieurs programmes,  ainsi  ceux-ci  sembleront  s'exécuter simultanément.  Le principe est  d'allouer du  temps à différents programmes(taches ou  processus) fonctionnant simultanément. Ces tâches seront tour à tour actives, en attente, suspendues ou détruites, suivant la priorité qui leur est associée. Le temps alloué peut être fixe ou variable suivant le type de partage géré par le SE.

Exemple : OS2 d'IBM , Windows 95-98…


Schéma de séquencement de tâches 

   

   
1.2.3  Le système Multi-Utilisateur (étude en 2éme année) 
 
Les caractéristiques principales sont :
   
  • gestion d'environnement propre à chaque utilisateur (identification, ressources propres 
  • sécurité d'accès aux programmes et aux données 
  • notion de droits d'accès
  
Ce type de système fait apparaître la notion d'administrateur qui gère le système, indique les priorités, partage l'espace disque, déclare les utilisateurs, les supprime, établit des stratégies de sauvegarde et de sécurité
 
Exemple : Windows NT 2000 XP, Linux, Unix…

2     les fonctions du SE
 
Un système d’exploit ion joue différentes fonctions essentielles :
  
  • Il  gère  l’ensemble  des  échanges  entre  le  microprocesseur,  la  mémoire  centrale  et  les    unités périphériques;
  • Il  met  à  la  disposition  de  l'utilisateur un  certain  nombre  de  commandes et  il  gère leur    exécution (formatage des disquettes, copie de fichiers...
  • Il détecte les erreurs, les gère et informe l’utilisateur.
 
2.1     Le chargement
 
C’est la phase de démarrage de l’ordinateur appelé également "Boot sequence". A la mise sous tension, un programme du Bios recherche à un endroit  définit  (disque,  disquette, clé,  CD-ROM…) un programme "Boot loader" qu'il  charge en  mémoire et  qui  va s'exécuter.  Ce programme est  déjà une partie du SE  qui  va charger différents "morceaux" du SE qui vont ensuite s'exécuter.. L’ensemble du système d’exploit ion est ainsi chargé et exécuté.
  

   
2.2      La communication Homme-Machine 

Dés que le système est chargé, l'utilisateur a normalement "la main" pour envoyer des ordres au SE qui  les  exécutera.  Ces  ordres  peuvent  être  envoyés  soi  en  mode  console  (ligne  de  commande),  soit  en  mode graphique.  Certains SE  ne  sont  qu'en  mode  console  (M S-Dos).  Les ordres peuvent  également  être  lancés à travers l'exécution  d'application  ou  de fichiers de commande (fichiers "batch").  Dans certains cas,  l' utilisateur devra au préalable s'identifier (fenêtre de login).

2.3     Fournir des services d’accès aux ressources

On  n’utilise pas une machine pour son  seul  système d’exploit ion  mais pour les logiciels applicatifs que l’on  installe en  complément  du  S.E.  Ces applications utilisent  des services du  S.E  pour lire ou  écrire un fichier sur le disque,  pour connaître la date du  jour …  L’ensemble de ces services est  fourni  par le SE  et  le développeur d'application  n'a  pas à  les ré-écrire.  Ces  services sont  appelés API  (Application  Programming Interface). Sous Windows, on parle de l'API Win32.
 
Du point de vue du programmeur, l’API est un ensemble de fonctions qu’il est possible d’appeler dans un programme afin d’obtenir des services de la part du SE. De ce fait tout logiciel est conçu pour fonctionner sur un SE particulier.
 
2.4     Gérer des fonctions complexes 
 
Le  SE,  une  fois démarré,  gère  au  mieux  les ressources matérielles :  processeurs,  mémoire  centrale, périphériques suivant les demandes des applications.
 
2.4.1  La gestion de l’unité centrale

La gestion de l’unité centrale(processeur) consiste à distribuer le processeur entre les différents travaux à exécuter.  Cette fonction  est  simple  dans le  cas d’un  système  mono-tâche.  En  ce  qui  concerne  un  système multitâche, la concurrence pour l’accès au processeur entre les différents travaux est gérée par l’attribution d’un niveau de priorité et d'une portion de temps de l'unité centrale.

2.4.2  Gestion des processus

 
On  parle  dans  le  cas  de  systèmes  multitâches  de  gestion  des  processus,  les  processus  étant  des programmes ou  des parties de  programmes lancés  par le  SE  en  arrière-plan  (Une  application  peut  générer plusieurs processus). Un processus peut être actif (en cours d'exécution ) ou inactif (en attente d'exécution).
 
Il  ne  peut  y  avoir qu'un  processus actif à  la  fois.  Le  changement  d'état  d'un  processus se  fait  sous couvert  du  SE  suie à une interruption  reçue soi  par un  dispositif d'entrée-sorte,  soi  à intervalle régulier de
manière à répartir le temps entre les processus effectuant un traitement. Un processus peut rendre la main au SE en fin de traitement.
  • Un  système  est  dit préemptif  lorsqu'il  possède  un  Ordonnanceur  (aussi  appelé planificateur),  qui répartit, selon des critères de priorité  le temps machine entre les différents processus qui en font la demande.

2.4.3  La gestion de la mémoire centrale

Les applications occupent et utilisent de la place en mémoire, le SE a pour rôle de gérer en permanence un plan d'occupation  de la  mémoire (organisation et  optimisation de la mémoire).Le SE  gère le chargement des programmes en mémoire centrale.  En cas de besoin,  le SE  répartit  les besoins entre la mémoire vive et  la mémoire virtuelle (place allouée sur le disque dur). On parle alors de swapping. Pour répartir la mémoire entre application, plusieurs techniques peuvent être mise en œuvre :
   
  • La pagination : Les programmes sont découpés en pages de longueur fixe correspondant aux segments de mémoire alloués.
  • La segmentation  permet  un  découpage plus fin  et  adapté aux  besoins.  Les programmes ne sont  pas découpés en  pages de  tailles fixes mais en  segments dont  la  taille  est  adaptée  au  programme.  Les segments peuvent être implantés en mémoire centrale ou en mémoire virtuelle
   
La mémoire peut également être gérée de façon mixte.
 
Un  des  problèmes  important  est  la  réallocation  de  la  mémoire  lorsque  celle-ci  est  libérée  ou  la récupération  de  la  mémoire non    libérée  par des applications.  Certains systèmes disposent  d'un  dispositif de ramasse miette (Garbage Colector) qui récupère la mémoire non libérée.
  

  
2.4.4  La gestion des entrées-sorties
 
Cette fonction  consiste à prendre en  charge l'échange  d'information  entre l’ordinateur et  l’extérieur. Cette gestion comprend à la fois l'installation (ajout, suppression, mise à jour) que l'utilisation de périphériques. Ces différentes fonctions sont assurées par des pilotes (drivers).

2.4.5  La gestion des fichiers
 
Le système de gestion de fichiers prend en charge les opérations de lecture-écriture de fichiers sur des ressources autre que la mémoire centrale(disque, disquette,  clé USB…). Il gère à la fois les fichiers, les répertoires et tient à jour la table d'allocation (File Allocation Table) qui permet d'associer le fichier à son implantation physique sur le disque, mais également de gérer l'espace disponible sur celui-ci .

Un certain nombre de commandes et d’utilitaires sont mises à la disposition de l’utilisateur pour gérer ses fichiers et ses répertoires (copie, renommage, création de répertoire, formatage..).

3     Les principaux SE du marché  

3.1     Gros systèmes 

Le marché des gros systèmes est essentiellement dominé :
 
  • soit par IBM  et son AS400 tournant sous OS400, ou d'autres systèmes (Z-OS, OS390 …)
  • soit par des machines fonctionnant sous UNIX.

Néanmoins, Linux est de plus en plus présent également sur ce marché.

3.2     Les serveurs 
  • Unix ou Linux de plus en plus 
  • Les systèmes Windows (NT serveur, 2000 serveur, 2003)
  • Novell
 
3.3     Les postes de travail 
 
Les postes de travail sont composés aujourd'hui en majorité de PC. Les systèmes utilisés sont donc ceux fonctionnant sur cette plate-forme :
 
  • MS-Dos 
  • Windows 95, 98, NT Work-station, Millenium, 2000 Pro , XP Pro 
  • Linux 

Les autres systèmes 
 
  • Mac-Os 
  • Système X 
  • Sun-Os 
  • Free-Bsd
 
Les étapes importantes des OS : 
   

              

Article plus récent Article plus ancien

Leave a Reply