Ich denke, dass das Problem mit dem Schluckauf nicht unbedingt durch das Tauschen verursacht wird. Wenn ein Programm etwas abspielt, sollte Linux dies bemerken und nicht austauschen. Programme, die nicht viel bewirken, werden zuerst ausgetauscht. Sie können überprüfen, ob das Programm wirklich ausgetauscht wird, indem Sie das Feld RSS/ RESvon ps oder von oben betrachten . RSSist die residente Satzgröße, der nicht ausgelagerte physische Speicher, den eine Task verwendet (in Kilobyte).
Ich denke, dass Ihr Problem höchstwahrscheinlich durch eine falsche CPU- und E / A-Planung und ein bisschen Ineffizienz der Rhythmbox verursacht wird, wodurch sie empfindlich auf hohe Systemlasten reagiert. Die CPU-Priorität kann mit den Befehlen nice und renice geändert werden . Die E / A-Priorität kann mit dem Befehl ionice geändert werden . Nur der Superuser kann hohe Prioritäten verwenden. Sie sollten auch wissen, dass Linux-Kernel-Leute versuchen, die Reaktionsfähigkeit von Desktopsystemen mit verschiedenen Patches mit geringer Latenz zu verbessern. Sie sollten daher in Betracht ziehen, sie zu verwenden. Eines davon ist ein ~ 200 Zeilen langer Patch von Mike Galbraith, der sogar Linus beeindruckt hat. Die Alternative zu diesem Patch ist Lennart Poetterings Gruppentrick was ich denke, wird die Standardeinstellung in Fedora 15 sein.
Auf jeden Fall gibt es ohne diese Patches zwei Möglichkeiten: Starten Sie das Programm mit hoher Priorität oder ändern Sie es anschließend. Für die erste Option können Sie ein Wrapper-Skript um Rhythmbox verwenden:
#!/bin/sh
# Run Rhytmbox with high CPU and I/O priorities
nice -n -10 ionice -c 1 -n 1 su -l -c rhythmbox alexei
Sie müssen es als root ausführen. Wenn Sie sich nicht als root anmelden möchten, um dies zu starten, können Sie entweder suoder verwenden sudo.
Wenn Sie die Priorität danach ändern rhythmboxmöchten und sich nicht als root anmelden möchten , können Sie versuchen, einen Cron-Job zu verwenden, der alle 5 Minuten ausgeführt wird und die Priorität des Prozesses festlegt. Ich würde dies jedoch nicht empfehlen:
#!/bin/sh
renice -n -10 -p `pidof rhythmbox`
ionice -c 1 -n 1 -p `pidof rhythmbox`