Maison > Problème commun > le corps du texte

Quel est le but de la gestion du stockage

藏色散人
Libérer: 2020-11-30 11:21:01
original
15852 Les gens l'ont consulté

Le but de la gestion du stockage est de faciliter les utilisateurs et d'améliorer l'utilisation de la mémoire ; l'objet de la gestion du stockage est la mémoire principale, également appelée mémoire. Ses principales fonctions incluent l'allocation et le recyclage de l'espace mémoire principale, l'amélioration de l'utilisation de la mémoire principale et. Expansion de la mémoire principale, protection efficace des informations de la mémoire principale.

Quel est le but de la gestion du stockage

Le but de la gestion du stockage est de faciliter les utilisateurs et d'améliorer l'utilisation de la mémoire .

L'objet de la gestion de la mémoire est la mémoire principale, également appelée mémoire. Ses principales fonctions incluent l'allocation et la récupération de l'espace mémoire principale, l'amélioration de l'utilisation de la mémoire principale, l'extension de la mémoire principale et la protection efficace des informations de la mémoire principale.

Solution de gestion du stockage

L'objectif principal de la solution de gestion du stockage est de résoudre le problème de plusieurs utilisateurs utilisant la mémoire principale. Sa solution de gestion du stockage comprend principalement la gestion du stockage des partitions. et gestion du stockage paginé, gestion du stockage segmenté, gestion du stockage paginé segmenté et gestion du stockage virtuel.

Stockage de partition

Il existe trois manières différentes de gérer le stockage de partition : la partition statique, la partition variable et la partition déplaçable.

Partition statique

La gestion du stockage des partitions statiques consiste à pré-diviser l'espace mémoire principal allouable en plusieurs zones consécutives. La taille de chaque zone peut être identique ou différente. Afin d'expliquer l'allocation et l'utilisation de chaque partition, la gestion du stockage doit mettre en place une « table d'allocation de mémoire principale ». La table d'allocation de mémoire principale indique l'adresse de départ et la longueur de chaque partition. Le bit indicateur occupé dans le tableau est utilisé pour indiquer si la partition est occupée. Lorsque le bit indicateur occupé est "0", cela signifie que la partition n'a pas été occupée. occupé. Lors de l'allocation de la mémoire principale, sélectionnez toujours les partitions avec le drapeau "0". Lorsqu'une partition est affectée à un travail, indiquez le nom du travail occupant la partition dans la colonne du drapeau d'occupation. Grâce à la gestion du stockage sur partition statique, l'utilisation de l'espace mémoire principale n'est pas élevée. [2]

Partitionnement variable

La méthode de partitionnement variable consiste à diviser les partitions en fonction de la taille du travail. Lorsqu'un travail doit être chargé, vérifiez s'il y a suffisamment d'espace dans la mémoire principale en fonction de la quantité de mémoire principale requise par le travail. Si c'est le cas, divisez une partition en fonction de la quantité requise et allouez-la au travail ; non, faites en sorte que le travail attende l'espace mémoire principal. Étant donné que la taille de la partition est déterminée en fonction des besoins réels du travail et que le nombre de partitions est également aléatoire, le gaspillage d'espace mémoire principale dans la méthode de partition fixe peut être surmonté.

Avec le chargement et l'évacuation des tâches, l'espace mémoire principal est divisé en plusieurs partitions, certaines partitions sont occupées par des tâches et certaines partitions sont libres. Lorsqu'un nouveau travail doit être chargé, vous devez trouver une zone libre suffisamment grande et charger le travail dans cette zone. Si la zone libre trouvée est plus grande que les exigences du travail, la zone libre d'origine sera divisée en deux parties une fois le travail chargé. . une partie est occupée par le travail ; l'autre partie est divisée en une zone libre plus petite. Lorsqu'une rangée principale est évacuée, si la zone qu'elle retourne est adjacente à d'autres zones libres, elle peut être combinée en une zone libre plus grande pour faciliter le chargement de gros travaux.

Algorithme de planification de partition variable

1) Premier algorithme d'adaptation. Chaque fois qu'elle est allouée, la table non allouée est toujours recherchée séquentiellement jusqu'à ce que la première zone libre répondant à l'exigence de longueur soit trouvée. Divisez la zone non allouée trouvée, une partie est allouée au travail et l'autre partie est toujours une zone libre. Cet algorithme d'allocation peut diviser un grand espace en petites zones, provoquant davantage de « fragments » de mémoire principale.

2) Meilleur algorithme d'adaptation. Sélectionnez la plus petite partition de la zone libre qui peut répondre aux exigences du travail. Cela garantit qu'une zone plus grande n'est pas divisée, ce qui facilite la réalisation de travaux volumineux lors de leur chargement. Lorsque vous utilisez cet algorithme d'attribution, les zones libres peuvent être organisées en douceur par tailles croissantes. Lors de la recherche, commencez toujours par la zone la plus petite jusqu'à ce qu'une zone répondant aux exigences soit trouvée.

3) Le pire algorithme d'adaptation. Sélectionnez la plus grande zone libre pour le travail à utiliser, afin que la zone libre restante ne soit pas trop petite. Cet algorithme est bénéfique pour les travaux de taille moyenne et petite. Lors de l'utilisation de cet algorithme d'attribution, les zones libres peuvent être classées en douceur par ordre décroissant et la recherche commence toujours par la zone la plus grande. De cette manière, la table doit également être réorganisée lors de la récupération d'une partition.

Stockage de pagination

La gestion du stockage de pagination consiste à diviser l'espace d'adressage logique d'un processus en plusieurs morceaux de taille égale, appelés pages ou pages, et à numéroter chaque page, en commençant par 0. Tels que page 0, page 1, etc. De manière correspondante, l'espace mémoire est également divisé en plusieurs blocs de stockage de la même taille que la page, appelés blocs (physiques) ou cadres de page, et ils sont également numérotés, tels que bloc 0#, bloc 1#, etc. Lors de l'allocation de mémoire à un processus, plusieurs pages du processus sont chargées en unités de bloc dans plusieurs blocs physiques qui peuvent ne pas être contigus. Étant donné que la dernière page du processus ne tient souvent pas en un seul morceau, une fragmentation inutilisable se forme, appelée « fragmentation en page ».

Stockage segmenté

Dans la méthode de gestion du stockage segmenté, l'espace d'adressage du travail est divisé en plusieurs segments, et chaque segment définit un ensemble d'informations logiques. Par exemple, il existe le segment de programme principal MAIN, le segment de sous-programme X, le segment de données D, le segment de pile S, etc. Chaque segment a son propre nom. Par souci de simplicité, un numéro de segment peut généralement être utilisé à la place du nom du segment. Chaque segment est adressé à partir de 0 et utilise un espace d'adressage continu. La longueur du segment est déterminée par la longueur du groupe d'informations logique correspondant, la longueur de chaque segment est donc différente. Étant donné que l'espace d'adressage de l'ensemble du travail est divisé en plusieurs segments, il est bidimensionnel, c'est-à-dire que son adresse logique se compose du numéro de segment (nom du segment) et de l'adresse dans le segment.

Stockage de pages de segments

Le principe de base du système de pages de segments est une combinaison de la méthode de gestion de stockage segmentée de base et de la méthode de gestion de stockage de pagination de base, c'est-à-dire que le programme utilisateur est d'abord divisé. en plusieurs segments. Divisez ensuite chaque segment en plusieurs pages et attribuez un nom de segment à chaque segment.

Stockage virtuel

Lorsque l'espace de stockage requis du programme est supérieur à l'espace mémoire réel, cela rend le programme difficile à exécuter. La technologie de stockage virtuel utilise l'espace mémoire réel et un espace de stockage externe relativement grand pour se combiner pour former un espace de stockage virtuel beaucoup plus grand que l'espace mémoire réel. Le programme s'exécute dans cet espace de stockage virtuel. La base de la réalisation du stockage virtuel est le principe de localité du programme, c'est-à-dire que le programme présente souvent les caractéristiques de s'exécuter dans une certaine portée locale pendant son fonctionnement. Dans le temps, les mêmes segments d'instructions et données sont souvent exécutés (appelé localité temporelle). Dans l'espace, les instructions et les données dans un certain espace de stockage local sont souvent exécutées (appelée localité spatiale). Certains segments de programme ne peuvent pas être exécutés en même temps. Ou ne vous enfuyez pas du tout. Le stockage virtuel divise l'espace de stockage requis par un programme en plusieurs pages ou segments. Les pages et segments utilisés par le programme sont stockés dans la mémoire, et ils sont stockés dans la mémoire externe lorsqu'ils ne sont pas utilisés temporairement. Lorsque les pages et segments de la mémoire externe sont utilisés, ils sont transférés vers la mémoire, et vice versa, ils sont envoyés vers la mémoire externe. Les pages ou segments chargés en mémoire peuvent être dispersés.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!