Linux est un système d`exploitation Qu`est ce qu`un système d

publicité
Linux est un système d'exploitation
Qu'est ce qu'un système d'exploitation ?
L'histoire de Unix
La Philosophie d'Unix
L'architecture de Linux
Auteur : [email protected] www.educoo.org 2008 document \ licence libre
http://creativecommons.org/licenses/by-sa/2.0/fr/
Qu'est ce qu'un système d'exploitation ?
C'est un programme qui sert d'intermédiaire entre
le matériel et l'utilisateur :
- Il masque la complexité (grandissante) de
fonctionnement du matériel
- Il permet le partage des ressources
- Il protège l'accès aux ressources
Auteur : [email protected] www.educoo.org 2008 document \ licence libre
http://creativecommons.org/licenses/by-sa/2.0/fr/
Exemples de systèmes d'exploitation :
OpenBSD
● FreeBSD, NetBSD
● Mac OS 8, 9,..., X.3
● BeOS
● Windows 2000, XP
● Solaris (Sun)
● AIX (IBM)
● HP-UX (HP)
●
--> Sont des “OS”
(Operating Systems ou Systèmes d'exploitation)
Auteur : [email protected] www.educoo.org 2008 document \ licence libre
http://creativecommons.org/licenses/by-sa/2.0/fr/
Histoire de Unix
●
●
●
Né en 1969 dans les laboratoires d’AT&T
créé principalement par Ken Thompson et Dennis
Ritchie.
Les trois améliorations majeures qu'apportait Unix :
l'interactivité, l'échange des données et le multiusagers.
Auteur : [email protected] www.educoo.org 2008 document \ licence libre
http://creativecommons.org/licenses/by-sa/2.0/fr/
La philosophie d'Unix :
●
●
●
Tout est fichier
Chaque programme fait une seule chose, mais le
fait bien
Faire des programmes qui peuvent travailler
ensemble
Auteur : [email protected] www.educoo.org 2008 document \ licence libre
http://creativecommons.org/licenses/by-sa/2.0/fr/
Et Linux ?
●
C'est un Logiciel Libre
●
Apparu en 1991 Linus Torvalds (LInux is Not UniX
●
●
●
Issu d'une communauté de développeurs (sous sa forme
actuelle)
En perpétuelle mutation :
“Linux is a process” --Yann Murdock (fondateur du
projet Debian)
Mais Linux seul ne sert pas à grand chose : ce n'est que
le “noyau”. Il manque toutes les applications...
Auteur : [email protected] www.educoo.org 2008 document \ licence libre
http://creativecommons.org/licenses/by-sa/2.0/fr/
Avantages de Linux :
●
●
multi-tâche et multi-utilisateurs
préemptif ( d'origine pour le noyau 2.6.x, patch pour
2.4.x)
●
robuste, haute disponibilité
●
sécurité “ouverte” : le code source est disponible
●
●
une grosse partie de l'Internet fonctionne grâce à Linux
et/ou les OS de type BSD.
pas d'impératifs commerciaux (une distribution Debian
“sort” quand elle est prête :-) )
Auteur : [email protected] www.educoo.org 2008 document \ licence libre
http://creativecommons.org/licenses/by-sa/2.0/fr/
Inconvénients de Linux
●
●
●
●
Non uniformité d'une distribution à l'autre : frein pour le
développement d'applications commerciales
manque de convivialité, ce qui fait passer Linux pour un
système de “spécialistes”
pas de circuit commercial (ou très peu), mais les choses
changent vite en ce moment
la documentation est gigantesque, mais pas toujours
“organisée”
Auteur : [email protected] www.educoo.org 2008 document \ licence libre
http://creativecommons.org/licenses/by-sa/2.0/fr/
Architecture Unix : les couches d'interaction
●
●
●
Aucun programme n'utilise la
machine (le "hardware")
directement.
Il doit passer par le noyau qui gère
toutes les interactions avec
l'ordinateur, ceci est fait par
l'intermédiaire d'appels
systèmes ("System Calls").
L'exécution des applications ou des
commandes par l'usager se fait
par l'intermédiaire de
l'interpréteur de commande ou
du système de fenêtre
("Windowing System").
Auteur : [email protected] www.educoo.org 2008 document \ licence libre
http://creativecommons.org/licenses/by-sa/2.0/fr/
Appels systèmes :
Les demandes de service faites au système d'exploitation sont faites à
l'aide des appels systèmes (“OS calls” ou “System calls”).
Les services demandés peuvent :
●
contrôler l'execution d'un processus
●
faires des accès et de la gestion sur le système de fichiers
●
faire et contrôler des accès réseau
●
créer et gérer de l'espace mémoire
●
envoyer et recevoir des messages entre processus
●
gérer ou s'informer sur l'état du système
●
contrôler des permissions d'accès...
Auteur : [email protected] www.educoo.org 2008 document \ licence libre
http://creativecommons.org/licenses/by-sa/2.0/fr/
L'interpréteur de commandes :
●
L'utilisateur peut faire exécuter des commandes, de manière
interactive, par le shell
Syntaxe : nom_de_la_commande [- option(s)] [liste d'arguments]
●
●
●
●
Une commande est formée d'une suite de "mots" séparés par un
ou plusieurs séparateurs. N.B. : voir IFS --> man bash
Un mot est constitué d'une suite finie de caractères et qui ne
contient pas de séparateurs.
Un séparateur du shell est soit un espace, soit une tabulation ou
soit un caractère défini par l'utilisateur.
Le "Retour Chariot" termine une ligne de commande.
Auteur : [email protected] www.educoo.org 2008 document \ licence libre
http://creativecommons.org/licenses/by-sa/2.0/fr/
Le système de gestion de Fichiers
<<Tout est fichier>>
●
●
Les informations (données, programmes, images, courriers...)
sont stockées dans des fichiers qui sont enregistrés dans des
catalogues appelés répertoires (directory).
Structure de données d'UNIX a la forme d'un arbre inversé
racine /
Auteur : [email protected] www.educoo.org 2008 document \ licence libre
http://creativecommons.org/licenses/by-sa/2.0/fr/
/
/usr
/home
/var
/usr/bin
Auteur : [email protected] www.educoo.org 2008 document \ licence libre
http://creativecommons.org/licenses/by-sa/2.0/fr/
Arborescence :
●
un point d'entrée appelé racine (root) et noté / (slash)
●
des répertoires (noeuds)
●
des fichiers constituent les feuilles de l'arbre
Auteur : [email protected] www.educoo.org 2008 document \ licence libre
http://creativecommons.org/licenses/by-sa/2.0/fr/
Types de fichiers :
1) les fichiers ordinaires, qui contiennent des données
2) les répertoires, qui contiennent une liste de références à d'autres
fichiers Unix
3) les fichiers spéciaux : pilotes de périphériques, sockets...
4) les liens symboliques
Remarque : la vision uniforme de l'arborescence est possible grâce à
la notion d'“inode”
Inode = descripteur associé à chaque entrée et contenant le nom du
propriétaire, les droits, sa taille, différentes dates + des attributs....
Auteur : [email protected] www.educoo.org 2008 document \ licence libre
http://creativecommons.org/licenses/by-sa/2.0/fr/
Téléchargement