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.
Bus errorIn computing, a bus error is a fault raised by hardware, notifying an operating system (OS) that a process is trying to access memory that the CPU cannot physically address: an invalid address for the address bus, hence the name. In modern use on most architectures these are much rarer than segmentation faults, which occur primarily due to memory access violations: problems in the logical address or permissions. On POSIX-compliant platforms, bus errors usually result in the SIGBUS signal being sent to the process that caused the error.
General protection faultA general protection fault (GPF) in the x86 instruction set architectures (ISAs) is a fault (a type of interrupt) initiated by ISA-defined protection mechanisms in response to an access violation caused by some running code, either in the kernel or a user program. The mechanism is first described in Intel manuals and datasheets for the Intel 80286 CPU, which was introduced in 1983; it is also described in section 9.8.13 in the Intel 80386 programmer's reference manual from 1986.
ThrashingEn informatique, le thrashing (littéralement « emballement ») est l'état d'un ordinateur avec mémoire virtuelle caractérisé par une fréquence des échanges de pages si élevée entre la mémoire RAM et le disque dur que ses performances s'en trouvent considérablement affectées et que très peu de ressources sont disponibles pour exécuter les applications des utilisateurs de l'ordinateur. Cette situation peut causer une dégradation très importante de la performance de l'ordinateur.
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.
Erreur de segmentationUne erreur de segmentation (en anglais segmentation fault, en abrégé segfault) est un plantage d'une application qui a tenté d'accéder à un emplacement mémoire qui ne lui était pas alloué. Les applications, lorsqu'elles s'exécutent, ont besoin de mémoire vive, allouée par le système d'exploitation. Une fois allouée à l'application, aucune autre application ne peut avoir accès à cette zone ; cela garantit une sûreté de fonctionnement pour chaque application contre les erreurs des autres.
Page replacement algorithmIn a computer operating system that uses paging for virtual memory management, page replacement algorithms decide which memory pages to page out, sometimes called swap out, or write to disk, when a page of memory needs to be allocated. Page replacement happens when a requested page is not in memory (page fault) and a free page cannot be used to satisfy the allocation, either because there are none, or because the number of free pages is lower than some threshold.
Noyau Linuxvignette|upright=2|Couches de fonctions du Noyau Linux Le noyau Linux est un noyau de système d'exploitation de type UNIX. Il est utilisé dans plusieurs systèmes d'exploitation dont notamment GNU/Linux (couramment appelé « Linux ») et Android. Le noyau Linux est un logiciel partiellement libre (contenant des BLOB et des modules non-libre - consultez Linux-libre) développé essentiellement en langage C par des milliers de bénévoles et salariés collaborant sur Internet.
Table des pagesdroite|vignette|Relations entre les pages adressée par les adresses virtuelles et les pages en mémoire physique. La mémoire physique peut contenir des pages appartenant à de nombreux processus. Les pages peuvent être conservées sur disque si elles sont rarement utilisées ou si la mémoire est pleine. Dans le diagramme ci-dessus, certaines pages ne sont pas dans la mémoire physique. La table des pages est la structure de données utilisée par un système de mémoire virtuelle dans un système d'exploitation pour stocker les correspondances entre adresses virtuelles et adresses physiques.
Memory pagingIn computer operating systems, memory paging (or swapping on some Unix-like systems) is a memory management scheme by which a computer stores and retrieves data from secondary storage for use in main memory. In this scheme, the operating system retrieves data from secondary storage in same-size blocks called pages. Paging is an important part of virtual memory implementations in modern operating systems, using secondary storage to let programs exceed the size of available physical memory.
Page (computer memory)A page, memory page, or virtual page is a fixed-length contiguous block of virtual memory, described by a single entry in the page table. It is the smallest unit of data for memory management in a virtual memory operating system. Similarly, a page frame is the smallest fixed-length contiguous block of physical memory into which memory pages are mapped by the operating system. A transfer of pages between main memory and an auxiliary store, such as a hard disk drive, is referred to as paging or swapping.
Plantagethumb|Message d'erreur à la suite d'un plantage du système contrôlant un écran d'affichage dans un aéroport Dans le jargon informatique, un plantage (parfois appelé, par anglicisme, « crash »), ou un sinistre informatique (nécessitant un plan de reprise d'activité global de l'organisation ou un plan de reprise d'activité informatique), est une interruption anormale, souvent inattendue, d’un logiciel (lequel peut aussi bien être une application qu’un système d'exploitation) due à une panne, un incident ou un
Core dumpUn core dump est un fichier dans lequel est enregistré une copie de la mémoire vive et des registres d'un processeur, permettant d'avoir un instantané de l'état d'un système. Il sert généralement à des fins d'analyse, à la suite d'une exception, forcée ou provoquée par une erreur. Le core dump peut pour cela être analysé dans un débogueur. Sur les systèmes suivant la norme POSIX, le signal « Core » permet de déclencher le core dump d'un processus donné, mais il existe également d'autres méthodes permettant d'y aboutir.
Adresse virtuelleEn informatique, une adresse virtuelle est une adresse de la mémoire virtuelle qu'un système d'exploitation met à disposition de ses processus pour qu'ils puissent s'exécuter. L'expression est souvent employée par opposition à l'adresse physique dans laquelle elle est convertie par l'unité de gestion mémoire (MMU). Une adresse virtuelle en architecture 32 bits comprend trois parties : De 0 à 11 : index du mot dans la page. De 12 à 21: index de la page dans le répertoire. De 22 à 31 : index du répertoire dans la mémoire.
Mémoire virtuellethumb|Schéma de principe de la mémoire virtuelle. En informatique, le mécanisme de mémoire virtuelle a été mis au point dans les années 1960. Il repose sur l'utilisation de traduction à la volée des adresses (virtuelles) vues du logiciel, en adresses physiques de mémoire vive. La mémoire virtuelle permet : d'utiliser de la mémoire de masse comme extension de la mémoire vive ; d'augmenter le taux de multiprogrammation ; de mettre en place des mécanismes de protection de la mémoire ; de partager la mémoire entre processus.
Principe de localité (informatique)Le principe de localité est un terme générique en informatique, qui correspond à une observation des programmes actuels et regroupe différents types de localités. Les programmes possèdent deux caractéristiques intéressantes : ils tendent à utiliser les instructions et les données qui sont situées dans la zone mémoire proche des données et instructions accédées récemment: il s'agit du principe de localité spatiale. Alors que les programmes suivent fréquemment des boucles et des sauts pour les instructions, la localité spatiale est encore plus marquée pour les données.
Unité de gestion de mémoireUne unité de gestion mémoire (MMU pour memory management unit), parfois appelée unité de gestion de mémoire paginée (PMMU pour paged memory management unit), est un composant permettant de contrôler les accès qu'un processeur fait à la mémoire de l'ordinateur dans lequel il est placé. À l'époque des premiers microprocesseurs, il s'agissait d'un circuit intégré dédié. Puis le MMU a été intégré aux microprocesseurs, à partir du 80286 pour la gamme Intel x86, à partir du 68030 pour la gamme Motorola 680x0.
Address spaceIn computing, an address space defines a range of discrete addresses, each of which may correspond to a network host, peripheral device, disk sector, a memory cell or other logical or physical entity. For software programs to save and retrieve stored data, each datum must have an address where it can be located. The number of address spaces available depends on the underlying address structure, which is usually limited by the computer architecture being used.
Memory protectionMemory protection is a way to control memory access rights on a computer, and is a part of most modern instruction set architectures and operating systems. The main purpose of memory protection is to prevent a process from accessing memory that has not been allocated to it. This prevents a bug or malware within a process from affecting other processes, or the operating system itself. Protection may encompass all accesses to a specified area of memory, write accesses, or attempts to execute the contents of the area.