Dynamic Link LibraryUne Dynamic Link Library (en français, bibliothèque de liens dynamiques) est une bibliothèque logicielle dont les fonctions sont chargées en mémoire par un programme, au besoin, lors de son exécution, par opposition aux bibliothèques logicielles statiques ou partagées dont les fonctions sont chargées en mémoire avant le début de l'exécution du programme. dll est une extension de nom de fichier utilisée par des fichiers contenant une Dynamic Link Library. Ces bibliothèques logicielles ont été inventées dans Multics en 1964 et existent dans Windows depuis 1985.
Relocation (computing)Relocation is the process of assigning load addresses for position-dependent code and data of a program and adjusting the code and data to reflect the assigned addresses. Prior to the advent of multiprocess systems, and still in many embedded systems, the addresses for objects were absolute starting at a known location, often zero. Since multiprocessing systems dynamically link and switch between programs it became necessary to be able to relocate objects using position-independent code.
Dynamic linkerIn computing, a dynamic linker is the part of an operating system that loads and links the shared libraries needed by an executable when it is executed (at "run time"), by copying the content of libraries from persistent storage to RAM, filling jump tables and relocating pointers. The specific operating system and executable format determine how the dynamic linker functions and how it is implemented.
Fichier objetEn informatique (développement), un fichier objet est un fichier intermédiaire intervenant dans le processus de compilation. Un fichier assembleur est assemblé en un fichier objet lors du processus d'assemblage : Un fichier objet n'est autre que le produit obtenu à la sortie de ce processus. Un fichier objet est lié à d'autres fichiers lors du processus d'édition des liens pour obtenir un exécutable. Le fichier objet est donc la matière première nécessaire à l'édition des liens.
Point d'entréeUn point d’entrée est, en programmation, le lieu du code source où un programme commence. Dans la plupart des langages informatiques, il existe des fonctions qui sont définies par la donnée du texte de son algorithme, qu'on appelle corps de la fonction. Dans de très nombreux langages informatiques (C, C++, JAVA...) la fonction main () d’un programme est la première fonction exécutée lors du lancement du programme. C'est elle qui invoquera éventuellement les autres fonctions.
Static libraryIn computer science, a static library or statically-linked library is a set of routines, external functions and variables which are resolved in a caller at compile-time and copied into a target application by a compiler, linker, or binder, producing an and a stand-alone executable. This executable and the process of compiling it are both known as a static build of the program. Historically, libraries could only be static.
Exécution (phase de cycle de vie d'un programme informatique)En informatique , lexécution (runtime ou run time), ou le temps d'exécution est la phase finale du cycle de vie d'un programme informatique, dans lequel le code est exécuté par l'unité centrale de traitement (CPU) de l'ordinateur comme code machine. En d'autres termes, le runtime est la phase d'exécution d'un programme. Une erreur d'exécution est détectée pendant ou après l'exécution (état de marche) d'un programme, alors que les erreurs de compilation sont toujours détectées par le compilateur avant l'exécution du programme.
Noyau de système d'exploitationUn noyau de système d’exploitation, ou simplement noyau, ou kernel en anglais, est une des parties fondamentales de certains systèmes d’exploitation. Il gère les ressources de l’ordinateur et permet aux différents composants — matériels et logiciels — de communiquer entre eux. En tant que partie du système d’exploitation, le noyau fournit des mécanismes d’abstraction du matériel, notamment de la mémoire, du (ou des) processeur(s), et des échanges d’informations entre logiciels et périphériques matériels.
Linker (computing)In computing, a linker or link editor is a computer system program that takes one or more s (generated by a compiler or an assembler) and combines them into a single executable file, library file, or another "object" file. A simpler version that writes its output directly to memory is called the loader, though loading is typically considered a separate process. Computer programs typically are composed of several parts or modules; these parts/modules do not need to be contained within a single , and in such cases refer to each other by means of symbols as addresses into other modules, which are mapped into memory addresses when linked for execution.
Dynamic loadingDynamic loading is a mechanism by which a computer program can, at run time, load a library (or other ) into memory, retrieve the addresses of functions and variables contained in the library, execute those functions or access those variables, and unload the library from memory. It is one of the 3 mechanisms by which a computer program can use some other software; the other two are static linking and dynamic linking.
Late bindingIn computing, late binding or dynamic linkage—though not an identical process to dynamically linking imported code libraries—is a computer programming mechanism in which the method being called upon an object, or the function being called with arguments, is looked up by name at runtime. In other words, a name is associated with a particular operation or object at runtime, rather than during compilation. The name dynamic binding is sometimes used, but is more commonly used to refer to dynamic scope.
Bibliothèque logicielleEn informatique, une bibliothèque logicielle est une collection de routines, qui peuvent être déjà compilées et prêtes à être utilisées par des programmes. Les bibliothèques sont enregistrées dans des fichiers semblables, voire identiques aux fichiers de programmes, sous la forme d'une collection de fichiers de code objet rassemblés accompagnée d'un index permettant de retrouver facilement chaque routine. Le mot « librairie » est souvent utilisé à tort pour désigner une bibliothèque logicielle.
Executable and Linkable FormatELF (Executable and Linkable Format, format exécutable et liable ; anciennement Executable and Linking Format) est un format de fichier binaire utilisé pour l'enregistrement de code compilé (objets, exécutables, bibliothèques de fonctions). Il a été développé par l’USL (Unix System Laboratories) pour remplacer les anciens formats a.out et qui avaient atteint leurs limites. Aujourd'hui, ce format est utilisé dans la plupart des systèmes d'exploitation de type Unix (GNU/Linux, Solaris, IRIX, System V, BSD), à l'exception de Mac OS X.
Segmentation (informatique)En informatique, la segmentation est une technique de découpage de la mémoire. Elle est gérée par l'unité de segmentation de l'unité de gestion mémoire (dite MMU, Memory Management Unit), utilisée sur les systèmes d'exploitation modernes, qui divise la mémoire physique (dans le cas de la segmentation pure) ou la mémoire virtuelle (dans le cas de la segmentation avec pagination) en segments caractérisés par leur adresse de début et leur taille (décalage).
Interface en ligne de commandevignette|300px|Capture d'écran d'un shell Bash sous Gentoo. Une interface en ligne de commande ou ILC (en anglais command line interface, couramment abrégé CLI) est une interface homme-machine dans laquelle la communication entre l'utilisateur et l'ordinateur s'effectue en mode texte : l'utilisateur tape une ligne de commande, c'est-à-dire du texte au clavier pour demander à l'ordinateur d'effectuer une opération ; l'ordinateur affiche du texte correspondant au résultat de l'exécution des commandes tapées ou à des questions qu'un logiciel pose à l'utilisateur.
Position-independent codeIn computing, position-independent code (PIC) or position-independent executable (PIE) is a body of machine code that, being placed somewhere in the primary memory, executes properly regardless of its absolute address. PIC is commonly used for shared libraries, so that the same library code can be loaded at a location in each program's address space where it does not overlap with other memory in use by, for example, other shared libraries.
Chargeur d'amorçageUn chargeur d'amorçage (ou bootloader) est un logiciel permettant de lancer un ou plusieurs systèmes d'exploitation (multiboot), c'est-à-dire qu'il permet d'utiliser plusieurs systèmes, à des moments différents, sur la même machine. Il est généralement lancé immédiatement après le démarrage de l'appareil, puis recherche dans le firmware de l'ordinateur des informations sur l'emplacement du bootloader. Ce processus est communément appelé « amorçage ».
UnixUnix, officiellement UNIX, est une famille de systèmes d'exploitation multitâche et multi-utilisateur dérivé du Unix d'origine créé par AT&T, le développement de ce dernier ayant commencé dans les années 1970 au centre de recherche de Bell Labs mené par Kenneth Thompson. Il repose sur un interpréteur ou superviseur (le shell) et de nombreux petits utilitaires, accomplissant chacun une action spécifique, commutables entre eux (mécanisme de « redirection ») et appelés depuis la ligne de commande.
Fichier exécutableEn informatique et en technologies de l'information, un fichier exécutable, parfois (par métonymie) un programme, ou simplement un exécutable est un fichier contenant un programme et identifié par le système d'exploitation en tant que tel. Le chargement d'un tel fichier entraîne la création d'un processus dans le système, et l'exécution du programme, par opposition au fichier de données qui doit d'abord être interprété par un programme pour prendre sens.