Numérique et Sciences Informatiques1ère

Gestion des fichiers et processus
Exercices corrigés

Comprenez la gestion des fichiers (arborescence, droits, commandes) et des processus (PID, états, planification) dans un système informatique.

Concepts & Exercices
\(PID = ID_{processus}, Droits = rwx\)
Concepts fondamentaux
/ ├── home/ │ ├── utilisateur/ │ │ ├── documents/ │ │ │ ├── rapport.txt │ │ │ └── projet/ │ │ │ └── code.py │ │ └── images/ │ │ └── photo.jpg ├── var/ │ └── log/ │ └── system.log └── tmp/ └── fichier_temp.tmp
📁
Fichier : Unité de stockage contenant des données organisées de manière structurée.
⚙️
Processus : Instance d'un programme en cours d'exécution avec un identifiant unique (PID).
🔒
Droits d'accès : Permissions (lecture, écriture, exécution) contrôlant l'accès aux fichiers.
📍
Arborescence : Structure hiérarchique des répertoires et fichiers dans le système.
Exercice 1
Créer une arborescence de fichiers
Exercice 2
Gérer les droits d'accès aux fichiers
Exercice 3
Analyser l'état des processus
Exercice 4
Planifier l'exécution des processus
Exercice 5
Supprimer des fichiers et processus
Corrigé : Exercices 1 à 3
1 Création d'arborescence
Définition :

Arborescence de fichiers : Structure hiérarchique organisant les fichiers et répertoires.

Commandes de gestion :
mkdir projet
mkdir projet/documents
mkdir projet/images
touch projet/main.py
touch projet/documents/readme.txt
Étape 1 : Création du répertoire principal

Commande : mkdir projet (crée un dossier nommé projet)

Étape 2 : Création des sous-répertoires

Commandes : mkdir projet/documents et mkdir projet/images

Étape 3 : Création des fichiers

Commandes : touch projet/main.py et touch projet/documents/readme.txt

Étape 4 : Vérification de l'arborescence

Commande : tree projet (affiche la structure des dossiers)

projet/ ├── main.py ├── documents/ │ └── readme.txt └── images/
Réponse finale :

L'arborescence est créée avec les répertoires et fichiers selon la structure demandée.

Règles appliquées :

Hiérarchie : Les répertoires sont organisés de façon imbriquée

Nommage : Utiliser des noms clairs et cohérents

Structure : Organiser logiquement les fichiers par fonction

2 Gestion des droits
Définition :

Droits d'accès : Permissions qui contrôlent ce que les utilisateurs peuvent faire avec un fichier.

rwx
Propriétaire
r-x
Groupe
--x
Autres
chmod 751 script.sh
# rwx = 7 (4+2+1), r-x = 5 (4+0+1), --x = 1 (0+0+1)
Étape 1 : Comprendre les permissions

r=read (4), w=write (2), x=execute (1). Somme = notation octale

Étape 2 : Attribution des droits

Chaque fichier a 3 niveaux de permissions : propriétaire, groupe, autres

Étape 3 : Modification avec chmod

chmod 751 attribue rwx au propriétaire, r-x au groupe, --x aux autres

Étape 4 : Vérification avec ls -l

ls -l affiche les permissions : -rwxr-x--x signifie 751

Réponse finale :

Les droits sont modifiés selon la notation octale ou symbolique pour contrôler l'accès.

Règles appliquées :

Sécurité : Attribuer les droits minimums nécessaires

Notation : Octale (0-7) ou symbolique (rwx)

Propagation : Les répertoires peuvent hériter des droits

3 États des processus
Définition :

États d'un processus : Ensemble des phases par lesquelles passe un processus durant son exécution.

Créé
Prêt
Exécution
Bloqué
Terminé
PID: 1234
Nom: firefox
État: Exécution
Utilisateur: utilisateur
PID: 5678
Nom: python
État: Prêt
Utilisateur: utilisateur
Étape 1 : État Créé

Le processus est créé mais pas encore prêt à s'exécuter

Étape 2 : État Prêt

Le processus attend d'être affecté au processeur

Étape 3 : État Exécution

Le processus est en train de s'exécuter sur le processeur

Étape 4 : État Bloqué

Le processus attend une ressource (entrée/sortie, verrou, etc.)

Étape 5 : État Terminé

Le processus a terminé son exécution

Réponse finale :

Les processus changent d'état selon leur disponibilité et les ressources du système.

Règles appliquées :

Transition : Les états changent selon les événements système

Ordonnancement : L'OS décide quel processus s'exécute

Isolation : Chaque processus a un PID unique

Corrigé : Exercices 4 à 5
4 Planification des processus
Définition :

Planification : Algorithme qui détermine l'ordre d'exécution des processus sur le processeur.

ps aux
top
kill -STOP 1234 # Suspendre le processus PID 1234
Étape 1 : Algorithmes de planification

FCFS (First Come First Served), SJF (Shortest Job First), Round Robin

Étape 2 : Priorité des processus

Chaque processus a une priorité influençant son ordre d'exécution

Étape 3 : Contexte de basculement

Lors du changement de processus, l'OS sauvegarde et restaure l'état du processeur

Étape 4 : Gestion des interruptions

Les interruptions temporisent l'exécution pour permettre la planification

Étape 5 : Équilibrage des ressources

L'OS équilibre les besoins CPU, mémoire et E/S entre les processus

Réponse finale :

La planification optimise l'utilisation du processeur en gérant l'ordre d'exécution des processus.

Règles appliquées :

Performance : Maximiser l'utilisation du CPU

Réactivité : Répondre rapidement aux processus interactifs

Fairness : Équité dans l'allocation des ressources

5 Suppression de fichiers/processus
Définition :

Suppression : Action de retirer des fichiers ou d'arrêter des processus du système.

rm fichier.txt
rm -r dossier/
kill 1234
kill -9 5678 # Tuer brutalement le processus
Étape 1 : Suppression de fichiers simples

Commande : rm nom_fichier supprime un fichier du système

Étape 2 : Suppression de répertoires

Commande : rm -r nom_dossier supprime un répertoire et son contenu

Étape 3 : Arrêt de processus

Commande : kill PID envoie un signal pour arrêter un processus

Étape 4 : Arrêt brutal

Commande : kill -9 PID tue immédiatement un processus récalcitrant

Étape 5 : Corbeille ou suppression permanente

rm supprime définitivement, contrairement à la corbeille d'un système graphique

Réponse finale :

Les commandes de suppression gèrent les fichiers et processus avec des options pour la sécurité.

Règles appliquées :

Prudence : Vérifier avant de supprimer des fichiers ou processus

Options : Utiliser -i pour confirmation, -f pour forcer

Permissions : Seuls les propriétaires ou root peuvent supprimer certains éléments

Cours bien détaillé
\(PID = f(Programme) + ID_{unique}\)
Attribution des identifiants
📁
Fichiers : Unités de stockage organisées dans une structure arborescente avec des droits d'accès.
⚙️
Processus : Instance d'un programme en cours d'exécution avec un identifiant unique (PID).
🔒
Sécurité : Contrôle des accès aux fichiers et gestion des droits pour la sécurité du système.
📊
Performance : Optimisation de l'utilisation des ressources par une gestion efficace.
💡
Conseil : Utilisez toujours la commande 'ls -la' pour voir les droits détaillés
🔍
Attention : La suppression avec 'rm -rf' est irréversible, faites attention
Astuce : Utilisez 'ps aux | grep nom_processus' pour trouver un PID spécifique
📋
Méthode : Créez une structure logique pour organiser vos fichiers efficacement
Vérification : Utilisez 'top' ou 'htop' pour surveiller les processus en temps réel
Commandes de base :
  • Fichiers : ls (lister), cp (copier), mv (déplacer), rm (supprimer), mkdir (créer répertoire)
  • Processus : ps (afficher processus), top (surveillance), kill (arrêter), nice (priorité)
  • Droits : chmod (changer droits), chown (changer propriétaire), umask (masque par défaut)
  • Navigation : cd (changer répertoire), pwd (répertoire courant), find (rechercher)
Règles importantes :
  • Les droits d'accès sont essentiels pour la sécurité du système
  • Chaque processus a un état qui change selon les événements système
  • La planification optimise l'utilisation des ressources du système
  • La suppression de fichiers est irréversible sans système de sauvegarde
  • Seuls les utilisateurs autorisés peuvent manipuler certains fichiers/processus
Gestion des fichiers et processus Systèmes et logiciels