Logiciel du système informatique ppt. Logiciel PC

Obligatoire

La traduction et les étapes ultérieures de préparation d'un programme à l'exécution sont le processus de conversion d'un programme écrit dans un langage formel en un autre système formel - une architecture informatique, dans laquelle il peut être exécuté (interprété). Pour comprendre ce processus, ainsi que les différences qui existent dans les différents langages de programmation, le concept de liaison est introduit, ainsi que délai de reliure.

La liaison est le processus d'établissement de correspondance entre des objets et leurs propriétés dans un programme dans un langage formel (opérations, instructions, données) et des éléments de l'architecture informatique (commandes, adresses).

Délai de liaison La phase de préparation du programme à l'exécution (traduction, liaison, chargement) au cours de laquelle cette action est effectuée est appelée en conséquence. Diverses caractéristiques le même objet (par exemple, une variable) peut être associé à différents éléments de l'architecture à des moments différents, c'est-à-dire que le processus de liaison n'est pas simultané.

Logiciel système

Délais de liaison possibles

Lors de la définition de la langue ; lors de l'implémentation d'un compilateur ;

pendant la diffusion, notamment :

lorsque le préprocesseur (macroprocesseur) est en cours d'exécution

lors de l'analyse lexicale, syntaxique et sémantique, de la génération et de l'optimisation du code ;

pendant la mise en page ; pendant le chargement du programme ;

lors de l'exécution du programme, notamment : lors de l'entrée dans un module (procédure, fonction) ; à tout moment de l'exécution du programme.

Logiciel système

Liaison en int a,b ; …a+b

Type de variable int - une variable entière dans un mot machine de longueur standard (représentation entière signée, code supplémentaire), est associé à une forme similaire de représentation des données dans un ordinateur lors de la définition d'un langage.

La dimension spécifique de la variable int est déterminée par l'implémentation du compilateur correspondant.

Le nom a peut être défini dans une construction de la forme

#définir un 0x11FF . Dans ce cas, le nom (pseudo-variable) est associé à sa valeur dans la première phase de traduction - dans le préprocesseur.

Logiciel système

Liaison en int a,b ; …a+b

Si une variable est définie de la manière habituelle comme int a; puis la liaison d'une variable à son type correspondant se produit lors de la traduction (lors de la phase d'analyse sémantique).

Si une variable est définie comme externe (globale, en dehors du corps de la fonction), alors le sens de sa traduction est de lui allouer de la mémoire dans le segment de données du programme, qui est créé pour le module (fichier) actuel. Dans le même temps, la liaison de la mémoire distribuée à un mémoire vive réalisé en plusieurs étapes :

Logiciel système

Liaison en int a,b ; …a+b

lors de la traduction, la variable est liée à une adresse relative dans le segment de données du module objet (c'est-à-dire que son emplacement est fixé uniquement par rapport au début du module).

Lors de la liaison, les segments de données et de commandes de différents modules d'objet sont combinés en un seul fichier de programme, qui est une image mémoire du programme. Dans celui-ci, la variable reçoit déjà une adresse relative dès le début de l'ensemble du programme.

Lorsqu'un programme est chargé dans une certaine zone mémoire, il peut ne pas se trouver au tout début de cette zone. Dans ce cas, les adresses des variables spécifiées en adresses relatives dès le début du module de programme sont liées aux adresses mémoire, en tenant compte du mouvement du module de programme.

Logiciel système

Liaison en int a,b ; …a+b

si le programme ne s'exécute pas dans la mémoire physique, mais dans la mémoire virtuelle, le processus de chargement peut être légèrement différent. Module logiciel conditionnellement considéré comme étant chargé dans un espace d'adressage virtuel (avec ou sans déplacement de l'ensemble du programme et de ses segments individuels). Le chargement proprement dit du programme en mémoire est effectué déjà pendant le fonctionnement du programme par parties (segments, pages), et la correspondance (ou la liaison) des adresses virtuelles et physiques est effectuée dynamiquement par le système d'exploitation à l'aide du matériel approprié.

Logiciel système

Liaison en int a,b ; …a+b

Si une variable est définie comme automatique (locale dans le corps d'une fonction ou d'un bloc), alors elle est placée sur la pile du programme :

lors de la traduction, sa dimension est déterminée et des commandes sont générées qui lui réservent de la mémoire sur la pile au moment de l'entrée dans le corps de la fonction (bloc). Autrement dit, pendant le processus de traduction, la variable est associée uniquement à une adresse relative sur la pile du programme ;

La liaison d'une variable locale à son adresse dans le segment de pile s'effectue lors de son exécution au moment de l'entrée dans le corps de la fonction (bloc). Grâce à cette méthode de liaison en fonction récursive Il existe autant d'"instances" de variables locales que de nombre de fois que la fonction s'appelle.

Logiciel(logiciel) - un ensemble de programmes exécutés par un système informatique. Le logiciel fait partie intégrante Système d'ordinateur. C'est une suite logique des moyens techniques. Le champ d'application d'un ordinateur particulier est déterminé par le logiciel créé pour celui-ci. L’ordinateur lui-même ne connaît aucune application. Toutes ces connaissances sont concentrées dans des programmes exécutés sur des ordinateurs. Un logiciel (logiciel) est un ensemble de programmes exécutés par un système informatique. Le logiciel fait partie intégrante d'un système informatique. C'est une suite logique des moyens techniques. Le champ d'application d'un ordinateur particulier est déterminé par le logiciel créé pour celui-ci. L’ordinateur lui-même ne connaît aucune application. Toutes ces connaissances sont concentrées dans des programmes exécutés sur des ordinateurs.


Tous les programmes exécutés sur un ordinateur peuvent être divisés en trois types : les programmes d'application qui fournissent directement le travail requis par les utilisateurs ; programmes d'application programmes système conçus pour contrôler le travail système informatique, remplissent diverses fonctions auxiliaires, par exemple : programmes système de gestion des ressources informatiques ; créer des copies des informations utilisées ; vérifier la fonctionnalité des appareils informatiques; émettre des informations de référence sur l'ordinateur, etc. ; systèmes logiciels instrumentaux qui facilitent le processus de création de nouveaux programmes informatiques. systèmes logiciels instrumentaux




Le programme d'application est n'importe quel programme spécifique, contribuant à la solution de tout problème dans un domaine problématique donné. En revanche, le système d'exploitation ou le logiciel ne contribue pas directement aux besoins de l'utilisateur final. Les programmes d'application peuvent être utilisés soit de manière autonome, c'est-à-dire pour résoudre une tâche donnée sans l'aide d'autres programmes, soit dans le cadre de systèmes ou de progiciels logiciels.




Les éditeurs de documents sont le type le plus utilisé programmes d'application. Ils vous permettent de préparer des documents beaucoup plus rapidement et plus facilement qu'avec une machine à écrire. Les éditeurs de texte peuvent fournir diverses fonctions, à savoir : Les processeurs de tableaux sont un outil pratique pour effectuer des calculs comptables et statistiques. Chaque package contient des centaines de fonctions mathématiques intégrées et d'algorithmes de traitement de données statistiques. De plus, il y a des outils puissants pour connecter des tables entre elles, créer et éditer des bases de données électroniques. Conception Assistée par Ordinateur (CAO) ou Conception Assistée par Ordinateur progiciel, destiné à la création de dessins, de documentation de conception et/ou technologique et/ou de modèles 3D. Parmi les systèmes de petite et moyenne taille dans le monde, le système AutoCad d'AutoDesk est le plus populaire. Forfait domestique avec des fonctions similaires - Compass


Les éditeurs graphiques vous permettent de créer et de modifier des dessins. Les éditeurs les plus simples offrent la possibilité de dessiner des lignes, des courbes, des zones de couleur de l'écran, de créer des inscriptions dans diverses polices, etc. La plupart des éditeurs vous permettent de traiter les images obtenues à l'aide de scanners. Représentants des éditeurs graphiques – Programmes Adobe Photoshop, Corel Draw. Les systèmes de gestion de bases de données (SGBD) vous permettent de gérer de grandes quantités d'informations - des bases de données. Les systèmes logiciels de ce type vous permettent de traiter des tableaux d'informations sur un ordinateur, de fournir des saisies, des recherches, de trier une sélection d'enregistrements, de compiler des rapports, etc. Les représentants de cette classe de programmes sont : Microsoft Access, Clipper, Paradoxe, FoxPro. Les systèmes intégrés combinent les capacités d'un système de gestion de base de données, d'un tableur, d'un éditeur de texte, d'un système graphique professionnel et parfois d'autres fonctionnalités. En règle générale, tous les composants d'un système intégré ont une interface similaire, ce qui facilite l'apprentissage de leur utilisation. Représentants de systèmes intégrés – Forfait Microsoft Bureau et son analogique gratuit Bureau ouvert.


Les programmes système fonctionnent avec les programmes d'application et servent à gérer les ressources informatiques processeur central, mémoire, entrée-sortie. Ce sont des programmes usage commun, qui sont destinés à tous les utilisateurs d’ordinateurs. Le logiciel système est conçu pour permettre à un ordinateur d’exécuter efficacement des programmes d’application.


Le logiciel système peut être divisé en : Logiciel de base - un ensemble minimum de logiciels qui assure le fonctionnement d'un ordinateur. Le logiciel de base comprend : le système d'exploitation ; obus opérationnels(texte et graphique); système d'exploitation réseau. Logiciel de service de programme et systèmes logiciels, qui étendent les capacités du logiciel de base et organisent un environnement utilisateur plus pratique - les utilitaires.


Un système d'exploitation est un complexe d'éléments interconnectés programmes système, dont le but est d’organiser l’interaction de l’utilisateur avec l’ordinateur et l’exécution de tous les autres programmes. Le système d'exploitation peut être appelé une extension logicielle du dispositif de contrôle de l'ordinateur. Le système d'exploitation cache à l'utilisateur des détails complexes et inutiles d'interaction avec le matériel, formant une couche entre eux. De ce fait, les gens sont libérés du travail très laborieux consistant à organiser l'interaction avec l'équipement informatique. De plus, c'est le système d'exploitation qui offre la possibilité de configurer individuellement un ordinateur : le système d'exploitation détermine à partir de quels composants l'ordinateur sur lequel il est installé est assemblé et se configure pour fonctionner avec ces composants. Les shells sont des programmes conçus pour faciliter le travail avec des systèmes logiciels, comme DOS. Ils transforment la commande gênante interface utilisateur dans une interface graphique ou de type menu conviviale. Les shells offrent à l'utilisateur un accès pratique aux fichiers et à des services étendus. Les systèmes d'exploitation réseau sont un ensemble de programmes qui assurent le traitement, la transmission et le stockage des données sur le réseau. Network OS offre aux utilisateurs différents types de services réseau (gestion de fichiers, E-mail, processus de gestion de réseau, etc.), prend en charge le travail dans les systèmes d'abonnés.


Utilitaires (lat. utilitas Benefit) - soit étendez et complétez les capacités correspondantes du système d'exploitation, soit résolvez des tâches importantes indépendantes. Décrivons brièvement certains types d'utilitaires : programmes de surveillance, de test et de diagnostic ; programmes de pilote d'archiveurs ; copies de sauvegarde informations sur les programmes pour les programmes d'optimisation de la gestion de la mémoire et de contrôle de la qualité espace disque;programmes d'optimisation et de contrôle qualité de l'espace disque ; programmes de communication, etc.


Programmes de surveillance, de test et de diagnostic utilisés pour vérifier le bon fonctionnement des appareils informatiques et pour détecter les dysfonctionnements pendant le fonctionnement ; indiquer la cause et l'emplacement du dysfonctionnement ; des programmes pilotes qui étendent les capacités du système d'exploitation pour gérer les périphériques d'entrée/sortie, la RAM, etc. ; À l'aide de pilotes, vous pouvez connecter de nouveaux appareils à votre ordinateur ou utiliser ceux existants de manière non standard ; programmes de compression (archiveurs), qui permettent, grâce à l'utilisation d'algorithmes spéciaux de conditionnement d'informations, de compresser des informations sur des disques, c'est-à-dire créez des copies plus petites de fichiers et combinez des copies de plusieurs fichiers dans un seul fichier d'archive. L'utilisation de programmes d'archivage est très utile lors de la création d'une archive de fichiers, car dans la plupart des cas, il est beaucoup plus pratique de les stocker après les avoir préalablement compressés avec des programmes d'archivage. Les représentants de ces programmes sont WinRar et WinZip.


Programmes antivirus conçu pour prévenir les infections virus informatiques et éliminer les conséquences d'une infection virale ; Les représentants de la famille des programmes antivirus sont Kaspersky Antivirus, DrWeb, Norton Antivirus. les programmes de création de copies de sauvegarde des informations vous permettent de copier périodiquement une information important situé sur le disque dur de l’ordinateur vers un support supplémentaire. Représentants du programme Copie de réserve-APBackUp Acronis vrai Programmes d'image pour l'optimisation et le contrôle de la qualité de l'espace disque ; programmes de communication conçus pour organiser l'échange d'informations entre ordinateurs. Ces programmes vous permettent de transférer facilement des fichiers d'un ordinateur à un autre lors de la connexion de leurs ports série avec un câble. Un autre type de programmes de ce type offre la possibilité de connecter des ordinateurs via réseau téléphonique(si vous avez un modem). Ils permettent d'envoyer et de recevoir des messages téléfax. Représentants des programmes de communication – Venta Fax, Cute FTP. programmes de gestion de la mémoire qui permettent une utilisation plus flexible de la RAM ;


Instrumental logiciel Il s'agit de programmes utilisés dans le développement, l'ajustement ou le développement d'autres programmes d'application ou système. Les outils logiciels peuvent fournir une assistance à toutes les étapes du développement logiciel. Dans leur objectif, ils sont proches des systèmes de programmation.systèmes de programmation.


Un système de programmation est un système permettant de développer de nouveaux programmes dans un langage de programmation spécifique. Systèmes modernes Les logiciels de programmation fournissent généralement aux utilisateurs des outils de développement de programmes puissants et pratiques. Ceux-ci incluent : un compilateur ou un interprète ; un compilateur ou un interprète ; des outils de création et d'édition de textes de programmes ; de vastes bibliothèques de programmes et de fonctions standard ; programmes de débogage, c'est-à-dire des programmes qui aident à trouver et à corriger les erreurs dans le programme ; de puissantes bibliothèques graphiques ; utilitaires pour travailler avec les bibliothèques intégrées bureau d'aide; d'autres particularités.


Traducteur (anglais) traducteur) est un programme de traduction. Il convertit un programme écrit dans l'un des langages haut niveau, dans un programme composé d'instructions machine. Les traducteurs sont implémentés en tant que compilateurs ou interprètes. En termes de travail, le compilateur et l'interprète sont très différents. Le compilateur (anglais : compiler, compiler, collector) lit l'intégralité du programme, le traduit et crée une version complète du programme en langage machine, qui est ensuite exécutée. L'interprète (anglais : interprète, interprète) traduit et exécute le programme ligne par ligne. Une fois qu'un programme est compilé, ni le programme source ni le compilateur ne sont plus nécessaires. Parallèlement, le programme traité par l'interprète doit être retraduit en langage machine à chaque lancement du programme. Les programmes compilés s'exécutent plus rapidement, mais ceux interprétés sont plus faciles à corriger et à modifier. Systèmes de programmation populaires – Turbo Basic, Quick Basic, Turbo Pascal, Turbo C. Borland C++, Borland Delphi, etc.


Aujourd’hui, la plupart des systèmes évoluent sans problème vers le Web. Le World Wide Web devient addictif de plus en plus d'applications. Les bases de données acquièrent des interfaces utilisateur Web pour remplacer les applications de bureau précédemment disponibles. En fin de compte, on s'attend à ce que l'utilisateur final n'ait besoin que d'un navigateur Web pour pouvoir satisfaire tous les besoins logiciels possibles. Dans ce cas, l'utilisateur ne se soucie pas du système d'exploitation qui contrôle ordinateur local, l'essentiel est la fiabilité et les performances du serveur. (Par exemple, un package Microsoft Office peut être installé sur serveurs distants, et non sur les systèmes des utilisateurs finaux, mais le lancement des applications ne sera pas moins rapide que sur les PC locaux). Ainsi, tous les programmes auront la possibilité à la fois d'être exécutés localement et de être lancés à distance via le Web.

1 diapositive

La présentation de la leçon a été créée par : professeur d'informatique du MKOU "Basinskaya OOSH" Gaidukova Anna Andreevna * *

2 diapositives

Une imprimante; CPU; Clavier; Mémoire flash; Moniteur; RAM; Périphérique CD-ROM. Sans lequel des périphériques suivants l'ordinateur ne peut pas fonctionner : * *

3 diapositives

Déterminez le volume possible des supports de stockage suivants à l'aide des options de réponse proposées (1,44 Mo, 700 Mo, 120 Go, 512 Mo, 4,7 Go) : CD-R ; DVD-R ; Mémoire flash; Disquette ; Dur disque magnétique. * *

4 diapositives

Remplissez le tableau * * Appareil Action avec les informations (stockage, entrée, sortie, traitement) Processeur RAM Disque magnétique dur CD-RW Clavier Moniteur Imprimante

5 diapositives

Andrey a le jeu TETRIS sur le disque dur de son ordinateur. Son ami Kolya n'a pas un tel jeu. Que doit faire Andrey pour que Kolya puisse faire ce qu'il veut ? ordinateur de famille jouer à ce jeu (notez que l'ordinateur de Kolya n'est pas connecté à Internet) ? * *

6 diapositives

* Logiciel informatique Système d'exploitation - assure le fonctionnement commun de tous les appareils informatiques et permet à l'utilisateur d'accéder à ses ressources à l'aide de l'interface graphique du système d'exploitation. Les pilotes de périphériques sont des programmes spéciaux qui permettent de contrôler le fonctionnement des périphériques informatiques et de coordonner l'échange d'informations avec d'autres périphériques (chaque périphérique possède son propre pilote). *

7 diapositives

* Fonctions du système d'exploitation Test de composants matériels individuels, de mémoire et d'autres composants matériels Interfaçage d'un programme d'application avec du matériel (des programmes spéciaux - des pilotes sont utilisés pour cela) Utilisation d'un ordinateur en mode multiprogramme (c'est-à-dire que plusieurs programmes peuvent être exécutés simultanément), tandis que le Le système d'exploitation surveille la répartition des ressources internes et la séquence d'exécution des commandes Pour la commodité de l'utilisateur travaillant avec l'ordinateur, une interface est utilisée - un ensemble d'outils et de règles pour l'interaction entre un ordinateur et une personne *.

8 diapositives

Diapositive 9

* Installation du système d'exploitation Installation du système d'exploitation - les fichiers du système d'exploitation sont copiés du disque de distribution vers Disque dur ordinateur. Les fichiers du système d'exploitation sont stockés dans la mémoire à long terme sur le disque dur, appelé lecteur système. Le système d'exploitation, comme d'autres programmes, peut être exécuté s'il se trouve dans la RAM de l'ordinateur. Par conséquent, il est nécessaire de télécharger les fichiers du système d'exploitation à partir de disque système dans la RAM. *

10 diapositives

* Chargement du système d'exploitation Le chargement du système d'exploitation commence dans l'un des trois cas suivants : après : la mise sous tension de l'ordinateur ; en appuyant sur le bouton Réinitialiser unité système ordinateur; En appuyant simultanément sur la combinaison de touches du clavier : (Ctrl) + (Alt) + (Suppr) Pendant le processus de démarrage du système d'exploitation : les performances du processeur, de la mémoire et des autres périphériques sont testées ; De brefs messages de diagnostic sur le processus de test sont affichés sur l'écran du moniteur une fois le chargement du système d'exploitation terminé, l'utilisateur peut contrôler l'ordinateur à l'aide de l'interface graphique du système d'exploitation. *

11 diapositive

12 diapositives

* Programmes standards Windows Paint OS - un éditeur graphique qui vous permet de créer, d'afficher et de modifier des dessins ou des photographies numérisées. Imagerie - utilisé pour visualiser et modifier fichiers graphiques, par exemple, des dessins numériques ou des photographies numérisées. Calculatrice - une calculatrice électronique est analogue à une calculatrice manuelle ordinaire. Bloc-notes - éditeur de texte, utilisé pour créer et modifier fichiers texte format simple WordPad est un éditeur de texte utilisé pour créer et formater des fichiers texte avec un formatage complexe *

Diapositive 13

* Logiciel d'application Une application est un programme permettant de traiter des informations textuelles, graphiques, numériques, audio et vidéo, pour travailler dans réseaux informatiques sans connaître la programmation. L'application s'exécute sous un système d'exploitation spécifique. Types de candidatures : 1. Candidatures usage général(calculatrices, feuilles de calcul, texte, audio et éditeur graphique, lecteurs multimédias, bases de données, programmes de présentation, programmes de communication, etc.). 2. Candidatures but spécial (programmes de comptabilité, encyclopédies, programmes de formation, systèmes traduction automatique, systèmes de programmation, jeux d'ordinateur etc.) *


  • Le logiciel est un ensemble de programmes spéciaux qui vous permettent d'organiser le traitement de l'information à l'aide d'un PC.
  • Types de logiciels :

Logiciel système

Logiciel d'application

Systèmes de programmation (logiciel-outil)

  • Puisqu'il est impossible qu'un PC fonctionne sans logiciel, celui-ci fait partie intégrante partie intégrante n'importe quel ordinateur.

LOGICIEL SYSTÈME

Le logiciel système est un ensemble de programmes qui assurent le fonctionnement d'un ordinateur (un ensemble de programmes qui contrôlent la RAM, le processeur, appareils externes et fichiers qui dialoguent avec l'utilisateur). La partie principale du logiciel système est le système d'exploitation (OS). Le système d'exploitation a beaucoup de travail : pour ouvrir n'importe quel programme, vous devez le trouver sur le disque dur, le placer dans la RAM et l'y trouver place libre, « démarrer » le processeur pour exécuter le programme, surveiller le fonctionnement de tous les appareils pendant l'exécution du programme et, en cas de panne, effectuer des diagnostics et afficher un message à l'utilisateur.


Les systèmes d'exploitation les plus courants :


LOGICIEL SYSTÈME

Mode interactif :

Le système d'exploitation affiche une invite pour une action. En réponse, l'utilisateur émet une commande spécifique. Cela peut être une opération sur un fichier (copie, suppression), une commande de rapport date actuelle ou l'heure, etc.

Programmes de services :

Programmes de maintenance des disques (copie, formatage, « traitement », etc.) ;

Programmes de compression de fichiers disque (archiveurs) ;

Programmes pour lutter contre les virus informatiques.


LOGICIEL D'APPLICATION

Les programmes avec lesquels l'utilisateur peut résoudre ses problèmes sans recourir à la programmation sont appelés programmes d'application.

Tous les utilisateurs préfèrent disposer d'un ensemble de programmes d'application dont presque tout le monde a besoin. Elles sont appelées PROGRAMMES À USAGE GÉNÉRAL.

Ceux-ci inclus:

  • Ceux-ci inclus:

Éditeurs de texte et graphiques (vous pouvez écrire, dessiner) ;

Systèmes de gestion de bases de données (SGBD) (divers ouvrages de référence);

Des tableurs qui vous permettent d'effectuer des calculs ;

Programmes de communication (réseau) conçus pour échanger des informations avec d'autres ordinateurs connectés à un réseau informatique.


LOGICIEL D'APPLICATION

En outre, il existe un grand nombre de programmes d'application spécialisés pour activité professionnelle. On les appelle souvent

FORFAITS DE DEMANDE.

C'est par exemple :

Programmes de comptabilité,

Systèmes de conception assistée par ordinateur,

Programmes de formation dans diverses matières,

Programmes pour travailler sur divers soins médicaux

appareils (ultrasons, etc.).


Logiciels outils ou systèmes de programmation (SP)

Systèmes pour développer de nouveaux programmes dans un langage de programmation. Il s'agit d'un outil pour le travail d'un programmeur. Chaque coentreprise se concentre sur un langage de programmation spécifique.

Il existe de nombreux langages de programmation : Pascal, Fortran, SI, assembleur, etc. Dans ces langages, le programmeur écrit des programmes et, à l'aide de systèmes de programmation, les saisit dans l'ordinateur, les débogue, les teste et les exécute.


Diapositive 2

Organisation de la mémoire

La mémoire physique à laquelle le processeur a accès via le bus d'adresse est appelée mémoire vive (ou mémoire vive - RAM). La RAM est organisée comme une séquence de cellules – octets. Chaque octet possède sa propre adresse unique (son numéro), appelée physique. La plage des valeurs d'adresse physique dépend de la largeur du bus d'adresse du processeur. Pour 80486 et Pentium, cela va de 0 à 232 - 1 (4 Go). Pour les processeurs PentiumPro/II/III/IV, cette plage est plus large - de 0 à 236 - 1 (64 Go). Le processeur 8086 disposait de 1 Mo de mémoire avec un bus d'adresses de vingt bits - de 0 à 220-1.

Diapositive 3

Le matériel du processeur prend en charge deux modèles d'utilisation de la RAM : Dans le modèle segmenté, le programme se voit attribuer des zones de mémoire contiguës (segments) et le programme lui-même ne peut accéder qu'aux données situées dans ces segments. Le modèle de page peut être considéré comme une superstructure. le modèle segmenté. La principale application de ce modèle est liée à l'organisation de la mémoire virtuelle, qui permet au système d'exploitation d'utiliser un espace mémoire supérieur à la quantité de mémoire physique pour exécuter des programmes en combinant opérationnel et mémoire externe

Diapositive 4

À propos, un autre nom pour une adresse physique est une adresse linéaire. Cette dualité dans le nom est précisément due à la présence d'un modèle de page d'organisation de la RAM. Ces noms ne sont synonymes que lorsque la traduction des adresses de page est désactivée (dans mode réel la pagination est toujours désactivée). Dans le modèle de page, les adresses linéaires et physiques ont des significations différentes. Le mécanisme de gestion de la mémoire est entièrement matériel et permet : un stockage d'adresses compact dans une instruction machine une flexibilité du mécanisme d'adressage une protection des espaces d'adressage des tâches dans un système multitâche une prise en charge de la mémoire virtuelle

Diapositive 5

Dans la famille des processeurs 80x86, le choix de la méthode d'accès à la mémoire est déterminé par le mode de fonctionnement du processeur. En mode réel, le processeur ne peut accéder qu'au premier mégaoctet de mémoire, dont les adresses vont de 00000 à FFFFF en hexadécimal. Dans ce cas, le processeur fonctionne en mode programme unique (c'est-à-dire en mode ce moment il ne peut exécuter qu'un seul programme à la fois). Cependant, il peut parallèlement interrompre son exécution à tout moment et passer à la procédure de traitement d'une interruption reçue d'un des périphériques. Tout programme que le processeur exécute à ce moment-là a droit à un accès illimité à toutes les zones de mémoire situées dans le premier mégaoctet : à la RAM - pour la lecture et l'écriture, et à la ROM, bien sûr, pour la lecture uniquement. Le mode de fonctionnement réel du processeur est utilisé dans le système d'exploitation MS DOS, ainsi que dans Systèmes Windows 95 et 98 lorsqu'ils sont chargés en mode d'émulation MS DOS.

Diapositive 6

En mode protégé, le processeur peut exécuter plusieurs programmes simultanément. Dans ce cas, chaque processus (c'est-à-dire le programme en cours d'exécution) peut se voir attribuer jusqu'à 4 Go de RAM. Pour éviter l'influence mutuelle des programmes en cours d'exécution les uns sur les autres, des zones de mémoire isolées leur sont allouées. Les systèmes d'exploitation tels que MS Windows et Linux fonctionnent en mode protégé. En mode d'adressage virtuel du processeur 8086, ce dernier fonctionne effectivement en mode protégé. Pour chaque tâche, la sienne est créée machine virtuelle, qui alloue une zone mémoire isolée de 1 Mo et émule complètement le fonctionnement d'un processeur 80x86 en mode d'adressage réel. Par exemple, dans les systèmes d'exploitation Windows 2000 et XP, une machine virtuelle du processeur 8086 est créée à chaque fois que l'utilisateur démarre une fenêtre d'interpréteur de commandes (session MS DOS).

Diapositive 7

Mode d'adressage réel Caractéristiques distinctives Les mécanismes d'adressage de la mémoire physique en mode réel sont les suivants : La plage de changement d'adresse physique est de 0 à 1 Mo, puisque seuls les 20 bits de poids faible du bus d'adresse sont utilisés lors de l'adressage. La taille maximale de la mémoire adressée. l'utilisation de registres 16 bits fait 64 Ko. Pour accéder à une adresse physique spécifique, la segmentation de la mémoire est utilisée dans toute la RAM disponible, c'est-à-dire diviser l'espace d'adressage disponible en segments de 64 Ko et l'utiliser à la place d'une adresse logique physique sous la forme :, c'est-à-dire combinaisons d'adresse de début de segment et de décalage dans le segment L'adresse de début de segment de 16 bits est placée dans l'un des six registres de segment (CS, DS, ES, SS, FS ou GS) Les programmes fonctionnent directement uniquement sur le décalage de 16 bits spécifié par rapport au début du segment

Diapositive 8

Le chiffre hexadécimal le moins significatif dans l'adresse de chaque segment est zéro, c'est-à-dire l'adresse de tout segment sera toujours un multiple de 16 octets ; les limites des segments sont situées tous les 16 octets d'adresses physiques. Chacun de ces fragments de 16 octets est appelé un paragraphe.

Diapositive 9

Les adresses spécifiées dans les programmes sous la forme « segment-offset » sont automatiquement converties par le processeur en adresses linéaires de 20 bits lors de l'exécution de la commande selon le schéma suivant :

Diapositive 10

Exemple : octet donné sous la forme segment-offset : 8000:0250 en hexadécimal. Adresse logique : 8000:0250 ––––––––––––––––––––––––––––––– Segment : 80000 + Décalage : 0250 –––––– – –––––––––––––––––––––– Adresse physique : 80250 Un programme typique écrit pour la famille de processeurs 80x86 comporte généralement trois segments : code, données et pile. Lorsque le programme démarre, leurs adresses de segments de base sont chargées respectivement dans les registres CS, DS et SS. Dans les trois registres restants ES, FS et GS, le programme peut stocker des pointeurs vers des segments supplémentaires.

Diapositive 11

Inconvénients de cette organisation de la mémoire : les segments sont placés de manière incontrôlable à partir de n'importe quelle adresse divisible par 16 (puisque le contenu du registre de segments est décalé de 4 bits matériellement) et, par conséquent, le programme peut accéder à n'importe quelle adresse, y compris celles qui réellement n'existent pas ; les segments ont taille maximum Les segments de 64 Ko peuvent chevaucher d'autres segments

Diapositive 12

Mode d'adressage protégé Lors du fonctionnement en mode protégé, chaque programme peut se voir attribuer un bloc mémoire d'une taille maximale de 4 Go, dont les adresses en notation hexadécimale peuvent varier de 00000000 à FFFFFFFF. On dit que le programme se voit attribuer un espace d'adressage linéaire. En mode sécurisé, les registres de segments (CS, DS, SS, ES, FS, GS) stockent non pas des adresses de base de 16 bits de segments, mais des sélecteurs : des pointeurs vers des descripteurs de segment situés dans l'une des tables de descripteurs du système. Sur la base des informations contenues dans le descripteur, le système d'exploitation détermine les adresses linéaires des segments de programme. Il existe deux types de tables : GlobalDescriptorTable (table de descripteurs globale) et LocalDescriptorTables (tables de descripteurs locaux).

Diapositive 13

Structure du sélecteur de descripteur de segment : le descripteur se compose de 8 octets, qui incluent l'adresse de base du segment, la taille et d'autres informations :

Diapositive 14

Le descripteur 0 est illégal : il peut être chargé en toute sécurité dans le registre de segments pour indiquer que le registre de segments est actuellement indisponible, mais tenter de l'utiliser générera une interruption. Un programme typique écrit pour le mode protégé comporte généralement trois segments : code, données et pile, dont les informations sont stockées dans les trois registres de segments répertoriés ci-dessous. Le registre CS stocke un pointeur vers un descripteur de segment de code de programme. Le registre DS stocke un pointeur vers un descripteur de segment de données de programme. Le registre SS stocke un pointeur vers un descripteur de segment de pile de programme.

Diapositive 15

La conversion d'une paire sélecteur-offset en adresse physique s'effectue comme suit : Si la pagination est désactivée (via un bit dans le registre de contrôle global), l'adresse linéaire est interprétée comme une adresse physique et envoyée en mémoire pour lecture ou écriture. D'un autre côté, si la pagination est disponible, l'adresse linéaire est interprétée comme une adresse virtuelle et mappée à l'adresse physique à l'aide d'une table de pages.

Diapositive 16

En mode protégé, les modèles de mémoire sont pris en charge matériellement : FlatModel (modèle plat, solide ou linéaire) - une organisation de mémoire dans laquelle tous les segments sont mappés sur une seule zone d'adresse linéaire. Pour y parvenir, toutes les poignées de segment pointent vers le même segment de mémoire, qui correspond à l'intégralité de l'espace d'adressage physique de 32 bits de l'ordinateur. Pour un modèle plat, au moins deux handles doivent être créés, un pour les références de code et un pour les références de données.

Diapositive 17

Les descripteurs sont stockés dans une table système spéciale appelée Global Descriptor Table, ou GDT. Pour le modèle plat, chaque descripteur a une adresse de base de 0. La valeur du champ définissant la limite du segment est multipliée par le processeur par le nombre hexadécimal 1 000. Les segments peuvent couvrir toute la plage d'adresses physiques de 4 Go, ou uniquement celles adresses mappées vers mémoire physique. En définissant la limite du segment sur 4 Go, le mécanisme de segmentation empêche la levée d'exceptions pour les références mémoire qui s'étendent sur la limite du segment.

Diapositive 18

Ce modèle vous permet d'éliminer le mécanisme de segmentation de l'architecture du système, puisque toutes les opérations de mémoire accèdent à un espace mémoire commun. Du point de vue d'un programmeur, ce modèle est le plus simple à utiliser, puisqu'un seul entier de 32 bits suffit pour stocker l'adresse de n'importe quelle variable ou commande.

Diapositive 19

Modèle multisegmenté Chaque programme possède sa propre table de descripteurs de segments, appelée table de descripteurs locaux (LDT). Dans ce cas, il devient possible pour chaque processus de créer propre ensemble segments qui ne se croisent en aucune façon avec des segments d'autres processus. En conséquence, chaque segment se trouve dans un espace d’adressage isolé.

Diapositive 20

La figure montre que chaque élément de la table de descripteurs locaux définit un segment de mémoire différent. Chaque descripteur de segment précise sa longueur exacte. Par exemple, un segment commençant à l'adresse 3000 a une longueur de 2000 octets en hexadécimal car la valeur du champ descripteur de segment est 0002 et 0002x1000=2000. Par analogie, la longueur du segment commençant à l'adresse 8000 est A000. Il convient de noter que le modèle plat est implémenté comme un cas particulier de modèle segmenté, lorsque le programme accède à un segment pour lequel tout l'espace linéaire est alloué.

Diapositive 21

Paging (modèle de mémoire de page) Ce modèle est une forme de gestion de mémoire permettant de modéliser un espace d'adressage volumineux et non segmenté à l'aide d'une partie de la mémoire disque et d'un espace d'adressage fragmenté. Permet d'accéder à des structures de données plus grandes que la taille de la mémoire disponible, en les stockant en partie dans la RAM et en partie sur disque. Dans ce modèle, l'espace d'adressage linéaire est divisé en blocs de taille égale (généralement 4 Ko), appelés pages.

Diapositive 22

La figure montre une adresse linéaire divisée en trois champs : Répertoire, Page et Offset. Le champ Répertoire est utilisé comme index dans le répertoire des pages pour localiser le pointeur vers la table de pages correcte.

Diapositive 23

Le champ Page est ensuite traité comme un index dans la table des pages pour trouver l'adresse physique du bloc de page. Pour obtenir l'adresse physique de l'octet ou du mot requis, le dernier champ Offset est ajouté à l'adresse du bloc de page. En conséquence, vous pouvez facilement vous assurer que la quantité totale de RAM utilisée dans tous les programmes exécutés sur l'ordinateur dépasse la quantité de mémoire réelle de l'ordinateur. C'est pourquoi l'organisation de la mémoire des pages est souvent appelée mémoire virtuelle(mémoire virtuelle). Les performances du système de mémoire virtuelle sont assurées par programme spécial, qui fait partie du système d'exploitation appelé gestionnaire de mémoire virtuelle.

Diapositive 24

L'organisation de la mémoire de pagination résout le problème du manque de mémoire de la meilleure façon possible. Le fait est qu'avant de commencer l'exécution, tout programme doit être chargé dans la RAM, dont la taille est toujours limitée (par exemple, en raison de caractéristiques de conception prix de l'ordinateur ou du module mémoire). Les utilisateurs d'ordinateurs chargent généralement plusieurs programmes en mémoire à la fois afin de pouvoir basculer entre eux tout en travaillant (par exemple, passer d'une fenêtre à une autre). En revanche, le volume de la mémoire disque est bien supérieur au volume de la RAM de l'ordinateur, et en plus, cette mémoire est bien moins chère. Par conséquent, en utilisant la mémoire disque lors de l'utilisation de l'organisation de la mémoire paginée, l'utilisateur a l'impression qu'il dispose d'une quantité illimitée de RAM. Bien sûr, il faut payer pour tout : la vitesse d'accès de la mémoire disque est plusieurs ordres de grandeur inférieure à celle de la RAM.

Diapositive 25

Lorsqu'un programme est exécuté, les parties de sa RAM (ou de ses pages) qui ne sont pas actuellement utilisées peuvent être enregistrées en toute sécurité sur le disque. Ils disent qu'une partie de la tâche est transférée sur le disque. Dans la RAM de l'ordinateur, il est logique de sauvegarder uniquement les pages auxquelles le processeur accède activement, par exemple en exécutant certains code de programme. Si le processeur doit accéder à une page mémoire actuellement vidée sur le disque, une erreur système (ou interruption) se produit en raison d'un défaut de page. Cette erreur est traitée par le gestionnaire de mémoire virtuelle du système d'exploitation, qui trouve une page sur le disque contenant le code ou les données requises et la charge dans une zone libre de RAM.

Diapositive 26

Le thème de la protection est étroitement lié à la mémoire virtuelle. Pentium prend en charge quatre niveaux de sécurité, le niveau 0 étant le plus privilégié et le niveau 3 le moins privilégié. À chaque instant, le programme en cours se situe à un certain niveau. Chaque segment du système a également son propre niveau.

Diapositive 27

Au niveau 0 se trouve le noyau du système d'exploitation, qui gère le traitement des entrées/sorties, la gestion de la mémoire et d'autres problèmes principaux. Au niveau 1 – gestionnaire d’appels système. Les programmes utilisateur à ce niveau peuvent accéder aux procédures pour effectuer des appels système, mais uniquement à une liste de procédures spécifique et protégée. Le niveau 2 contient des procédures de bibliothèque, éventuellement partagées par plusieurs programmes en cours d'exécution. Les programmes utilisateur peuvent appeler ces procédures et lire leurs données, mais ne peuvent pas les modifier. et enfin programmes utilisateur fonctionnent au niveau 3, qui présente le degré de protection le plus bas.

Afficher toutes les diapositives

Partager