Program analysisIn computer science, program analysis is the process of automatically analyzing the behavior of computer programs regarding a property such as correctness, robustness, safety and liveness. Program analysis focuses on two major areas: program optimization and program correctness. The first focuses on improving the program’s performance while reducing the resource usage while the latter focuses on ensuring that the program does what it is supposed to do.
Analyse dynamique de programmesthumb|Logo de Valgrind. Outil permettant de profiler du code. L'analyse dynamique de programme (dynamic program analysis ou DPA), est une forme d'analyse de programme qui nécessite leur exécution. Elle permet d'étudier le comportement d'un programme informatique et les effets de son exécution sur son environnement. Appliquée dans un environnement physique ou virtuel, elle est souvent utilisée pour profiler des programmes. Que ce soit pour retirer des informations sur le temps d'utilisation du processeur, l'utilisation de la mémoire ou encore l'énergie dépensée par le programme.
Pompage-turbinagethumb|Installation de pompage-turbinage du , près de Herdecke, en Allemagne. Elle a été inaugurée en 1930. Le pompage-turbinage est une technique de stockage de l'énergie électrique qui consiste à remonter de l'eau d'un cours d'eau ou d'un bassin, pour la stocker dans des bassins d'accumulation, lorsque la production d'électricité est supérieure à la demande — c'est le pompage —, puis de turbiner l'eau ainsi mise en réserve pour produire de l'énergie électrique lorsque la demande est forte — c'est le turbinage.
Stockage d'énergie de réseauvignette|Réseau électrique simplifié avec stockage d'énergie. vignette|Flux d'énergie simplifié du réseau avec et sans stockage d'énergie, idéalisé pour le cours d'une journée Le stockage d'énergie de réseau (également appelé stockage d'énergie à grande échelle) est un ensemble de méthodes utilisées pour le stockage d'énergie à grande échelle au sein d'un réseau électrique.
Stockage de l'énergieLe stockage de l'énergie consiste à mettre en réserve une quantité d'énergie provenant d'une source pour une utilisation ultérieure. Il a toujours été utile et pratiqué, pour se prémunir d'une rupture d'un approvisionnement extérieur ou pour stabiliser à l'échelle quotidienne les réseaux électriques, mais il a pris une acuité supplémentaire depuis l'apparition de l'objectif de transition écologique.
Analyse statique de programmesEn informatique, la notion d’analyse statique de programmes couvre une variété de méthodes utilisées pour obtenir des informations sur le comportement d'un programme lors de son exécution sans réellement l'exécuter. C'est cette dernière restriction qui distingue l'analyse statique des analyses dynamiques (comme le débugage ou le profiling) qui s'attachent, elles, au suivi de l’exécution du programme. L’analyse statique est utilisée pour repérer des erreurs formelles de programmation ou de conception et pour déterminer la facilité ou la difficulté à maintenir le code.
Compressed-air energy storageCompressed-air energy storage (CAES) is a way to store energy for later use using compressed air. At a utility scale, energy generated during periods of low demand can be released during peak load periods. The first utility-scale CAES project has been built in Huntorf, Germany, and is still operational. The Huntorf plant was initially developed as a load balancer for fossil fuel-generated electricity, the global shift towards renewable energy renewed interest in CAES systems, to help highly intermittent energy sources like photovoltaics and wind satisfy fluctuating electricity demands.
Battery storage power stationA battery storage power station is a type of energy storage power station that uses a group of batteries to store electrical energy. Battery storage is the fastest responding dispatchable source of power on electric grids, and it is used to stabilise those grids, as battery storage can transition from standby to full power in under a second to deal with grid contingencies. Battery storage power stations are generally designed to be able to output at their full rated power for several hours.
Structure de contrôleEn programmation informatique, une structure de contrôle est une instruction particulière d'un langage de programmation impératif pouvant dévier le flot de contrôle du programme la contenant lorsqu'elle est exécutée. Si, au plus bas niveau, l'éventail se limite généralement aux branchements et aux appels de sous-programme, les langages structurés offrent des constructions plus élaborées comme les alternatives (if, if–else, switch...), les boucles (while, do–while, for...) ou encore les appels de fonction.
Runtime verificationRuntime verification is a computing system analysis and execution approach based on extracting information from a running system and using it to detect and possibly react to observed behaviors satisfying or violating certain properties. Some very particular properties, such as datarace and deadlock freedom, are typically desired to be satisfied by all systems and may be best implemented algorithmically. Other properties can be more conveniently captured as formal specifications.
Python (langage)Python (prononcé ) est un langage de programmation interprété, multiparadigme et multiplateformes. Il favorise la programmation impérative structurée, fonctionnelle et orientée objet. Il est doté d'un typage dynamique fort, d'une gestion automatique de la mémoire par ramasse-miettes et d'un système de gestion d'exceptions ; il est ainsi similaire à Perl, Ruby, Scheme, Smalltalk et Tcl.
Array slicingIn computer programming, array slicing is an operation that extracts a subset of elements from an array and packages them as another array, possibly in a different dimension from the original. Common examples of array slicing are extracting a substring from a string of characters, the "ell" in "hello", extracting a row or column from a two-dimensional array, or extracting a vector from a matrix. Depending on the programming language, an array slice can be made out of non-consecutive elements.
Cobra (langage)Cobra est un langage d'usage général, orienté objet. Cobra a été conçu par Charles Esterbrook et fonctionne sur les plateformes Microsoft .NET et Mono. Il a été fortement influencé par Python, C#, Eiffel, Objective-C et d'autres langages de programmation. Il accepte aussi bien le typage statique que dynamique. Il gère pleinement les tests unitaires et les contrats. Il possède des fonctions anonymes, des fermetures, des listes en compréhension et des générateurs. Cobra permet à la fois un développement rapide et de bonnes performances.
Goto (informatique)L’instruction goto (littéralement va à) est une instruction présente dans de nombreux langages de programmation. Elle est utilisée pour réaliser des sauts inconditionnels dans un programme, changeant ainsi le flot de contrôle naturel du programme qui consiste à aller exécuter l'instruction suivante. L’exécution est alors envoyée à une autre instruction repérée par une étiquette ou label, qui est soit un numéro de ligne, soit une étiquette déclarée, selon le langage.
COMEFROMIn computer programming, COMEFROM (or COME FROM) is an obscure control flow structure used in some programming languages, originally as a joke. COMEFROM is the inverse of GOTO in that it can take the execution state from any arbitrary point in code to a COMEFROM statement. The point in code where the state transfer happens is usually given as a parameter to COMEFROM. Whether the transfer happens before or after the instruction at the specified transfer point depends on the language used.
Vecteur (structure de données)En informatique, un vecteur désigne un conteneur d'éléments ordonnés et accessibles par des indices, dont la taille est dynamique : elle est mise à jour automatiquement lors d'ajouts ou de suppressions d'éléments. On retrouve les vecteurs dans de nombreux langages de programmation, notamment le C++ et le Java. Ils sont alors inclus dans des bibliothèques et l'utilisateur n'a pas besoin d'en programmer un. En langage objet, la classe vecteur est généralement polymorphe, c'est-à-dire qu'il est possible de l'utiliser avec n'importe quel type d'objet.
Stockage de l'hydrogèneLe concept de stockage de l'hydrogène désigne toutes les formes de mise en réserve du dihydrogène en vue de sa mise à disposition ultérieure comme produit chimique ou vecteur énergétique. Plusieurs possibilités existent, qui présentent avantages et inconvénients. Sous forme de gaz, le dihydrogène est peu dense et doit être fortement comprimé. La liquéfaction du dihydrogène se réalise à très basse température. L'hydrogène solide nécessite d'être lié à d'autres composants, notamment sous la forme d'hydrure.
Matériel informatiqueUn matériel informatique (en anglais : hardware) est une pièce ou composant d'un appareil informatique. C'est la partie physique de l’informatique elle est appairée avec le logiciel (software ou firmware). Il y a des composants situés à l'intérieur de l'appareil qui sont indispensables à son fonctionnement et, d'autres secondaires disposées à l'extérieur (les périphériques). Les pièces intérieures sont, la plupart du temps, montées sur des circuits imprimés.
Hardware virtualizationHardware virtualization is the virtualization of computers as complete hardware platforms, certain logical abstractions of their componentry, or only the functionality required to run various operating systems. Virtualization hides the physical characteristics of a computing platform from the users, presenting instead an abstract computing platform. At its origins, the software that controlled virtualization was called a "control program", but the terms "hypervisor" or "virtual machine monitor" became preferred over time.
Mémoire de masseEn informatique, une mémoire de masse est une mémoire de grande capacité, non volatile et qui peut être lue et écrite, entre autres, par un ordinateur. Technologies désuètes Mémoire à tores magnétiques, carte perforée, ruban perforé, cassette audio, tambour magnétique, disquette et disque magnéto-optique. Technologies en usage Bande magnétique, disque dur, SSD, disque optique (CD, DVD, Blu-ray) et mémoire flash.