Différence entre les adresses physiques et virtuels aborder concept
C'est une re-présentation, parce que je n'obtiens pas de réponse de superuser.com. Désolé pour le malentendu.
J'ai besoin de connaître la différence entre les adresses physiques et virtuels aborder le concept des systèmes embarqués.
Pourquoi virtuel aborder le concept est mis en œuvre dans les systèmes embarqués?
Quel est l'avantage de l'adressage virtuel sur un système d'adressage physique du concept dans les systèmes embarqués?
Comment le mappage entre le virtuel s'adressant à l'adressage physique est fait dans les systèmes embarqués?
S'il vous plaît, expliquer le concept ci-dessus avec quelques exemples simples dans certains architecture simple.
- Il n'est pas bien de poster des doublons juste parce que vous n'avez pas obtenu de réponses à ce jour.
- ok. Supprimé les mêmes vieux post.
Vous devez vous connecter pour publier un commentaire.
Adressage physique signifie que votre programme ne sait réellement la véritable disposition de RAM. Lorsque vous accédez à une variable à l'adresse 0x8746b3, c'est là où il est vraiment stockées dans la mémoire RAM physique des puces.
Avec adressage virtuel, application tous les accès à la mémoire pour accéder à la page de la table, qui, ensuite, des cartes virtuelles à l'adresse physique. Ainsi, chaque application dispose de son propre "privé" de l'espace d'adresse, et aucun programme ne peut lire ou écrire dans un autre mémoire du programme. Ceci est appelé segmentation.
Adressage virtuel a de nombreux avantages. Il protège les programmes de s'écraser les uns les autres en raison d'une mauvaise manipulation du pointeur, etc. Parce que chaque programme a sa propre mémoire virtuelle, aucun programme ne peut lire les données d'une autre - c'est à la fois une sécurité et une sécurité de plus. La mémoire virtuelle permet également pagination, où un programme de physique de RAM peuvent être stockés sur un disque (ou, maintenant, plus lente, flash) lorsque vous n'utilisez pas, alors appelé lorsqu'une application tente d'accéder à la page. Aussi, depuis un seul programme peut être résident d'un particulier physique page, dans un système de pagination, soit a) tous les programmes doivent être compilés en charge à différentes adresses de la mémoire ou b), chaque programme doit utiliser Indépendant de la Position de Code, ou c) certains ensembles de programmes ne peuvent pas fonctionner simultanément.
La physique-virtuel de cartographie peut être fait dans le logiciel (avec support matériel pour la mémoire, les pièges) ou dans le plus pur du matériel. Parfois, même les tables de pages sont eux-mêmes sur un ensemble de matériel de la mémoire. Je ne sais pas du haut de ma tête, système embarqué fait quoi, mais chaque bureau dispose d'un matériel TLB (Translation Lookaside Buffer, fondamentalement, un cache pour la quasi-physique mappings) et certains ont avancé de la Mémoire de la Cartographie des Unités qui aident avec des machines virtuelles et la comme.
Les seuls inconvénients de la mémoire virtuelle sont ajoutés à la complexité dans la mise en œuvre du matériel et un ralentissement des performances.
Le VAX (Adresse Virtuelle eXtented par Digital equipment Corp qui est devenu Compaq, qui est devenu HP) est un très bon exemple d'un virtuel embeded système matériel. C'est un 32 bits de mini-ordinateur qui avait un OS appelé VMS ou de la Mémoire Virtuelle Systèmes. Dave Cutler a été l'un des principe architets des systèmes, et il a beaucoup plus tard, a écrit le Kernel de Windows NT. Il est une très bonne lecture pour cela et d'autres choses. Le Vax avait du matériel spécial pour le contrôle de l'espace virtuel et le contrôle de l'opcode de l'accès pour la sécurité par le biais de matériel... très sécurisé. Ce système a été ou est le grand-père de la modfern jour PC au Niveau Kernel. Le premier BSOD que j'ai vu sur WNT 3.51 j'ai pu lire, car il est venu de la de vidage sur incident utilisé dans les ordinateurs virtuels pour arrêter le système lors de l'instable. Par te moyen de Regarder le nom de la VM et de la voie de signalisation WNT et vous trouverez la prochaine lettres dans le alhabet de VMS rend le terme de signalisation WNT. Ce n'était pas un accident. peut-être un jab au DEC pour le lâcher.