LinearizabilityIn concurrent programming, an operation (or set of operations) is linearizable if it consists of an ordered list of invocation and response events, that may be extended by adding response events such that: The extended list can be re-expressed as a sequential history (is serializable). That sequential history is a subset of the original unextended list. Informally, this means that the unmodified list of events is linearizable if and only if its invocations were serializable, but some of the responses of the serial schedule have yet to return.
File lockingFile locking is a mechanism that restricts access to a , or to a region of a file, by allowing only one user or process to modify or delete it at a specific time and to prevent reading of the file while it's being modified or deleted. Systems implement locking to prevent the classic interceding update scenario, which is a typical example of a race condition, by enforcing the serialization of update processes to any given file.
Synchronisationthumb|Des parachutistes synchronisent leurs montres avant d'être parachutés en France dans la nuit du 5 au (Opération Tonga). La synchronisation (du grec / sun, « ensemble » et / khrónos, « temps ») est l'action de coordonner plusieurs opérations entre elles en fonction du temps. Les systèmes dont tous les éléments sont synchronisés sont dits synchrones. Certains systèmes tolèrent d'être approximativement synchronisés (quasi synchrones).
Non-blocking algorithmIn computer science, an algorithm is called non-blocking if failure or suspension of any thread cannot cause failure or suspension of another thread; for some operations, these algorithms provide a useful alternative to traditional blocking implementations. A non-blocking algorithm is lock-free if there is guaranteed system-wide progress, and wait-free if there is also guaranteed per-thread progress. "Non-blocking" was used as a synonym for "lock-free" in the literature until the introduction of obstruction-freedom in 2003.
Matériel librevignette|Zynthian, un projet de synthétiseur musical libre Le matériel libre, matériel ouvert ou matériel open source désigne, par analogie avec le logiciel libre et le logiciel open source, les technologies des matériels et produits physiques développés selon les principes des ressources libres de droits ou sous licence libre. . Chris Anderson, rédacteur en chef de Wired et auteur de la longue traîne, affirme que et évoque la voiture libre Rally Fighter, une des premières voitures de course open source (ses spécifications sont « libres »), développée de façon communautaire, par production participative.
Langage de description de matérielUn langage de description de matériel, ou du matériel (ou HDL pour hardware description language en anglais) est un langage informatique permettant la description d'un circuit électronique au niveau des transferts de registres (RTL). Celui-ci peut décrire les fonctions réalisées par le circuit (description comportementale) ou les portes logiques utilisées par le circuit (description structurelle). Il est possible d'observer le fonctionnement d'un circuit électronique modélisé dans un langage de description grâce à la simulation.
Verrou (informatique)Un verrou informatique permet de s'assurer qu'une seule personne, ou un seul processus accède à une ressource à un instant donné. Ceci est souvent utilisé dans le domaine des accès à des fichiers sur des systèmes d'exploitation multi-utilisateur, car si deux programmes modifient un même fichier au même moment, le risque est de : provoquer des erreurs dans un des deux programmes, voire dans les deux ; laisser le fichier en fin de traitement dans une complète incohérence ; endommager le fichier manipulé.
Attente activeL’attente active, en génie logiciel, ou polling (parfois appelée aussi « scrutation ») est une technique de programmation que les processus utilisent lorsqu'ils vérifient de façon répétée si une condition est vraie, comme l'attente d'une entrée (clavier ou autre) ou encore la libération d'un verrou. Cette technique peut également être utilisée pour mettre en attente un programme pour une durée déterminée. Cela était nécessaire sur d'anciens systèmes d'exploitation dont le matériel sous-jacent ne proposait pas de méthode spécifique pour suspendre l'exécution du flot d'instruction pendant une période déterminée.
Atomicité (informatique)L'atomicité est une propriété utilisée en programmation concurrente pour désigner une opération ou un ensemble d'opérations d'un programme qui s'exécutent entièrement sans pouvoir être interrompues avant la fin de leur déroulement. Une opération qui vérifie cette propriété est qualifiée d'« atomique », ce terme dérive de grc qui signifie « que l'on ne peut diviser ». Ce concept s'applique par exemple à une partie d'un programme dont le processus ou le thread qui la gère ne cédera pas le monopole sur certaines données à un autre processus pendant tout le déroulement de cette partie.
Indicateur clé de performancevignette|Indicateurs clés de performance affichés à l'usine Scanfil de Sieradz, en Pologne. Un indicateur clé de performance (ICP) – en anglais : key performance indicator (KPI) – est un indicateur utilisé pour l'aide à la décision dans les organisations. Les ICP sont utilisés particulièrement en gestion de la performance organisationnelle. Le terme d'« indicateur clé de performance » est une traduction littérale provenant de l'anglais « key performance indicator » (KPI).
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.
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.
Protocole de cohérence de cachethumb|Schéma illustrant le besoin d'un protocole de cohérence de cache. En informatique, un protocole de cohérence de cache, sous entendu cache processeur, est un protocole de communication utilisé dans les architectures multi-processeurs pour assurer aux processeurs une vue cohérente de la mémoire. En particulier, il permet de répercuter les écritures faites par chaque processeur aux autres, en modifiant ou en invalidant les lignes de cache communes.
Business performance managementBusiness performance management (BPM), also known as corporate performance management (CPM) enterprise performance management (EPM), organizational performance management, or simply performance management are a set of management and analytic processes that ensure activities and outputs meet an organization's goals in an effective and efficient manner. Business performance management is contained within approaches to business process management.
Performances (informatique)En informatique, les performances énoncent les indications chiffrées mesurant les possibilités maximales ou optimales d'un matériel, d'un logiciel, d'un système ou d'un procédé technique pour exécuter une tâche donnée. Selon le contexte, les performances incluent les mesures suivantes : Un faible temps de réponse pour effectuer une tâche donnée Un débit élevé (vitesse d'exécution d'une tâche) L'efficience : faible utilisation des ressources informatiques : processeur, mémoire, stockage, réseau, consommation électrique, etc.
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.
AMD Opteronvignette|Un processeur AMD Opteron Opteron est une marque commerciale d'AMD pour les microprocesseurs x86 conçus pour les stations de travail et les serveurs informatiques. Elle est apparue le avec le core Sledgehammer à architecture K8. Après avoir été un simple cœur, puis à double cœur, en 2013 la majorité des Opterons produits par AMD ont 6 cœurs. Ces derniers sont dérivés de l'architecture K10 du fondeur. Aujourd'hui, les opterons peuvent comporter jusqu'à 16 cœurs.
SkylakeSkylake est la micro-architecture de processeurs x86 d'Intel qui succède à la micro-architecture Haswell à partir d'août 2015. Avec cette nouvelle micro-architecture, Intel abandonne sa traditionnelle stratégie tic-tac. En effet, la firme a connu quelques difficultés pour le passage à la gravure en , et prend encore du retard pour la gravure en . Cette architecture est donc déclinée en de bien plus nombreuses familles qu'à l'accoutumée. La famille de microprocesseurs Cannon Lake gravée en est prévue pour 2018, et sera toujours basée sur la micro-architecture Skylake.
Application (informatique)Une application, un applicatif ou encore une appli, une app est, dans le domaine informatique, un programme (ou un ensemble logiciel) directement utilisé pour réaliser une tâche, ou un ensemble de tâches élémentaires d'un même domaine ou formant un tout. Typiquement, un éditeur de texte, un navigateur web, un lecteur multimédia, un jeu vidéo, sont des applications. Les applications s'exécutent en utilisant les services du système d'exploitation pour utiliser les ressources matérielles.
Transactional memoryIn computer science and engineering, transactional memory attempts to simplify concurrent programming by allowing a group of load and store instructions to execute in an atomic way. It is a concurrency control mechanism analogous to database transactions for controlling access to shared memory in concurrent computing. Transactional memory systems provide high-level abstraction as an alternative to low-level thread synchronization. This abstraction allows for coordination between concurrent reads and writes of shared data in parallel systems.