3 projets majeurs écrits en C

Le C, comme le PHP, est un langage de programmation impératif, qui a été conçu à l’origine pour la programmation système.

En effet, son utilisation première a été de réécrire le noyau du système UNIX.
Il est depuis devenu une référence en langage de programmation, notamment au niveau de la puissance de calcul. De nombreux langages en découlent et en reprennent de nombreux aspects, comme le JAVA, le C++ ou le PHP.

Présentation générale et historique du C

Il a été inventé en 1972 par Dennie Ritchie et Ken Thompson, parallèlement à UNIX. L’ajout des types, notamment, fit de cette nouvelle version du langage B un nouveau langage à part entière.
Une normalisation du langage est apparue en 1989, dite ANSI C ou C89. Plusieurs versions verront le jour plus tard, la C90, C99 (qui porte notamment sur les tableaux de taille variable, les pointeurs restreints, les nombres complexes, etc), et la C11, qui elle introduit notamment le support du multi-thread.

Le C est ce que l’on appelle un langage bas niveau, c’est à dire que chaque instruction est concçue pour être compilée en instruction machine, dont on connaît l’occupation en mémoire et la charge de calcul.

La puissance du C vient également du fait qu’il contient un large éventail de types, entiers et flottants correspondant directement au types de données du processeur.
Enfin, les pointeurs permettent d’accèder directement aux adresses mémoires et d’effectuer des calculs sur celles-ci.

Passons maintenant à notre petit listing de programmes majeurs réalisés en C.

Le noyau UNIX

Comment passer à côté?
Evidemment notre top se doit de commencer par l’utilité première du C, réécrire le système du Kernel UNIX!
Cet OS repose sur un intérpreteur de lignes de commandes, un shell, et de nombreux utilitaires, commutables entre eux grâce aux redirections d’entrée/sortie, et toujours éxecutés en ligne de commande.
Il commença à être diffusé en dehors des laboratoires Bell (où il avait vu le jour, sous la houlette de Ken Thompson et Dennis Ritchie), en 1975.
Vers la fin de l’année 1977, il fût redistribué par des chercheurs de l’université de Californie sous le nom de BSD, après avoir été amélioré par de multiples aspects.

Ce projet, après une longue série de procès est passé en open-source et celles-ci sont maintenant accessibles à tout le monde, mais leur compréhension nécessite une maîtrise parfaite de plusieurs concepts informatiques fondamentaux.
Mis à part UNIX, le langage C reste à la base de nombreux OS, puisque ceux ci sont généralement des dérivés d’UNIX ou de BSD, tels que Linux ou MAC OS X, ou encore Android.

Le PHP

Eh oui! Le C est également à l’origine du langage PHP, référence en matière de Web dynamique! A la base, le PHP était une bibliothèque logicielle écrite en C par Rasmus Lerdorf pour son site web. Celui ci voulait conserver une trace des visiteurs venus consulter son CV.

Au fur et à mesure qu’il faisait évoluer sa bibliothèque, Rasmus a petit à petit ajouter des fonctionnalités permettant de dialoguer avec des bases de données, et de créer des applications simples et dinamyques pour le Web.

PHP est désormais tenu à jour par Andi Gutmans et Zeev Suraski, qui commencèrent également la réecriture de son moteur interne.
Il est, comme le C, multi-plateforme et facilement reconductible d’un OS à l’autre.

Le système de guidage des fusées Ariane!

Une partie du système de guidage des fusées Ariane est réalisé en C! La majeure partie est certes réalisé en ADA, mais le reste est en C! Et cela démontre toute la puissance de ce langage, d’ailleurs.
En juin 1996, le dépassement de mémoire d’une variable dans le système de guidage d’Ariane 5 a provoqué son explosion complète, elle a viré sur un angle de trajectoire de 90° d’un seul coup, arrachant les accélerateurs latéraux, et déclenchant le processus d’auto-destruction préventif de la fusée.

Voila, ce top 3 présente la véritable puissance du langage C, qui est et a toujours été l’un des langages les plus performants, et utilisé dans des projets absolument incroyables!

Laisser un commentaire