GAL2024 - Parcellaire des fermes laitières : en enjeu de compétitivité et de ...
Cours Unix Emsi 2023 2024.pdf
1. Chapitre I : Introduction au système
d’exploitation UNIX
Présenté par : Pr . ER-RAJI Naoufal
EMSI: École Marocaine des Sciences de
l'Ingénieur
Année Universitaire 2023/2024
1
2. Sommaire
• Histoire d’Unix
• Caractéristiques et structure du système
• Linux vs Unix
• Caractéristiques techniques de Linux
• Les distributions Linux
• Comment se procurer Unix
2
05/10/2023 ERRAJI - Chapitre 1 - Introduction Unix
3. Histoire d’Unix
• 1969 : Bell Laboratories, centre de recherches commun à AT&T (fournisseur de services téléphoniques) et
Western Electrics (une compagnie d'ingénierie électrique), Ken Thompson travaille sur MULTICS
(Multiplexed Information and Computing Service).
• Bell lab se retire du projet, Multics est abandonné.
• Ken Thompson décide de développer son propre OS, en s'éloignant volontairement de tout existant et écrit UNICS
(Unified Information and Computing System) sur DEC PDP-7 (mini-ordinateur produit par Digital
Equipment Corporation).
• 1970 : Premier portage d’unix sur DEC PDP-11/20, avec le premier compilateur C, conçu spécialement pour rendre
cet OS portable.
• 1971 : Version 1 d'Unix sur PDP/11-20 (modèle d'ordinateur de la gamme des PDP (Programmable Data Processor))
avec un système de fichiers, fork(), roff, ed, suite à la demande de AT&T qui avait besoin d'un système de
traitement de textes pour l'aide à l'écriture de ses brevets.
• 1973 : La version 2 intègre les tubes (pipes) (Le symbole utilisé pour créer des tubes dans les shells Unix est la barre
verticale |, appelée communément tube ou pipe par extension.)
• 1974 : AT&T ne voyant pas d’avenir commercial à Unix, décide de distribuer le code source aux universités selon
quatre critères de licence. Unix gagne donc la faveur des universitaires. Entre 1974 et 1977 les versions de la V3 à la
V6 voient le jour
3
05/10/2023 ERRAJI - Chapitre 1 - Introduction Unix
4. Histoire d’Unix
• 1979 : Le coût des licences Unix encourage l'université de Californie à Berkeley à continuer ses travaux sur
les sources diffusées avant la licence, et créée sa propre variante : BSD Unix.
• Le DARPA (Defense Advanced Research Projects Agency) décide d'utiliser Unix pour ses développements,
notamment BSD Unix.
• 1983 : AT&T met en vente la version commerciale de Unix SYSTEM V.
• 1986 : Première ébauche des normes POSIX (Portable Operating System Interface uniX) sur la
standardisation des appels systèmes et des fonctions.
• 1987 : Création de X-Window, interface C/S graphique développée au sein du MIT. System V v3, premiers
Unix propriétaires de HP et IBM suite à la modification de la licence de SYSTEM V. BSD 4.3 (Berkeley
Software Distribution), Unification de BSD et SYSTEM V (une version du système d'exploitation d'origine
UNIX, (Sun et AT&T)), d'où abandon des particularités de chaque système.
• 1988 : Troisième version de X/Open Portability Guide, servant de référence pour tous les développements
d'Unix ultérieurs (commandes, appels système, langages, requêtes, graphique, internationalisation, réseau).
4
05/10/2023 ERRAJI - Chapitre 1 - Introduction Unix
5. Histoire d’Unix
• 1990 : Unix System V v4 de AT&T, nouveaux standards d'unification avec Sun. Les autres constructeurs se
sentent menacés et fondent OSF (Open Software Foundation).
• 1991 : OSF/1. Apparition des premiers clones Unix comme Linux et FreeBSD.
• 1992 : Sun sort Solaris (SunOS), dérivé de System V v4, avec la gestion des threads. AT&T créée USL (Unix
Software Laboratories) et transfert toutes les licences à cette société.
• 1993 : Novell rachète USL, puis transfert les droits de licences à X/Open.
• Depuis 1993 : S'il existe un grand nombre d'Unix propriétaires, la plupart restent conformes aux normes et
standards établis (X/Open, Posix). On distingue deux grandes branches SYSTEM V et BSD. Les deux sont
compatibles. L'arrivée de Linux (dérivé de System V mais avec pas mal d'améliorations issues de BSD) a
changé la donne.
• Les code source d'Unix appartient aujourd'hui à la société Caldera issue de Novell (un éditeur de logiciel) ,
mais les droits et la force de proposition sont transférés à l'Open Group.
5
05/10/2023 ERRAJI - Chapitre 1 - Introduction Unix
6. Caractéristiques et structure du système – Système
d’exploitation (SE)
• Linux, c’est un système d’exploitation
6
05/10/2023 ERRAJI - Chapitre 1 - Introduction Unix
7. Caractéristiques et structure du système - Système
d’exploitation (SE)
• Un programme que l’on installe sur un ordinateur pour exploiter ses ressources tel que :
processeur, carte graphique, espace de stockage, mémoire vive, etc..
• Un logiciel qui fait l’interface entre l’utilisateur et l’ordinateur.
Rôle d’un SE
Architecture D’un SE Utilisation d’un SE
7
05/10/2023 ERRAJI - Chapitre 1 - Introduction Unix
8. Caractéristiques et structure du système - Classification des SE
Les systèmes d’exploitations
Système mono-tâche Système multi-tâches
• Gère une seule tâche à la fois.
• Le seule programme lancé utilise
les ressources de la machine et ne
rend la main au système
d’exploitation qu’en fin
d’exécution, ou en cas d’erreur.
• Exemple: MS-DOS
• Gère plusieurs tâches simultanément sur une même
machine.
• Le système partage le temps du processeur entre
plusieurs programmes.
• Le principe est d’allouer du temps à différentes
applications qui sont découpées en séquence
d’instructions (Tâche ou Processus), ces tâches seront
tour à tour actives, en attente, suspendues ou détruites
suivant la priorité qui leur est associée.
Exemples: OS2 d’IBM, Windows 95, 98 …
8
05/10/2023 ERRAJI - Chapitre 1 - Introduction Unix
9. Caractéristiques et structure du système - Classification des SE
Les systèmes d’exploitations
Multi-utilisateurs Multi-processeurs
• Gère l'environnement propre à chaque utilisateur
(identification, ressources propres)
• Gère la sécurité d'accès aux programmes et aux
données
• Notion de droits d'accès
• Exemples: Windows 2000, 2003, XP, Unix (HP-UX,
Solaris, AIX, Linux, FreeBSD...)
• C’est un système nécessairement multi-tâches puisqu'on lui
demande d'une part de pouvoir exécuter simultanément
plusieurs applications, mais surtout d'organiser leur
exécution sur les différents processeurs (qui peuvent être
identiques ou non).
• Ces systèmes peuvent être soit architecturés autour d'un
processeur central qui coordonne les autres processeurs,
soit avec des processeurs indépendants qui possèdent
chacun leur système d'exploitation, ce qui leur vaut de
communiquer entre eux par l'intermédiaire de protocoles.
9
05/10/2023 ERRAJI - Chapitre 1 - Introduction Unix
11. Linux vs Unix - Origine
Unix Linux
Un système d'exploitation Un noyau de système d'exploitation de type Unix
Développé à la fin des années 1960 aux
laboratoires Bell de AT&T
Développé par Linus Torvalds en 1991
Il avait plusieurs versions commerciales,
notamment Unix System V et BSD (Berkeley
Software Distribution).
Il s'est inspiré d'Unix et a été mis en œuvre pour
être similaire en termes de fonctionnalités, mais
distinct en ce qui concerne son code source et sa
licence (Linux est open source).
11
05/10/2023 ERRAJI - Chapitre 1 - Introduction Unix
12. Linux vs Unix - Licence
Unix Linux
Il existe des version open source mais la
majorité de systèmes Unix nécessitent le
paiement d’une licence.
Linux est open source et est distribué
sous diverses licences open source.
12
05/10/2023 ERRAJI - Chapitre 1 - Introduction Unix
13. Linux vs Unix - Noyau
Unix Linux
• Unix fait référence à une famille de
systèmes d'exploitation qui partagent
certaines conceptions et interfaces de
programmation (API) communes.
• Le noyau varie d'une version Unix à
l'autre, mais toutes respectent les normes
Unix.
• Linux est le noyau d'un système
d'exploitation de type Unix.
• Diverses distributions Linux utilisent le
noyau Linux comme cœur et construisent
leurs propres composants.
13
05/10/2023 ERRAJI - Chapitre 1 - Introduction Unix
14. Linux vs Unix - Variété
Unix Linux
•Versions open source : BSD (Berkeley
Software Distribution).
•Versions commerciales : qu'AIX (IBM),
Solaris (anciennement Sun Microsystems,
maintenant Oracle) et HP-UX (Hewlett
Packard.
Large gamme de distribution : Ubuntu,
CentOS, Debian, Fedora et Red Hat Enterprise
Linux, etc .
14
05/10/2023 ERRAJI - Chapitre 1 - Introduction Unix
15. Linux vs Unix - Communauté et développement
Unix Linux
•Les systèmes Unix commerciaux sont
généralement développés et entretenus
par des entreprises.
• Les variantes Unix open source ont des
communautés plus petites et dévouées.
• Linux dispose d'une grande et active
communauté open source.
• Le développement est réparti entre de
nombreux contributeurs et
organisations.
15
05/10/2023 ERRAJI - Chapitre 1 - Introduction Unix
16. Linux vs Unix - Coût
Unix Linux
Le coût de Licence
Le cout de services de support
•La plupart des distributions sont
gratuites.
•Il existe des distributions qui offre un
support payantes
16
05/10/2023 ERRAJI - Chapitre 1 - Introduction Unix
17. Linux vs Unix - Compatibilité
Unix Linux
Les logiciels développés pour une
variante Unix peuvent ne pas être
directement compatibles avec une autre
en raison des différences d'API et de
bibliothèques système.
Les distributions Linux ont tendance à
respecter certaines normes (par exemple,
POSIX) qui favorisent la compatibilité
entre les différentes distributions.
Cependant, la compatibilité peut toujours
poser problème dans certains cas
17
05/10/2023 ERRAJI - Chapitre 1 - Introduction Unix
18. Linux vs Unix - Résumé
18
05/10/2023 ERRAJI - Chapitre 1 - Introduction Unix
19. Caractéristiques techniques de Linux
• Linux est un systèmes d’exploitation sous forme de modules
• Les modules sont des morceaux de codes qui communique entre eux
19
05/10/2023 ERRAJI - Chapitre 1 - Introduction Unix
20. Caractéristiques techniques de Linux
Linux est un système d’exploitation monolithique modulaire.
• Monolithique : tout le code de Linux est exécuté dans UN SEUL gros objet en mémoire de l’ordinateur. C’est
ce qu’on appelle le noyau.
• Modulaire : le code du noyau Linux est organisé sous la forme de modules.
• Les modules sont des blocs de code.
20
05/10/2023 ERRAJI - Chapitre 1 - Introduction Unix
23. Caractéristiques techniques de Linux
• Une session Unix.
• Travailler sous Linux implique une connexion au système.
• Login: Identification de l’utilisateur:
• Login :<tapez ici votre nom d’utilisateur>
• Password : <tapez ici votre mot de passe>
• Un super-utilisateur existant dans le système qui a tous les droits c’est
l’utilisateur: root.
23
05/10/2023 ERRAJI - Chapitre 1 - Introduction Unix
24. Caractéristiques techniques de Linux
• Interpréteur de commandes:
• Le shell:
• Après le login, dans une console, vous voyez le prompt (par exemple):
[user@machine~]$ _
• Le prompt:
• user: nom d’utilisateur
• @: dans
• Machine : nom de la machine où vous êtes connecté
• ~ : le répertoires courant (dossier personnel ou home)
• $ : le niveau d’autorisation donnée
• $ signifie que vous êtes en train d’utiliser un compte utilisateur « normal », avec des droits limités (il ne
peut pas modifier les fichiers système les plus importants).
• #:signifie que vous êtes en mode super utilisateur, c’est-à-dire que vous êtes connectés sous le
pseudonyme « root ».
• Le root est l'utilisateur maître qui a le droit de tout faire sur sa machine.
24
05/10/2023 ERRAJI - Chapitre 1 - Introduction Unix
25. Caractéristiques techniques de Linux – Utilisateur normal
25
le répertoires courant (dossier personnel ou home)
Dans
nom de la machine où vous êtes connecté
nom d’utilisateur
05/10/2023 ERRAJI - Chapitre 1 - Introduction Unix
26. Caractéristiques techniques de Linux – Utilisateur normal
26
signifie que vous êtes en
mode super utilisateur, c’est-
à-dire que vous êtes
connectés sous le
pseudonyme « root ».
Dans
nom de la machine où vous êtes connecté
le répertoires courant (dossier personnel ou home)
Le root est l'utilisateur
maître qui a le droit de
tout faire sur sa
machine.
05/10/2023 ERRAJI - Chapitre 1 - Introduction Unix
27. Caractéristiques techniques de Linux
• Interpréteur de commandes le shell:
• Un programme qui interprète les commandes et les transmet au noyau
unix (OS).
• lire la ligne de commande, interpréter sa signification, exécuter la
commande, puis retourner le résultat sur les sorties.
• Il existe plusieurs shells, les plus communs sont: bash et tcsh.
• Environnement de shell est définit par des variables par exemple:
PATH, Cette variable définit la liste des répertoires où le Shell cherche
le binaire correspondant à la commande que vous tapez (par exemple.:
passwd ).
27
05/10/2023 ERRAJI - Chapitre 1 - Introduction Unix
28. Les distributions Linux
https://upload.wikimedia.org/wikipedia/commons/1/1b/Linux_Distribution_Timeline.svg
Grace aux licences en code source ouvert (open source), on trouve plusieurs distributions à utiliser.
Le choix d’une distribution peut être selon :
• Ancienneté
• Rôle historique
• Succès
les éléments (notamment les systèmes de paquetages) développés pour certaines distributions sont repris dans d'autres.
28
05/10/2023 ERRAJI - Chapitre 1 - Introduction Unix
29. Les distributions Linux
La distribution qu’on va
travailler avec dans ce
cours
29
05/10/2023 ERRAJI - Chapitre 1 - Introduction Unix
30. Comment se procurer Unix
Linux
Architecture Traditionnelle Virtualisation
Linux
Windows
Mac OS
Linux
30
05/10/2023 ERRAJI - Chapitre 1 - Introduction Unix
31. Comment se procurer Unix - Virtualisation
• C’est une technique qui peut être considérée comme une extension du
principe d’émulation basée sur le principe de partage des ressources.
• Dans cette technologie, différentes ressources virtuelles (RAM, CPU,
Stockage, Connecteurs Réseaux, Ports USB, etc.) cohabitent de
manière indépendante tout en se partageant les ressources physiques
de la machine hôte.
31
05/10/2023 ERRAJI - Chapitre 1 - Introduction Unix
32. Comment se procurer Unix – Virtualisation - Avantage
• La virtualisation a rendu possible l’exécution de plusieurs systèmes d'exploitation sur un même
matériel, chacun de ces systèmes n'ayant pas conscience de partager le même matériel.
• La virtualisation repose sur l’abstraction physique des ressources informatiques. En d’autres
termes, les ressources physiques allouées à une machine virtuelle sont abstraites à partir de leurs
équivalents physiques.
• Les autres avantages de la virtualisation :
• Consolidation des ressources physiques.
• Minimisation du coût d’électricité et de climatisation.
• Rapidité de déploiement d’un nouveau serveur.
• Supervision plus efficace des serveurs.
• Portabilité.
• Facilité et rapidité de se relever d’un désastre.
• Moyen facile de monter un environnement de test.
NB. Le fait de fonctionner en mode virtualisé ne change rien au fonctionnement du système
d’exploitation, et toutes les applications peuvent tourner sur un système virtualisé sans que ses
fonctionnements soient modifiés.
32
05/10/2023 ERRAJI - Chapitre 1 - Introduction Unix
33. Les types de la virtualisation
Virtualisation des Serveurs Virtualisation des Postes de
travail
Virtualisation des applications
Virtualisation
33
05/10/2023 ERRAJI - Chapitre 1 - Introduction Unix
35. Comment se procurer Unix – Virtualisation – - Les 5 Meilleurs
solution de virtualisation
• Oracle VM VirtualBox
• VMware Workstation Pro
• Parallels Desktop
• VMware Workstation Player
• VMware Fusion
35
05/10/2023 ERRAJI - Chapitre 1 - Introduction Unix
36. Comment se procurer Unix – Virtualisation – Oracle VM
VirtualBox
VirtualBox est le logiciel de virtualisation gratuit, open source et
multiplateforme d’Oracle. Celui-ci permet d’héberger une ou plusieurs
machines virtuelles, avec des systèmes d’exploitation différents.
Le logiciel fonctionne sur différents systèmes d’exploitation hôtes à savoir
Windows, Linux, MacOS et Solaris et prend en charge une multitude de
systèmes d’exploitation invités en tant que machines virtuelles (Windows,
Linux, Solaris, Mac, Unix sous différentes versions).
36
05/10/2023 ERRAJI - Chapitre 1 - Introduction Unix
37. Comment se procurer Unix – Virtualisation – - VMware
Workstation Pro
VMware Workstation Pro est un outil de virtualisation payant à
destination des professionnels qui permet d’exécuter plusieurs systèmes
d’exploitation en tant que machines virtuelles sur un PC Linux ou
Windows. L’outil prend en charge plus de 200 systèmes d’exploitation
(Linux, Windows et ses anciennes versions, BSD…).
37
05/10/2023 ERRAJI - Chapitre 1 - Introduction Unix
38. Comment se procurer Unix – Virtualisation – - Parallels
Desktop
• Parallels Desktop est un logiciel de virtualisation payant qui permet
d’exécuter sur plusieurs systèmes d’exploitation des programmes
disponibles uniquement sur un seul système d’exploitation.
• Le logiciel offre des fonctionnalités poussées pour transférer des
données d’un PC vers un autre, ou encore pour utiliser des
programmes tels que la suite Microsoft Office sur Mac, ainsi que des
logiciels comme Microsoft Visual Studio, SQL Server, Microsoft
PowerBI ou MetaTrader.
38
05/10/2023 ERRAJI - Chapitre 1 - Introduction Unix
39. Comment se procurer Unix – Virtualisation – - VMware
Workstation Player
• VMware Workstation Player est un outil qui permet de créer des machines
virtuelles afin d’y installer un système d’exploitation différent de celui de la
machine hôte. Il prend en charge plus de 200 systèmes d’exploitation (Linux,
anciennes versions de Windows, BSD).
• Cet outil s’adresse principalement au milieu de l’éducation ou à des entreprises
qui ont besoin d’un petit environnement sandbox afin de réaliser des tests.
• VMware Workstation Player propose une version gratuite pour un usage
personnel. Pour une utilisation à des fins commerciales, la solution dispose d’une
formule à 163,99 € pour une licence complète ou 88 € pour une mise à niveau.
39
05/10/2023 ERRAJI - Chapitre 1 - Introduction Unix
40. Comment se procurer Unix – Virtualisation – VMware Fusion
• VMware Fusion est une solution de virtualisation qui permet
d’exécuter Windows et d’autres systèmes d’exploitation directement
depuis macOS. Elle s’adresse principalement à ceux qui souhaitent
exécuter des machines virtuelles.
• VMware Fusion dispose d’une version gratuite pour une utilisation
personnelle.
• Pour une utilisation commerciale, la solution propose deux formules :
• Une version standard à 163,99 € en licence complète ou 88 € en mise à niveau.
• Une version pro à 218,99 € en licence complète ou 109,99 € en mise à niveau.
40
05/10/2023 ERRAJI - Chapitre 1 - Introduction Unix
41. Chapitre I : Introduction au système
d’exploitation UNIX
Présenté par : Pr . ER-RAJI Naoufal
EMSI: École Marocaine des Sciences de
l'Ingénieur
Année Universitaire 2023/2024
41