? La machine virtuelle Java ou JVM, est la plate-forme pour les programmes Java . La JVM fonctionne comme un programme sur un ordinateur pour servir un environnement «virtuel» à travers lequel les programmes Java s'exécutent . Pour ce faire , il a besoin de sa propre mémoire et des structures de données . L'une de ces structures de données , le tas , est indispensable pour l'exécution du programme Java. Le tas , cependant, ne constitue pas toute la mémoire de la JVM , mais seulement une partie importante de celui-ci . Processus et Mémoire
La JVM, comme n'importe quel autre programme , suit le cycle d'exécution du programme dans un ordinateur. Tout d'abord, la charge des informations de l'ordinateur de la JVM file off du disque dur dans la mémoire principale ou RAM. Ensuite, la JVM est un processus en cours . Processus dans la mémoire principale ont leur propre espace d'adressage , ce qui signifie que la JVM peut traiter une quantité spécifique de mémoire . Bien que le programme ne peut demander plus de mémoire, la mémoire de la JVM est limitée par la mémoire physique, il a accès à dans le système principal .
La machine virtuelle Java et la mémoire
< p > À la JVM , la mémoire est représenté d'une manière différente . La mémoire interne de la machine virtuelle Java est disponible pour les programmes Java et imite les structures de mémoire à l'intérieur de l'ordinateur. La mémoire JVM interne contient toutes les données du programme; surtout l'allocation de mémoire objet et dynamique réalisée par le programme. Cette grande section de l'allocation de mémoire JVM est appelé «le tas ».
La Java Heap
Le tas Java stocke les informations de l'objet alloué dynamiquement à partir de le programme . Lorsque des objets ou d'autres variables sont créées dynamiquement pendant l'exécution du programme dans les langages de programmation orientés objet , l'espace pour stocker ces objets provient de « le tas. " Le tas sert de réserve d'espace à partir duquel le programme peut tirer mémoire pour une utilisation dans le programme. Dans la JVM , le tas fournit la mémoire lorsque le programme déclare un objet.
Différences entre Java et Heap Memory
Le tas est seulement une partie du pool de mémoire JVM, cependant . Alors que le tas stocke les objets déclarés par le programme , d'autres parties de la mémoire contiennent des données importantes pour le programme ainsi . Ces portions de la mémoire peut stocker des variables constantes déclarées par le programme ou la pile d'exécution qui stocke les références au code et méthode déclarée lors de l'exécution du programme. La mémoire JVM dans son ensemble contient toutes les informations requises pour exécuter le programme ainsi que les données d'exécution constants. Le tas , dans le cadre de ce mémoire , stocke les variables allouées déclaré par le programme lui-même .