Cache prefetchingCache prefetching is a technique used by computer processors to boost execution performance by fetching instructions or data from their original storage in slower memory to a faster local memory before it is actually needed (hence the term 'prefetch'). Most modern computer processors have fast and local cache memory in which prefetched data is held until it is required. The source for the prefetch operation is usually main memory.
Instruction set architectureIn computer science, an instruction set architecture (ISA), also called computer architecture, is an abstract model of a computer. A device that executes instructions described by that ISA, such as a central processing unit (CPU), is called an implementation. In general, an ISA defines the supported instructions, data types, registers, the hardware support for managing main memory, fundamental features (such as the memory consistency, addressing modes, virtual memory), and the input/output model of a family of implementations of the ISA.
Cache de processeurUn cache de processeur est une antémémoire matérielle utilisée par l'unité centrale de traitement (CPU) d'un ordinateur pour réduire le coût moyen (temps ou énergie) de l’accès aux données de la mémoire principale. Un cache de processeur est une mémoire plus petite et plus rapide, située au plus près d'une unité centrale de traitement (ou d'un cœur de microprocesseur), qui stocke des copies des données à partir d'emplacements de la mémoire principale qui sont fréquemment utilisés avant leurs transmissions aux registres du processeur.
Mémoire cacheUne mémoire cache ou antémémoire est, en informatique, une mémoire qui enregistre temporairement des copies de données provenant d'une source, afin de diminuer le temps d'un accès ultérieur (en lecture) d'un matériel informatique (en général, un processeur) à ces données. Le principe du cache est également utilisable en écriture, et existe alors en trois modes possibles : write-through, write-back et write-around.
Supervision (informatique)La supervision est une technique industrielle de suivi et de pilotage informatique de procédés de fabrication automatisés. La supervision concerne l'acquisition de données (mesures, alarmes, retour d'état de fonctionnement) et des paramètres de commande des processus généralement confiés à des automates programmables. Dans l'informatique, la supervision est la surveillance du bon fonctionnement d’un système ou d’une activité. À ne pas confondre avec l'hypervision, qui elle correspond à la centralisation des outils de supervision, d’infrastructure, d'applications et de référentiels (ex.
Overhead power lineAn overhead power line is a structure used in electric power transmission and distribution to transmit electrical energy across long distances. It consists of one or more uninsulated electrical cables (commonly multiples of three for three-phase power) suspended by towers or poles. Since most of the insulation is provided by the surrounding air, overhead power lines are generally the least costly method of power transmission for large quantities of electric energy.
Branch target predictorIn computer architecture, a branch target predictor is the part of a processor that predicts the target of a taken conditional branch or an unconditional branch instruction before the target of the branch instruction is computed by the execution unit of the processor. Branch target prediction is not the same as branch prediction which attempts to guess whether a conditional branch will be taken or not-taken (i.e., binary). In more parallel processor designs, as the instruction cache latency grows longer and the fetch width grows wider, branch target extraction becomes a bottleneck.
CaténaireUne caténaire est un ensemble de câbles porteurs et de fils conducteurs destinés à l’alimentation des moyens de transports électriques à captage du courant par dispositif aérien. Les câbles porteurs sont en cuivre, en bronze ou en aluminium-acier, quant aux fils conducteurs, ils sont en cuivre pur à 98 %, ou en cuivre allié à l'étain, au magnésium ou au cadmium. La caténaire permet de faire circuler la plupart des trains et des trams, mais aussi les trolleybus.
Prédiction de branchementLa prédiction de branchement est une fonctionnalité d'un processeur qui lui permet de prédire le résultat d'un branchement. Cette technique permet à un processeur de rendre l'utilisation de son pipeline plus efficace. Avec cette technique, le processeur va faire de l’exécution spéculative : il va parier sur le résultat d'un branchement, et va poursuivre l’exécution du programme avec le résultat du pari. Si le pari échoue, les instructions chargées par erreur dans le pipeline sont annulées.
Cache control instructionIn computing, a cache control instruction is a hint embedded in the instruction stream of a processor intended to improve the performance of hardware caches, using foreknowledge of the memory access pattern supplied by the programmer or compiler. They may reduce cache pollution, reduce bandwidth requirement, bypass latencies, by providing better control over the working set. Most cache control instructions do not affect the semantics of a program, although some can.
Microprocesseurvignette|Un Intel 4004 dans son boîtier à seize broches, premier microprocesseur commercialisé. vignette|Architecture de l'Intel 4004. vignette|L'intérieur d'un Intel 80486DX2. Un microprocesseur est un processeur dont tous les composants ont été suffisamment miniaturisés pour être regroupés dans un unique boîtier. Fonctionnellement, le processeur est la partie d'un ordinateur qui exécute les instructions et traite les données des programmes.
Motorola 6809Le 6809 est un microprocesseur 8 bits (avec certaines caractéristiques 16 bits) de Motorola. Il fut introduit vers 1977–1978. Ce microprocesseur fut une avancée majeure par rapport à ses deux prédécesseurs, le 6800 de Motorola et son quasi-clone, le 6502 de MOS Technology. Parmi les systèmes à utiliser le 6809 on retrouve la gamme de micro-ordinateurs Thomson, le TRS-80 Color Computer, la console Vectrex, et des machines d'arcade du début des années 1980, ainsi que divers appareils tels que l'échantillonneur Fairlight CMI-III.
Microprocesseur à jeu d'instruction étenduUn microprocesseur à jeu d'instruction étendu (, CISC) désigne un microprocesseur possédant un jeu d'instructions comprenant de très nombreuses instructions . L'architecture CISC est opposée à l'architecture RISC qui au contraire, limite ses instructions à l'essentiel afin de réduire la quantité de transistors. Le premier microprocesseur est l'Intel 4004, d'architecture 4 bits, sorti en 1971, suivi de l'Intel 8008, d'architecture , sorti en 1972.
Cache hierarchyCache hierarchy, or multi-level caches, refers to a memory architecture that uses a hierarchy of memory stores based on varying access speeds to cache data. Highly requested data is cached in high-speed access memory stores, allowing swifter access by central processing unit (CPU) cores. Cache hierarchy is a form and part of memory hierarchy and can be considered a form of tiered storage. This design was intended to allow CPU cores to process faster despite the memory latency of main memory access.
MulticsMultics (acronyme de MULTiplexed Information and Computing Service) est le nom d'un système d'exploitation en temps partagé. Ce projet a été lancé en 1964, par Fernando Corbató et Jerry Saltzer. Le projet Multics a marqué la conception des systèmes d'exploitation notamment après la réutilisation et la diffusion dans le système Unix de nombreux éléments qui en faisait un système novateur : système de fichier hiérarchique, temps partagé, multitâche préemptif, multiutilisateur, sécurité.
AutomatiqueL’automatique est une science qui traite de la modélisation, de l’analyse, de l’identification et de la commande des systèmes dynamiques. Elle inclut la cybernétique au sens étymologique du terme, et a pour fondements théoriques les mathématiques, la théorie du signal et l’informatique théorique. L’automatique permet de commander un système en respectant un cahier des charges (rapidité, précision, stabilité...). Les professionnels en automatique se nomment automaticiens.
IBM 360 et 370L’IBM 360 est un ordinateur fabriqué en 1965 par la firme International Business Machines. Ce calculateur mainframe comportait de nombreuses innovations, dont la compatibilité très grande entre machines par la microprogrammation, et rencontra un énorme succès pour l'époque. La série 360 a massivement contribué à imposer les ordinateurs dans le monde tant scientifique que des affaires.
Algorithmes de remplacement des lignes de cacheArticle principal : mémoire cache Les mémoires caches dans les matériels informatiques sont le plus souvent partiellement associatives : une ligne de la mémoire principale ne peut être rangée que dans une partie bien définie de la mémoire cache. Dans le cas d'une mémoire cache logicielle, il est possible qu'elle soit totalement associative et gérée globalement. Dans les deux cas, se pose le problème de devoir dégager une place dans la mémoire cache, ou dans la partie de celle-ci concernée, lorsque celle-ci est pleine et qu'on veut y charger des données de la mémoire principale.
Central processing unitA central processing unit (CPU)—also called a central processor or main processor—is the most important processor in a given computer. Its electronic circuitry executes instructions of a computer program, such as arithmetic, logic, controlling, and input/output (I/O) operations. This role contrasts with that of external components, such as main memory and I/O circuitry, and specialized coprocessors such as graphics processing units (GPUs). The form, design, and implementation of CPUs have changed over time, but their fundamental operation remains almost unchanged.
Return-oriented programmingLa ROP, return-oriented programming, est une technique d'exploitation avancée de type dépassement de pile (stack overflow) permettant l'exécution de code par un attaquant et ce en s'affranchissant plus ou moins efficacement des mécanismes de protection tels que l'utilisation de zones mémoires non-exécutables ( bit NX pour Data Execution Prevention, DEP), l'utilisation d'un espace d'adressage aléatoire (Address Space Layout Randomization, ASLR) ou encore la signature de code.