ÉVALUATION EN SYSTÈME D'EXPLOITATION TEST  10/ 10 

LINUX : UBUNTU

EXAMEN SYSTÈME D'EXPLOITATION  

EXAMEN LINUX ( 20PTS )

Exercice 01 :

1) Définir : Ordonnancement, processus, tube,  préemption.

2) La taille d'un fichier sous Linux est-elle bornée ? Justifiez.

3) Pourquoi le partage de ressources pose des problèmes dans un système multiprogramme en temps partage ?

4) Le système UNIX permet-il de contrôler les accès aux ressources partagées ?

5) Donner la commande (une seule commande) permettant de copier les fichiers du répertoire personnel de l'utilisateur courant dont le nom commence par un 'p' ou par un 'P' et l'avant dernier caractère de ce nom est un '3' ou un '2'; cette copie se fait dans le répertoire /tmp.

Exercice 02 :

A) Soit le fichier listeEtud.txt

L'emploie de la commande $cat listeEtud.txt nous donne le résultat suivant :
NOM AGE MATIERE NOTE NIVEAU
HENZO 23 MATHS 17 L1
TOM 25 PHY 16 L1
ALICE 19 CHIMIE 18 L4
LYNN 23 INFO 20 L3
TOMMY 17 CHIMIE 17 L2
HENZO 17 INFO 18.5 L3   

Questions :

  1. Quelle commande faut-il utiliser pour afficher le nom, les niveau de chaque étudiant par ordre décroissant de niveau du fichier "listeEtud.txt" ?
  2.     Quelle commande faut-il utiliser pour trier les étudiants par ordre alphabétique en fonction de leur nom ?
  3.     Quelle commande faut-il utiliser pour trier les étudiants par ordre décroissant en fonction de leur âge ?
  4.     Quelle commande faut-il utiliser pour afficher uniquement les noms des étudiants présents dans le fichier ?
  5.     Quelle commande faut-il utiliser pour afficher uniquement les matières étudiées par les étudiants ?
  6.     Quelle commande faut-il utiliser pour afficher uniquement les étudiants dont la note est supérieure à 17 ?
  7.     Quelle commande faut-il utiliser pour afficher uniquement les âges des étudiants présents dans le fichier ?
  8.     Quelle commande faut-il utiliser pour afficher uniquement les notes des étudiants présents dans le fichier ?
  9.     Quelle commande faut-il utiliser pour afficher uniquement les niveaux d'études des étudiants présents dans le fichier ?
  10.     Quelle commande faut-il utiliser pour afficher uniquement les matières et les notes des étudiants présents dans le fichier ?
  11.     Quelle commande faut-il utiliser pour afficher le nombre d'étudiants présents dans le fichier ?
  12.     Quelle commande faut-il utiliser pour afficher uniquement les étudiants de niveau "L3" ?
  13.     Quelle commande faut-il utiliser pour afficher uniquement les noms des étudiants qui étudient la chimie ?
  14.     Quelle commande faut-il utiliser pour afficher uniquement les étudiants dont l'âge est compris entre 20 et 25 inclus ?
  15.     Quelle commande faut-il utiliser pour afficher les noms uniques des étudiants présents dans le fichier ?
  16.     Quelle commande faut-il utiliser pour afficher les matières uniques des étudiants présents dans le fichier ?
  17.     Quelle commande faut-il utiliser pour afficher les niveaux d'études uniques des étudiants présents dans le fichier ?
  18.     Quelle commande faut-il utiliser pour afficher les noms des étudiants âgés de plus de 20 ans ?
  19.     Quelle commande faut-il utiliser pour afficher les matières des étudiants ayant obtenu une note supérieure à 17 ?
  20.     Quelle commande faut-il utiliser pour afficher les étudiants dont le niveau est supérieur ou égal à "L3" et dont la matière est "INFO" ?
  21.  Quelle commande faut-il utiliser pour afficher la liste des utilisateurs connectés au système, ainsi que leurs informations de connexion telles que l'heure de connexion, le terminal utilisé et l'adresse IP ?
  22. Combien y a-t-il de lignes dans le fichier "listeEtud.txt" ?   

B) Je veux aller dans le repertoire /usr/local/games/mariobros, et le repertoire courant est /usr/local. Quelle(s) commande(s) peut-on taper ?
A : cd /games/mariobros
B : cd games/mariobros
C : cd local/mariobros
D : cd /usr/local/games/mariobros
E : cd /usr/local/../local/games/mariobros
F : cd ../games/mariobros

Donner la (les) bonne(s) réponse(s).

C) Quelle différence y a-t-il entre les commandes mv toto titi et cp toto titi ?

Exercice 03 : Fork()

Soit le programme suivant donner la sortie écran :

#include <stdio.h>
#include <sys/types.h>;
#include <unistd.h>;


int main() {
   

    if (fork() == 0)
        printf("
Bonjour de l'enfant !\n");
    else
        printf("
Bonjour du Parent !\n");
}

    return 0;
}

2.

 

‘’ La persévérance, c’est ce qui rend l’impossible possible, le possible probable et le probable réalisé. ‘’


  Contact WhatsApp : +237 658395978 | Réaliser Par Joël_Yk   .      

                                                                                    

Correction :

EXERCICE 01 :

1) Definition :

2) Non, La taille d'un fichier sous Linux n'est pas bornée en théorie. Le système de fichiers utilisé par Linux, tel que ext4, supporte des tailles de fichiers extrêmement grandes, allant jusqu'à plusieurs téraoctets. Cependant, dans la pratique, certaines limites peuvent être rencontrées en fonction de la configuration du système de fichiers et des limites imposées par le système d'exploitation lui-même.

3) Le partage de ressources pose des problèmes dans un système multiprogrammé en temps partagé car plusieurs processus concurrents peuvent essayer d'accéder et de modifier les mêmes ressources en même temps. Cela peut entraîner des conflits et des conditions de concurrence, où les résultats des opérations ne sont pas déterministes et peuvent entraîner des incohérences ou des erreurs dans les données.

4) Oui, le système UNIX permet de contrôler les accès aux ressources partagées. Il offre des mécanismes de protection et de gestion des droits d'accès aux fichiers, aux répertoires et à d'autres ressources système. Ces mécanismes incluent les permissions de fichiers (lecture, écriture, exécution) pour les propriétaires, les groupes et les autres utilisateurs, ainsi que des mécanismes avancés tels que les listes de contrôle d'accès (ACL) pour des contrôles d'accès plus granulaires.

5) La commande pour copier les fichiers du répertoire personnel de l'utilisateur courant dont le nom commence par un 'p' ou par un 'P' et dont l'avant-dernier caractère est un '3' ou un '2' dans le répertoire /tmp est la suivante :

$ cp ~/p*[23] /tmp/

Explication :

  • cp est la commande pour copier des fichiers.
  • ~/p*[23] spécifie le motif des noms de fichiers à copier. ~ représente le répertoire personnel de l'utilisateur courant, p* indique que le nom du fichier doit commencer par 'p' ou 'P', [23] indique que le dernier caractère avant l'extension doit être '3' ou '2'.
  • /tmp/ est le répertoire de destination où les fichiers seront copiés.
  • La  commande si copiera tous les fichiers du répertoire personnel de l'utilisateur courant correspondant au motif spécifié vers le répertoire /tmp/.

EXERCICE 02 :

A) ----------

1) La commande pour afficher le nom et le niveau de chaque étudiant par ordre décroissant de niveau à partir du fichier "listeEtud.txt" est la suivante :

sort -k5r listeEtud.txt | cut -d' ' -f1,5

Explications :La commande sort -k5r listeEtud.txt trie les lignes du fichier "listeEtud.txt" en utilisant le cinquième champ (niveau) comme clé de tri. L'option -r indique un tri en ordre décroissant. La commande cut -d' ' -f1,5 découpe chaque ligne en utilisant l'espace comme délimiteur et extrait les champs 1 (nom) et 5 (niveau).

Quelle commande faut-il utiliser pour trier les étudiants par ordre alphabétique en fonction de leur nom ?

La commande est : sort -k1 listeEtud.txt

Quelle commande faut-il utiliser pour trier les étudiants par ordre décroissant en fonction de leur âge ?

La commande est : sort -nrk2 listeEtud.txt

Quelle commande faut-il utiliser pour afficher uniquement les noms des étudiants présents dans le fichier ?

La commande est : cut -f1 listeEtud.txt

Quelle commande faut-il utiliser pour afficher uniquement les matières étudiées par les étudiants ?

La commande est : cut -f3 listeEtud.txt

Quelle commande faut-il utiliser pour afficher uniquement les étudiants dont la note est supérieure à 17 ?

La commande est : awk '$4 > 17' listeEtud.txt

Quelle commande faut-il utiliser pour afficher uniquement les âges des étudiants présents dans le fichier ?

La commande est : cut -f2 listeEtud.txt

Quelle commande faut-il utiliser pour afficher uniquement les notes des étudiants présents dans le fichier ?

La commande est : cut -f4 listeEtud.txt

Quelle commande faut-il utiliser pour afficher uniquement les niveaux d'études des étudiants présents dans le fichier ?

La commande est : cut -f5 listeEtud.txt

Quelle commande faut-il utiliser pour afficher uniquement les matières et les notes des étudiants présents dans le fichier ?

La commande est : cut -f3,4 listeEtud.txt

Quelle commande faut-il utiliser pour afficher le nombre d'étudiants présents dans le fichier ?

La commande est : wc -l listeEtud.txt

Quelle commande faut-il utiliser pour afficher uniquement les étudiants de niveau "L3" ?

La commande est : grep "L3" listeEtud.txt

Quelle commande faut-il utiliser pour afficher uniquement les noms des étudiants qui étudient la chimie ?

La commande est : grep "CHIMIE" listeEtud.txt | cut -f1

Quelle commande faut-il utiliser pour afficher uniquement les étudiants dont l'âge est compris entre 20 et 25 inclus ?

La commande est : awk '$2 >= 20 && $2 <= 25' listeEtud.txt

Quelle commande faut-il utiliser pour afficher les noms uniques des étudiants présents dans le fichier ?

La commande est : cut -f1 listeEtud.txt | uniq

Quelle commande faut-il utiliser pour afficher les matières uniques des étudiants présents dans le fichier ?

La commande est : cut -f3 listeEtud.txt | uniq

Quelle commande faut-il utiliser pour afficher les niveaux d'études uniques des étudiants présents dans le fichier ?

La commande est : cut -f5 listeEtud.txt | uniq

Quelle commande faut-il utiliser pour afficher les noms des étudiants âgés de plus de 20 ans ?

La commande est : awk '$2 > 20 {print $1}' listeEtud.txt

Quelle commande faut-il utiliser pour afficher les matières des étudiants ayant obtenu une note supérieure à 17 ?

La commande est : awk '$4 > 17 {print $3}' listeEtud.txt

Quelle commande faut-il utiliser pour afficher les étudiants dont le niveau est supérieur ou égal à "L3" et dont la matière est "INFO" ?

La commande est : awk '$5 >= "L3" && $3 == "INFO" {print $1}' listeEtud.txt

Quelle commande faut-il utiliser pour afficher la liste des utilisateurs connectés au système, ainsi que leurs informations de connexion telles que l'heure de connexion, le terminal utilisé et l'adresse IP ?

La commande est : who

Combien y a-t-il de lignes dans le fichier "listeEtud.txt" ?

La commande est : wc -l listeEtud.txt

B-----------

Je veux aller dans le r ́epertoire /usr/local/games/mariobros, et le r ́epertoire courant est
/usr/local. Quelle(s) commande(s) peut-on taper ?
A : cd /games/mariobros
B : cd games/mariobros
C : cd local/mariobros
D : cd /usr/local/games/mariobros
E : cd /usr/local/../local/games/mariobros
F : cd ../games/mariobros
REPONSE : B - D - E

C------------

Quelle difference y a-t-il entre les commandes mv toto titi et cp toto titi ? REPONSE : cp (copy) fait une copie du premier fichier : un nouveau fichier est cr ́e ́e, son contenu est identique `a celui du fichier d’origine,
mais leurs noms sont diff ́erents. toto et titi existent de fa ̧con parall`ele. mv (move) renomme le fichier toto en titi. Apres l’ex ́ecution de la commande, toto n’existe plus et titi a le contenu de toto (avant le mv).

EXERCICE 03 :

1.

Bonjour de l'enfant !

Bonjour du Parent !
     
(ou)

2.

Bonjour du Parent !

Bonjour de l'enfant !
  1. Dans le code  un processus enfant est créé. fork() renvoie 0 dans le processus enfant et un entier positif dans le processus parent. Ici, deux sorties sont possibles car le processus parent et le processus enfant s'exécutent simultanément. Nous ne savons donc pas si le système d'exploitation donnera d'abord le contrôle au processus parent ou au processus enfant. Important : Le processus parent et le processus enfant exécutent le même programme, mais cela ne signifie pas qu'ils sont identiques

Si vous avez trouvé cet Examen en Système d'exploitation de Mr JoëlYk intéressants et utiles, pourquoi ne pas les partager avec d'autres personnes qui pourraient également en bénéficier ? Partagez ce lien sur les réseaux sociaux ou envoyez-le à vos amis et collègues. Vous pourriez aider quelqu'un à améliorer ses compétences en programmation ou à trouver des solutions à des problèmes complexes. N'oubliez pas que la connaissance doit être partagée pour grandir. Merci pour votre soutien et votre partage !

Contact WhatsApp : +237 658395978 | Réaliser Par Joël_Yk

 
Aucune note. Soyez le premier à attribuer une note !

Ajouter un commentaire

Anti-spam