Donc, tout le monde le sait probablement que glibc /lib/libc.so.6
peut être exécutée dans le shell comme un exécutable normal dans quels cas il imprime ses informations de version et quitte. Cela se fait via la définition d'un point d'entrée dans l' .donc. Pour certains cas, il pourrait être intéressant de l'utiliser pour d'autres projets. Malheureusement, le faible niveau des points d'entrée que vous pouvez définir par ld de l'option-e est un peu trop bas niveau: le chargeur dynamique n'est pas disponible si vous ne pouvez pas appeler une des fonctions de la bibliothèque. la glibc pour cette raison implémente la fonction write() de l'appel système par l'intermédiaire d'un nu de l'appel système dans ce point d'entrée.
Ma question est maintenant, comment peut-on penser d'une belle manière comment on peut démarrer une dynamique complète de l'éditeur de liens à partir de ce point d'entrée de sorte que l'on pouvait accéder à des fonctions à partir d'autres .c'est donc?