Les bases

Exploration de la hierarchie du système

Un bon dessin valant souvent mieux qu’un long discours (auquel vous n’échapperez pas de toute façon !), voici un graphique qui donne une apperçu de la hierarchie des systèmes Gnu/Linux

racine

 

Ce joli dessin représente l’architecture dans ses grandes lignes.

Gnu et Linux ?

Pour ceux qui n’ont jamais entendu que le mot « Linux » sans trop savoir de quoi il s’agit, une précision. Un système d’exploitation libre est toujours composé d’éléments du projet GNU (1983), auquel a été adjoint un noyau, le noyau Linux en 1991. Les 2 projets forme un ensemble que l’on nomme « distribution ».

Voir un historique des deux projets sous forme de présentationhelp-hint

« J’ai entendu parlé du code source. On dit que tout le monde peut accéder au code très facilement. C’est un mythe ou une réalité ? »

Gnu

C’est bien une réalité. Je vous propose de télécharger le code source des « Coreutils » qui forment l’ensemble du projet GNU.

Où les Télécharger

http://www.gnu.org/software/coreutils/

gnu

Le fichier à télécharger fait 10 Mo dans sa version « coreutils-8.0.tar.gz« 

Après avoir décompacté l’archive, rendez vous dans

coreutils-8.0/src

puis ouvrez avec un éditeur de texte le fichier nommé « ls.c » (c’est la commande que nous allons utiliser en permanence pour lister le contenu des répertoires).

Pour ceux qui ne voudrait pas télécharger l’archive, je vous mets ici un extrait du code de cette commande. Vous remarquerez que ce n’est pas du chinois pour quelqu’un qui connait la programmation en language « C ». De plus vous remarquerez le nom d’un certain Richard Stalman. Si ce nom ne vous dit rien, suivez donc ce lien.

ls

Linux

arrow-up-mini

Le noyau Linux est un composant qui est arrivé juste à point en 1991 pour permettre d’avoir un système complet et fonctionnel. C’est Linus Torvalds qui l’a dévelloppé.

Le 25 août 1991, Linus Torvalds poste un message désormais célèbre sur  news://comp.os.minix.

Nicolas Kovacs essaie de le traduire aussi fidèlement que possible :

De     : torvalds@klaava.Helsinki.FI (Linus Benedict Torvalds)
Groupe : comp.os.minix
Sujet  : Qu’est-ce que vous aimeriez bien voir dans Minix ?
Date   : 25 Août 91 

Salut à tous les utilisateurs de Minix - 
Je fais un système d’exploitation (libre) pour les clones 386(486)AT (juste pour le fun,
rien de gros et pro genre gnu). C’est en train de mijoter depuis avril, et ça commence à être prêt.
J’aimerais avoir des retours sur ce que les gens aiment/n’aiment pas dans Minix, vu que mon OS y
ressemble plus ou moins (même organisation physique du système de fichiers (pour des raisons pratiques)
entre autres choses).

Pour l’instant j’ai porté bash(1.08) et gcc(1.40), et ça a l’air de marcher. Ce qui signifie que
j’aurai quelque chose d’utilisable d’ici quelques mois, et j’aimerais savoir ce que les gens
voudraient comme fonctionnalités. Toutes les suggestions sont les bienvenues, mais je ne promets pas
de les implémenter 🙂

Linus (torvalds@kruuna.helsinki.fi)

PS. Oui – il est débarrassé de tout code Minix, et il a un système de fichiers multithread.
Il n’est PAS portable, et il ne supportera probablement jamais autre chose que les disques durs AT,
étant donné que c’est tout ce que j’ai 😦

Si vous voulez voir à quoi ressemble le code du noyau, rendez vous à l’adresse suivante :

https://www.kernel.org/

kernel_archives

L’archive est assez grosse à télécharger (81,7 Mo) et une fois décompactée vous obtenez un répertoire de 558 Mo !

Je vous montre un extrait d’un fichier du noyau :

linux-3.19/arch/x86/boot/boot.h

linux_boot

On voit, bien sûr le nom de Linus. On voit aussi que des sociétés comme rPath, Inc et Intel sont partie prenante de la conception du noyau…

Et maintenant partons à la découverte des commandes…

arrow-up-mini

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s