Introduction aux systèmes informatiques Socrative Rôle - e
Transcription
Introduction aux systèmes informatiques Socrative Rôle - e
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