SlideShare une entreprise Scribd logo
Programmation
Système avec le
Language C
Bienvenue à toutes et à tous
1
Prérequis
2
Avoir :
 les bases du langage C
 avoir quelques connaissances sur les
systèmes d'exploitation de type Unix
CHAPITRE 1 - GENERALITE
3
Table des matières
Introduction Concepts
Présentation du formateur
et du cours(Objectifs et but)
Définition et explication
de quelques concepts
You can describe the
topic of the section here
01 02
04 Test de connaissance
Introduction
4
Les outils de
programmation
03
Conclusion
Introduction
Présentation du formateur et du
cours(Objectifs et but)
01
5
Salut!
NOM PTENOM
PARCOURT & EXPERIENCE
CONTACT TEL
MAIL
6
But: Ce cours a pour but de vous apprendre
à maîtriser toutes les finesses de la
programmation système
 Définir précisément la
programmation système ;
 le fonctionnement général de la
programmation sous Unix ;
 gérer correctement vos erreurs.
Objectifs :
7
Concept
Définition et explication de
quelques concepts
02
8
Qu'est-ce que la
programmation
système ?
La programmation système permet
de créer des drivers, communiquer
avec les périphériques, voire même
créer un système d'exploitation !
9
On distingue deux
types de programmes :
 les programmes d'application des
utilisateurs.
 Les programmes systèmes qui
permettent le fonctionnement de
l'ordinateur.
10
Qu'est-ce qu’une
Couche logicielle?
Tous les programmes qui fournissent des
services similaires sont regroupés dans
une couche logicielle.
11
Qu'est-ce qu’une
Abstraction matérielle?
Une couche logicielle qui a accès au
matériel informatique s'appelle une
couche d'abstraction matérielle.
12
Noyau d’un système
d’exploitation?
Le noyau est une sorte de logiciel
d'arrière-plan qui assure les
communications entre ces programmes
13
Appels-systèmes?
« appel-système » désigne l'appel d'une
fonction, qui, depuis l'espace utilisateur,
demande des services ou des ressources
au système d'exploitation.
14
Accès au matériel
15
Conclusion
Bref résumé et apercue du
chapritre suivant
03
16
Merci!
d’avoir suivie ce premier chapitre avec
attention
Vos questions sont les bien venues
+228 -- -- -- -- |
,,,,,,,,,,,,,,,,,,,,mail@freepik.com
17
Test de
connaissance
Questionnaires lié au chapitre
parcouru
04
18
Définir les termes suivants avec vos propres
mots
 Un système d’exploitation
 Un appel système
 Un noyau
 Une couche d’abstraction
 La programmation système
Quelle est la différence entre un
programme d’application et un programme
système?
19
La base du système est 1, qui est le seul
élément à porter véritablement le nom « Linux »
1 est souvent imaginé comme une sorte de
logiciel mystérieux fonctionnant en arrière-plan
pour surveiller les applications des utilisateurs,.
Dans une machine fonctionnant sous Linux, de
nombreuses 2 sont empilées,
chacune fournissant des services aux autres. Il est
important de comprendre comment fonctionne ce
modèle pour savoir où une application viendra
s’intégrer.
Trouvez les mots manquants
Le noyau fournit donc des points d’entrée, qu’on nomme « 3 »
et que le programmeur invoque comme des sous-routines
offrant des services variés.
Par exemple l’3 write() permet d’écrire des données dans un
fichier.
20
Liens utiles
Tutoriel : La programmation système en C
sous Unix ( http://sdz.tdct.org/sdz/la-
programmation-systeme-en-c-sous-
unix.html#Introduction )
La programmation système en Python
(http://calmettes.arnaud.free.fr/python_linux
.pdf )
21
Programmation système en C sous Linux (
http://tony3d3.free.fr/files/Programmation-
systeme-en-C-sous-Linux.pdf )

Contenu connexe

Similaire à Programation système-CHAPITRE1.pptx

Td pascal tdD
Td pascal tdDTd pascal tdD
Td pascal tdD
Chawki Riadh
 
Programmation-en-C-ESIITECH-2023-2024-bis.pptx
Programmation-en-C-ESIITECH-2023-2024-bis.pptxProgrammation-en-C-ESIITECH-2023-2024-bis.pptx
Programmation-en-C-ESIITECH-2023-2024-bis.pptx
OlyvierNzighou1
 
Introduction aux systèmes d-exploitation (2).ppt
Introduction aux systèmes d-exploitation (2).pptIntroduction aux systèmes d-exploitation (2).ppt
Introduction aux systèmes d-exploitation (2).ppt
MahdiHERMASSI1
 
Outils de construction pour la recherche
Outils de construction pour la rechercheOutils de construction pour la recherche
Outils de construction pour la recherche
Johan Moreau
 
Programmation-en-C-ESIITECH-2023-2024.pptx
Programmation-en-C-ESIITECH-2023-2024.pptxProgrammation-en-C-ESIITECH-2023-2024.pptx
Programmation-en-C-ESIITECH-2023-2024.pptx
OlyvierNzighou1
 
TP N1 Initiation à lutilisation.docx
TP N1 Initiation à lutilisation.docxTP N1 Initiation à lutilisation.docx
TP N1 Initiation à lutilisation.docx
SouadZid
 
Ch1-Généralités.pdf
Ch1-Généralités.pdfCh1-Généralités.pdf
Ch1-Généralités.pdf
FadouaBouafifSamoud
 
UNIX_SE4_2023 (1).pdf
UNIX_SE4_2023 (1).pdfUNIX_SE4_2023 (1).pdf
UNIX_SE4_2023 (1).pdf
YassineZouin
 
COURS C++ [Enregistrement automatique]Complet (1).pptx
COURS C++ [Enregistrement automatique]Complet (1).pptxCOURS C++ [Enregistrement automatique]Complet (1).pptx
COURS C++ [Enregistrement automatique]Complet (1).pptx
LuneSabsPericolo1
 
1_Assurance_Qualit_et_Gnie_Logiciel.ppt
1_Assurance_Qualit_et_Gnie_Logiciel.ppt1_Assurance_Qualit_et_Gnie_Logiciel.ppt
1_Assurance_Qualit_et_Gnie_Logiciel.ppt
hbadir
 
F Les Scripts En Power Shell
F Les Scripts En Power ShellF Les Scripts En Power Shell
F Les Scripts En Power Shell
UGAIA
 
Gl slides-cours-1
Gl slides-cours-1Gl slides-cours-1
Gl slides-cours-1Sami Neili
 
Cours langage-c
Cours langage-cCours langage-c
Cours langage-c
Ahmed MSAFRI
 
Chapitre 1 (algorithme)
Chapitre 1 (algorithme)Chapitre 1 (algorithme)
Chapitre 1 (algorithme)mahbouba
 
python-Cours Officiel POO Python-m103.pdf
python-Cours Officiel POO Python-m103.pdfpython-Cours Officiel POO Python-m103.pdf
python-Cours Officiel POO Python-m103.pdf
trendingv83
 
Op05 g formation-z-os-unix-system-services-concepts-et-fonctionnalites
Op05 g formation-z-os-unix-system-services-concepts-et-fonctionnalitesOp05 g formation-z-os-unix-system-services-concepts-et-fonctionnalites
Op05 g formation-z-os-unix-system-services-concepts-et-fonctionnalitesCERTyou Formation
 
Audit openERP 7.0: Mise en place &Optimisation de Performances
Audit openERP 7.0: Mise en place &Optimisation de Performances Audit openERP 7.0: Mise en place &Optimisation de Performances
Audit openERP 7.0: Mise en place &Optimisation de Performances
Firas Kouẞàa
 
Programmation linéniaire
Programmation linéniaire Programmation linéniaire
Programmation linéniaire
Mohammed Zaoui
 
Mql4 pour les nuls
Mql4 pour les nulsMql4 pour les nuls
Mql4 pour les nuls
matafnet
 

Similaire à Programation système-CHAPITRE1.pptx (20)

Td pascal tdD
Td pascal tdDTd pascal tdD
Td pascal tdD
 
Programmation-en-C-ESIITECH-2023-2024-bis.pptx
Programmation-en-C-ESIITECH-2023-2024-bis.pptxProgrammation-en-C-ESIITECH-2023-2024-bis.pptx
Programmation-en-C-ESIITECH-2023-2024-bis.pptx
 
Introduction aux systèmes d-exploitation (2).ppt
Introduction aux systèmes d-exploitation (2).pptIntroduction aux systèmes d-exploitation (2).ppt
Introduction aux systèmes d-exploitation (2).ppt
 
Outils de construction pour la recherche
Outils de construction pour la rechercheOutils de construction pour la recherche
Outils de construction pour la recherche
 
Programmation-en-C-ESIITECH-2023-2024.pptx
Programmation-en-C-ESIITECH-2023-2024.pptxProgrammation-en-C-ESIITECH-2023-2024.pptx
Programmation-en-C-ESIITECH-2023-2024.pptx
 
TP N1 Initiation à lutilisation.docx
TP N1 Initiation à lutilisation.docxTP N1 Initiation à lutilisation.docx
TP N1 Initiation à lutilisation.docx
 
Ch1-Généralités.pdf
Ch1-Généralités.pdfCh1-Généralités.pdf
Ch1-Généralités.pdf
 
UNIX_SE4_2023 (1).pdf
UNIX_SE4_2023 (1).pdfUNIX_SE4_2023 (1).pdf
UNIX_SE4_2023 (1).pdf
 
COURS C++ [Enregistrement automatique]Complet (1).pptx
COURS C++ [Enregistrement automatique]Complet (1).pptxCOURS C++ [Enregistrement automatique]Complet (1).pptx
COURS C++ [Enregistrement automatique]Complet (1).pptx
 
1_Assurance_Qualit_et_Gnie_Logiciel.ppt
1_Assurance_Qualit_et_Gnie_Logiciel.ppt1_Assurance_Qualit_et_Gnie_Logiciel.ppt
1_Assurance_Qualit_et_Gnie_Logiciel.ppt
 
F Les Scripts En Power Shell
F Les Scripts En Power ShellF Les Scripts En Power Shell
F Les Scripts En Power Shell
 
Gl slides-cours-1
Gl slides-cours-1Gl slides-cours-1
Gl slides-cours-1
 
Cours langage-c
Cours langage-cCours langage-c
Cours langage-c
 
Chapitre 1 (algorithme)
Chapitre 1 (algorithme)Chapitre 1 (algorithme)
Chapitre 1 (algorithme)
 
python-Cours Officiel POO Python-m103.pdf
python-Cours Officiel POO Python-m103.pdfpython-Cours Officiel POO Python-m103.pdf
python-Cours Officiel POO Python-m103.pdf
 
Op05 g formation-z-os-unix-system-services-concepts-et-fonctionnalites
Op05 g formation-z-os-unix-system-services-concepts-et-fonctionnalitesOp05 g formation-z-os-unix-system-services-concepts-et-fonctionnalites
Op05 g formation-z-os-unix-system-services-concepts-et-fonctionnalites
 
Audit openERP 7.0: Mise en place &Optimisation de Performances
Audit openERP 7.0: Mise en place &Optimisation de Performances Audit openERP 7.0: Mise en place &Optimisation de Performances
Audit openERP 7.0: Mise en place &Optimisation de Performances
 
Microsoft07coursbaptiste
Microsoft07coursbaptisteMicrosoft07coursbaptiste
Microsoft07coursbaptiste
 
Programmation linéniaire
Programmation linéniaire Programmation linéniaire
Programmation linéniaire
 
Mql4 pour les nuls
Mql4 pour les nulsMql4 pour les nuls
Mql4 pour les nuls
 

Dernier

Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...
Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...
Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...
OCTO Technology
 
Les écrans informatiques au fil du temps.pptx
Les écrans informatiques au fil du temps.pptxLes écrans informatiques au fil du temps.pptx
Les écrans informatiques au fil du temps.pptx
abderrahimbourimi
 
Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)
Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)
Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)
Laurent Speyser
 
De l'IA comme plagiat à la rédaction d'une « charte IA » à l'université
De l'IA comme plagiat à la rédaction d'une « charte IA » à l'universitéDe l'IA comme plagiat à la rédaction d'une « charte IA » à l'université
De l'IA comme plagiat à la rédaction d'une « charte IA » à l'université
Université de Franche-Comté
 
Le support de présentation des Signaux 2024
Le support de présentation des Signaux 2024Le support de présentation des Signaux 2024
Le support de présentation des Signaux 2024
UNITECBordeaux
 
MongoDB in a scale-up: how to get away from a monolithic hell — MongoDB Paris...
MongoDB in a scale-up: how to get away from a monolithic hell — MongoDB Paris...MongoDB in a scale-up: how to get away from a monolithic hell — MongoDB Paris...
MongoDB in a scale-up: how to get away from a monolithic hell — MongoDB Paris...
Horgix
 

Dernier (6)

Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...
Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...
Le Comptoir OCTO - Qu’apporte l’analyse de cycle de vie lors d’un audit d’éco...
 
Les écrans informatiques au fil du temps.pptx
Les écrans informatiques au fil du temps.pptxLes écrans informatiques au fil du temps.pptx
Les écrans informatiques au fil du temps.pptx
 
Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)
Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)
Ouvrez la porte ou prenez un mur (Agile Tour Genève 2024)
 
De l'IA comme plagiat à la rédaction d'une « charte IA » à l'université
De l'IA comme plagiat à la rédaction d'une « charte IA » à l'universitéDe l'IA comme plagiat à la rédaction d'une « charte IA » à l'université
De l'IA comme plagiat à la rédaction d'une « charte IA » à l'université
 
Le support de présentation des Signaux 2024
Le support de présentation des Signaux 2024Le support de présentation des Signaux 2024
Le support de présentation des Signaux 2024
 
MongoDB in a scale-up: how to get away from a monolithic hell — MongoDB Paris...
MongoDB in a scale-up: how to get away from a monolithic hell — MongoDB Paris...MongoDB in a scale-up: how to get away from a monolithic hell — MongoDB Paris...
MongoDB in a scale-up: how to get away from a monolithic hell — MongoDB Paris...
 

Programation système-CHAPITRE1.pptx

  • 1. Programmation Système avec le Language C Bienvenue à toutes et à tous 1
  • 2. Prérequis 2 Avoir :  les bases du langage C  avoir quelques connaissances sur les systèmes d'exploitation de type Unix
  • 3. CHAPITRE 1 - GENERALITE 3
  • 4. Table des matières Introduction Concepts Présentation du formateur et du cours(Objectifs et but) Définition et explication de quelques concepts You can describe the topic of the section here 01 02 04 Test de connaissance Introduction 4 Les outils de programmation 03 Conclusion
  • 5. Introduction Présentation du formateur et du cours(Objectifs et but) 01 5
  • 6. Salut! NOM PTENOM PARCOURT & EXPERIENCE CONTACT TEL MAIL 6
  • 7. But: Ce cours a pour but de vous apprendre à maîtriser toutes les finesses de la programmation système  Définir précisément la programmation système ;  le fonctionnement général de la programmation sous Unix ;  gérer correctement vos erreurs. Objectifs : 7
  • 8. Concept Définition et explication de quelques concepts 02 8
  • 9. Qu'est-ce que la programmation système ? La programmation système permet de créer des drivers, communiquer avec les périphériques, voire même créer un système d'exploitation ! 9
  • 10. On distingue deux types de programmes :  les programmes d'application des utilisateurs.  Les programmes systèmes qui permettent le fonctionnement de l'ordinateur. 10
  • 11. Qu'est-ce qu’une Couche logicielle? Tous les programmes qui fournissent des services similaires sont regroupés dans une couche logicielle. 11
  • 12. Qu'est-ce qu’une Abstraction matérielle? Une couche logicielle qui a accès au matériel informatique s'appelle une couche d'abstraction matérielle. 12
  • 13. Noyau d’un système d’exploitation? Le noyau est une sorte de logiciel d'arrière-plan qui assure les communications entre ces programmes 13
  • 14. Appels-systèmes? « appel-système » désigne l'appel d'une fonction, qui, depuis l'espace utilisateur, demande des services ou des ressources au système d'exploitation. 14
  • 16. Conclusion Bref résumé et apercue du chapritre suivant 03 16
  • 17. Merci! d’avoir suivie ce premier chapitre avec attention Vos questions sont les bien venues +228 -- -- -- -- | ,,,,,,,,,,,,,,,,,,,,mail@freepik.com 17
  • 18. Test de connaissance Questionnaires lié au chapitre parcouru 04 18
  • 19. Définir les termes suivants avec vos propres mots  Un système d’exploitation  Un appel système  Un noyau  Une couche d’abstraction  La programmation système Quelle est la différence entre un programme d’application et un programme système? 19
  • 20. La base du système est 1, qui est le seul élément à porter véritablement le nom « Linux » 1 est souvent imaginé comme une sorte de logiciel mystérieux fonctionnant en arrière-plan pour surveiller les applications des utilisateurs,. Dans une machine fonctionnant sous Linux, de nombreuses 2 sont empilées, chacune fournissant des services aux autres. Il est important de comprendre comment fonctionne ce modèle pour savoir où une application viendra s’intégrer. Trouvez les mots manquants Le noyau fournit donc des points d’entrée, qu’on nomme « 3 » et que le programmeur invoque comme des sous-routines offrant des services variés. Par exemple l’3 write() permet d’écrire des données dans un fichier. 20
  • 21. Liens utiles Tutoriel : La programmation système en C sous Unix ( http://sdz.tdct.org/sdz/la- programmation-systeme-en-c-sous- unix.html#Introduction ) La programmation système en Python (http://calmettes.arnaud.free.fr/python_linux .pdf ) 21 Programmation système en C sous Linux ( http://tony3d3.free.fr/files/Programmation- systeme-en-C-sous-Linux.pdf )

Notes de l'éditeur

  1. Le seul prérequis nécessaire à la lecture de ce cours est de connaître les bases du langage C. Avoir quelques connaissances sur les systèmes d'exploitation de type Unix est également préférable
  2. But: Ce cours a pour but de vous apprendre à maîtriser toutes les finesses de la programmation système Avant de nous jeter corps et âme dans la programmation système, commençons par étudier quelques notions théoriques sur la programmation système et sur la famille Unix. OBJECTIFS: A la fin de ce cours, vous saurez : Définir précisément la programmation système ; le fonctionnement général de la programmation sous Unix ; gérer correctement vos erreurs.
  3. Avant de nous jeter corps et âme dans la programmation système, commençons par étudier quelques notions théoriques sur la programmation système et sur la famille Unix. Dans cette deuxième partie, nous allons aborder quelques termes de vocabulaire indispensables pour la suite du cours
  4. Qu'est-ce que la programmation système ? : La programmation système permet de créer des drivers, communiquer avec les périphériques, voire même créer un système d'exploitation !
  5. Lorsque l'on dispose d'un système d'exploitation, ce dernier permet de différencier deux types de programmes : les programmes d'application des utilisateurs. Ces programmes sont réalisés lors de la programmation dite « classique », celle que vous avez fait par exemple pendant le cours sur le language C, Les programmes systèmes qui permettent le fonctionnement de l'ordinateur. C'est ce type de programme que nous allons créer dans ce cours. Exemples : L’accès aux fichiers, la gestion des processus, la programmation réseau, les entrées/sorties, la gestion de la mémoire
  6. Les systèmes Unix sont des systèmes d'exploitation qui sont constitués de plusieurs programmes, et chacun d'eux fournit un service au système. Tous les programmes qui fournissent des services similaires sont regroupés dans une couche logicielle.
  7. Une couche logicielle qui a accès au matériel informatique s'appelle une couche d'abstraction matérielle. un système d’exploitation digne de ce nom doit fournir aux programmes une interface commune, de façon à ce que ceux-ci n’aient jamais besoin de se soucier du matériel sur lequel ils agissent. Cette interface, on l’appelle HAL pour Hardware Abstraction Layer (couche d’abstraction matérielle). C’est cette couche qui s’occupe de charger et d’utiliser le bon pilote de périphérique en fonction du matériel qui est effectivement branché à l’ordinateur.
  8. Le noyau est une sorte de logiciel d'arrière-plan qui assure les communications entre ces programmes. C'est donc par lui qu'il va nous falloir passer pour avoir accès aux informations du système.
  9. Pour accéder à ces informations, nous allons utiliser des fonctions qui permettent de communiquer avec le noyau. Ces fonctions s'appellent des appels-systèmes. De manière plus théorique, le terme « appel-système » désigne l'appel d'une fonction, qui, depuis l'espace utilisateur, demande des services ou des ressources au système d'exploitation. Par exemple, les fonctions read et write sont des appels-systèmes.
  10. Ce chapitre nous aura permis de faire faire une bref introduction sur la programmation système Dans le prochain chapitre nous feront un rappel sur système d’exploitation et ensuite nous poursuivrons avec les notions de base du développement sur Linux
  11. Merci d’avoir suivie ce cours avec attention Vos questions sont les bien venues
  12. 1- Le noyau 2- couches logicielles 3- appels-système 4-