Questions marquées «memory»

204
Qu'est-ce que la fragmentation de la mémoire?

J'ai entendu le terme "fragmentation de la mémoire" utilisé plusieurs fois dans le contexte de l'allocation dynamique de mémoire C ++. J'ai trouvé quelques questions sur la façon de gérer la fragmentation de la mémoire, mais je ne trouve pas de question directe qui la traite elle-même. Alors:...

197
Objectif de l'alignement de la mémoire

Certes, je ne comprends pas. Supposons que vous ayez une mémoire avec un mot mémoire d'une longueur de 1 octet. Pourquoi ne pouvez-vous pas accéder à une variable longue de 4 octets en un seul accès mémoire sur une adresse non alignée (c'est-à-dire non divisible par 4), comme c'est le cas avec des...

169
Comment fonctionnent les lignes de cache?

Je comprends que le processeur introduit des données dans le cache via des lignes de cache, ce qui - par exemple, sur mon processeur Atom - apporte environ 64 octets à la fois, quelle que soit la taille des données réelles lues. Ma question est: Imaginez que vous ayez besoin de lire un octet de la...

162
Littéraux de chaîne: où vont-ils?

Je suis intéressé par l'endroit où les littéraux de chaîne sont alloués / stockés. J'ai trouvé une réponse intéressante ici , en disant: La définition d'une chaîne en ligne intègre en fait les données dans le programme lui-même et ne peut pas être modifiée (certains compilateurs le permettent par...

161
scala vs java, performances et mémoire? [fermé]

Dans l'état actuel des choses, cette question ne convient pas à notre format de questions-réponses. Nous nous attendons à ce que les réponses soient étayées par des faits, des références ou une expertise, mais cette question suscitera probablement un débat, des arguments, un sondage ou une...

153
En C, les accolades agissent-elles comme un cadre de pile?

Si je crée une variable dans un nouvel ensemble d'accolades, cette variable est-elle sortie de la pile sur l'accolade fermante ou est-elle suspendue jusqu'à la fin de la fonction? Par exemple: void foo() { int c[100]; { int d[200]; } //code that takes a while return; } Prendront de la dmémoire...