Organisation physique et logique de la mémoire des systèmes informatiques. Organisation de la mémoire dans les machines informatiques

Envoyez votre bon travail dans la base de connaissances est simple. Utilisez le formulaire ci-dessous

Étudiants, étudiants diplômés, jeunes scientifiques qui utilisent la base de connaissances dans leurs études et leur travail vous seront très reconnaissants.

Publié sur http://www.allbest.ru/

1. Les principes d'échange d'informations entre les niveaux hiérarchiques du sous-système de mémoire.

2. Les principales fonctions et les sous-systèmes de base du système informatique.

3. Le principe de la mémoire collective associative.

4. Mise en œuvre des interruptions des périphériques connectés via une interface série.

5. Quelles sont les bagues de protection?

6. Quelle est la segmentation de la RAM?

7. Les principales caractéristiques des données vidéo. Matrix et représentation graphique des informations vidéo.

8. Quel est le fichier? Différences entre le fichier et le catalogue.

9. Les principales étapes du convoyeur des transformateurs modernes.

10. Qu'est-ce que Renommer des registres?

Question Numéro 1. Principes d'échange d'informations entre les niveaux hiérarchiques du sous-système de mémoire

La mise en œuvre de la mise en œuvre de la hiérarchie de la mémoire des ordinateurs modernes est deux principes: le principe de la localité des appels et du ratio de la valeur / de la délicatesse. Le principe de la localité des appels suggère que la plupart des programmes, heureusement, ne remplissent pas de contacts à toutes leurs équipes et que leurs données sont de la même manière et de préférence à certains de leurs espaces d'adresses.

La hiérarchie de la mémoire des ordinateurs modernes est basée sur plusieurs niveaux et un niveau supérieur est moins en volume, plus rapide et a une valeur supérieure en termes d'octets, au niveau inférieur. Les niveaux de hiérarchie sont interconnectés: toutes les données à un niveau peuvent également être trouvées à un niveau inférieur, et toutes les données à ce niveau inférieur peuvent être trouvées au niveau sous-jacent suivant et ainsi de suite jusqu'à ce que nous atteignions le fondement de la hiérarchie.

La hiérarchie de la mémoire consiste généralement en plusieurs niveaux, mais à chaque instant, nous ne traitons que deux niveaux à proximité. L'unité minimale d'informations pouvant être présentes ou absente dans la hiérarchie à deux niveaux est appelée bloc. La taille du bloc peut être fixe ou variable. Si cette taille est corrigée, la quantité de mémoire est une taille de bloc multiple.

Un attrait réussi ou infructueux à un niveau supérieur est appelé respectivement (frappé) ou miss (Miss). Frapper - il y a un appel à un objet en mémoire, qui se trouve sur plus haut niveauBien que les promesses signifie que cela ne se trouve pas à ce niveau. Taux de frappe / Ratio HIT Manger (le ratio de frappe) a une part d'appel trouvés à un niveau supérieur. Parfois, il semble être des pourcentages. La part des misses (Miss Treate) a une part d'appel qui ne sont pas trouvés à un niveau supérieur.

Étant donné que l'augmentation de la productivité est la principale raison de l'apparition de la hiérarchie de la mémoire, la fréquence des hits et des manques est une caractéristique importante. L'appel de la HIP TIME (HUIT TIME) est le moment de se référer à un niveau de hiérarchie plus élevé, notamment et le temps nécessaire pour déterminer si l'appel à entrer ou à glisser. Manquez des pertes de pénalité Il est temps de remplacer le bloc à un niveau supérieur à un bloc de niveau inférieur et de temps pour transmettre cette unité au dispositif souhaité (généralement dans le processeur). Les pertes sur les raques incluent en outre deux composants: heure d'accès (heure d'accès) - l'heure d'accédant au premier mot du bloc pendant la manche, et le temps de transfert (temps de transfert) est un temps supplémentaire pour transférer les mots de bloc restants. L'heure d'accès est associée à un délai de mémoire de niveau inférieur, tandis que le temps d'expédition est associé à une largeur de bande de canal entre deux dispositifs de mémoire adjacents.

Numéro de question 2. Fonctions de base et sous-systèmes de base du système informatique

OS est un complexe de programmes interconnectés conçus pour augmenter l'efficacité des équipements informatiques par la gestion rationnelle de ses ressources, ainsi que pour assurer la commodité à l'utilisateur en lui fournissant une machine virtuelle étendue. Les principales ressources gérées par OS, incluent les processeurs, la mémoire principale, les minuteries, les ensembles de données, les disques, les rubans magnétiques, les imprimantes, périphériques réseau et d'autres. Les ressources sont distribuées entre les processus. Pour résoudre les tâches de gestion des ressources, divers systèmes d'exploitation utilisent divers algorithmes, dont les fonctionnalités déterminent en fin de compte l'apparition du système d'exploitation. Les sous-systèmes les plus importants du système d'exploitation sont des sous-systèmes de gestion des processus, de mémoire, de fichiers et de périphériques externes, ainsi que des sous-systèmes. interface utilisateur, protection des données et administration.

Fonctions principales:

* Effectuer des programmes sur demande de ces actions relativement élémentaires (de bas niveau) communes à la plupart des programmes et se retrouvent souvent dans presque tous les programmes (entrée et sortie de données, lancement et arrêt d'autres programmes, allocation et libération mémoire supplémentaire et etc.).

* Accès standard aux périphériques (périphériques d'E / S).

* Gestion RAM (distribution entre processus, organisation de la mémoire virtuelle).

* Contrôler l'accès aux données sur un support non volatil (tel que le disque dur, les disques optiques, etc.), organisé dans un système de fichiers particulier.

* Fournir une interface utilisateur.

* Opérations de réseau, pile de protocoles réseau.

Fonctions supplémentaires:

* Tâches de performance parallèles ou pseudo-parallèles (multitâche).

* Répartition efficace des ressources du système informatique entre les processus.

* Rémunération de l'accès de divers processus aux ressources.

* Interaction entre les processus: échange de données, synchronisation mutuelle. Le processus est un objet dynamique qui se produit dans le système d'exploitation après que l'utilisateur ou le système d'exploitation lui-même décide de "exécuter le programme à l'exécution", c'est-à-dire de créer une nouvelle unité d'utilisation de l'informatique. L'utilisateur est une personne ou une organisation qui utilise le système actuel pour effectuer une fonction spécifique. Le fichier est une zone nommée. mémoire externequi peut être enregistré et à partir de laquelle vous pouvez lire les données. Les principaux objectifs d'utilisation des fichiers sont: à long terme et stockage fiable informations aussi partage aux données.

Question n ° 3. Principe de la mémoire de caisse associative

Dans la mémoire associative, les éléments sont sélectionnés non à l'adresse, mais en fonction du contenu. Clarifient le dernier concept plus en détail. Pour la mémoire avec l'organisation d'adresses, le concept de l'unité adressable minimale (Mae) a été introduit comme une partie des données ayant une adresse individuelle. Nous introduisons un concept similaire pour la mémoire associative et nous serons appelés cette unité de stockage minimale dans la chaîne de mémoire associative (Sangle). Chaque sangle contient deux champs: un champ de balise (eng. Étiquette - étiquette, étiquette, signe) et champ de données. La demande de lecture de la mémoire associative par mots peut être exprimée comme suit: Sélectionnez une chaîne (chaînes), qui (dans laquelle) la balise est égale à la valeur spécifiée.

Nous notons particulièrement qu'avec une telle demande, l'un des trois résultats sont possibles:

1. C'est une précision d'une ligne avec une étiquette donnée;

2. Il y a plusieurs rangées avec une étiquette donnée;

3. Il n'y a pas de rangée avec une balise donnée.

La recherche d'un signe d'un signe est une action typique de l'accès aux bases de données et de la recherche dans la base de données est souvent une recherche associative. Pour effectuer une telle recherche, affichez tous les enregistrements et comparez la balise spécifiée avec la balise de chaque entrée. Cela peut être fait lorsqu'il est utilisé pour stocker des enregistrements de la mémoire adressable habituelle (et il est clair qu'il nécessitera beaucoup de temps - proportionnellement au nombre d'enregistrements stockés!). La mémoire associative est indiquée lorsque l'échantillon de données associatives de la mémoire est maintenu du matériel. Lorsque vous écrivez à la mémoire associative, l'élément de données est placé dans la sangle avec la balise inhérente dans cet élément. Pour ce faire, vous pouvez utiliser n'importe quelle sangle libre.

Au début de la mémoire de caisse vide. Lorsque vous effectuez la première commande lors de son échantillon, son code, ainsi que plusieurs autres octets voisins code de logiciel- sera transféré (lent) dans l'une des lignes de cache et, en même temps, la partie la plus ancienne de l'adresse sera enregistrée dans la balise appropriée. C'est ainsi que la ligne de cache remplit.

Si les échantillons suivants sont possibles à partir de ce site, ils seront déjà faits du cache (rapidement) - "Cash-frappe". S'il s'avère qu'il n'y a pas d'élément nécessaire dans le cache "," cache-slip. Dans ce cas, l'appel a lieu à la RAM (lentement), et en même temps, la prochaine ligne de cache est remplie.

Un appel au cache se produit comme suit. Après avoir créé l'adresse exécutive, ses bits plus anciens formant la balise, le matériel (rapidement) et comparent simultanément avec les étiquettes de toutes les lignes de cache. Dans le même temps, seules deux situations des trois énumérées ci-dessus sont possibles: soit toutes les comparaisons donneront un résultat négatif (cache-manne), soit un résultat positif de la comparaison, sera enregistré exactement pour une ligne (cache-frappe).

Lors de la lecture, si le cache frappé est corrigé, les gouttes d'adresses plus jeunes déterminent la position dans la ligne de cache, en commençant par lesquelles les octets doivent être sélectionnés et que le type d'opération détermine le nombre d'octets. Évidemment, si la longueur de l'élément de données dépasse un octet, il existe des situations où cet élément (pièces) est situé dans deux (ou plus) lignes de cache différentes, puis le temps nécessaire pour sélectionner un tel élément augmentera. Il est possible de contrer cela, des opérandes de nivellement et des commandes sur les frontières de la ligne de cache, prise en compte lors de l'élaboration d'optimisation des traducteurs ou d'une optimisation manuelle du code.

S'il y a eu du cache, et il n'y a pas de lignes libres dans le cache, vous devez remplacer une ligne de cache à une autre chaîne.

L'objectif principal de la stratégie de substitution est de détenir la chaîne dans le cache auquel est le plus susceptible de faire appel dans un proche avenir et de remplacer les lignes, l'accès auxquels se produira dans un temps plus lointain ou ne se produira pas du tout. De toute évidence, l'algorithme optimal sera optimal, qui remplace la rangée, l'appel à lequel à l'avenir se produira plus tard que tout autre cache à cordes.

Numéro de la question 4. Mise en œuvre d'interruptions des périphériques de périphériques connectés via une interface série

L'interface série pour la transmission de données dans une direction utilise une ligne de signal dans laquelle les bits d'information sont transmis de manière séquentielle. Cette méthode de transmission définit le nom de l'interface et du port, la mise en œuvre (interface série et port série). La transmission de données séquentielles peut être effectuée dans des modes synchrones et asynchrones.

Lorsque la transmission asynchrone, chaque octet est précédé d'un signal de débit de démarrage qui signe le récepteur au début de la parcelle suivante, suivi des bits de données ou des bits de parité (conclusion de parité). Complète le paquet de bit d'arrêt.

Le format de colis asynchrone vous permet d'identifier des erreurs de transmission possibles.

Le mode de transmission synchrone implique l'activité constante du canal de communication. Le colis commence par un synchrobayt, suivi d'un flux dense de bits d'information. Si l'émetteur n'a pas de données pour la transmission, il remplit la pause par le rythme continu des octets de synchronisation. Lors du transfert de grandes matrices de données sur les coûts de synchronisation des frais de synchronisation en ce mode, il sera nécessaire inférieur à celui de l'asynchrone.

Interruption (Eng. Interruption) - Un signal qui indique au processeur de la commission d'un événement asynchrone. Dans ce cas, l'exécution de la séquence actuelle de commandes est suspendue et la commande est contrôlée par le gestionnaire d'interruption qui effectue le traitement de l'événement et renvoie le contrôle au code interrompu. Types d'interruptions: Matériel (Eng. IRQ - Demande d'interruption) - Événements à partir de périphériques (par exemple, appuyez sur les touches de clavier, le mouvement de la souris, le signal de la minuterie, carte réseau ou lecteur de disque) - interruptions externes ou événements dans le microprocesseur - (par exemple, division sur zéro) - interruptions internes; Logiciel - initié par le programme étant effectué, c'est-à-dire Déjà synchrone, pas de manière asynchrone. Les interruptions logicielles peuvent servir à appeler les services du système d'exploitation.

Les interruptions nécessitent la suspension du flux de courant de courant (avec la préservation de l'état) et commencez à exécuter la procédure d'interruption ISR (routine de service d'interruption). Cette procédure doit d'abord identifier la source d'interruption (et plusieurs d'entre elles peuvent y avoir plusieurs), puis effectuez des actions associées à la réaction à l'événement. Si les événements devraient appeler certaines actions du programme d'application, le gestionnaire d'interruptions doit uniquement soumettre un signal (via OS) qui fonctionne (ou réveillé) le flux d'instructions qui effectue ces actions. La procédure ISR elle-même devrait être optimisée au moment passé. Entretien d'interruption, en particulier en mode protégé, dans des ordinateurs compatibles PC sur les processeurs X86 est associé à des frais généraux importants. Pour cette raison, leur nombre tente de réduire. Des problèmes importants fournissent l'identification de la source d'interruption - dans l'architecture Ordinateurs compatibles PC Pour cela, des mécanismes traditionnels, mais inefficaces sont utilisés. Dans certains cas, les interruptions d'appareils sont remplacées par une demi-interrogation gérée par logiciel de l'état des appareils. Dans le même temps, les états de l'ensemble des appareils sont interrompus de la minuterie.

Numéro de question 5. Quels sont les bagues de protection?

Anneaux de protection - Architecture sécurité de l'information et la tolérance de défaut fonctionnelle qui implémente la séparation matérielle du système et des niveaux de privilège de l'utilisateur. La structure de privilège peut être décrite sous la forme de plusieurs cercles concentriques. Dans ce cas mode système (Mode superviseur ou anneau zéro, appelé "Bague 0"), offrant un accès maximal aux ressources, est un cercle interne, tandis que le mode utilisateur avec un accès limité est externe. Traditionnellement, la famille des microprocesseurs X86 fournit 4 bagues de protection.

La prise en charge de plusieurs anneaux de protection était l'un des concepts révolutionnaires inclus dans le système d'exploitation multicomanes, le prédécesseur des systèmes d'exploitation de type UNIX d'aujourd'hui.

Le système multicomanie original avait 8 anneaux de protection, mais beaucoup systèmes modernes Ils sont généralement moins. Le processeur sait toujours dans quelle bague le code est exécuté, grâce à des registres spéciaux de moteurs.

Le mécanisme de bagues limite strictement les chemins par lesquels le contrôle peut être transmis d'une bague à une autre. Il y a quelques instructions qui transfèrent le contrôle de moins protégé vers un anneau plus protégé (avec un nombre plus petit). Ce mécanisme est conçu pour limiter les possibilités d'une violation de sécurité aléatoire ou intentionnelle.

Utilisation efficace de l'architecture de protection des anneaux nécessite une interaction étroite entre le matériel et système opérateur. Les systèmes d'exploitation sont conçus de manière à fonctionner sur un grand nombre de plates-formes pouvant avoir une réalisation différente du mécanisme des anneaux sur chaque plate-forme.

Numéro de question 6. Quelle est la segmentation de la RAM?

La segmentation (segmentation) est une réception de programmes d'organisation dans lesquels la structure d'adresses du programme reflète son appartenance significative. Lorsque segmentée, l'espace des adresses de chaque programme est divisé en segments de différentes longueurs correspondant à une partie sensiblement différente du programme. Par exemple, le segment peut être une zone de procédure ou de données. Dans ce cas, l'adresse consiste en un nom de segment et une adresse à l'intérieur du segment. Étant donné que les segments logiciels sont appelés noms, il est possible de placer les segments lors de la distribution de la mémoire dans des zones de mémoire non mesurées, d'ailleurs, tous les segments ne doivent pas être simultanément dans l'OP, certains d'entre eux peuvent être en mémoire externe et sont prémédités. en op au besoin.

Comme déjà mentionné, dans le système avec la segmentation, chaque adresse représente une paire: S - Le nom du segment et D est le décalage. Chaque programme correspond toujours à présent dans la table de mémoire des segments dans lesquels chaque segment ce processus Conforme à une entrée. En utilisant cette table, le système affiche les adresses logicielles aux adresses vraies de l'OP. L'adresse de la table est stockée dans le registre du matériel, appelée registre de la table de segment.

Le calcul de l'adresse pendant la segmentation est effectué comme suit. Avant que le système puisse calculer l'adresse, le matériel est vérifié par un signe de la présence du segment dans l'OP. Si le segment est présent, utilisez le registre de la table de segment, un appel à la ligne S-Th de la table de segment est effectué, où l'adresse du segment en mémoire est spécifiée. Étant donné que des segments sont de longueurs différentes, il est nécessaire de connaître la frontière du segment pour empêcher le traitement au-delà du segment spécifié.

Si, à un moment donné, le système souhaite soumettre votre attention sur un autre processus, il remplace simplement le contenu du registre de la table de segment sur l'autre table de segment, après quoi l'espèce de l'espèce est interprétée conformément à la nouvelle table.

La segmentation des adresses de l'espace d'adresses présente de nombreux avantages par rapport à l'adressage absolu, et surtout est l'utilisation effective de la RAM. S'il n'y a pas suffisamment d'espace pour tous les segments de ce programme, certains peuvent être placés temporairement dans la mémoire auxiliaire. Si un programme était requis pour entrer un nouveau segment dans le PO, le système peut supprimer n'importe quel segment du PO aux auxiliaire. Le segment déplacé n'appartient pas nécessairement au programme pour lequel un nouveau segment est entré dans l'OP. Quel tableau des segments correspond au segment déplacé n'a pas d'importance, l'essentiel est que, lorsqu'il l'a changé en mémoire auxiliaire dans la table des segments correspondants a modifié la valeur de la fonctionnalité.

Numéro de question 7. Les principales caractéristiques des données vidéo. Matrix et représentation graphique des informations vidéo

L'information vidéo arrive à la fois statique et dynamique. Les informations vidéo statiques incluent le texte, les dessins, les graphiques, les dessins, les tables, etc. Les images sont également divisées en plat - bidimensionnel et volumétrique - tridimensionnelle.

Les informations vidéo dynamiques sont des vidéos et une animation utilisées pour transmettre des images en mouvement. Ils sont basés sur une exposition cohérente sur un écran en temps réel de cadres individuels conformément au script.

La démonstration de films d'animation et de diapositives repose sur divers principes. Les films animés sont démontrés de manière à ce que l'appareil visuel humain ne puisse pas réparer les cadres individuels. Pour obtenir une animation de haute qualité, les cadres doivent être remplacés environ 30 fois par seconde. Lors de la démonstration de films de diapositives, chaque image est exposée à l'écran autant de temps qu'il est nécessaire de percevoir par sa personne (généralement de 30 ° C à 1 min). Les diaposidies peuvent être attribués à des informations vidéo statiques.

DANS technologie informatique Il y a deux façons de représenter des images graphiques; Matrice (raster) et vecteur. Les formats Matrix (bitmap) conviennent bien aux images avec des couleurs gamma complexes, des nuances et des formes, telles que des photos, des dessins, des données numérisées. Les formats de vecteur sont plus adaptés aux dessins et aux images avec des formes simples, des ombres et des colorants.

Dans les formats matriciels, l'image est représentée par une matrice rectangulaire de pixels - pixels (élément d'image), la position de laquelle dans la matrice correspond aux coordonnées des points de l'écran. En plus des coordonnées, chaque pixel se caractérise par sa couleur, sa couleur de l'arrière-plan ou la gradation de la luminosité. Le nombre de bits alloués pour indiquer la couleur du pixel varie en fonction du format. Dans des images de haute qualité, la couleur de pixel est décrite par 24 bits, ce qui donne environ 16 millions de couleurs. L'inconvénient principal des graphiques matriciels (raster) réside dans une capacité de grande capacité requise pour stocker l'image, c'est pourquoi il est recours à des méthodes de compression de données différentes pour décrire les images. Actuellement, il existe de nombreux formats fichiers graphiquesLes algorithmes de compression différents et les méthodes de représentation des images matricielles, ainsi que la portée de l'application.

La représentation de vecteur, contrairement aux graphiques matricielles, définit la description de l'image n'est pas des pixels, mais par des courbes - Splines. Une spline est une courbe lisse qui traverse deux points de référence ou plus, planifiant du planeur.

L'avantage principal des graphiques vectoriels est que la description de l'objet est simple et prend une petite mémoire. De plus, les graphiques vectoriels en comparaison avec la matrice ont les avantages suivants:

Simplicité de la mise à l'échelle de l'image sans détériorer sa qualité;

Indépendance de la capacité de capacité requise pour l'image arrachée du modèle de couleur sélectionné.

Désavantage images vectorielles C'est une certaine artificialité, qui consiste en le fait qu'une image doit être divisée en plusieurs composantes de ses primitives. Quant aux graphiques matriciels, il existe plusieurs formats de fichiers vectoriels graphiques.

Les graphiques matriciels et vectoriels n'existent pas les uns des autres. Ainsi, les dessins de vecteur peuvent inclure et des images matricielles. De plus, les images de vecteur et de matrice peuvent être converties les unes sur les autres. Formats graphiques qui vous permettent de combiner la matrice et la description de l'image vectorielle, appelée Imagerie. Les métafiles fournissent des fichiers compacts suffisants avec la préservation de la qualité d'image élevée.

Les formes considérées d'informations vidéo statiques sont utilisées notamment pour des cadres individuels formant des films animés. Pour stocker des films animés s'appliquer diverses méthodes Informations de compression, dont la plupart sont normalisées.

Question Numéro 8. Quel est le fichier? Différences entre le fichier et le catalogue

données vidéo opérationnelles de la mémoire de la concurrence

Fichier (fre. Fichier - dossier) - Concept dans la technologie informatique: entité qui vous permet d'accéder à tout système informatique de ressources et à avoir un certain nombre de fonctionnalités:

Nom fixe (séquence de caractères, numéro ou autre chose, caractérisé particulièrement par fichier);

Défini vue logique Et les opérations de lecture / écriture correspondantes.

Peut-être que quiconque - de la séquence du bit (bien que nous lisions par octets, et plus précisément avec les groupes des octets, quatre, huit, seize) à la base de données avec une organisation arbitraire ou toute option intermédiaire; La base de données multidimensionnelle est strictement commandée.

Le premier cas correspond aux opérations de lecture / écriture du flux et / ou de la matrice (c'est-à-dire cohérente ou avec accès par index), les commandes Second-DBMS. Options intermédiaires - lire et analyser toutes sortes de formats de fichiers.

Le fichier est l'ensemble nommé d'octets de longueurs arbitraires situés sur le support des informations et le répertoire est l'emplacement nommé sur le disque dans lequel les fichiers sont stockés. Le nom de fichier complet peut inclure des répertoires tels que C: \\ Papka \\ File.txt, peut ne pas inclure C: \\ File.txt, et le répertoire correspond à quels fichiers peuvent être situés: C: \\ Papka. Le répertoire ne peut pas être ouvert dans le programme pour enregistrer certaines informations ou la lire, il s'agit de stocker des fichiers à l'intérieur de lui-même, le fichier est de la même manière - il peut être ouvert et édité.

Numéro de question 9. Les principales étapes du convoyeur des transformateurs modernes

La tâche principale du processeur est d'exécuter (et le plus rapidement possible) des commandes incluses dans le programme. Le moyen le plus simple (augmentation fréquence d'horloge Le processeur) est rapidement épuisé par des restrictions technologiques. Par conséquent, vous devez rechercher d'autres moyens d'accroître la productivité. C'est un ensemble d'innovations architecturales autorisées à augmenter la performance du Pentium par rapport à 486 processeurs. La chose la plus importante est le convoyeur.

L'exécution de l'équipe se compose d'un certain nombre d'étapes:

1) lire une commande de la mémoire,

2) la définition de la longueur,

3) déterminer l'adresse de la cellule mémoire si elle est utilisée,

4) Exécution de l'équipe

5) sauvegarder le résultat.

Dans les premiers transformateurs, toutes ces étapes au-dessus de chaque équipe ont été effectuées complètement. Le convoyeur a permis d'accélérer le processus: une fois la commande passa une des étapes et transmises à la suivante, la commande suivante a commencé. Cette solution est apparue dans les 486 derniers (par exemple, dans AMD 5x86-133). Au Pentium, un double convoyeur est apparu pour la première fois. Les commandes ont pu fonctionner en parallèle (à l'exception des commandes arithmétiques flottantes et de transition). Cela a permis d'accroître la productivité d'environ 30 à 35%.

Numéro de question 10. Qu'est-ce que Renommer des registres?

La rénovation des registres est la méthode d'affaiblissement de l'interdépendance des instructions utilisées dans les processeurs effectuant leur exécution extraordinaire.

Dans le cas où, conformément à deux instructions ou plus, il est nécessaire d'enregistrer des données dans un seul registre, leur exécution extraordinaire correcte devient impossible même s'il n'y a pas de dépendance à l'égard des données. Ces interdépendances sont souvent appelées faux.

Étant donné que le nombre de registres architecturaux est généralement limité, la probabilité de fausses interdépendances est suffisamment grande, ce qui peut entraîner une diminution des performances du processeur.

Renommer des registres est la transformation des références de programmes aux registres architecturaux en références à des registres physiques et vous permet d'affaiblir l'influence des fausses interdépendances en utilisant un grand nombre de registres physiques au lieu d'un nombre limité d'architectural. Dans ce cas, le processeur surveille, l'état desquels des registres physiques correspond à l'état d'architecture et que la délivrance des résultats est effectuée de la manière fournie par le programme.

Sources

Ressource Internet - http://www.chinapads.ru/

Ryazantev o.A., Nedzhelysky D., Gusєva S.V. L'architecture est la structure de l'organisation des systèmes COMINTSKY. Équipe d'inthrivance. - Luganansk: Type-in. Dormir en. V.Daly, 2008.

Ressource Internet - http://studopedia.net/

Ressource Internet - http://proc.ucoz.ru/load/ustrojstvo_processora/1-1-0-2

E.tannenbaum. Architecture informatique, 4-ed. SPB. Peter 2006.

Ressource Internet - http://193.108.240.69/moodle/file.php/5/navch_pos_os.doc

Ressource Internet - http://znanija.com/task/1788585

Posté sur allbest.ru.

Documents similaires

    Classification de la mémoire de l'ordinateur. L'utilisation de RAM opérationnelle, statique et dynamique. Principe de fonctionnement DDR SDRAM. Formatage des disques magnétiques. Le principal problème de la synchronisation. Théorie des processus informatiques. Adresse de la mémoire.

    travaux de cours, ajouté le 05/28/2016

    L'histoire de l'émergence et du développement de la RAM. Les caractéristiques générales des types modernes de RAM - SRAM et DRAM les plus populaires. Mémoire avec un changement d'état de phase (PRAM). Mémoire de thyristor avec accès arbitraire, sa spécificité.

    cours, ajouté le 21/12/2014

    Le schéma le plus simple d'interaction entre la RAM avec la CPU. Dispositif et principes de la mémoire opérationnelle. Évolution de la mémoire dynamique. Module de mémoire Bedo Edo-Dram Bedo (Burst Edo) - Batch Edo Ram. Module mémoire sdram, DDR SDRAM, SDRAM II.

    résumé, ajouté 12/13/2009

    Le concept, les types et les fonctions principales de la mémoire de l'ordinateur sont des parties d'une machine de calcul, un dispositif de stockage physique utilisé dans les calculs dans une certaine période. Diagramme schématique de la RAM. Disques magnétiques flexibles.

    présentation, ajoutée 03/18/2012

    Mémoire pour les systèmes informatiques. Sa création et caractéristiques des fonctionnalités. Création de périphériques de mémoire et de performances de base. Schémas fonctionnels et procédé d'organisation d'une matrice d'éléments de stockage. Types de mémoire magnétique et flash.

    présentation, ajouté le 01/12/2009

    Stocker diverses informations comme une affectation de mémoire de base. Caractéristiques des types de mémoire. SRAM et mémoire dram. Mémoire cache ou mémoire superopératoire, sa spécificité et ses applications. Les dernières innovations des développements dans la région de RAM.

    présentation, ajoutée 01.12.2014

    Généralisation des principaux types et attribuant la RAM de l'ordinateur. Mémoire dépendante de l'énergie et non volatile. Sram et dram. Déclencheurs, RAM dynamique et ses modifications. Mémoire cache. Dispositif de stockage permanent. Mémoire flash. Types de mémoire externe.

    travail de cours, ajouté le 06/17/2013

    Améliorer les paramètres du module de mémoire. Fonctionnement et interaction du système d'exploitation avec RAM. Analyse des types de base, Paramètres RAM. Logiciel avec traitement de l'exécution de commandes et de placement en RAM.

    cours, ajouté 02.12.2009

    Le dispositif général du microprocesseur. Structure du sous-système de mémoire 64 bits. Sélection des ports d'E / S. Caractéristiques de l'interface de systèmes de microprocesseur. Conception du sous-système de mémoire basé sur iTanium 2. Calcul de l'informatique et des volumes nécessaires.

    cours, ajouté 05.12.2012

    Le concept de I. caractéristiques fonctionnelles Dispositifs de stockage informatique, leur classification et leurs types, caractéristiques comparatives: ROM, DRAM et SRAM. Estimation des avantages et des inconvénients de chaque type de RAM, de directions et de méthodes d'utilisation.

Tableau 9.1. Sous-système de la hiérarchie PC PC
Type de zèle 1985 2000
Temps d'échantillonnage Volume typique Prix \u200b\u200b/ octet Temps d'échantillonnage Volume typique Prix \u200b\u200b/ octet
1 Mémoire superopératoire (registres) 0,2 5 NS. 16/32 bit $ 3 - 100 0.01 1 NS. 32/64/128 Bit $ 0,1 10
2 Mémoire tampon à grande vitesse (cache) 20 100 ns 8kb - 64kb ~ $ 10 0,5 - 2 NS 32kb 1mb $ 0,1 - 0,5
3 Mémoire opérationnelle (principale) ~ 0,5 ms. 1mb - 256 Mo $ 0,02 1 2 NS 20 NS 128 Mo - 4 Go $ 0,01 0,1
4 Mémoire externe (mémoire de masse) 10 - 100 ms 1mb - 1 Go $ 0,002 - 0,04 5 - 20 ms 1 Go - 0.5TB $ 0,001 - 0,01

Les registres du processeur constituent son contexte et stockent des données utilisées par les commandes de processeur exécutées à un point particulier. L'appel des registres du processeur se produit en règle générale selon leur notation mnémonique dans les commandes de processeur.

Cache Utilisé pour négocier la vitesse de la CPU et la mémoire principale. Dans les systèmes informatiques, un cache à plusieurs niveaux est utilisé: Cache de niveau (L1), Niveau Cache II (L2), etc. Dans les systèmes de bureau, un cache à deux niveaux est généralement utilisé dans le serveur - trois niveaux. Le cache conserve des équipes ou des données qui apparaîtront probablement au processeur de traitement dans un proche avenir. La mémoire de caisse est transparente pour le logiciel, donc cache Généralement de manière programmatique indisponible.

RAM Les magasins, en règle générale, des modules logiciels fonctionnels et complets (le noyau du système d'exploitation, des exécutables et de leurs bibliothèques, des pilotes utilisés des périphériques, etc.) et leurs données participant directement au travail des programmes et permettent également de sauvegarder les résultats de calculs ou autres données de traitement avant de les envoyer à la mémoire externe, sur le périphérique de sortie de données ou les interfaces de communication.

Chaque cellule mémoire vive Attribué une adresse unique. Les méthodes organisationnelles de la distribution de la mémoire fournissent aux programmeurs la possibilité d'utiliser efficacement l'ensemble du système informatique. Ces procédés comprennent un modèle de mémoire solide ("plat") et un modèle de mémoire segmenté. Lors de l'utilisation d'un modèle solide (modèle plat), le programme fonctionne avec un seul espace d'adresses continu par un espace d'adresses linéaire, dans lequel les cellules de mémoire sont numérotées séquentiellement et en continu de 0 à 2n-1, où N est la décharge de la CPU. à l'adresse. Lors de l'utilisation d'un modèle segmenté (modèle segmenté), la mémoire est soumise par un groupe de blocs d'adresses indépendants, appelés segments. Pour résoudre l'octet de mémoire, le programme doit utiliser une adresse logique composée d'un sélecteur de segment et de décalage. Le sélecteur de segment sélectionne un certain segment et les points de décalage sur une cellule spécifique dans l'espace d'adressage du segment sélectionné.

Sujet 3.1. Organisation de calculs dans les systèmes informatiques

Nomination et caractéristiques du Soleil. Organisation de calculs dans les systèmes informatiques. EUM Action parallèle, concepts de flux de commandes et flux de données. Systèmes associatifs. Systèmes matriciels. Convoyage informatique. Convoyeur d'équipe, convoyeur de données. Supercalarisation.

L'étudiant doit

connaître:

Le concept de flux de flux;

Concept de flux de données;

Types de systèmes informatiques;

Caractéristiques architecturales des systèmes informatiques

Systèmes informatiques

Système informatique (Soleil)- Un ensemble de processeurs interdépendants et d'interaction d'ordinateurs, d'équipements périphériques et de logiciels, destinés à la collecte, au stockage, au traitement et à la distribution d'informations.

La création du soleil est hantée par les principaux objectifs suivants:

· Améliorer les performances du système en raison de l'accélération des processus de traitement de données;

· Améliorer la fiabilité et la fiabilité des calculs;

· Fournir à l'utilisateur des services de service supplémentaires.

Sujet 3.2.

Classification de l'aéronef, en fonction du nombre de flux de commandement et de données: OKD (SISD), OKMD (SIMD), ICD (MIMD), MCMD (MIMD).

Classification des aéronefs multiprocesseurs de différentes manières de mettre en œuvre la mémoire de partage: UMA, Numa, poisson-chat. Caractéristiques comparatives, matériels et fonctionnalités logicielles.

Classification du soleil multi-lait: MRR, NDW et vache. Objet, caractéristiques, fonctionnalités.

Exemples de Sun. différents types. Avantages et inconvénients de divers types de systèmes informatiques.

Classification des systèmes informatiques

Une caractéristique distinctive du Soleil par rapport à l'ordinateur classique est la présence de plusieurs calculatrices de la mise en œuvre traitement parallèle .

Le parallélisme des opérations d'exécution augmente considérablement la vitesse du système; Il peut augmenter considérablement et fiabilité (si un composant échoue, sa fonction peut en prendre un autre), ainsi que la fiabilité du fonctionnement du système, si les opérations sont dupliquées et que les résultats sont comparés.

Les systèmes informatiques peuvent être divisés en deux groupes:

· multimare ;

· multiprocesseur .

Système d'informatique multimare se compose de plusieurs ordinateurs séparés. Chaque ordinateur dans un système multimare a une architecture classique et un tel système est appliqué assez large. Toutefois, l'effet de l'utilisation d'un tel système informatique ne peut être obtenu que lors de la résolution d'une tâche ayant une structure spéciale: elle doit être divisée en sous-tâches liées, combien d'ordinateurs dans le système.

Architecture multiprocesseur Il suppose la présence de plusieurs processeurs de l'ordinateur, de nombreux flux de données peuvent être organisés en parallèle et de nombreux flux de commandement. Ainsi, en même temps, plusieurs fragments d'une tâche peuvent être effectués. L'avantage de la vitesse des systèmes informatiques multiprocesseurs avant un seul processeur est évident.

L'inconvénient est la possibilité de situations de conflit lors de l'accès à plusieurs processeurs dans une zone de mémoire.

Une caractéristique de systèmes informatiques multiprocesseurs est la disponibilité de RAM commune en tant que ressource commune (Figure 11).

Figure 11 - Architecture d'un système informatique multiprocesseur

Classification de Flynna

Parmi tous les systèmes de classification considérés, le soleil est la classification la plus courante proposée en 1966 M. Flynn. Dans sa fondation le concept de flux sous lequel la séquence d'éléments de commande ou de données traitées par le processeur est comprise. Selon le nombre de flux de commande et de flux de données, Flynn met en évidence 4 classe d'architectures:

· Okod - flux de commandes unique - flux de données unique. Ceux-ci incluent fond classique - Nimanan VM. Le traitement du convoyage n'a pas d'importance, par conséquent, la classe de 5600 avec des dispositifs fonctionnels scalaires et 7600 avec des convoyeurs tombent dans la classe du OKD.

· Lutin - Stream de commande multiple - flux de données unique. Dans cette architecture, de nombreux processeurs gèrent le même flux de données. Un exemple serait le soleil, les processeurs dont le signal déformé est donné et chacun des processeurs traite ce signal à l'aide de son algorithme de filtrage. Néanmoins, ni Flynn ni d'autres spécialistes du domaine de l'architecture informatique n'ont toujours réussi à présenter le soleil existant réel, construit sur ce principe. Un certain nombre de chercheurs font référence à ce système de convoyeur de classe, mais cela n'a pas trouvé la reconnaissance finale. La présence d'une classe vide ne doit pas être considérée comme un inconvénient de la classification de Flynn. De telles classes peuvent être utiles pour développer de nouveaux concepts en théorie et en pratique de la construction de Sun.

· Okmd - Un flux de commandes - de nombreux flux de données - les commandes sont émises par un processeur de contrôle et sont effectuées simultanément sur tous les processeurs sur des données locales de ces processeurs. SIMD (instruction unique - Données multiples)

· Mkmd - De nombreux flux de commandement sont beaucoup de flux de données de collecte de données qui travaillent dans leurs programmes avec leurs données source. MIMD (instructions multiples - Plusieurs données)

Le schéma de classification des fluinages est le plus courant de l'évaluation initiale du Soleil, car vous permet immédiatement d'évaluer principe de base Système fonctionne. Cependant, la classification de Flynn présente des inconvénients évidents: par exemple, l'incapacité d'attribuer de manière unique certaines architectures à une classe particulière. Le deuxième inconvénient est la saturation excessive de la classe MIMD.

Les systèmes informatiques existants de la classe MIMD forment trois sous-classes: multipercesseurs symétriques (SMP), groupes et systèmes massy parallèles (MPP). Cette classification est basée sur une approche structurellement fonctionnelle.

Multipercesseurs symétriques consister en un ensemble de processeurs avec les mêmes capacités d'accès mémoire et appareils externes et fonctionnant sous la commande d'un système d'exploitation (OS). Cas de SMP privé - Ordinateurs à processeur. Tous les processeurs SMP ont partagé la mémoire partagée avec un seul espace d'adresses.

L'utilisation de SMP fournit les fonctionnalités suivantes:

· Application à la mise à l'échelle à des coûts initiaux faibles, en appliquant sans convertir des applications sur de nouveaux matériels plus productifs;

· Création d'applications dans les environnements logiciels habituels;

· Accès au même temps à toute la mémoire;

· Possibilité d'envoyer des messages avec une bande passante élevée;

· Prise en charge de la combinaison de cohérence de caches et de blocs de mémoire de base, de synchronisation indivisible et d'opérations de blocage.

Système de cluster Il est formé à partir de modules combinés par un système de communication ou des dispositifs de mémoire externes partagés, tels que des tableaux de disques.

La taille du cluster varie de plusieurs modules à plusieurs dizaines de modules.

Dans la mémoire partagée et distribuée, plusieurs modèles d'architectures de système de mémoire sont en cours de mise en œuvre. La figure 12 montre la classification de tels modèles utilisés dans les systèmes informatiques de classe MIMD (VERNE et pour la classe SIMD).

Figure 12 - Classification des modèles d'architectures de mémoire des systèmes informatiques

Dans les systèmes de la memoire partagée Tous les processeurs ont l'égalité des chances d'accès à un seul espace d'adresses. Une seule mémoire peut être construite en tant que principe de bloc unique ou modulaire, mais la deuxième option est généralement pratiquée.

Systèmes informatiques avec mémoire partagée, où l'accès de tout processeur à la mémoire est effectué uniformément et occupe le même temps, appelé systèmes avec accès uniforme à la mémoire et dénote l'abréviation UMA (accès mémoire uniforme). C'est l'architecture de mémoire la plus courante du soleil parallèle avec une mémoire partagée.

Techniquement, les systèmes UMA supposent la présence d'un nœud reliant chacun des pprocesseurs avec chacun des t.modules de mémoire. Le moyen le plus simple de construire un tel soleil est une combinaison de plusieurs processeurs (p i.) Avec une seule mémoire (m p) au moyen d'un pneu commun - représenté sur la figure 12a . Dans ce cas, toutefois, à tout moment, seul l'un des processeurs peut être échangé sur le pneu, c'est-à-dire que les processeurs doivent concurrencer l'accès au bus. Quand le processeur P i,sélectionne la commande de la mémoire, les processeurs restants P J.(je ≠ J.) Devrait attendre jusqu'à ce que le pneu soit libre. Si seulement deux processeurs sont inclus dans le système, ils sont capables de travailler avec une productivité proche du maximum, car leur accès au bus peut être alternatif: tandis qu'un processeur décode et exécute la commande, l'autre a le droit d'utiliser le bus pour l'échantillonnage de la commande suivante. Cependant, lorsque le troisième processeur est ajouté, la performance commence à tomber. S'il y a dix processeurs sur le bus de la marée, la courbe de vitesse de bus (Figure 12b) devient horizontale, de sorte que l'addition du 11ème processeur n'augmente pas la productivité. La courbe inférieure sur cette figure illustre le fait que la mémoire et les pneus ont une bande passante fixe, déterminée par une combinaison de la durée du cycle de mémoire et du protocole de pneu, ainsi que dans un système multiprocesseur avec un pneu commun, cette bande passante est distribuée parmi plusieurs processeurs. Si la durée du cycle de processeur est plus comparée au cycle de la mémoire, de nombreux processeurs peuvent être connectés au bus. Cependant, en fait, le processeur est généralement beaucoup plus rapide que la mémoire, ce vaste système d'applications ne trouve pas.

Un moyen alternatif de construire des aéronefs multiprocesseurs avec une mémoire partagée basée sur UMA est illustré à la figure 13v . Ici, le pneu est remplacé par un commutateur qui acheminé le processeur demande à l'un des nombreux modules de mémoire. Malgré le fait qu'il existe plusieurs modules de mémoire, tous sont inclus dans un seul espace d'adresses virtuel. L'avantage de cette approche est que le commutateur est capable de maintenir plusieurs demandes en parallèle. Chaque processeur peut être connecté à son module de mémoire et y avoir accès à la vitesse maximale admissible. La rivalité entre les processeurs peut survenir lorsque vous essayez d'accéder simultanément au même module de mémoire. Dans ce cas, un seul processeur reçoit un accès, et d'autres sont bloqués.

Malheureusement, l'architecture UMA n'est pas très bien échelée. Les systèmes les plus courants contiennent 4 à 8 processeurs, nettement moins fréquemment que 32 à 64 processeurs. De plus, ces systèmes ne peuvent pas être attribués à basculement, Étant donné que l'échec d'un processeur ou d'un module de mémoire implique la défaillance de l'aéronef entier.

Figure 13 - Mémoire partagée:

a) combinent des processeurs avec un pneu et un système avec le cache local;

b) les performances du système en fonction du nombre de processeurs sur le pneu;

c) aéronef multiprocesseur avec mémoire partagée composée de modules distincts

Une autre approche de la construction de l'aéronef avec une mémoire partagée est accès de mémoire inhomogène , désignable comme numa (accès mémoire non uniforme). Ici, toujours, apparaît un seul espace d'adresses, mais chaque processeur a une mémoire locale. L'accès du processeur à sa propre mémoire locale est effectué directement, ce qui est beaucoup plus rapide que l'accès à la mémoire distante via un commutateur ou un réseau. Un tel système peut être complété avec une mémoire globale, puis les périphériques de stockage locaux jouent la mémoire de cache rapide pour la mémoire globale. Un tel schéma peut améliorer la performance de l'aéronef, mais pas en mesure de retarder l'alignement des performances directes. Si chaque processeur a une mémoire de cache locale (Figure 13a), il existe une probabilité élevée (P\u003e0,9) que la commande ou les données souhaitées est déjà en mémoire locale. La probabilité raisonnable d'entrer dans la mémoire locale réduit considérablement le nombre d'appels de processeurs à la mémoire mondiale et entraîne ainsi une augmentation de l'efficacité. Passage de la courbe de performance (courbe supérieure de la figure 13 ), le point correspondant dans lequel l'addition de processeurs reste toujours efficace, se déplace désormais dans la zone du processeur 20, et le point où la courbe devient horizontale - dans la zone du processeur 30.

Dans le cadre du concept Numa.plusieurs approches différentes désignées par les abréviations sont en cours de mise en œuvre SOMA, CC-NUMAet NCC-NUMA.

DANS architecture seulement avec mémoire cache (SOMA, Cache uniquement Architecture de la mémoire) La mémoire locale de chaque processeur est construite comme une grande mémoire cache pour un accès rapide à partir du processeur "Son". Les caches de tous les processeurs ensemble sont traités comme système de mémoire global. En fait, la mémoire globale est absente. La principale caractéristique de la conception de la poisson-chat est exprimée dans la dynamique. Ici, les données ne sont pas jointes de manière statique à un module de mémoire spécifique et ne disposent pas d'une adresse unique qui reste inchangée pendant toute la durée de la variable. Dans l'architecture de poisson-chat, les données sont transférées dans la mémoire cache de ce processeur, que la dernière demande, tandis que la variable n'est pas fixée par l'adresse unique et à chaque moment de temps peut être placée dans n'importe quelle cellule physique. Transfert de données d'un cache local à un autre ne nécessite pas de participation à ce processus du système d'exploitation, mais implique des équipements de gestion de la mémoire complexes et coûteux. Organiser un tel régime, utilisez le soi-disant catalogues de banque . Notez également que la dernière copie de l'élément de données ne supprime jamais du cache.

Parce que dans l'architecture de poisson-chat, les données sont déplacées dans le cache du propriétaire de la caisse locale, une telle performance aérienne présente un avantage significatif sur d'autres architectures numa. D'autre part, si la seule variable ou deux variables différentes stockées dans une rangée du même cache est nécessaire à deux processeurs, cette ligne de cache doit se déplacer entre les processeurs et le dos à chaque fois l'accès aux données. Ces effets peuvent dépendre des parties de la répartition de la mémoire et de conduire à des situations imprévisibles.

Modèle accès cohérent en cache à la mémoire inhomogène (CC-NUMA, architecture de mémoire non uniforme cohérente cohérente) est fondamentalement différente du modèle de chat. Le système CC-NUMA n'utilise aucune mémoire cache, mais la mémoire habituelle physiquement distribuée. Aucun copie de pages ni de données entre les cellules de mémoire ne se produit. Il n'y a pas de messagerie mise en œuvre par programmation. Il y a simplement une carte mémoire, avec des pièces, un câble de cuivre physiquement connecté et un matériel "intelligent". La cohérence de cache matérielle signifie que tout logiciel est nécessaire pour enregistrer plusieurs copies de données mises à jour ou de transmission. Le niveau du matériel aboutit à tout cela. L'accès aux modules de mémoire locale dans différents nœuds du système peut être effectué simultanément et est plus rapide que les modules de mémoire distants.

La différence entre le modèle S. accès incohérent à la mémoire inhomogène (NCC-NUMA, architecture de mémoire non uniforme cohérente non cache) de CC-NUMA Évidemment du nom. L'architecture de la mémoire implique un espace d'adresses unique, mais ne garantit pas la cohérence des données globales au niveau matériel. La gestion de l'utilisation de telles données est entièrement imposée au logiciel (applications ou compilateurs). Malgré cette circonstance, l'inconvénient de l'architecture, il s'avère très utile lors de l'augmentation de la performance des systèmes informatiques avec l'architecture de la mémoire du type DSM, considérée dans les "modèles d'architectures de mémoire distribuées".

En général, l'aéronef avec mémoire partagée, construit selon le schéma numa, est appelé architectures avec mémoire partagée virtuelle Architectures de mémoire partagées virtuelles). Cette espèce architecture, en particulier CC-NUMA, dans dernièrement Il est considéré comme une vue indépendante et plutôt en perspective des systèmes informatiques M1MD.

Modèles d'architectures de mémoire distribuées.Dans un système de mémoire distribué, chaque processeur a sa propre mémoire et est capable d'ajouter seulement à elle. Certains auteurs appellent ce type de systèmes par le soleil multi-lait ou multi-Commission , soulignant le fait que les blocs à partir duquel le système est construit par eux-mêmes sont de petits systèmes informatiques avec un processeur et une mémoire. Les modèles d'architectures avec la mémoire distribuée sont habituels de désigner comme architecture sans droit accès à la mémoire distante (Norma, pas d'accès à la mémoire distante). Ce nom découle du fait que chaque processeur n'a accès qu'à sa mémoire locale. L'accès à la mémoire distante (la mémoire locale d'un autre processeur) n'est possible que par Exchange Messaging avec un processeur auquel appartient la mémoire adressable.

Une organisation similaire se caractérise par un certain nombre d'avantages. Premièrement, lors de l'accès à des données, il n'y a pas de concurrence pour le bus ou les commutateurs: chaque processeur peut utiliser complètement la largeur de bande passante avec sa propre mémoire locale. Deuxièmement, l'absence de pneu commune signifie qu'il n'ya pas de restrictions connexes sur le nombre de processeurs: la taille du système ne limite que le réseau combine les processeurs. Troisièmement, le problème de la cohérence de cache est supprimé. Chaque processeur a le droit de modifier indépendamment ses données sans se soucier de la coordination des copies de données dans son propre cache local avec des caches d'autres processeurs.

L'étudiant doit

connaître:

Classification du soleil;

Exemples de Soleil de différents types.

être capable de:

- sélectionnez le type de système informatique conformément à la tâche résolue.


© 2015-2019 Site
Tous droits à appartenir à leurs auteurs. Ce site ne prétend pas à la paternité, mais fournit une utilisation gratuite.
Page de création de page: 2016-07-22

Classification des systèmes MKMD

Dans le système MKMD, chaque élément de processeur (PE) effectue son programme suffit indépendamment de l'autre PE. Dans le même temps, les éléments de processeur doivent en quelque sorte interagir les uns avec les autres. La différence de méthode de cette interaction détermine la division conditionnelle des systèmes IMD sur l'aéronef avec une mémoire partagée et un système avec une mémoire distribuée (Fig. 5.7).

Dans les systèmes de mémoire générale, caractérisés comme très liés, il existe une mémoire de données partagée et des commandes disponibles pour tous les éléments de processeur à l'aide d'un bus commun ou d'un réseau de composés. Ces systèmes sont appelés multiprocesseurs. Ce type comprend des multiprocesseurs symétriques (UMA (SMP), un multiprocesseur symétrique, des systèmes avec accès à la mémoire inhomogène (Numa, un accès à la mémoire non uniforme) et des systèmes, avec une mémoire dite locale au lieu de la mémoire cache (COMA, uniquement l'accès mémoire) .

Si tous les processeurs ont un accès égal à tous les modules de mémoire et tous les périphériques d'E / S et que chaque processeur est interconnecté avec d'autres processeurs, un tel système s'appelle un système SMP. Dans les systèmes de mémoire générale, tous les processeurs ont l'égalité des chances d'accès à un seul espace d'adresses. Une seule mémoire peut être construite en tant que principe de bloc unique ou modulaire, mais la deuxième option est généralement pratiquée.

SMP Systems Reportez-vous à l'architecture UMA. Systèmes de calcul avec mémoire partagée, où l'accès de tout processeur à la mémoire est effectué uniformément et prend le même temps, appelé systèmes d'accès uniforme à la mémoire UMA (accès mémoire uniforme).

Du point de vue des niveaux de mémoire utilisée dans l'architecture UMA, il existe trois options pour la construction d'un multiprocesseur:

Classique (seulement avec la mémoire principale générale);

Avec un cache local supplémentaire pour chaque processeur;

Avec une mémoire tampon locale supplémentaire pour chaque processeur (Fig. 5.8).

Du point de vue de la méthode d'interaction des transformateurs avec des ressources communes (mémoire et STB), dans l'affaire général allouée espèce suivante UMA Architectures:

Avec un pneu total et une séparation temporaire (7.9);

Avec le commutateur de coordonnées;

Basé sur des réseaux à plusieurs étages.

L'utilisation d'un seul pneu limite la taille du multiprocesseur UMA à 16 ou 32 processeurs. Pour obtenir une taille plus grande, un autre type de réseau de communication est requis. Le schéma composé le plus simple est l'interrupteur de coordonnées (Fig. 5.10). Les commutateurs de coordonnées sont utilisés pendant de nombreuses décennies pour connecter un groupe de lignes entrantes avec un certain nombre de lignes sortantes arbitrairement.

Le commutateur de coordonnées est un réseau non bloquable. Cela signifie que le processeur sera toujours associé à le bloc souhaité Mémoire, même si une sorte de ligne ou de nœud est déjà occupé. De plus, aucune planification préalable n'est requise.


Les commutateurs de coordonnées sont entièrement applicables aux systèmes de taille moyenne (Fig. 5.11).


Sur la base des commutateurs 2x2, vous pouvez créer des réseaux à plusieurs étages. Un des options possibles - Réseau OMEGA (Fig. 5.12). Pour N processeurs et n modules de mémoire, log 2 n pas sont traités, N / 2 commutateurs pour chaque étape, c'est-à-dire (n / 2) logement 2 N Commutateurs pour chaque étape. C'est beaucoup mieux que n 2 nœuds (points d'intersection), en particulier pour la grande n.

La taille des multiprocesseurs UMA avec un bus est généralement limitée à plusieurs dizaines de processeurs et pour coordonner les multiprocesseurs ou les multiprocesseurs avec des commutateurs, le matériel est requis et ils ne sont pas beaucoup plus importants. Pour obtenir plus de 100 processeurs, vous avez besoin d'un accès de mémoire différent.

Pour une plus grande évolutivité des multiprocesseurs, une architecture avec un accès inhomogène à la mémoire numa est adaptée à (accès à la mémoire non uniforme). Outre les multirocesseurs UMA, ils fournissent un seul espace d'adresse pour tous les processeurs, mais contrairement aux machines UMA, l'accès aux modules de mémoire locaux est plus rapide que retiré.

Dans le cadre du concept NUMA, les approches désignées par les abréviations NC-NUMA et CC-NUMA sont en cours de mise en œuvre.

Si l'heure d'accès à la mémoire distante n'est pas masquée (car le cache est manquant), un tel système s'appelle NC-NUMA (pas de cache numa numa-numa sans mise en cache) (Fig. 5.13).

S'il y a des caches congés, le système s'appelle CC-NUMA (architecture de mémoire non uniforme cohérente - Numa avec cache convenue) (7.14).


Depuis la création d'un fond d'ordinateur NEYMANAN MAIN mémoire dans système d'ordinateur Il est organisé comme linéaire (unidimensionnel) espace adressableconsistant en une séquence de mots et des octets plus tard. De même organisé et externe mémoire. Bien qu'une telle organisation reflète les caractéristiques du matériel utilisé, elle ne correspond pas à la méthode que les programmes sont généralement créés. La plupart des programmes sont organisés sous forme de modules, dont certains sont inchangés (en lecture seule, uniquement pour l'exécution), tandis que d'autres contiennent des données pouvant être modifiées.

Si un système opérateur et matériel Peut fonctionner efficacement avec les programmes utilisateur et les données représentés par des modules, cela procure un certain nombre d'avantages.


  1. Les modules peuvent être créés et compilés indépendamment l'un de l'autre, tandis que toutes les références d'un module à un autre sont autorisées par le système pendant l'opération de programme.

  2. Différents modules peuvent recevoir différents degrés de protection (en lecture seule, seule exécution) en raison de la surcharge très modérée.

  3. Il est possible d'appliquer le mécanisme qui fournit le partage de modules avec des processus différents (pour le cas de coopération des processus dans les travaux sur une tâche).
Mémoire - le plus importantressource Système informatique nécessitant une gestion efficace. Malgré le fait que ces jours-ci mémoire Moyen ordinateur de famille dans des milliers de fois mémoire grands ordinateurs des années 70, les programmes augmentent de taille plus rapidement que mémoire. Suffit de dire que seulement système opérateur Il faut des centaines de MB (par exemple, les fenêtres2000 - Jusqu'à 30 millions de lignes), sans parler des applications et des bases de données pouvant occuper des dizaines et des centaines de GB dans des systèmes informatiques.

Law parakinson's Parakinson Law dit: "Les programmes sont en expansion, cherchant à remplir la totalité de la mémoire disponible pour les soutenir. (On a dit à propos de OS). Idéalement, les programmeurs souhaitent avoir une taille et une vitesse illimitées mémoirequi serait non volatile, c'est-à-dire J'ai conservé votre contenu lorsque l'électricité est éteinte, ainsi que cela en vaudrait la peine. Cependant, il n'y a toujours pas de mémoire de ce type. Dans le même temps, à n'importe quel stade du développement de la technologie de production des dispositifs de stockage, les relations suffisamment stables sont valables:


  • plus l'heure d'accès, les bits les plus chers;

  • plus le conteneur est élevé, plus le coût du bit;

  • plus le conteneur est élevé, plus l'heure d'accès.
Trouver productionde la situation émergente, il est nécessaire de compter sur les composants ou la technologie individuels, mais de construire une hiérarchie de dispositifs de stockage représentés à la Fig. 6.1. Lors du déplacement de gauche à droite, ce qui suit se produit:

  • le coût du bit est réduit;

  • augmente la capacité;

  • heure d'accès augmente;

  • la fréquence des références de processeur à la mémoire est réduite.

Figure. 6.1.Hiérarchie de la mémoire

Supposer cPU Il a accès à la mémoire de deux niveaux. Au premier niveau, il contient des mots E 1, et il est caractérisé par l'heure d'accès T 1 \u003d 1 NS. À ce niveau cPU Peut contacter directement. Cependant, si nécessaire pour obtenir motAu deuxième niveau, il doit d'abord être transféré au premier niveau. Il est transmis non seulement le nécessaire mot, mais bloc de donnéescela contient mot. Depuis les adresses auxquelles cPU, ont tendance à être collectés en groupes (cycles, sous-routins), cPU Accès à un petit ensemble de commandes répétitif. Ainsi, le fonctionnement du processeur avec le bloc de mémoire nouvellement reçu passera assez longtemps.

Note par t 2 \u003d 10 ns temps pour faire appel au deuxième niveau de mémoire et à travers p - attitude Nombres mots nécessaires Dans la mémoire rapide au nombre de tous les appels. Laissez dans notre exemple p \u003d 0,95 (c'est-à-dire 95% des appels tombèrent rapidement mémoirec'est assez réel), alors la moyenne temps d'accès Vous pouvez écrire en mémoire comme suit:

T cf \u003d 0,95 * 1NC + 0,05 * (1NC + 10NS) \u003d 1,55NS

Ce principe peut être appliqué non seulement à la mémoire avec deux niveaux. Vraiment et arrive. La quantité de RAM affecte considérablement la nature du processus de calcul, car elle limite le nombre de programmes en cours d'exécution simultanément, c'est-à-dire Niveau de multiprogrammation. Si nous supposons que le processus contient une partie de son temps en attente de l'achèvement exploitation E / S, le degré de chargement Z CPU (CPU) dans le cas idéal sera exprimé par dépendance

Z \u003d 1 - p n, où n est le nombre de processus.

En figue. 6.2 Dépendance Z \u003d P (N) Pour un temps différent en attente de l'achèvement exploitation E / S (20%, 50% et 80%) et le nombre de processus N. Un grand nombre de tâches nécessaires à la charge élevée du processeur nécessite une grande quantité de RAM. Dans des conditions, lorsqu'un niveau acceptable de multiprogrammation de la mémoire disponible n'est pas suffisant, une méthode d'organisation d'un processus de calcul a été proposée, dans laquelle des images de certains processus sont entièrement ou partiellement déchargées sur disque.

De toute évidence, il est logique de décharger temporairement les processus inactifs en prévision de toutes les ressources, y compris la prochaine quantum du temps du processeur central. Au moment où il passe file d'attente effectuer un processus déchargé, son image est renvoyée du disque sur le fonctionnement. mémoire. S'il est trouvé qu'il n'y a pas assez d'espace libre dans la RAM, alors disque Un autre processus est déchargé.

Une telle substitution ( virtualisation) La mémoire de disque RAM vous permet d'augmenter le niveau de multiprogrammage, car la quantité de RAM n'est maintenant pas si difficile limite le nombre de processus simultanément effectués. Dans le même temps, la quantité totale de RAM occupée par des processus peut dépasser de manière significative la quantité disponible de RAM.

Dans ce cas, le programmeur d'application fournit un fonctionnement virtuel mémoire, dont la taille est beaucoup supérieure au réel mémoire Les systèmes et se limitent aux options permettant de traiter le processus utilisé (sur le PC basé sur Pentium 2 32 \u003d 4 Go). Généralement virtuel (apparent) appelé ressourceAvec les propriétés (dans ce cas, le volume grand volume de OP), qui n'est en réalité pas.

Virtualisation La RAM est effectuée par un ensemble de matériel et de logiciels du système informatique (systèmes de processeur et de système d'exploitation) automatiquement sans participation de programmeur et n'affecte pas la logique de l'application.

Virtualisation La mémoire est possible sur la base de deux approches possibles:


  • Échange - Les images des processus sont déchargées sur le disque et sont retournées à rAM pleinement;

  • mémoire virtuelle ( mémoire virtuelle.) - Une partie des images (segments, pages, blocs, etc.) Les processus sont déplacés entre la RAM et le disque.
Inconvénients du swap:

  • la redondance des données transférées et donc le ralentissement du système et l'utilisation de la mémoire inefficace;

  • l'incapacité de télécharger le processus dont l'espace virtuel dépasse la mémoire libre disponible.
Dignité Svopling par comparer S. mémoire virtuelle - plus petit dépenses Temps de convertir des adresses dans les codes de programme car il est fait une fois lorsqu'il est chargé du disque dans mémoire (Cependant, cet avantage peut être insignifiant, car il est effectué à la charge suivante, seule une partie du code et convertir complètement le code peut ne pas être).

Mémoire virtuelle n'a pas de lacunes spécifiées, mais son problème clé est de transformer des adresses virtuelles en physique (pourquoi ce problème sera clair, mais aussi longtemps qu'il est possible de noter que dépenses temps à ce processus, si vous n'adoptez pas de mesures spéciales).

Concept de mémoire virtuelle

Dans la machine virtuelle avec la mémoire virtuelle, l'espace d'adressage (AP) du processus (image de processus) pendant l'exécution est stocké dans la mémoire externe de l'ordinateur et est chargé dans une mémoire réelle dans des pièces de manière dynamique si nécessaire sur tout espace libre de ROP. Cependant, le programme ne sait rien à ce sujet, écrit et exécuté comme s'il est complètement dans Rop.

La mémoire virtuelle modélise la RAM dans la mémoire externe.

Le mécanisme d'affichage des adresses virtuelles et réelles établit entre eux et s'appelle conversion d'adresse dynamique(DPA ).

L'ordinateur agit déjà comme un périphérique logique, pas une machine physique avec des caractéristiques uniques. DPA est pris en charge sur le micrologiciel du matériel. Dans MP Intel, en commençant par un processeur 386, la mémoire virtuelle est prise en charge.

Une telle procédure est effectuée pour les ordinateurs de la CE - un numéro 2 et plus, pour les ordinateurs CM, pour IBM PC - I386 et supérieur.

Lors de la gestion de la mémoire virtuelle, les adresses virtuelles adjacentes ne seront pas nécessairement des adresses réelles adjacentes (condition physique artificielle). Le programmeur est exempté de la nécessité de prendre en compte le placement de ses procédures et de ses données dans la ROP. Il a la possibilité d'écrire des programmes de la manière la plus naturelle, de ne travailler que les détails de l'algorithme et de la structure du programme, ignorant les caractéristiques spécifiques de la structure du matériel.

Le mécanisme DPA suppose que le maintien des tables montrant quelles cellules du VP à l'heure actuelle sont dans la rop et partout. Étant donné que l'affichage individuel des éléments d'information (sobre ou biffe) n'a pas de sens (puisque les tables d'affichage d'adresses nécessiteraient plus que des processus), les adresses sont affichées au niveau des blocs OP.

Image 1. Conversion d'adresse dynamique

Problème:quelle partie des processus à conserver dans l'OP, à certains moments de temps, poussant des zones de la corde et placer les autres.

Une autre question doit être abordée: Comment faire la taille du bloc?

Une augmentation de la taille du bloc entraîne une diminution de la taille de la table d'affichage du bloc, mais augmente le temps d'échange et, au contraire, une diminution de la taille du bloc entraîne une augmentation des tables et une diminution. dans le temps d'échange avec la mémoire externe.

Les blocs peuvent être une taille fixe (pages) et une taille alternée (segments). À cet égard, il y a quatre façons d'organiser la mémoire virtuelle:

1. Organisation dynamique de la page.

2. une organisation de segment.

3. Organisation combinée de la page de segments.

4. Organisation de page de niveau de DVUHRON.

Les adresses virtuelles dans les systèmes de page et de segment sont à deux composants et sont une paire ordonnée (P, D), où p. - numéro de bloc (pages ou segment), dans lequel un élément est situé et rÉ. - Déplacement par rapport à l'adresse initiale de ce bloc. Transformation de l'adresse virtuelleV \u003d (p, d) à l'adresse de la mémoire réeller Il est effectué comme suit. Lorsque vous activez le processus suivant, l'adresse du processus d'affichage des blocs de ce processus est chargée dans un registre spécial de processeur. Conformément au numéro de bloc p. Dans la table de mappage de blocs, une chaîne est lue dans laquelle la correspondance est définie entre les nombres de pages virtuelles et physiques pour les pages chargées dans la RAM ou une marque est faite que la page virtuelle est déchargée sur le disque. De plus, la table de page contient des informations de contrôle, telles qu'un signe de modification d'une page, un signe de sans prétention (déchargement des pages peut être interdite), un signe d'accès à la page (utilisé pour compter le nombre d'appels pour une certaine période. de temps) et d'autres données générées et utilisées par la mémoire virtuelle du mécanisme. À l'adresse physique de lecture du bloc sélectionné, la taille de déplacement est ajoutée. rÉ. et l'adresse réelle requise est calculée.

Figure 2.Convertir une adresse virtuelle dans l'adresse de mémoire réelle

Considérons quelle est la stratégie de gestion de la mémoire virtuelle? De même, il existe trois catégories de stratégies pour contrôler la pop pour contrôler VP, avec l'objectif existant de l'attente des pages et n'a utilisé que des blocs dans la ROP.

Stratégie de saut Définir lorsque vous devez réécrire une page ou un segment de la mémoire externe en op.

mais) apparaissant sur demande- le système s'attend à des liens vers une page / segment du processus exécutif (interruption de l'absence d'une page);

arguments pour:


  • le programme d'exécution du programme est probablement impossible à prédire;

  • garantie d'emplacement dans OP uniquement des pages requises;

  • les frais généraux sur la définition des pages requises sont minimes;
arguments contre:

  • podachka Un bloc entraîne une augmentation du temps d'attente total.
b) pauvreté proactiveil suppose que le système peut prévoir la nécessité d'utiliser une autre page / segment. Si la probabilité d'appel est élevée et qu'il y a un op gratuit, les blocs correspondants sont tordus dans l'OP.

Dignité: Réduit le temps d'attente.

Actuellement, la vitesse d'équipement augmente et des solutions non optimales ne conduisent pas à une diminution de l'efficacité des systèmes informatiques.

Stratégie d'hébergement déterminer où placer la page / segment entrant. Dans la page Systèmes - Trivial: Dans n'importe quel bloc libre (la page a une taille fixe). Dans les systèmes de segment, les mêmes stratégies que pour le REAL OP (dans la première zone appropriée, dans le plus approprié, dans le moins approprié).

Stratégie de pauvreté (substitution), Déterminer quelle page / segment est supprimé de l'OP pour libérer l'emplacement de la page entrante.

Voici le problème principal " slobski", dans lequel la page poussée au moment suivant doit être repliée à nouveau dans ROP.

Considérez les procédures de détermination des blocs pour pousser de l'OP.

mais) tirer la page aléatoire- dans les systèmes réels ne s'applique pas;

b) pousser la première page (FIFO. - file d'attente). Pour la mettre en œuvre, vous devez installer des balises de page temporaires.

Argument: Les pages ont déjà eu la possibilité d'utiliser votre chance.

En fait: Très susceptible de remplacer les pages activement utilisées, car la recherche de la page pendant une longue période peut signifier qu'elle est constamment opérationnelle. Par exemple, Editeur de texte utilisé.

dans) tirant plus longtemps que toutes les pages inutilisées.

Pour mettre en œuvre, vous devez implémenter des balises temporaires mises à jour. Argument heuristique: - Le passé récent est un bon gardien pour l'avenir.

Inconvénient - Coûts importants: étiquettes de temps de mise à jour constantes.

ré) pousser les pages moins fréquemment utilisées - suppose la présence de pages (moins intensivement que les balises de temps mis à jour). Intuitivement justifié, mais peut ne pas être rationnellement.

e) tirer non utilisé ces derniers pages - Algorithme de séchage avec de petits coûts. Il est mis en œuvre par deux bits matériels par page:

1. L'appel 0 - était

1 - pas.

2. Reconnaissance de la modification de l'enregistrement 0 - inchangé.

1 - changé.

Les options suivantes pour les combinaisons sont possibles. { 00.10 01,11). S'il n'y avait pas de changement sur la page, vous pouvez simplement réécrire la page et ne pas enregistrer sur le disque.

Avez-vous aimé l'article? Partager avec des amis: