Pourquoi TCP/IP est-il souvent appelé une « pile » ? Comment le mot  » pile  » est-il passé d’une  » pile de livres  » à la façon dont il est utilisé dans le contexte de l’informatique ?


Nous, ingénieurs, aimons avoir l'air geek et parler en langage Lee7speak lorsque nous'communiquons avec des personnes non techniques, mais au fond, nous'sommes des êtres humains très simples qui aiment utiliser des analogies pour expliquer les choses que nous faisons (une recherche rapide sur quora montrera de nombreux ingénieurs utilisant les analogies les plus intéressantes pour expliquer les techniques/technologies).

D'après Wikipedia:


La pile a été proposée pour la première fois en 1946, dans la conception d'ordinateurs d'Alan M. Turing (qui a utilisé les termes "enterrer" et "désenterrer") comme un moyen d'appeler et de retourner des sous-programmes.

Maintenant, les mots "enterrer" et "désenterrer" nous font penser à une analogie simple.... enterrant des humains ofcourse. 😛 Maintenant, supposons que nous avons un trou dans le sol. Nous enterrons une personne dans le trou pour commencer. Maintenant, si nous voulons la déterrer (ou, ce qui est encore plus effrayant, si elle veut se déterrer elle-même), elle peut simplement se déterrer elle-même de la tombe. Mais supposons que nous enterrions une autre personne juste au-dessus d'elle. Maintenant, même si la personne en bas veut creuser pour sortir (musique de Shaun of the Dead en fond sonore), elle doit attendre que la personne en haut soit déterrée avant de pouvoir sortir. De même, s'il y a 9 personnes enterrées AU-DESSUS de lui, il doit attendre que les 9 personnes soient déterrées avant de pouvoir enfin respirer un peu d'air frais (et goûter de la chair humaine ! :P). En substance, les 2 seules options possibles pour une personne à l'extérieur (qui, pour une raison quelconque, est très intéressée par l'enterrement et le désenterrement des gens) sont :

  • Enterrer
  • Désenterrer

Et c'est exactement ce que vous propose la datastructure en question.....

Maintenant, je suppose que les informaticiens de l'époque ne voulaient pas passer pour des nécrophiles créant des zombies et discutant d'enterrements, donc avec le temps, l'analogie beaucoup plus simple d'une "pile" a été utilisée. Tout comme avec l'exemple de l'enterrement, dans une pile (de disons, de boîtes), vous pouvez soit ajouter une boîte au sommet de la pile, soit retirer une boîte du sommet de la pile, vous offrant effectivement les 2 mêmes opérations, que nous appelons aujourd'hui "push" et "pop" !

main-qimg-018232b8f675e5f44cea754c6ccbc8b2.webp

Maintenant, en parlant de TCP/IP, le modèle est essentiellement un ensemble de protocoles (enfermés dans les 4 "couches") qui sont empilés les uns sur les autres. Maintenant, évidemment, le moment où quelqu'un voit cela, la première chose qui vient à l'esprit, surtout si vous'êtes un informaticien qui a travaillé avec des piles, est que c'est une pile... et donc le surnom de "Protocol Stack"...

Mais, si vous voulez, vous pouvez toujours l'appeler un TCP/IP Protocol Zombiefier (bien, au moins dans les chuchotements :D), et rester fidèle aux idées d'Alan Turing's ! 😀