0% ont trouvé ce document utile (0 vote)
19 vues36 pages

CHAPITRE 2 Systeme Dexploitation

Le document présente une introduction aux systèmes d'exploitation, expliquant leur rôle dans la gestion des ressources matérielles d'un ordinateur et leur interaction avec l'utilisateur. Il décrit l'évolution des ordinateurs, des premiers modèles manuels aux systèmes modernes multi-tâches, ainsi que les différents types de systèmes d'exploitation utilisés dans divers contextes, tels que les serveurs, les supercalculateurs et les systèmes embarqués. Enfin, il aborde les services fournis par un système d'exploitation, comme la gestion des fichiers, des programmes et des ressources réseau.

Transféré par

allanafrotrap5
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
19 vues36 pages

CHAPITRE 2 Systeme Dexploitation

Le document présente une introduction aux systèmes d'exploitation, expliquant leur rôle dans la gestion des ressources matérielles d'un ordinateur et leur interaction avec l'utilisateur. Il décrit l'évolution des ordinateurs, des premiers modèles manuels aux systèmes modernes multi-tâches, ainsi que les différents types de systèmes d'exploitation utilisés dans divers contextes, tels que les serveurs, les supercalculateurs et les systèmes embarqués. Enfin, il aborde les services fournis par un système d'exploitation, comme la gestion des fichiers, des programmes et des ressources réseau.

Transféré par

allanafrotrap5
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Introduction aux

Systèmes d’Exploitation

GIF-1001 Ordinateurs: Structure et Applications, Hiver 2015


Jean-François Lalonde
Bien que la majorité des slides proviennent de cette source, certains sont modifiés
http://wallpoper.com/wallpaper/happy-linux-409761
Rappel: Architecture von Neumann

Microprocesseur
Nous
Unité de calcul
(ALU)
Mémoire
Entrées
(données &
Sorties
instructions)
Unité de contrôle
(CCU)
Rappel: cycle d’instructions
Que fait le microprocesseur?
1. Lire: aller chercher la prochaine instruction

2. Décode: décode l’instruction (détermine ce qu’il y a à faire)

3. Exécute: exécuter l’instruction

2. DÉCODE

Décoder l’instruction

1. LIRE (FETCH)
3. EXÉCUTE
Aller chercher la prochaine
Exécuter l’instruction
instruction
Rappel: écriture et exécution d’un programme
Questions

• Comment le programme a-t-il été chargé en


mémoire?

• Comment faire pour dire à l’ordinateur de débuter


l’exécution d’un programme?

• Comment peut-on interagir avec un programme?

• Que doit-on faire quand un programme est terminé?

• Comment peut-on exécuter plus d’un programme?


ENIAC (Maulchy & Eckert,1946)
calculs de balistique durant la 2e Guerre Mondiale

les panneaux à gauche étaient les programmes: il fallait programmer


manuellement en branchant et débranchant ces connexions

18,000 tubes à vide, 15,000 pieds carrés, 30 tonnes, 140 kwatts puissance
Les premiers ordinateurs
• Les premiers ordinateurs avaient un microprocesseur, une
mémoire, un périphérique d'entrée, quelques voyants et une
imprimante.

Le programmeur devait charger manuellement le programme en


mémoire à l'aide du périphérique d'entrée (comme un lecteur de
cartes perforées). Pendant ce temps, le microprocesseur était
déconnecté.

Pour démarrer le programme, des interrupteurs étaient utilisés. Les


voyants indiquaient si le programme fonctionnait correctement ou s'il y
avait des erreurs.

Seul un programme pouvait être exécuté à la fois, et il fallait souvent


réserver son tour pour utiliser l'ordinateur.

Slide pas inclus dans la source


Les premiers ordinateurs
Comme nous venons de le voir, dans les premiers ordinateurs, tout devait être
fait manuellement. Les programmeurs devaient charger eux-mêmes les
programmes en mémoire, et le microprocesseur était déconnecté pendant ce
processus. Une fois le programme en cours d'exécution, il n'y avait pas vraiment
de gestion automatique des erreurs ni de moyens pour exécuter plusieurs
programmes en même temps.

C’est à ce moment-là que l'idée des systèmes d'exploitation a émergé. Avec


l'évolution des ordinateurs, il est devenu nécessaire de trouver un moyen plus efficace
de gérer toutes ces tâches. Les systèmes d'exploitation ont été développés pour
automatiser la gestion de la mémoire, permettre l'exécution de plusieurs programmes
en même temps, et améliorer l'interaction entre l'utilisateur et l'ordinateur.

Slide pas inclus dans la source


Système d’exploitation (SE) — définition générale

• Un système d’exploitation est


• un ensemble de programmes

• qui gèrent les ressources matérielles d’un ordinateur et


qui rendent ces ressources disponibles à l’usager,

• de telle sorte que l’usager peut utiliser efficacement son


ordinateur.
Système d’exploitation

Ordinateur
Nous
Micro-processeur

Système
Périphériques d’exploitation

Mémoire

Applications
Analogies
• Un illusionniste :
• Fait disparaître certaines limites du
matériels

• Donne l’illusion que la machine a une


mémoire infinie et une infinité de
processeurs

• Un gouvernement :
• Protège les utilisateurs les uns des autres

• Partage des ressources de façon efficace et


équitable

Crédit: P. Giguère
Restrictions vs. possibilités

• S.E. est l’équivalent de vivre en société

Crédit: P. Giguère
Restrictions vs. possibilités
Le système d'exploitation (S.E.) peut être comparé à la vie en
société. Comme dans une société, un système d'exploitation impose
des règles et gère la répartition des ressources.

1. Partage des ressources : Un système d'exploitation doit gérer les


ressources de l'ordinateur, comme le processeur (CPU), la
mémoire et les périphériques. Il permet à plusieurs programmes de
partager ces ressources matérielles de manière efficace.

2. Perte de liberté : En vivant dans une société, il faut respecter des


règles qui limitent la liberté individuelle. C'est pareil pour un
programme qui fonctionne dans un système d'exploitation. Chaque
programme doit respecter les règles établies par le système pour
éviter les conflits avec d'autres programmes.

3. Augmentation des possibilités : Bien que le système impose des


restrictions, il permet également de faire beaucoup plus de choses.
Par exemple, un programme peut fonctionner en parallèle avec
d'autres, bénéficier de la gestion automatique des ressources, et
avoir accès à plus de capacités matérielles.
Slide pas inclus dans la source
Crédit: P. Giguère
Rôles du système d’exploitation

• Les principaux rôles d’un système d’exploitation


sont:
• Fournir une interface usager conviviale.

• Gérer, lire et exécuter des programmes.

• Gérer les ressources matérielles de l’ordinateur.

• Le but d’un système d’exploitation est de faciliter


l’utilisation de l’ordinateur et de rendre son utilisation
efficace.
Le système d’exploitation: un programme

• Le système d’exploitation est un programme.


• Il occupe une partie de la mémoire de l’ordinateur.

• Il est chargé en mémoire par le BIOS (pendant le démarrage)

• Le rôle du système d’exploitation est de lancer d’autres


programmes. Il doit « abandonner » le contrôle du
microprocesseur aux autres programmes pour que ceux-
ci puissent être exécutés.
Vision simplifiée des services d’un SE
Vision simplifiée des services d’un SE
Vision simplifiée des services d’un SE
•Usager/Programmeur :
•Qui : Vous, l'utilisateur ou le programmeur, interagissez avec le
système d'exploitation.
•Comment : Vous utilisez une interface de commandes ou des
applications et utilitaires pour communiquer avec l'ordinateur.

•Interface de commandes :
•Fonction : C'est l'endroit où vous entrez des commandes pour
dire à l'ordinateur ce qu'il doit faire. Par exemple, dans un terminal
ou une ligne de commande (cmd).
•Lien avec l'usager : L'interface permet à l'utilisateur de
communiquer directement avec le système d'exploitation.

Slide pas inclus dans la source


Vision simplifiée des services d’un SE

•Applications et Utilitaires :
•Fonction : Ce sont des programmes que vous utilisez tous les
jours (comme un traitement de texte, un navigateur, etc.). Ces
applications utilisent le système d'exploitation pour fonctionner.
•Lien avec l'usager : L'utilisateur utilise ces applications, qui à
leur tour dépendent du système d'exploitation pour accéder aux
ressources matérielles.

•Gestion des fichiers :


•Fonction : Le système d'exploitation gère vos fichiers et
dossiers, permettant leur stockage, récupération, suppression, et
organisation sur des disques.
•Lien : C'est ici que toutes les opérations liées aux fichiers sont
traitées avant d'être envoyées au noyau pour accès au matériel.

Slide pas inclus dans la source


Vision simplifiée des services d’un SE
•Gestion du réseau :
•Fonction : Le système d'exploitation gère vos connexions
réseau, que ce soit pour accéder à Internet ou à d'autres
ordinateurs.
•Lien avec le matériel : La gestion du réseau permet au
matériel réseau, comme les cartes réseau, de communiquer
avec les autres machines.

•Gestion des Entrées/Sorties (E/S) :


•Fonction : Elle gère la communication entre l'ordinateur et
ses périphériques, comme les claviers, les écrans, les
imprimantes, etc.
•Lien avec le matériel : Cette partie du S.E. permet aux
périphériques d'envoyer ou de recevoir des informations.
Slide pas inclus dans la source
Vision simplifiée des services d’un SE
•Noyau du Système d'Exploitation (kernel) :
•Fonction : Le noyau est le cœur du système d'exploitation. Il
gère les ressources matérielles et exécute les instructions
données par les autres parties du système d'exploitation. Il
est responsable de la gestion de la mémoire, des processus
et de la communication avec le matériel.
•Lien avec tout : Il agit comme une passerelle entre toutes
les parties (fichiers, réseau, E/S) et le matériel de l'ordinateur.

•Réseau et Matériel :
•Réseau : Il représente les connexions extérieures de
l'ordinateur (Internet, autres ordinateurs, etc.).
•Matériel : Il s'agit des composants physiques de l'ordinateur
(CPU, mémoire, disques, etc.).
Slide pas inclus dans la source
Vision simplifiée: Résumé
• Un système d’exploitation doit fournir les services suivants:
• Une interface de commandes pour l’usager
• Un support pour la création de programmes
• Une gestion des fichiers
• Une gestion des programmes et applications
• Une façon de poursuivre le démarrage de l’ordinateur amorcé par le
BIOS
• Un service des interruptions (Software et Hardware)
• Une gestion des entrées/sortie et du matériel qui y est relié.
• Des services pour les réseaux et pour le matériel qui y est associé.
• Une mesure des statistiques et performances de l’ordinateur.
Processus
• E/S = entrée-sortie Exemple
•Processus 1 : Le traitement de texte (une tâche).
•Processus 2 : La calculatrice (une autre tâche). pas inclus dans la source

Crédit: P. Giguère
SE “mono-tâche” (e.g. MS.DOS)

• Un seul programme peut être exécuté à la fois

• Tout de même pas si simple! Il peut:


• gèrer des périphériques.

• traiter les interruptions du système.

• fournir un interpréteur de commandes pour traiter les requêtes de l’usager

• charger un programme en mémoire, puis de l’exécuter

• fournir un ensemble de routines disponible pour la création de programmes.

• gèrer les fichiers et les accès disques.

Crédit image: P. Giguère


SE “multi-tâches” (e.g. UNIX ou
windows 10)

• détermine la séquence de programmes à exécuter selon


plusieurs facteurs (priorité, utilisation d’entrées/sorties,
conflit de ressources, etc.)

• offre des protections et des niveaux de sécurité pour les


accès aux ressources de l’ordinateur.

• gère une mémoire et des ressources pouvant être


communes à plusieurs processus.

• gère la communication avec d’autres ordinateurs.


Crédit image: P. Giguère
Type: SE dans les PCs
• Certainement les plus familiers
• Monotâche (expel/MS-DOS) — multitâches

• Importance d’une GUI conviviale

(graphical user interface)

• Support pour nombreux périphériques

• Nombreux logiciels disponibles

• Exemples:
• Windows XP/Vista/7/8/10..

• MacOS

• Ubuntu (Linux)

Crédit: P. Giguère
Type: SE dans les Serveurs
• 1. Solaris :

• Utilisé principalement pour des serveurs d'entreprise dans


les environnements de haute disponibilité.

• Systèmes critiques, comme ceux des entreprises financières


ou des télécommunications.

• Prisé pour sa gestion de gros volumes de données et sa


stabilité dans les systèmes de production.

• 2. FreeBSD (Berkeley Software Distribution) :

• Utilisé dans les serveurs web, les serveurs de fichiers et


dans les systèmes de réseau.

• Apprécié pour sa stabilité, sa sécurité, et son efficacité dans


la gestion des ressources, notamment dans les infrastructures
réseau.

• Utilisé par des entreprises comme Netflix pour diffuser du


contenu multimédia.

Crédit: P. Giguère
Type: SE dans les Serveurs
• 3. Linux :

• Employé dans une variété de serveurs, y compris les serveurs web,


serveurs de bases de données, serveurs de fichiers, etc.

• Utilisé pour les supercalculateurs, les serveurs cloud et les systèmes


embarqués.

• Distribution comme Ubuntu Server, CentOS, et Red Hat sont largement


utilisées dans des environnements professionnels.

• 4. Windows Server 20xx :

• Utilisé dans les infrastructures d'entreprise, notamment pour gérer des


réseaux d'entreprise, des serveurs de fichiers, des serveurs de bases
de données, des services web, etc.

• Permet de déployer des services Active Directory, des serveurs


Exchange, et des environnements de virtualisation avec Hyper-V.

• Populaire dans les environnements professionnels qui utilisent des


services Windows pour la gestion de leur infrastructure.

Crédit: P. Giguère
Type: SE dans les Serveurs à grande
echelle (solutions basées sur Linux )
• Google: >450,000 serveurs (BORG, Kubernetes)

• Facebook: >60,000 serveurs (CentOS)

• Utilisent souvent des versions propriétaires comme S.E. (développent


leurs propres S.E.)

• 1.3% de l’électricité mondiale est utilisée pour les “data centers”

Crédit: P. Giguère
Type: SE pour les Super-calculateurs
La majorité des supercalculateurs dans le monde, y compris ceux dans le Top500, fonctionnent
sur des versions modifiées ou spécialisées de Linux. Les raisons sont nombreuses : Linux est
open source, hautement personnalisable, et performant dans les environnements
massivement parallèles.

• Grosses tâches
• calcul scientifiques: météo, séquençage de génôme, etc.

Crédit: P. Giguère
Type: SE dans les Systèmes embarqués
• S.E. simplifiés
• peu ou pas d’interface usager

• taille mémoire + CPU réduite

• Peuvent être mono-tâches

• Pas de démarrage de nouveaux


processus par l’usager : statique

• Exemples :
• QNX, VxWorks,

• Kernel Linux + Busybox

Crédit: P. Giguère
Type: SE dans les Systèmes à temps-
réel
• Met l’accent sur la prédictibilité des temps
d’exécution

• e.g. exécuter tâche exactement à chaque


milliseconde

• Exemples:
• QNX

• VxWorks

• FreeRTOS

• Real Time Linux

Crédit: P. Giguère
Type: SE dans les Systèmes mobiles
• Systèmes fermés (l’accés aux composants matériels ou logiciels est limité ou
restreint)
• Petit / CPU limitée / téléphonie / réseau / GPS
• Faible consommation électricité
• Emphase sur l’interface graphique, pas la performance calcul
• Démarrage rapide, utilisation courte

Apple iOS Android OS Windows Phone OS

Crédit: P. Giguère
Références et exercices

• Références
• Englander: Section 15.1, 15.2 (début) et 15.8

• Exercices
• http://vision.gel.ulaval.ca/~jflalonde/cours/1001/h15/index
.html#ressources

Vous aimerez peut-être aussi