Comparison of application virtualization softwareApplication virtualization software refers to both application virtual machines and software responsible for implementing them. Application virtual machines are typically used to allow application bytecode to run portably on many different computer architectures and operating systems. The application is usually run on the computer using an interpreter or just-in-time compilation (JIT). There are often several implementations of a given virtual machine, each covering a different set of functions.
X64x86-64, ou x64, est une extension du jeu d'instructions x86 d'Intel, introduite par la société AMD avec la gamme AMD64. Intel utilisera cette extension en l'appelant initialement EM64T renommé aujourd'hui en Intel 64. Cette extension permet la gestion des nombres sur 64 bits, avec pour corollaire un adressage mémoire bien au-delà de 4 Go. À cela s'ajoute le doublement (de 8 à 16) du nombre de registres généralistes et vectoriels (SSE). Long Mode : mode 64 bits natif avec compatibilité 32 bits (des programmes non recompilés peuvent être utilisés sans perte de performance notable).
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.
Exécution (informatique)En informatique, l'exécution est le processus par lequel un ordinateur ou une machine virtuelle met en œuvre les instructions d'un programme. Les instructions du programme entraînent des séquences d'actions élémentaires sur la machine d'exécution. Les effets qu'entraînent ces actions sont conformes à la sémantique des instructions du programme. Un programme en cours d'exécution est appelé un processus. L’exécution symbolique permet d'explorer les chemins d'exécution possibles d'un programme informatique à partir des symboles contenus dans son code source.
Table des symbolesUne table de symboles est une centralisation des informations rattachées aux identificateurs d'un programme informatique. C'est une fonction accélératrice de compilation, dont l'efficacité dépend de la conception. Dans une table des symboles, on retrouve des informations comme : le type, l'emplacement mémoire, la portée, la visibilité, etc. Généralement, la table est créée dynamiquement. Une première portion est créée au début de la compilation. Puis, de façon opportuniste, en fonction des besoins, elle est complétée.
ClangClang est un compilateur pour les langages de programmation C, C++ et Objective-C. Son interface de bas niveau utilise les bibliothèques LLVM pour la compilation. C'est un logiciel libre issu d'un projet de recherche universitaire et distribué selon les termes de la licence Open Source NCSA/Université de l'Illinois. Son but est de proposer une alternative à GCC. En 2005, Apple utilise LLVM dans de nombreux projets commerciaux, dont l'iOS SDK et Xcode 3.1.
Alignement en mémoireEn informatique, les contraintes d'alignement en mémoire limitent à certains multiples d'adresse mémoire, où certaines données et instructions machine peuvent être enregistrées. En outre, les optimisations d'alignement mémoire permettent d'influencer la vitesse d'exécution d'un programme uniquement en choisissant bien les adresses. Pour augmenter leurs performances, les processeurs sont souvent reliés à la mémoire vive par un bus de données plus large que la granularité de leur adressage : par exemple un processeur est capable d'adresser individuellement des octets (8 bits), relié à la mémoire par un bus de (32 bits).
Système d'exploitation embarquéUn système d'exploitation embarqué est un système d'exploitation pouvant être installé sur un système embarqué. Ce système d'exploitation est conçu avec des spécificités à gérer afin de répondre à des besoins spécifiques au type de système embarqué. Un système d'exploitation est un programme qui gère le matériel. Il sert d'intermédiaire entre l'application logicielle et le matériel informatique (périphériques, capteurs, moteurs...).
Red Hat Enterprise LinuxRed Hat Enterprise Linux (souvent abrégé RHEL) est une distribution Linux produite par Red Hat et orientée vers le marché commercial et les serveurs d'entreprise. En 2005, Red Hat a distribué quatre variantes de RHEL (les expansions d'AS/ES/WS sont officieuses): RHEL AS (Advanced Server) – Serveurs centraux d'entreprise et systèmes informatiques critiques. RHEL ES (Enterprise server, Edge Server, Economy server, ou entry-level server) – Serveurs réseaux de moyenne importance.
Fat binaryA fat binary (or multiarchitecture binary) is a computer executable program or library which has been expanded (or "fattened") with code native to multiple instruction sets which can consequently be run on multiple processor types. This results in a file larger than a normal one-architecture binary file, thus the name. The usual method of implementation is to include a version of the machine code for each instruction set, preceded by a single entry point with code compatible with all operating systems, which executes a jump to the appropriate section.