Je lance Visual Studio 2010 sur un système 32 bits et je rencontre régulièrement des problèmes de manque de mémoire virtuelle afin que je ne puisse plus faire de copier / coller dans VS.
J'ai vérifié quelques options et la ligne Microsoft à ce sujet indiquait un fonctionnement avec moins d'extensions ouvertes, et si cela ne fonctionnait pas, utilisez la commande bcedit / set IncreaseUserVA 3072.
Cela semble atténuer le problème, mais après environ une journée d'utilisation, Windows commence soudainement à me dire que je n'ai plus d'espace disque - sur un lecteur avec plus de 100 Go disponibles. Par exemple, il arrêterait de copier un fichier, disant qu'il n'y avait pas d'espace pour le copier. Cependant, cliquer sur "réessayer" réussirait. Beaucoup d'autres programmes qui écrivaient des choses sur le disque tomberaient régulièrement. (Y compris Skype ... pourquoi écriviez-vous sur le disque tout le temps, Skype?!)
J'ai exécuté chkdsk et effectué d'autres vérifications de base avant de conclure que mon changement de configuration doit être responsable. Heureusement, la restauration du paramètre par défaut a fonctionné et je suis maintenant de retour en action.
La plupart des articles (à l'exception, notamment, de Microsoft) sur Augmenter l'Utilisateur disent "Utilisez à vos risques et périls", et clairement je l'ai fait, et perdu. Mais quelqu'un peut-il expliquer pourquoi ce comportement a été présenté / qu'est-ce qui peut aller si mal avec ce qui semble être un changement légitime dans la configuration de Windows 7?
Pour mémoire - la machine était un ordinateur portable Dell Vostro avec un lecteur de disque de 260 Go / 5400 tr / min, 3,2 Go de RAM (efficace), exécutant Windows 7 avec toutes les mises à jour antérieures au SP1.
Réponses:
Windows partitionne en deux les 4 Go d'espace d'adressage disponibles sur un système 32 bits, de sorte que le noyau obtienne 2 Go et le programme 2 Go (son virtualisé de sorte que chaque programme obtient 2 Go). La commande "bcedit / set IncreaseUserVA 3072" modifie le partitionnement afin que chaque programme obtienne 3 Go et l'espace du noyau n'obtienne que 1 Go. Généralement, cela fonctionne bien, mais comme vous l'avez remarqué, vous pouvez rencontrer des problèmes. C'est généralement un pilote qui s'exécute dans l'espace du noyau qui a été codé en dur pour supposer qu'il dispose de 2 Go d'espace d'adressage disponible qui provoque les problèmes lorsqu'il essaie d'utiliser les 2 Go d'espace d'adressage sans se soucier de vérifier s'il le peut.
la source
Si vous avez 8 Go de RAM et avez besoin d'un espace d'adressage utilisateur plus grand, la meilleure solution consiste à installer le serveur Windows 2003. Aucun ajustement n'est nécessaire et vos applications 32 bits obtiennent chacune 4 Go d'espace d'adressage. Il y a des pilotes qui n'aiment pas cela et c'est pourquoi MS ne permet pas cela sur le système d'exploitation de bureau. Les plantages causés par un pilote qui ne prend pas en charge cela sont imprévisibles et difficiles à diagnostiquer et concernent principalement des pilotes qui ne sont pas utilisés dans un environnement serveur.
Il est possible de modifier le noyau Vista / Win7 et de l'ajouter comme option au menu de démarrage pour obtenir la même mémoire que celle disponible dans les éditions Server 32 bits:
www.geoffchappell.com/notes/windows/license/memory.htm
Il y a un patch pré-fait qui fait ce genre de choses mais je ne l'ai pas testé et il n'y a aucune source ...
la source
J'ai parfois mis AugmenterUserVa à 3g pour obtenir un gros projet à compiler. Je remarque que si le système passe en hibernation, il devient très instable au réveil. Les serveurs n'hibernent généralement pas, je suppose.
la source