SlideShare une entreprise Scribd logo
Systèmes
d'exploitation
Introduction
L’equipe
• Cours:
– Alexandru Radovici (ACS)
• TP:
– Iuliana Marin (FILS)
• Devoir:
– Răzvan Șerban (ACS)
– Ioana Culic (ACS)
• Ressources
– Răzvan Deaconescu, Mihai Carabaș et l’équipe USO et SO
de ACS
2
Les courses de systèmes
FI
SdE
SO2 (a ACS)
Espace noyau
Espace utilisateur
API de SE
Utilisation de SE
3
Bibliographie
Andrew Tanenbaum, Modern Operating Systems,
2nd Edition
A. Silberschatz, P. Baer Galvin, G. Gagne, Operating
Systems Concepts, 9th Edition
Michael Kerrisk, The Linux Programming Interface,
Steve Summit, C Programming Notes, http://c-
faq.com/~scs/cclass/notes/
4
Ressources pour le cours SdE
• Site web: http://ocw.cs.pub.ro/courses/sde/
• GitHub issues: https://github.com/upb-
fils/sde/issues
• Diapositives de cours
• Catalogue et calendrier Google
• Les machines virtuelles
• vmchecker
• La documentation
5
Contenu
Cours
• 14 cours
• diapositives
• bibliographie
– Très important de lire
TP
• 12 TP
• Linux
• Programmation en C
• C’est important de
collabores avec votre
collègues
6
C Standard 99
Linux
Devoirs
Contenu
• Linux
• Allocation de mémoire
• Mini-shell
• Fils d’exécutions
• Système de fichiers
Développent
• Linux ou Windows
Subsystem for Linux
• 8-20 heures pur une devoir
– Test des devoirs avec
vmchecker
• Questions sur Github Issues
Les devoirs sont individuelles
7
Examen
• Semestre
– 5 devoirs (8p)
– activité de TP (2p)
• Session d’examen
– épreuve écrite (5p)
• Note
– > 5 passer
8
Hall of Fame
Student Student
Student Student Student Student
Student Student Student Student
Student Student
9
Informatique
10
Informatique
• Matériel
– FI, AO, SM
– Systèmes embarques, Robotique
• Systèmes d’exploitation (ABI)
– FI, SdE, RIL
• Compilateurs (toolchain)
– ALF
• Applications
– LP, POO, SDA, IWP, MN, SGI, IHO, Infographie, MTDL, DAPM, GL,
ATI
• Systèmes distribues
– Web Sémantique
11
Connexions avec autres courses
Connaissances requises
• FI
• AO
• LP
• SDA
Connaissances utiles pour
• ALF
• RIL
• Infographie
• SGI
• Systèmes embarques
• Robotique
• DAPM
12
Outils logiciels recommandés
13
Visual Studio Code VirtualBox
Ubuntu LinuxWindows 10
Windows Subsystem for Linux
Andrew S. Tanenbaum
• Américain
• Physicien
• Livre de SdE
• Minix OS
– Mini-OS
– Intel Management
Engine
14
Contenu
• Informatique
• Quelques mots sur SdE
• Introduction en Systèmes
d'exploitation
• Sujets
15
Bibliographie pour aujourd'hui
• Modern Operating Systems
– Chapitre 1
• Operating Systems Concepts
– Chapitre 1
16
Exemples de SEusagegénéral
Windows
Mac OS
Linux
FreeBSD,
OpenBSD
 Orbis OS
Dédiés
 IOS
(Cisco)
 JUNOS
(Juniper)
 FortiOS
(Fortinet)
Mobile
 iOS
 Android
17
Windows
• Microsoft
• le plus utilisé pour les
systèmes de bureau
• La version plus récente:
Windows 10 (pour PC,
tablettes et mobiles)
• Windows Server 2012
R2 (pour serveurs)
18
macOS
• Apple
• Seulement pour les
systèmes Mac (Mac Pro,
Mac Mini, MacBook)
• Approximative 9-10%
pour Desktop
• La version plus récente:
macOS 10.14 “Mojave”
19
Linux
• Linus Torvalds et Greg
Kroah-Hartman (personnes
principales)
• open source
• distributions de Linux
• approximative 1-2% pour
Desktop
• Utilisé pour les serveurs
• Utilisé pour dispositifs
intégrée et mobiles
(Android et autres)
20
Autres SE
21
Processus de démarrage
Machine Boot
•x86: BIOS / UEFI
•ARM: Addressee de start
Bootloader
•x86: Lilo, GRUB2, Syslinux, NLDR, Windows Boot Manager
•ARM: U-Boot, Barebox
System d'exploitation
•Windows
•Linux
Interface Utilisateur (UI/GUI)
•Windows: Windows Explorer - explorer.exe
•Linux: XFCE, GNOME, KDE, ...
22
Qu'est-ce qu’un SE?
OSCE, fig. 1.1, pg. 4 23
Qu'est-ce qu’un SE?
• un programme
• vue de haut en bas: extension de la machine
physique
• vue de bas en haut: gestionnaire des
ressources physiques
• écrit en C
• transparent pour l'utilisateur (il marche)
24
La structure de SE
• Noyau (kernel)
– gérer les ressources
physiques
– fournit une interface
standard pour les
applications
• Programmes de base
– fournit une interaction
utilisateur avec le noyau et
le matériel
– exemples: creation de
fichiers, access des donnes
sur la resaeu
25
Système d'ordinateur
• Système physique (matériel) + système
d’exploitation et applications
• Les programmes pour écrier et compiler des
programmes (toolchain)
• Interconnexion avec autres systèmes
• Ordinateurs personales, serveurs et systèmes
embarques IoT (Internet of Things)
26
MATERIEL
27
Materiel
• Processeur (CPU)
– exécute le code (instructions)
• Mémoire du travail (RAM)
– mémorise les données et le code pour les programmes
• Bus des données
– fait la connexion entre le CPU, le RAM et les périphériques E/S
• Périphériques (entrée/sorties - E/S, input/output - I/O)
– communication avec l’extérieur: utilisateur, autres systèmes, etc.
• Espace de stockage (disque, flash, ROM, NVRAM)
– programmes (à partir de laquelle les processus seront faits)
– données pour les processus
– information pour les utilisateurs (fichiers)
28
Processeur et mémoire
OSCE, fig. 1.7, pg. 16
29
Magistrale
https://en.wikipedia.org/wiki/Bus_%28computing%29
30
Example
31
Memorie
OSCE, fig. 1.11, pg. 28
32
SYSTEME D’EXPLOITATION
33
Shell
• Interface entre l’utlisateur et le systeme
d’exploitation
• CLI ou GUI
• PowerShell / Bash vs. Windows Explorer /
GNOME / KDE
• un processus qui permet de démarrer d'autres
processus
– “shell spawns a process”
34
Les processus
• sont créés à partir d'un programme exécutable
• un programme en cours d'exécution
– l'idee de runtime
• données et code en mémoire, execute par le CPU
• a des ressources associées: espace d'adressage
mémoire, fichiers ouverts, sockets
• SE offre protection et communication entre les
processus
• certains systèmes offrent des hiérarchies de
processus
35
La mémoire d’un processus
https://en.wikipedia.org/wiki/Virtual_address_space
36
Memorie virtuelle
• un processus voir un espace mémoire virtuel (l'espace
mémoire n'existe pas réellement)
– Le processus pense que toute la mémoire lui
appartient
• La mémoire matérielle est différente de la mémoire de
processus
• Les processus utilisent des adresses de mémoire virtuelle
• La mémoire matérielle utilise des adresses de
mémoire physique
• Le SE associe la mémoire physique à la mémoire virtuelle
37
Fils d’execution
• un processus peut avoir plusieurs des fils
d’exécution
• les fils d’exécution partagent l'espace
d'adressage de la mémoire virtuelle
• autoriser un processus à effectuer plusieurs
tâches avec les mêmes données
• permet l'utilisation de matériel
multiprocesseur
38
Accès simultané et synchronisation
• les threads et les processus peuvent entrer en
concurrence pour accéder aux mêmes
ressources (données dans la mémoire)
• les accès simultanés peuvent entraîner une
corruption des données ou des blocages
• la synchronisation permet un accès
réglementé et conséquent aux ressources
39
Modes d'exécution
• Le processeur a deux modes d'exécution
• Mode superviseur
– Actions privilégiées
– C'est le mode utilisé par le SE pour s'exécuter
• Mode utilisateur
– L'accès direct au matériel n'est pas autorisé
– L'espace adresse mémoire ne peut pas être modifié
– C'est le mode utilisé pour les applications
• Le noyau este le intermédiaire pour:
– l'accès des processus au matériel
– l'accès des processus aux ressources
• Appel système
– la transition du mode utilisateur au mode noyau
40
Appel système
OSCE, fig. 1.10, pg. 22
41
Appels système
OSCE, fig. 2.6, pg. 56 42
Fichiers
• Unité de stockage (du point de vue du
programme)
• Ouvert et utilisé par les processus
• Fichier sur le disque (statique) et fichier ouvert
(dynamique, dans un processus)
– Fichier sur le disque: nom, dimension, droits,
horodatage
• Fichier ouvert: poignée de fichier, curseur de
fichier, droits d’ouverture, accès au fichier
43
STRUCTURE DE SE
44
La pile de systèmes informatiques
Noyau (kernel)
Programmes de base, bibliothèques de bas niveau
Les bibliothèques
Applications
Mode superviseur
Mode utilisateur
45
Noyau (kernel)
• Est le Systeme d’Exploitation
– Windows (WindowsNT) ntoskrnl.exe
– GNU/Linux et Android Linux Kernel
– Mac OS X et iOS: XNU
• chargé au démarrage, il lance le premier(s)
programme
• fournit des appels système
• gère les ressources matérielles
• sécurise l'intégrité du système
46
La structure de SE (monolithique)
OSCE, fig. 2.13, pg. 69 47
SE monolithique vs. SE micronoyau
https://en.wikipedia.org/wiki/Microkernel
48
SE monolithique vs. SE micronoyau
Monolitique
• Efficient
• Communication par appel
de fonction entre les
components
• Moins flexible
• Grand TCB (Trusted
Computing Base) - design
moins sécurisé
Micronoyau
• est plus lent
(communication entre
services)
• plus modulaire
• Réduite TCB (design plus
sécurise)
49
Machines virtuelles
OSCE, fig. 2.17, pg. 74 50
Windows
51
Linux
52
Minix 3
53
Ressources pour le cours SdE
• Site web: http://ocw.cs.pub.ro/courses/sde/
• GitHub issues: https://github.com/upb-
fils/sde/issues
• Diapositives de cours
• Catalogue et calendrier Google
• Les machines virtuelles
• vmchecker
• La documentation
54
Mot clés
• SE
• Noyau (kernel)
• Mode superviseur
• Mode utilisateur
• CPU
• Mémoire
• Bus de données
• Processus
• Mémoire virtuelle
• Espace utilisateur
• Espace noyau
• Appel de système
• Noyau monolithique
• Micronoyau
• Programmes de base
• Interface Utilisateur
55
Questions
56

Contenu connexe

PPTX
SdE 1 - Introduction
PPTX
Systemes d'explotation: Threads
PPTX
SdE 6 - Gestion de la memoire
PPTX
SdE 3 - Systemes de fichiers
PPTX
SdE 5 - Communication entre processus et Planification
PPTX
SdE2 4 - Processus
PPTX
SdE 11: Implémentation de Système de Fichiers
PPTX
Systemes d'explotation: Mémoire Virtuelle
SdE 1 - Introduction
Systemes d'explotation: Threads
SdE 6 - Gestion de la memoire
SdE 3 - Systemes de fichiers
SdE 5 - Communication entre processus et Planification
SdE2 4 - Processus
SdE 11: Implémentation de Système de Fichiers
Systemes d'explotation: Mémoire Virtuelle

Tendances (20)

PPTX
SdE 10 - Threads
PPTX
SdE 4 - Processus
PPTX
SdE 3 - System de fichiers
PPTX
SdE 2 - System de fichiers
PPTX
SdE TP 3 - Fonctions d'entrée et sortie
PPTX
SdE 5 - Planification
PPTX
SdE 4: Processus
PPTX
SdE 9 - Threads
PPTX
SdE 8 - Memoire Virtuelle
PPTX
SdE 7 - Gestion de la Mémoire
PPTX
SdE 2 - Langage C, Allocation de memoire
PPTX
SdE 6 - Planification
PPTX
SdE 2 - Introduction
PPTX
SdE 7 - Memoire Virtuelle
PDF
Présentation unix linux
PPTX
ALF - Introduction
PPTX
ALF1 - Introduction
PPTX
SdE2 - Introduction
ODP
Initiation Linux
PDF
Présentation Unix/Linux (mise à jour 2016)
SdE 10 - Threads
SdE 4 - Processus
SdE 3 - System de fichiers
SdE 2 - System de fichiers
SdE TP 3 - Fonctions d'entrée et sortie
SdE 5 - Planification
SdE 4: Processus
SdE 9 - Threads
SdE 8 - Memoire Virtuelle
SdE 7 - Gestion de la Mémoire
SdE 2 - Langage C, Allocation de memoire
SdE 6 - Planification
SdE 2 - Introduction
SdE 7 - Memoire Virtuelle
Présentation unix linux
ALF - Introduction
ALF1 - Introduction
SdE2 - Introduction
Initiation Linux
Présentation Unix/Linux (mise à jour 2016)
Publicité

Similaire à SdE - Introduction (20)

PPTX
chaSEFRSEFREZRFEQSRFRERFQEZRFQZERFRpitre0.pptx
PPTX
chapitre0.pptx
PPTX
1514117367383.pptx
PPTX
1514117367383.pptx
PPTX
introduction_SYSTeme exploitationconcept.pptx
PPT
0081-cours-systemes-exploitations.ppt
PDF
Cours système d’exploitation S1 - IG IPSET.pdf
PPT
System d\'exploitation
PDF
15. Introduction aux systemes dexploitation.pdf
PDF
Diapositive du système d'exploitation-2-1.pdf
PDF
Cours Linux , bases de l'administration linux
PDF
Lin08 formation-linux-debian-administration
PDF
Cours SE IAG Système d'exploitation Windows - IPSET.pdf
PDF
Cours SE Principes et fonctionnement de système d’exploitation - IPSET.pdf
PDF
cours-gratuit.com--id-3443.pdf
PDF
Gestion des threads
PPTX
Cours_OS 1.pptx
PDF
Cours SE Gestion des périphériques - IG IPSET
ODP
Formation Informatique base et généralités
PDF
Programmation de systèmes embarqués : BeagleBone Black et Linux embarqué
chaSEFRSEFREZRFEQSRFRERFQEZRFQZERFRpitre0.pptx
chapitre0.pptx
1514117367383.pptx
1514117367383.pptx
introduction_SYSTeme exploitationconcept.pptx
0081-cours-systemes-exploitations.ppt
Cours système d’exploitation S1 - IG IPSET.pdf
System d\'exploitation
15. Introduction aux systemes dexploitation.pdf
Diapositive du système d'exploitation-2-1.pdf
Cours Linux , bases de l'administration linux
Lin08 formation-linux-debian-administration
Cours SE IAG Système d'exploitation Windows - IPSET.pdf
Cours SE Principes et fonctionnement de système d’exploitation - IPSET.pdf
cours-gratuit.com--id-3443.pdf
Gestion des threads
Cours_OS 1.pptx
Cours SE Gestion des périphériques - IG IPSET
Formation Informatique base et généralités
Programmation de systèmes embarqués : BeagleBone Black et Linux embarqué
Publicité

Plus de Alexandru Radovici (19)

PPTX
SdE2 - Pilot Tock
PPTX
SdE2 - Systèmes embarquées
PPTX
SdE2 - Planification, IPC
PPTX
MDAD 6 - AIDL and Services
PPTX
MDAD 5 - Threads
PPTX
MDAD 4 - Lists, adapters and recycling
PPTX
MDAD 3 - Basics of UI Applications
PPTX
MDAD 2 - Introduction to the Android Framework
PPTX
MDAD 1 - Hardware
PPTX
MDAD 0 - Introduction
PPTX
SdE 11 - Reseau
PPTX
SdE 8 - Synchronisation de execution
PPTX
ALF 6 - Parser
PPTX
ALF 5 - Parser
PPTX
ALF 4 - Grammaires
PPTX
ALF 3 - Expressions régulières et Lexer
PPTX
ALF 1 - Automates finis
PPTX
DAPM 1 - Introduction
PPTX
ALF 1 - Introduction
SdE2 - Pilot Tock
SdE2 - Systèmes embarquées
SdE2 - Planification, IPC
MDAD 6 - AIDL and Services
MDAD 5 - Threads
MDAD 4 - Lists, adapters and recycling
MDAD 3 - Basics of UI Applications
MDAD 2 - Introduction to the Android Framework
MDAD 1 - Hardware
MDAD 0 - Introduction
SdE 11 - Reseau
SdE 8 - Synchronisation de execution
ALF 6 - Parser
ALF 5 - Parser
ALF 4 - Grammaires
ALF 3 - Expressions régulières et Lexer
ALF 1 - Automates finis
DAPM 1 - Introduction
ALF 1 - Introduction

Dernier (20)

PDF
Il y a et les lieux de la ville (négation avec les indéfinis)
PPTX
Presentation_carte_arduino_uno_1_Entree_Sortie_numerique.pptx
PPTX
le subjonctif présent, Conjugaison français
PPTX
SESSION3-SUPPORT-DE-COURS-FLEC-(Future leader en énergie au Cameroun)-CECOSDA...
PDF
Bac 2026 - Livre - 🎤 Le Grand Oral - ✍️ Exemples rédigés - 📈 SES - Extrait
DOC
Vocabulaire pour la description II - Francais Free Lesson-
PDF
🎓 Le Secret des Profs Captivants - 💡 2. Hygiène vocale et santé professionnel...
PPT
le-subjonctif-présent, Grammaire, français
PPTX
SESSION4-SUPPORT-DE-COURS-FLEC-(Future leader en énergie au Cameroun)-CECOSDA...
PPT
Les moyens de transport-2023.ppt french language teaching ppt
PPTX
Devenir Inspecteur HSE _ Chp1_ L1....pptx
PPTX
Présentation Personal Branding J2025.pptx_20250218_132749_0000.pptx_20250610_...
PDF
Consignes générales sécurité et environnement.pdf
PPT
Etalonnage de débitmètres.Champ d'application
PDF
Bac 2026 - Livre - 🎤 Le Grand Oral - ✍️Exemples rédigés - Spécialité: 💻 NSI -...
PPTX
SESSION1-SUPPORT-DE-COURS-FLEC-(Future leader en énergie au Cameroun)-CECOSDA...
PPTX
Présentation Projet Entreprise Minimaliste Moderne Sobre Blanc Noir.pptx
PDF
Formation SSIAP _ Gestion et contrôle .pdf
PPT
مبادئ و هدف الحركة الكشفية عرض تقديمي.ppt
PDF
Bac 2026 - Livre - 🎤 Le Grand Oral - ✍️ Exemples rédigés - 🌿 SVT - Extrait
Il y a et les lieux de la ville (négation avec les indéfinis)
Presentation_carte_arduino_uno_1_Entree_Sortie_numerique.pptx
le subjonctif présent, Conjugaison français
SESSION3-SUPPORT-DE-COURS-FLEC-(Future leader en énergie au Cameroun)-CECOSDA...
Bac 2026 - Livre - 🎤 Le Grand Oral - ✍️ Exemples rédigés - 📈 SES - Extrait
Vocabulaire pour la description II - Francais Free Lesson-
🎓 Le Secret des Profs Captivants - 💡 2. Hygiène vocale et santé professionnel...
le-subjonctif-présent, Grammaire, français
SESSION4-SUPPORT-DE-COURS-FLEC-(Future leader en énergie au Cameroun)-CECOSDA...
Les moyens de transport-2023.ppt french language teaching ppt
Devenir Inspecteur HSE _ Chp1_ L1....pptx
Présentation Personal Branding J2025.pptx_20250218_132749_0000.pptx_20250610_...
Consignes générales sécurité et environnement.pdf
Etalonnage de débitmètres.Champ d'application
Bac 2026 - Livre - 🎤 Le Grand Oral - ✍️Exemples rédigés - Spécialité: 💻 NSI -...
SESSION1-SUPPORT-DE-COURS-FLEC-(Future leader en énergie au Cameroun)-CECOSDA...
Présentation Projet Entreprise Minimaliste Moderne Sobre Blanc Noir.pptx
Formation SSIAP _ Gestion et contrôle .pdf
مبادئ و هدف الحركة الكشفية عرض تقديمي.ppt
Bac 2026 - Livre - 🎤 Le Grand Oral - ✍️ Exemples rédigés - 🌿 SVT - Extrait

SdE - Introduction

  • 2. L’equipe • Cours: – Alexandru Radovici (ACS) • TP: – Iuliana Marin (FILS) • Devoir: – Răzvan Șerban (ACS) – Ioana Culic (ACS) • Ressources – Răzvan Deaconescu, Mihai Carabaș et l’équipe USO et SO de ACS 2
  • 3. Les courses de systèmes FI SdE SO2 (a ACS) Espace noyau Espace utilisateur API de SE Utilisation de SE 3
  • 4. Bibliographie Andrew Tanenbaum, Modern Operating Systems, 2nd Edition A. Silberschatz, P. Baer Galvin, G. Gagne, Operating Systems Concepts, 9th Edition Michael Kerrisk, The Linux Programming Interface, Steve Summit, C Programming Notes, http://c- faq.com/~scs/cclass/notes/ 4
  • 5. Ressources pour le cours SdE • Site web: http://ocw.cs.pub.ro/courses/sde/ • GitHub issues: https://github.com/upb- fils/sde/issues • Diapositives de cours • Catalogue et calendrier Google • Les machines virtuelles • vmchecker • La documentation 5
  • 6. Contenu Cours • 14 cours • diapositives • bibliographie – Très important de lire TP • 12 TP • Linux • Programmation en C • C’est important de collabores avec votre collègues 6 C Standard 99 Linux
  • 7. Devoirs Contenu • Linux • Allocation de mémoire • Mini-shell • Fils d’exécutions • Système de fichiers Développent • Linux ou Windows Subsystem for Linux • 8-20 heures pur une devoir – Test des devoirs avec vmchecker • Questions sur Github Issues Les devoirs sont individuelles 7
  • 8. Examen • Semestre – 5 devoirs (8p) – activité de TP (2p) • Session d’examen – épreuve écrite (5p) • Note – > 5 passer 8
  • 9. Hall of Fame Student Student Student Student Student Student Student Student Student Student Student Student 9
  • 11. Informatique • Matériel – FI, AO, SM – Systèmes embarques, Robotique • Systèmes d’exploitation (ABI) – FI, SdE, RIL • Compilateurs (toolchain) – ALF • Applications – LP, POO, SDA, IWP, MN, SGI, IHO, Infographie, MTDL, DAPM, GL, ATI • Systèmes distribues – Web Sémantique 11
  • 12. Connexions avec autres courses Connaissances requises • FI • AO • LP • SDA Connaissances utiles pour • ALF • RIL • Infographie • SGI • Systèmes embarques • Robotique • DAPM 12
  • 13. Outils logiciels recommandés 13 Visual Studio Code VirtualBox Ubuntu LinuxWindows 10 Windows Subsystem for Linux
  • 14. Andrew S. Tanenbaum • Américain • Physicien • Livre de SdE • Minix OS – Mini-OS – Intel Management Engine 14
  • 15. Contenu • Informatique • Quelques mots sur SdE • Introduction en Systèmes d'exploitation • Sujets 15
  • 16. Bibliographie pour aujourd'hui • Modern Operating Systems – Chapitre 1 • Operating Systems Concepts – Chapitre 1 16
  • 17. Exemples de SEusagegénéral Windows Mac OS Linux FreeBSD, OpenBSD  Orbis OS Dédiés  IOS (Cisco)  JUNOS (Juniper)  FortiOS (Fortinet) Mobile  iOS  Android 17
  • 18. Windows • Microsoft • le plus utilisé pour les systèmes de bureau • La version plus récente: Windows 10 (pour PC, tablettes et mobiles) • Windows Server 2012 R2 (pour serveurs) 18
  • 19. macOS • Apple • Seulement pour les systèmes Mac (Mac Pro, Mac Mini, MacBook) • Approximative 9-10% pour Desktop • La version plus récente: macOS 10.14 “Mojave” 19
  • 20. Linux • Linus Torvalds et Greg Kroah-Hartman (personnes principales) • open source • distributions de Linux • approximative 1-2% pour Desktop • Utilisé pour les serveurs • Utilisé pour dispositifs intégrée et mobiles (Android et autres) 20
  • 22. Processus de démarrage Machine Boot •x86: BIOS / UEFI •ARM: Addressee de start Bootloader •x86: Lilo, GRUB2, Syslinux, NLDR, Windows Boot Manager •ARM: U-Boot, Barebox System d'exploitation •Windows •Linux Interface Utilisateur (UI/GUI) •Windows: Windows Explorer - explorer.exe •Linux: XFCE, GNOME, KDE, ... 22
  • 23. Qu'est-ce qu’un SE? OSCE, fig. 1.1, pg. 4 23
  • 24. Qu'est-ce qu’un SE? • un programme • vue de haut en bas: extension de la machine physique • vue de bas en haut: gestionnaire des ressources physiques • écrit en C • transparent pour l'utilisateur (il marche) 24
  • 25. La structure de SE • Noyau (kernel) – gérer les ressources physiques – fournit une interface standard pour les applications • Programmes de base – fournit une interaction utilisateur avec le noyau et le matériel – exemples: creation de fichiers, access des donnes sur la resaeu 25
  • 26. Système d'ordinateur • Système physique (matériel) + système d’exploitation et applications • Les programmes pour écrier et compiler des programmes (toolchain) • Interconnexion avec autres systèmes • Ordinateurs personales, serveurs et systèmes embarques IoT (Internet of Things) 26
  • 28. Materiel • Processeur (CPU) – exécute le code (instructions) • Mémoire du travail (RAM) – mémorise les données et le code pour les programmes • Bus des données – fait la connexion entre le CPU, le RAM et les périphériques E/S • Périphériques (entrée/sorties - E/S, input/output - I/O) – communication avec l’extérieur: utilisateur, autres systèmes, etc. • Espace de stockage (disque, flash, ROM, NVRAM) – programmes (à partir de laquelle les processus seront faits) – données pour les processus – information pour les utilisateurs (fichiers) 28
  • 29. Processeur et mémoire OSCE, fig. 1.7, pg. 16 29
  • 34. Shell • Interface entre l’utlisateur et le systeme d’exploitation • CLI ou GUI • PowerShell / Bash vs. Windows Explorer / GNOME / KDE • un processus qui permet de démarrer d'autres processus – “shell spawns a process” 34
  • 35. Les processus • sont créés à partir d'un programme exécutable • un programme en cours d'exécution – l'idee de runtime • données et code en mémoire, execute par le CPU • a des ressources associées: espace d'adressage mémoire, fichiers ouverts, sockets • SE offre protection et communication entre les processus • certains systèmes offrent des hiérarchies de processus 35
  • 36. La mémoire d’un processus https://en.wikipedia.org/wiki/Virtual_address_space 36
  • 37. Memorie virtuelle • un processus voir un espace mémoire virtuel (l'espace mémoire n'existe pas réellement) – Le processus pense que toute la mémoire lui appartient • La mémoire matérielle est différente de la mémoire de processus • Les processus utilisent des adresses de mémoire virtuelle • La mémoire matérielle utilise des adresses de mémoire physique • Le SE associe la mémoire physique à la mémoire virtuelle 37
  • 38. Fils d’execution • un processus peut avoir plusieurs des fils d’exécution • les fils d’exécution partagent l'espace d'adressage de la mémoire virtuelle • autoriser un processus à effectuer plusieurs tâches avec les mêmes données • permet l'utilisation de matériel multiprocesseur 38
  • 39. Accès simultané et synchronisation • les threads et les processus peuvent entrer en concurrence pour accéder aux mêmes ressources (données dans la mémoire) • les accès simultanés peuvent entraîner une corruption des données ou des blocages • la synchronisation permet un accès réglementé et conséquent aux ressources 39
  • 40. Modes d'exécution • Le processeur a deux modes d'exécution • Mode superviseur – Actions privilégiées – C'est le mode utilisé par le SE pour s'exécuter • Mode utilisateur – L'accès direct au matériel n'est pas autorisé – L'espace adresse mémoire ne peut pas être modifié – C'est le mode utilisé pour les applications • Le noyau este le intermédiaire pour: – l'accès des processus au matériel – l'accès des processus aux ressources • Appel système – la transition du mode utilisateur au mode noyau 40
  • 41. Appel système OSCE, fig. 1.10, pg. 22 41
  • 42. Appels système OSCE, fig. 2.6, pg. 56 42
  • 43. Fichiers • Unité de stockage (du point de vue du programme) • Ouvert et utilisé par les processus • Fichier sur le disque (statique) et fichier ouvert (dynamique, dans un processus) – Fichier sur le disque: nom, dimension, droits, horodatage • Fichier ouvert: poignée de fichier, curseur de fichier, droits d’ouverture, accès au fichier 43
  • 45. La pile de systèmes informatiques Noyau (kernel) Programmes de base, bibliothèques de bas niveau Les bibliothèques Applications Mode superviseur Mode utilisateur 45
  • 46. Noyau (kernel) • Est le Systeme d’Exploitation – Windows (WindowsNT) ntoskrnl.exe – GNU/Linux et Android Linux Kernel – Mac OS X et iOS: XNU • chargé au démarrage, il lance le premier(s) programme • fournit des appels système • gère les ressources matérielles • sécurise l'intégrité du système 46
  • 47. La structure de SE (monolithique) OSCE, fig. 2.13, pg. 69 47
  • 48. SE monolithique vs. SE micronoyau https://en.wikipedia.org/wiki/Microkernel 48
  • 49. SE monolithique vs. SE micronoyau Monolitique • Efficient • Communication par appel de fonction entre les components • Moins flexible • Grand TCB (Trusted Computing Base) - design moins sécurisé Micronoyau • est plus lent (communication entre services) • plus modulaire • Réduite TCB (design plus sécurise) 49
  • 54. Ressources pour le cours SdE • Site web: http://ocw.cs.pub.ro/courses/sde/ • GitHub issues: https://github.com/upb- fils/sde/issues • Diapositives de cours • Catalogue et calendrier Google • Les machines virtuelles • vmchecker • La documentation 54
  • 55. Mot clés • SE • Noyau (kernel) • Mode superviseur • Mode utilisateur • CPU • Mémoire • Bus de données • Processus • Mémoire virtuelle • Espace utilisateur • Espace noyau • Appel de système • Noyau monolithique • Micronoyau • Programmes de base • Interface Utilisateur 55