2017-09-03 18 views
1

Je veux diviser la RAM dans mon PC en deux parties; la moitié pour mon système d'exploitation Windows et l'autre moitié pour un tampon d'image pour mon application. Par exemple, mon ordinateur de bureau a une mémoire de 32 Go, et je veux assigner 16 Go pour Windows et assigner un autre 16 Go pour mon accès à l'application seulement. Windows ne touche pas l'autre 16 Go mais mon application doit utiliser ce tampon d'image de 16 Go. Je sais comment faire cela sous Linux, mais je dois le faire sous Windows OS. Je pense que je dois configurer le BIOS et avoir besoin de mettre en place un remappeur de page Windows pour le tampon d'image pour l'accès de mon application. Y a-t-il un bon moyen de le faire?Comment diviser la RAM pour chaque système d'exploitation Windows et mon application?

+0

... pourquoi? Pourquoi veux-tu faire cela? Pourquoi ne pouvez-vous pas juste faire confiance au gestionnaire de mémoire du système d'exploitation pour faire la bonne chose? –

+0

Je pensais que je devais utiliser une mémoire contiguë, mais si Windows OS peut gérer cela correctement, je préfère l'utiliser. Ensuite, si j'utilise un virtualalloc pour cela, y a-t-il une baisse de performance? – chungae9ri

Répondre

4

Vous pouvez le faire avec l'API Address Windowing Extensions. Bien que conçu à l'origine pour les applications 32 bits, il est toujours disponible pour les applications 64 bits et la mémoire allouée de cette manière n'est pas disponible pour le système de gestion de la mémoire virtuelle.

Cependant, il faut noter que dans la plupart des cas permettant au gestionnaire de mémoire virtuelle pour faire son travail se traduira par une meilleure performance globale de verrouillage explicitement la volonté de mémoire.