Université Hassiba Benbouali-Chlef Module : Système d’Exploitation 1 Départemen
Université Hassiba Benbouali-Chlef Module : Système d’Exploitation 1 Département d’Informatique L2 Informatique Fiche TD n°1 : Introduction aux Systèmes d’Exploitation Exercice 1 : 1. Quels sont les objectifs principaux d’un Système d’Exploitation (SE) ?. 2. Qu'est-ce qu'un système multiprogrammé?. 3. Quel était le rôle du moniteur d'enchaînement dans les premiers systèmes ?. 4. Qu'est-ce qu'un système temps réel ? 5. Qu'est-ce qu'un système réparti ?. 6. Quel est l’objectif de l’interprète de commande ?. Décrire son fonctionnement en langage algorithmique simple. 7. Quel est le rôle d’un compilateur ?. Quelles sont ses principales phases de travail ?. 8. En quoi se différentie-t-il d’un interpréteur ? 9. Quel le rôle d’un éditeur de liens ? Exercice 2 : Le but de cet exercice est de mettre en évidence, sur un système simplifié à l'extrême, l'influence de l'évolution historique des systèmes d'exploitation sur quelques grandeurs caractéristiques de leursperformances. − On considère un ordinateur dont les organes périphériques sont un lecteur de cartes (1000 cartes / minutes)et une imprimante (1000 lignes / minutes). Un travail moyen est ainsi défini : o lire 300 cartes, o utiliser le processeur pendant une minute, o imprimer 500 lignes. − On suppose que tous les travaux soumis par les usagers ont des caractéristiques identiques à celles de cetravail moyen. On définit deux mesures des performances du système : o le débit moyen D des travaux : nombre de travaux effectués en une heure. o le rendement r de l'unité centrale : fraction du temps total d'utilisation de l'unité centrale pendant lequelelle exécute du travail utile (autre que la gestion des périphériques). A/- On suppose d'abord que les périphériques sont gérés par l'unité centrale. calculer r et D dans leshypothèses de fonctionnement suivantes : A.1/- Le système est exploité en porte ouverte ; la durée d'une session est limitée à 15 mn. On supposequ'un usager a besoin de 4 mn pour corriger son programme au vu des résultats, et faire une nouvellesoumission. A.2/- Le système est exploité avec un moniteur d'enchaînement séquentiel des travaux. B/- On suppose maintenant que les périphériques sont gérés par un ordinateur séparé, qui constitue unebande magnétique d'entrée à partir des cartes et liste sur imprimante le contenu d'une bande magnétiquede sortie. L'ordinateur est alimenté par la bande magnétique d'entrée et produit la bande de sortie ; onnéglige la durée de lecture et d'écriture des bandes. Le temps de transfert des bandes d'un ordinateur àl'autre est de 5 mn dans chaque sens ; on suppose qu'une bande regroupe une fournée de 50 travaux (voirschéma) B.1/- On suppose que le rythme de soumissiondes travaux est suffisant pour occuper l'ordinateurcentral à plein temps. Calculer les valeurs de r etD. B.2/- Etablir la planification de la construction destrains de travaux et calculer le temps d'attentemoyen d'un usager (temps entre la soumission dutravail et la réception des résultats. On admettraque les travaux arrivent à un rythme régulier, quele temps de construction d'une fournée(préparation du train de cartes) estde 10 mn et que le temps de distribution des résultats d'une fournée (découpage et tri des listings) est de 10mn également. 1 Mr. KADRI. W C/- Les périphériques sont maintenant gérés par un canal d'entrée-sortie. Le système est monoprogrammé, et le moniteur d'enchaînement permet à l'unité centrale d'exécuter le traitement d'un travail parallèlement à la lecture du suivant et à l'impression du précédent. Calculer dans ces conditions r et D. Même question si le travail moyen lit 1200 cartes et imprime 1500 lignes pour 1 mn de l'unité centrale. D/- Les entrées-sorties sont maintenant gérées avec des tampons sur disque (spoule de lecture et d'impression). Le travail moyen est celui défini en C (1200 cartes, 1 minute et 1500 lignes). D.1/- On suppose qu'une carte et une ligne d'impression occupent respectivement 80 et 100 octets. Quelle est la taille minimale nécessaire des tampons de lecture et d'impression sur disque pour que l'unité centrale soit utilisée à son rendement maximal ? Quel est alors le débit des travaux ? D.2/- Le rythme d'arrivée des travaux est celui de la saturation, la taille du tampon de lecture est de 176 000 octets, et la taille du tampon d'impression sur disque est de 2 Méga-octets. Quel est le rendement de l'unité centrale ? 2 Mr. KADRI. W Solution Fiche TD 1 : Exercice n°1 : 1. Le système d’exploitation (operating system, OS) est le programme intermédiaire entre l’ordinateur (matériel, hardware) et les logiciels des utilisateurs. Il fournit : o Une gestion des ressources matérielles de l’ordinateur o Une base pour le développement et l’exécution des différents programmes. 2. Un système multiprogrammé ou appelé aussi «multi-tâche» (en anglais multitaking) maintient plusieurs travaux en mémoire à la fois. Le SE choisit et commence à exécuter un des travaux en mémoire. Par la suite, le travail risque d'attendre une autre tâche jusqu’à la fin de l’exécution. Plusieurs tâches peuvent être exécutées simultanément. 3. Le Moniteurs d’enchainement ont vu leur naissance à la troisième génération (Bach Processing) qui consistaient à automatiser passage d’un programme à un autre. 4. Un système à temps réel est un système dont l'objectif est de fonctionner dans un environnement contraint temporellement. Il doit délivrer un traitement correct des informations reçues à des intervalles de temps bien définis (réguliers ou non). Exemples :RTLinux (RealTime Linux), QNX ,VxWorks. 5. Un système répartis (ou faiblement couplés) est un ensemble de ressources (processeurs) géographiquement répartis qui consiste à répartir le calcul entre plusieurs processeurs. chaque processeur possède sa propre mémoire locale. Les processeurs communiquent entre eux via des lignes de communication (Bus, MAN, MAN et LAN…etc). 6. Un interpréteur de commandes (CLI pour Command-line interpreter en anglais), est un programme faisant partie des composants de base d'un système d'exploitation. Sa fonction est d'interpréter les commandes qu'un utilisateur tape au clavier dans l'interface en ligne de commande. Cette interprétation fera l’objet d’un ordre sous forme de signal électrique à l’unité de commande qui ordonnera à son tour l’organe concerné. L’Algorithme : Début TANT QUE l'utilisateur ne ferme pas la session FAIRE # Émettre un signe d'invite (prompt) # Lire la ligne courante # Exécuter la commande indiquée sur cette ligne FinFaire Fin 7. Un compilateur est un programme informatique qui transforme un code source écrit dans un langage de programmation (le langage source ; Java, C++, Pascal…) en un autre langage plus bas niveau tel que le langage d'assembleur ou langage machine. o Les étape de compilation sont les suivantes : 1. pré-traitement (préprocesseur) : nécessaire pour certaines langues comme C, qui prend en charge la substitution de macro et de la compilation conditionnelle. Généralement, la phase de prétraitement se produit avant l'analyse syntaxique ou sémantique ; par exemple dans le cas de C, le préprocesseur manipule les symboles lexicaux plutôt que des formes syntaxiques. 2. analyse lexicale : découpe le code source en petits morceaux appelés jetons (tokens). Chaque jeton est une unité atomique unique de la langue (unités lexicales ou lexèmes), par exemple un mot- clé, un identifiant ou un symbole. La syntaxe de jeton est généralement un langage régulier, donc un automate à états finis construits sur une expression régulière peut être utilisé pour le reconnaître. 3. analyse syntaxique : elle implique l'analyse de la séquence jeton pour identifier la structure syntaxique du programme. Cette phase s'appuie généralement sur la construction d'un arbre d'analyse 3 Mr. KADRI. W ; on remplace la séquence linéaire des jetons par une structure en arbre construite selon la grammaire formelle qui définit la syntaxe du langage. 4. analyse sémantique : c’est la phase durant laquelle le compilateur ajoute des informations sémantiques à l'arbre d'analyse et construit la table des symboles. Cette phase vérifie le type (vérification des erreurs de type), ou l'objet de liaison (associant variables et références de fonction avec leurs définitions), ou une tâche définie (toutes les variables locales doivent être initialisées avant utilisation), peut émettre des avertissements, ou rejeter des programmes incorrects. 5. la transformation du code source en code intermédiaire ; 6. l'application de techniques d'optimisation sur le code intermédiaire : c'est-à-dire rendre le programme « meilleur » selon son usage. 7. la génération de code avec l'allocation de registres et la traduction du code intermédiaire en code objet, avec éventuellement l'insertion de données de débogage et d'analyse de l'exécution ; 8. et finalement l'édition des liens. 8. L'interprète est capable de lire le code source d'un langage sous forme de script, habituellement un fichier texte, et d'en exécuter les instructions après une analyse syntaxique du contenu. - On différencie un programme dit script, d'un programme dit compilé : o Un programme script est exécuté à partir du fichier source via un interpréteur de script ; o Un programme compilé est exécuté à partir d'un bloc en langage machine issu de la traduction du fichier source. 9. Un éditeur de lien est un programme ou un processus qui permet de créer des fichiers exécutables ou des bibliothèques dynamiques ou statiques, à partir de fichiers objets. Exercice n°2 : A/- A.1/- Il faut 0,3 mn et 0,5 mn pour lire 300 cartes et imprimer 500 uploads/Ingenierie_Lourd/ fiche-td-n01.pdf
Documents similaires










-
30
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Sep 11, 2021
- Catégorie Heavy Engineering/...
- Langue French
- Taille du fichier 0.1032MB