Le système gère tous les utilisateurs :
• Identification
• Authentification
• Sécurité et droits
• Partage des ressources
• Chaque utilisateur peut demander l'exécution de plusieurs tâches
3. Caractéristiques des systèmes Unix
Les systèmes Unix, comme celui que l'on utilisera en TP, ont les caractéristiques suivantes :
• Multi-tâches et multi-utilisateurs
• Ouvert, indépendant du matériel
• Ecrit en langage C (maintenance et portabilité)
• Populaire car universitaire et professionnel (serveur web, serveur courriels, ...)
• Simple (à l'origine en tout cas ...)
• Nombreux utilitaires et logiciels, bien souvent gratuit et libre (le code source est disponible)
L'architecture d'un système Unix est composée comme suit :
• Noyau (kernel) : Il administre les ressources comme le processeur (ordonnancement ou
scheduling) et gère la mémoire centrale (pagination ou swaping). Il gère les fichiers (système
de gestion de fichiers ou SGBD), crée les processus, gère les échanges d'informations (E/S),
assure la sécurité des objets, leur contrôle et leur compatibilité.
• Appels systèmes : Ces primitives fournissent une interface logicielle pour écrire plus
facilement des programmes qui utilisent les composants du système.
• Interpréteur de commandes (Shell) : Le Shell ne fait pas parti du SE. C'est un programme en
interaction avec l'utilisateur qui interprète les commandes et démarre les processus de
l'utilisateur. Il intègre des commandes internes. Il existe de nombreuses versions (sh, csh,
ksh, bash, zsh ...)
• Utilitaires et outils : gestionnaire de fichiers (nautilus, konqueror), éditeurs (vi, nedit, gedit,
...), compilateurs (java, c, c++,...)
• Communications via des services réseau : transfert de fichiers (ftp), connexion sur
ordinateurs distants (telnet, rlogin, ...), communication entre utilisateurs (mail, write, talk),
accès transparent à des fichiers distants (NFS) et services internet (news, www).
• Interface graphique (X11, GTK+) et environnements de bureau (Gnome, KDE)
Question : identifier les acronymes inconnu et cherchez leur sens.
Question : en quel langage de programmation sont les primitives UNIX ?
Question : Lister quelques primitives. Conclure de leur intérêt pour le programmeur.