HistoriqueL'histoire d'UNIX débute dans les années 60 et peut être résumée de la façon suivante
- 1966 : les laboratoires Bell (filiale d'AT&T) ont besoin pour leur usage interne, d'un système d'exploitation pour le traitement de textes et le développement d'applications. Ken Thomson et son équipe sont chargés de ce travail.
- 1969 : apparition de la 1ère version d'UNIX. Le nom UNIX provient de UNICS (UNiplexed Information and Computing System), système d'exploitation qui a succédé à Multics dans les laboratoires Bell.
- 1973 : nécessité de rendre UNIX portable sur d'autres ordinateurs. Denis Ritchie réécrit alors entièrement UNIX en langage C qui a d'ailleurs été créé dans ce but précis. Ceci explique les liens profonds entre le langage C et UNIX.
- 1974 : AT&T propose les 1ères licences aux universités ce qui apporta un enrichissement en extensions et en utilitaires variés à UNIX (en particulier, l'Université de Berkeley). Cette date correspond au début de la popularité et de la diversité d'UNIX.
- 1978 : AT&T présente à l'industrie les 1ères versions commerciales.
- années 80 : AT&T autorise le clonage d'UNIX par d'autres constructeurs. Ainsi, apparaissent ULTRIX sur DEC, BSD sur SUN, AIX sur IBM, etc. Ces versions constructeur dérivent toutes des 2 versions présentes à l'époque et qui sont :
- System V pour des configurations moyennes et petites ; USL (Unix Systems Labs, filiale d'AT&T) en est responsable actuellement ;
- BSD (Berkeley Software Distribution) pour des configurations importantes dans le domaine scientifique).
À noter qu'il existe quelques différences de syntaxe entre certaines commandes UNIX de type System V et celles de type BSD. Dans le document suivant, la syntaxe utilisée est celle utilisée par la version BSD sur SUN (stations utilisées pour ce cours).
FonctionnalitésLes 4 fonctions principales d'UNIX sont :
1.2.1- Gestion des ressources de l'ordinateurCe qui a fait le grand succès d'UNIX, c'est le fait d'être un système d'exploitation multi-tâches et multi-utilisateurs. En effet, sous UNIX, le temps d'utilisation du processeur de l'ordinateur est réparti entre différentes tâches ce qui se traduit par l'exécution simultanée de programmes. D'autre part, UNIX traite les commandes de plusieurs utilisateurs en même temps. Dans ce contexte, il doit répartir les ressources entre les différentes tâches et utilisateurs de façon transparente pour ces derniers.
1.2.2- Gestion des donnéesCelle-ci consiste en l'organisation, la maintenance et l'accès aux unités de stockage (mémoire, disques durs, bandes magnétiques, etc.)
1.2.3- Communication entre utilisateursC'est par exemple le courrier électronique ou les transferts de fichiers dont l'utilisation est expliquée plus loin.
1.2.4- Environnement de programmationCe sont les compilateurs (C et quelquefois Fortran), éditeurs de textes, outils d'aide à la programmation (débogueurs, etc.).
remerciement d admin