Introduction aux systèmes informatiques - e-campus

publicité
Socrative
Introduction aux systèmes informatiques
Système d’exploitation GNU/Linux
Sylvain Chevallier
[email protected]
IUT de Vélizy
Université de Versailles Saint-Quentin
• Connectez-vous sur b.socrative.com
premier semestre 2016
• indiquez le numéro de salle 89b405e3
Vous pouvez aussi télécharger l’application iOS ou Android
S. Chevallier
Rôle d’un système d’exploitation
S1 2016
2 / 1
Structure d’un système d’exploitation
Utilisateurs
• Machine virtuelle
• abstractions de haut niveau
• plus facile à manipuler que la machine physique
Applications
• Gestion des ressources matérielles
• processeur,
• mémoire,
• périphériques, ...
Système d’exploitation
Pilotes
• Partage de ressources
• Contrôles
S. Chevallier
ISI
Matériel, périphériques
S1 2016
ISI
3 / 1
S. Chevallier
S1 2016
ISI
4 / 1
De l’interface graphique à l’exécution
Interface graphique (GUI)
Utilisateurs
Interface graphique
Applications
write (
Système d’exploitation
Pilotes
Matériel, périphériques
imprimante
Utilisateurs
S. Chevallier
S1 2016
ISI
5 / 1
Interface graphique
Applications
Interface graphique (GUI)
write (
Ligne de commande
$ htmlview /tmp/89273.html
S. Chevallier
S1 2016
ISI
6 / 1
ISI
8 / 1
Ligne de commande
$ cat fic.html | html2ps | lpr
Système d’exploitation
Avantages
Pilotes
• Évite les mauvaises manipulations
Matériel, périphériques
• Approche plus ou moins intuitive
imprimante
Inconvénients
• Compréhension limité du fonctionnement
Utilisateurs
• Risque d’approche « recette de cuisine »
• Connaissance trop liée à un système ou à un logicielInterface graphique
write (
• Limitations imposées par Applications
l’interface
Plus on monte les
couches
• plus c’est
convivial
S. Chevallier
• plus c’est
contrôlé
• moins c’est
Ligne de commande
$ htmlview /tmp/89273.html
$ cat fic.html | html2ps | lpr
desc=open ("/dev/printer", O_WRONLY, 0) ;
ioctl (desc, LPTIME, args) ;
read (0, buf, MAX)
write (desc, buf, MAX) ;
Appel système
Système d’exploitation
Pilotes
S1 2016
ISI
Matériel, périphériques
imprimante
7 / 1
S. Chevallier
S1 2016
Ligne de commande
Compromis
Inconvénients
• Semble trop « difficile »
• Fausse manipulation dangereuse (ex. rm *, del *.*)
• Utiliser les GUI pour les actions simples, de tous les jours
• Comprendre les commandes avant de les utiliser
• Utiliser la ligne de commandes pour les opérations automatisables ou
dont on veut garder le contrôle
Avantages
• Connaissances des bases de fonctionnement
• Plus facile de s’adapter aux changements, aux autres environnements
• Beaucoup plus souples, pas de limitations de la GUI
• Seule possibilité pour effectuer des actions non prévues par les GUI
S. Chevallier
S1 2016
ISI
9 / 1
Philosophie GNU/Linux
S. Chevallier
S1 2016
ISI
10 / 1
S1 2016
ISI
12 / 1
Linux et les UNIX
Shells
Bibliothèques
• Small is beautiful
Appels système
• KISS (Keep It Simple, Stupid)
• Tout est fichier
• Libre (Free as in free beer and
as in freedom)
• Multi-tâche et multi-utilisateurs
Applications
diverses
Gestion des IPC
Gestion des
Gestion desMatériel processus
droits d’accès
Noyau
Gestion des fichiers
Toolkit
Bibliothèques
graphiques
Applications graphiques
diverses
S. Chevallier
S1 2016
ISI
11 / 1
S. Chevallier
Frise chronologique
S. Chevallier
Hierarchie des mémoires
S1 2016
ISI
13 / 1
Les points de montage sur GNU/Linux
Documents
S. Chevallier
S1 2016
S1 2016
Windows
Mes fichiers
14 / 1
ISI
16 / 1
Il y a une seule arborescence
D :\
Program files
ISI
Les points de montage sur GNU/Linux
Une approche différente des lecteurs de Windows
C :\
S. Chevallier
/
Sauvegardes
ISI
Mes cours
home
15 / 1
S. Chevallier
S1 2016
bin
etc
Les points de montage sur GNU/Linux
Les points de montage sur GNU/Linux
Une approche en feuillets
Les disques sont montés sur la hierarchie (point de montage)
/
/
home
bin
etc
toto
home
tata
bin
titi
toto
test
tp
S. Chevallier
etc
Mes fichiers
Sauvegardes
Mes cours
tata
test
projet
S1 2016
Mes fichiers
ISI
17 / 1
Objectifs du shell
Fournir une interface pour la saisie de commande
2
Redirection des entrées/sorties standards
Analyser les commandes
• substitution de noms de fichiers
• substitution de variables
• redirection d’entrées/sorties
4
Exécution de commandes
• mode synchrone
• mode asynchrone
5
Fournir un langage interprété
S. Chevallier
S. Chevallier
S1 2016
tp
projet
Sauvegardes
Mes cours
ISI
18 / 1
Types de Shell
1
3
titi
S1 2016
ISI
19 / 1
Shell
Bourne Shell
C shell
Korn shell
Bourne Again
Shell
Zero Shell
Nom
sh
csh
ksh
bash
Tenex
rc
es
tcsh
rc
es
S. Chevallier
zsh
Description
Shell disponible sur toute plateforme UNIX
Shell développé par BSD
Bourne Shell étendu par l’AT&T
Version améliorée de sh et csh. Fourni le plus
souvent avec Linux.
shell avec beaucoup de fonctionnalités : typage,
substitution et complétion très poussées
csh étendu
Implémentation pour UNIX du shell de Plan 9
Extension de rc
S1 2016
ISI
20 / 1
Arborescence UNIX
Exemple d’arborescence
/
Répertoire B
mon fils
Répertoire C
moi−meme
...
mon père
...
usr.
..
bin .
..
xemacs
latex
home
.
..
etu .
..toto
.
..
projets
.
..
gl
.
..
src .
..
Automate.java
Lecteur.java
Test.java
doc
.
..
rapport.tex
automate.fig
paysage.gif
mes_vacances.avi
chanson.mp3
notes
/
S. Chevallier
S1 2016
ISI
21 / 1
S. Chevallier
S1 2016
Répertoire B
Gestion des répertoires
mon fils
Répertoire C
moi−meme
...
Chaque répertoire contient
un lien vers :
• lui-même : : désigné par
mon fils
un point .
Répertoire C
moi−meme
...
• son père : : désigné par
Exemple : cd et pwd
Pour des raisons de lisibilité,
on ne représente en général
pas . et .. dans les dessins
d’arborescence (implicite).
mon père
/
mon père
cddeux points ..
commande
interne
LeLa
répertoire
racine
/ estcd
unpermet de changer de répertoire courant.
répertoire particulier puisque
lui-même
pwd . et son père .. le
désigne.
Répertoire
A
Afficher le nom du répertoire de travail
en cours
(répertoire courant).
mon fils
mon fils
mon fils
S. Chevallier
S1 2016
usr
doc
rapport.tex
automate.fig
xemacs
latex
paysage.gif
home mes_vacances.avi
chanson.mp3
etu
notes
toto
bin
mon père
Répertoire C
moi−meme
mon père
...
Répertoire D
moi−meme
...
ISI
22 / 1
Automate.java
Lecteur.java
Test.java
/
Répertoire B
moi−meme
...
...
usr.
..
ISI
bin .
..
xemacs
latex
home
.
..
etu .
..toto
.
..
projets
.
..
usr
gl
.
..
bin
src .
..
xemacs
Automate.java
latex
Lecteur.java
home
Test.java
etu
doc
.
..
toto
rapport.tex
automate.fig
projets
paysage.gif
gl
mes_vacances.avi
chanson.mp3
notes src
projets
/
usr
mon père
23 / 1
S. Chevallier
S1 2016
bin
gl
ISI
src
xemacs
Automate.java
latex
Lecteur.java
home
Test.java
etu
doc
toto
rapport.tex
projets
24 / 1
Gestion des répertoires
Exemple : ls
$ ls
projets paysage.gif
mes_vacances.avi chanson.mp3
notes
$ ls projets/gl
src doc
$ ls ..
toto
$ ls /usr/bin paysage.gif projets/gl
latex xemacs
paysage.gif src doc
$ ls / toto ../toto / /home/etu/toto
usr home
toto: no such file or directory
projets paysage.gif
mes_vacances.avi chanson.mp3
notes projets paysage.gif
mes_vacances.avi chanson.mp3
notes
ls
Liste les fichiers d’un répertoire.
Utilisé simplement avec des arguments, suivant le type de l’argument :
• Si c’est un répertoire, liste les fichiers qui y sont contenus
• Affiche le nom du fichier si c’est un fichier
• Affiche une erreur sur l’erreur standard si le fichier n’existe pas.
/
usr
bin
xemacs
latex
home
etu
toto
projets
gl
src
Automate.java
Lecteur.java
Test.java
doc
rapport.tex
automate.fig
paysage.gif
mes_vacances.avi
chanson.mp3
notes
$
S. Chevallier
S1 2016
ISI
25 / 1
Chemins relatifs et absolus
Il existe deux types de chemins :
Absolu Commencent par la racine /
cat /home/etudiants/etud14/jbon/.bashrc
less /var/log/./apache/../../www/index.html
Relatif Dans tous les autres cas, on part du répertoire courant
cat ../jbon/.bashrc
ls tp_systeme/tp1
Raccourci pour le répertoire personnel avec le caractère ∼
ls /home/etudiants/etud14/jbon/tp_systeme
ls ∼/tp_systeme
S. Chevallier
S1 2016
ISI
27 / 1
S. Chevallier
S1 2016
ISI
26 / 1
Téléchargement