0% ont trouvé ce document utile (0 vote)
273 vues22 pages

Cours Programmation Systeme Et Reseau

Le cours de Programmation Système et Réseau à l'Université Technologique M'Siri vise à fournir aux étudiants de bac 2 Informatique des compétences théoriques et pratiques en programmation système et réseau, avec un volume horaire de 60 heures. Les étudiants apprendront à manipuler les systèmes d'exploitation Windows et Linux, à automatiser des tâches, et à programmer en C, tout en utilisant des méthodes d'enseignement variées et des supports comme des diapos et tutoriels vidéos. Le plan de cours couvre des sujets tels que les systèmes d'exploitation, la programmation shell, et les systèmes d'exploitation réseau.

Transféré par

herielvaillant
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 PPTX, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
273 vues22 pages

Cours Programmation Systeme Et Reseau

Le cours de Programmation Système et Réseau à l'Université Technologique M'Siri vise à fournir aux étudiants de bac 2 Informatique des compétences théoriques et pratiques en programmation système et réseau, avec un volume horaire de 60 heures. Les étudiants apprendront à manipuler les systèmes d'exploitation Windows et Linux, à automatiser des tâches, et à programmer en C, tout en utilisant des méthodes d'enseignement variées et des supports comme des diapos et tutoriels vidéos. Le plan de cours couvre des sujets tels que les systèmes d'exploitation, la programmation shell, et les systèmes d'exploitation réseau.

Transféré par

herielvaillant
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 PPTX, PDF, TXT ou lisez en ligne sur Scribd

UNIVERSITE TECHNOLOGIQUE M’SIRI 1er DE

BUNKEYA
FACULTE D’INFORMATIQUE

COURS DE PROGRAMMATION SYSTÈME ET RESEAU


BAC 2 INFORMATIQUE

PAR ASS ERIC MINGA SHANGA


Concepteur des systèmes d’information

ANNEE ACADEMIQUE 2022-2023


DESCRIPTION DU COURS

 INTITULE COURS: PROGRAMMATION SYSTÈME ET RESEAU

 VOLUME HORAIRE: 60h (30+30h)

 PREREQUIS: Bonne connaissance des systèmes d’exploitation, de l’algorithmique

 METHODES D’ENSEIGNEMENT: Méthode expositive et démonstrative

 STYLE D’EVALUATION: Travaux dirigés, Travaux pratiques, Interrogation, Exposés,

Présence et participation au cours.

 SUPPORT DU COURS: Quelques diapos et tutoriels vidéos


OBJECTIF GENERAL DU COURS

 Doter aux étudiants de bac 2 Informatique des connaissances théoriques et

pratiques sur la programmation système et réseau afin de leur permettre d’être

en mesure de faire des programmes intégrés aux systèmes d’exploitation et de

manipuler certains systèmes via des commandes


OBJECTIFS SPECIFIQUES
A la fin de ce cours, tout étudiant qui l’aura suivi avec attention et application sera en mesure de :

:
 De manipuler le système Windows et linux via des commandes
 Faire des petits programmes intégrés aux systèmes d’exploitation et les
exécuter
 Automatiser les tâches courantes et celles de l’administration système
avec Windows et linux
 Planifier l’exécution des scripts dans l’environnement Linux tout comme
dans l’environnement Windows
 Apprendre la programmation système combiné ou lié au langage de
programmation C.
PLAN DETAILLE DU COURS

CHAPITRE I : GENERALITES SUR LES SYSTEMES D’EXPLOITATION


II.1 : Introduction
II.2 : L’interface utilisateur
II.3 : Les types de systèmes d’exploitation
II.4 : Composition d’un système d’exploitation
II.5 : Rôles d’un système d’exploitation
II.6 : Utilisation de Windows via des commandes
II.7 : Utilisation du linux (Ubuntu) via des commandes
CHAPITRE II : INTRODUCTION AUX NOS (NETWORK OPERATING
SYSTEM)

II.1 Introduction

II.2 Définition et rôle du serveur

II.3 Notions de ports et protocoles

II.4 Le Contrôleur de domaine sous Microsoft


CHAPITRE III: PROGRAMMATION SHELL SOUS WINDOWS
III.1 Introduction et démarrage de powershell
III.2 Programmation et exercices
CHAPITRE IV: PROGRAMMATION SHELL SOUS LINUX
III.1 Environnement d’utilisation
III.2 Programmation et exercices
CHAPITRE IV : INTRODUCTION AU LANGAGE C
CHAPITRE I : GENERALITES SUR LES SYSTEMES D’EXPLOITATION
II.1 : Introduction
Comme nous venons de le voir, un ordinateur est constitué de matériel (hardware) et
de logiciel (software). Cet ensemble est à la disposition d’un ou plusieurs utilisateurs.
Il est donc nécessaire que quelque chose dans l’ordinateur permette la
communication entre l’homme et la machine.
Cette entité doit assurer une grande souplesse dans l’interface et doit permettre
d’accéder à toutes les fonctionnalités de la machine. Cette entité douée d’une
certaine intelligence de communication se dénomme " la machine virtuelle ". Elle est
la réunion du matériel et du système d’exploitation (que nous noterons OS par la suite
pour Operating System).
Le système d’exploitation d’un ordinateur est chargé d’assurer les fonctionnalités de
communication et d’interface avec l’utilisateur. Un OS est un groupe de logiciels dont
le grand domaine d’intervention est la gestion de toutes les ressources de l’ordinateur :
 mémoires,
 fichiers,
 périphériques,
 entrée-sortie,
 interruptions, synchronisation...
Un système d’exploitation n’est pas un logiciel unique mais plutôt une famille de logiciels.
Une partie de ces logiciels réside en mémoire centrale (nommée résident ou
superviseur), le reste est stocké en mémoire de masse (disques durs par exemple).
Afin d’assurer une bonne liaison entre les divers logiciels de cette famille, la cohérence de
l’OS est généralement organisée à travers des tables d’interfaces architecturées en
couches de programmation (niveaux abstraits de liaison). La principale tâche du
superviseur est de gérer le contrôle des échanges d’informations entre les diverses
couches de l’OS.
Le système d'exploitation (SE, Operating System) 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éo,
etc.). Il assure le démarrage de l'ordinateur, et fournit aux Programmes applicatifs des
interfaces standardisées pour les périphériques.
En parlant de système d’exploitation, il s’agit d’un système d'exploitation automatique
des ressources de l’ordinateur. On le représente généralement comme une couche
logicielle placée au-dessus du hardware.
L’étude des systèmes d’exploitation classiques peut se faire sur base de (du):
 Les processus, qui correspondent à l’exécution des programmes. Ces processus
pouvant s’exécuter simultanément dans un système multitâche. Le système a
pour fonction de les créer, de les gérer, de les synchroniser, ainsi que de leur
permettre de communiquer entre eux;
 La gestion de la mémoire, qui permet de transférer les programmes et les
données nécessaires à la création des processus, d’un support secondaire, par
exemple un disque, vers un support central, où a lieu l’exécution des processus. Le
système devra garder la trace des parties utilisées et libres de la mémoire ainsi que
gérer les transferts entre les mémoires principale et secondaire;
 Le système de fichiers, qui offre à l’utilisateur une vision homogène et structurée
des données et des ressources : disques, mémoires, périphériques. Le système gère
la création des fichiers, leur destruction, leur correspondance avec les dispositifs
physiques, ainsi qu’un certain nombre d’autres caractéristiques, telles que la
protection. Il les organise enfin, en général, en une structure arborescente;
 Les entrées-sorties, qui correspondent aux mécanismes qu’utilisent les processus
pour communiquer avec l’extérieur. Ces entrées-sorties font largement appel aux
couches les plus proches du matériel, et dont le système tente de masquer les
particularités aux utilisateurs.
Les systèmes d’exploitation modernes intègrent par ailleurs d’autres caractéristiques.
Ces dernières concernent notamment deux évolutions majeures des systèmes
informatiques. La première est l’interconnexion des différentes machines et des
différents systèmes par des réseaux locaux ou étendus. La seconde est la disparition
des écrans de textes et leur remplacement par des dispositifs à fenêtres multiples
disposant de propriétés graphiques. Ces deux techniques sont, de plus, étroitement
imbriquées. Les systèmes d’exploitation fonctionnent donc, ou vont fonctionner, en
réseau et ils consacreront une part importante de leurs tâches à gérer le fenêtrage, le
graphisme, et les interactions entre les différentes machines. Ce cours complète les 4
parties précédentes par des études sur :
 Les réseaux d’ordinateurs, avec les protocoles de communication, d’interconnexion et
d’application. Les réseaux permettent de mettre en œuvre une nouvelle architecture
informatique fondée sur des clients et des serveurs;
 Les systèmes répartis avec les protocoles d’appels de procédures à distance qui leur
sont associés. Les systèmes répartis actuels trouvent des applications à des architectures
client-serveur de fichiers ou d'applications, tels que des bases de données.
 Les systèmes de fenêtrage graphique, ainsi que le modèle de serveur d’écran. Le
système d’exploitation correspond à l’interface entre les applications et le matériel. Le
programmeur d’applications n’aborde que rarement – sinon jamais – son code interne. Il
l’utilise par l’intermédiaire d’« appels système ». Les appels systèmes sont souvent
accessibles à partir d’un langage de programmation, notamment en C avec le système
Unix. Ces appels permettent d’effectuer la plupart des opérations sur les entités du
système d’exploitation et, par exemple, de créer et détruire des processus, des fichiers,
de réaliser des entrées-sorties, etc. Une terminologie tend à s’imposer pour dénommer
l’ensemble des appels système, qu’ils concernent un système d’exploitation ou n’importe
quelle d’application informatique : les API (Application Programming Interface).
Un utilisateur peut lui aussi – dans une certaine mesure – manipuler un système
d’exploitation, sans pour autant avoir à créer un programme. Il le fait par l’intermédiaire d’un
interprète de commandes (un « shell » en anglais) muni d’une syntaxe et éventuellement
programmable. Cet interprète peut accepter les lignes de commandes comme sous MS-DOS
ou sous Unix.
I.2 INTERFACE UTILISATEUR
Au système d'exploitation est associée une interface utilisateur (texte ou graphique)
capable d'interpréter une série de commandes de base. Cette interface ne fait
(théoriquement) pas partie du système d'exploitation mais l'étude des commandes donne
un bon aperçu des fonctions qu'il procure.
La convivialité du système dépend de la richesse et de la simplicité de l'interface
homme/machine.
Le système d'exploitation constitue une machine virtuelle qui, pour les applications,
substitue des composants logiciels aux composants matériels.
Il est la plateforme pour laquelle sont construites les applications.
Pour ce qui est du développement des applications : l'OS propose une interface de
programmation appelée API(Application Program Interface), une sorte de boîte à outils à
laquelle les développeurs recourent pour construire leurs applications. Ces API
procurent une vue uniforme et simplifiée des ressources de la machine. Cela
permet aux applications de faire abstraction des particularités du matériel en dissimulant
la diversité et la complexité du hardware.
Le S.E. reçoit des demandes des programmes d'application et des utilisateurs. Il y donne suite en leur
allouant les ressources du système :
1° le CPU
2° la mémoire
3° les périphériques
4° le système de fichier (y compris parfois, le réseau)
II.3 : LES TYPES DE SYSTÈMES D’EXPLOITATION
Systèmes multitâches
Le multitâche est la capacité pour un système d’exploitation à gérer plusieurs programmes
simultanément en leur attribuant tour à tour un pourcentage de temps processeur pour que ces
programmes puissent s’exécuter. Cela suppose que les périphériques et la mémoire puissent être
partagés pour être utilisés par les programmes. On distingue deux implémentations du multitâche : le
multitâche coopératif et le multitâche préemptif
Avec le multitâche coopératif, chaque application qui s’exécute sur le système d’exploitation dispose du
processeur (et les ressources associées) puis le libère, permettant ainsi à l’application suivante dans la
file d’attente d’exécution de disposer à son tour du processeur. Chaque tâche dépend des autres. La
conséquence est que, si une application ou tâche boucle sur elle – même ou se bloque, toutes les
applications restent en attente allant jusqu’à figer le système d’exploitation.
Avec le multitâche préemptif, chaque application dispose du processeur pendant un laps de temps
détermine à l’avance. L’ordonnancement, l’attribution du temps processeur pour les applications en
cours, est fait par le système d’exploitation sans consultation des applications exécutées. En
conséquence, si une application se bloque, elle perd l’allocation de processeur initialement prévue et est
mise de coté, sans bloquer ni le système, ni les autres applications. le partage du processeur et des
ressources entre les applications est géré par le système d’exploitation.
Systèmes multiprocesseurs
Le multiprocessing est une technique consistant à faire fonctionner plusieurs processeurs en
parallèle afin d'obtenir une puissance de calcul plus importante que celle obtenue avec un
processeur haut de gamme ou bien afin d'augmenter la disponibilité du système (en cas de panne
d'un processeur
On appelle SMP (SymmetricMultiprocessing ou SymmetricMultiprocessor) une architecture dans
laquelle tous les processeurs accèdent à un espace mémoire partagé.
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.
Systèmes embarqués
Les systèmes embarqués sont des systèmes d'exploitation prévus pour fonctionner sur des
machines de petite taille, telles que des PDA (personal digital assistants ou en français assistants
numériques personnels) ou des appareils électroniques autonomes (sondes spatiales, robot,
ordinateur de bord de véhicule, etc.), possédant une autonomie réduite. Ainsi, une caractéristique
essentielle des systèmes embarqués est leur gestion avancée de l'énergie et leur capacité à
fonctionner avec des ressources limitées.
Les principaux systèmes embarqués «grand public» pour assistants numériques personnels sont :
PalmOS
Windows CE / Windows Mobile / Window Smartphone
Systèmes temps réel

Les systèmes temps réel (real time systems), essentiellement utilisés dans
l'industrie, sont des systèmes dont l'objectif est de fonctionner dans un
environnement contraint temporellement. Un système temps réel doit ainsi
fonctionner de manière fiable selon des contraintes temporelles spécifiques,
c'est-à-dire qu'il doit être capable de délivrer un traitement correct des
informations reçues à des intervalles de temps bien définis (réguliers ou non).
I.4 COMPOSITION DU SYSTÈME D’EXPLOITATION
Le système d'exploitation est composé d'un ensemble de logiciels permettant de gérer les
interactions avec le matériel. Parmi cet ensemble de logiciels on distingue généralement les
éléments suivants :
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.
Le système de fichiers (en anglais «file system», noté FS), permettant d'enregistrer les
fichiers dans une arborescence.
Autres composantes d’un système d’exploitation
Les bibliothèques dynamiques
Elles regroupent les opérations les plus utilisées dans les programmes informatiques dans le
but de :
éviter la redondance de ces opérations dans tous les programmes
Les outils système
Ces outils permettent de :
 configurer le système
 passer le relais aux applications proposant des services à un ou plusieurs utilisateurs ou à d’autres
ordinateurs

Les programmes applicatifs de base


Ils offrent des services à l’utilisateur (calculatrice, éditeur de texte, navigateur web, etc.)
Un système de fichiers est une méthode d’organisation des données persistantes sur un médium
durable
I.5 ROLE DU SYSTÈME D’EXPLOITATION

L'activité principale du système d'exploitation est de gérer les ressources matérielles en


permettant leur allocation et leur partage. Ce dernier point augmente les
performances du système en autorisant à plusieurs programmes d'applications d'utiliser
simultanément différentes parties de la machine. Il est ainsi pour beaucoup l'interface,
construisant pour l'utilisateur, une machine virtuelle plus facile à programmer que la
machine réelle.
Le système d'exploitation transforme donc, par sa gestion des ressources matérielles, la
machine physique en une machine virtuelle aux capacités infiniment plus grandes que
la machine réelle et certainement beaucoup plus souples et plus faciles à exploiter :
C'est ainsi que la gestion de l'unité centrale assurée par un système temps-partagé va
permettre à chacun des utilisateurs de ce système d'avoir l'illusion de posséder chacun
un processeur (virtuel) qui travaille exclusivement pour exécuter ses programmes.
De même, la gestion appropriée de la mémoire centrale permettra :
Le chargement de plusieurs programmes à la fois dans cette même mémoire centrale.
L'exécution de programmes bien plus grands que la taille de la mémoire centrale
I.6 UTILISATION DE WINDOWS VIA DES COMMANDES II.6 : Utilisation de Windows
via des commandes
COMMANDES DOS SOUS WONDOWS
 Date : Affiche la date
 Time : Affiche l’heure
 Mkdir : créer un dossier exp : mkdir D:\SARAHMPOYO
 Rmdir : Supprime un dossier exp : rmdir D:\SARAHMPOYO
 Color : Changer la couleur de l’invite exp : color 04 1=arrière 2=écrits
 Systeminfo : afficher toutes les informations système
 Ver : affiche la version de Windows
 Ren : renommer un dossier exp : REN D:\PELENGE ARSENE
 Del : supprime un fichier exp : del D:\NAOMIE\[Link]
 Move : permet de déplacer exp : move D:\NAOMIE\[Link] D:\ARSENE
 Help : Affiche toutes les commandes windows
 Xcopy : copier les fichiers exp : xcopy D:\ARSENE\[Link] D:\NAOMIE
 Taskmgr : affiche gestionnaire des tâches
COMMANDES AU NIVEAU EXECUTER

 WIN+R= Executer
 Exécuter/ cmd : Affiche l’invite de commande
 Exécuter/calc : Affiche la calculatrice
 Exécuter/osk : affiche le clavier visuel
 Exécuter/msconfig : affiche la configuration système
 Exécuter/control : ouvre le panneau de configuration
 Exécuter/regedit : ouvre éditeur des registres
 Exécuter/control color : affiche les paramètres d’apparence (arrière plan…)
 Exécuter/control keyboard : affiche les paramètres du clavier
 Exécuter/control folders : ouvre les options des dossiers
 Exécuter/control mouse : ouvre les options de la souris
 Exécuter/control admintools : affiche outils administration
 Exécuter/dxdiag : affiche l’outil de diagnostic direct
 Exécuter/[Link] : affiche la stratégie de groupe local
 Exécuter/cleanmgr : affiche l’option de nettoyage de disque
II.7 : UTILISATION DU LINUX (UBUNTU) VIA DES COMMANDES
 touch et mkdir : créer des dossiers et des fichiers (touch nom du fichier, mkdir nom
dossier)
 cp et mv : copier et déplacer un fichier (cp source destination)
 rm : supprimer des fichiers et des dossiers
 ln : créer des liens entre fichiers (exemple : ln fichierorigine fichierlié)
 pwd : afficher le dossier actuel
 which : connaître l’emplacement d’une commande. Il est à noter que les
programmes n’ont pas d’extension contrairement à ceux de windows avec .exe
et sont tous situés à un même emplacement.
 ls –a : afficher tous les dossiers et fichiers cachés
 ls –F : affiche et indique le type d’éléments. Il rajoute à la fin des éléments un
symbole pour qu'on puisse faire la distinction entre les dossiers, fichiers,
raccourcis...
 ls –l : affiche tous les détails possibles. Il y a un élément par ligne. Chaque colonne
a sa propre signification. De gauche à droite :

Vous aimerez peut-être aussi