2010-03-16 6 views
0

J'ai suivant ce blog dans la mise Xvfb dans mon environnement ubuntu:allocation de mémoire dans Xvfb

http://corpocrat.com/2008/08/19/how-to-install-xvfb-x11-server-in-linux-server/

Je l'ai fait: Xvfb: 1 -Screen 0 800x600x24 &

Ma question est Xvfb alloue-t-il uniquement de la mémoire lors de l'initialisation? c'est-à-dire juste assez pour un affichage de 800x600x24? Alors comme j'ai de plus en plus de programmes (différents programmes ou même programme plusieurs fois) affiché sur le Xvfb, il n'alloue pas plus de mémoire?

Merci.

Répondre

0

Non, Xvfb, comme tous les serveurs X, allouera de la mémoire si nécessaire. L'allocation initiale du tampon d'image ne devrait pas croître, sauf si vous lui demandez d'augmenter la taille de l'écran de 800x600, mais le serveur X devra toujours allouer de la mémoire pour chaque client qui se connecte et pour les différentes opérations effectuées par les clients (allocation de pixmaps, créer des contextes graphiques (GCs), charger des polices, etc.).

+0

Merci. Si mon application gtk utilise cairo pour dessiner des graphiques et FreeType pour la police, Gtk pour lancer windows/dialogs, est-ce que ces mémoires sont allouées par mon application ou Xvfb? – michael

+0

La mémoire sera allouée à la fois dans votre application et Xvfb pour les fenêtres, les glyphes Xft envoyés au serveur pour le rendu, et les pixmaps que dessine Cairo. La quantité de mémoire sera différente dans chacun, car ils doivent garder une trace des différentes parties de ces données. – alanc

0

Utilisez l'option -noreset pour résoudre le problème de l'utilisation de la mémoire:

Xvfb: 1 -Screen 0 800x600x24 -ac + Extension RANDR + rendre -noreset