我在 VirtualBox 上執行 Ubuntu Server。我沒有使用 X Windows,只使用命令列。看起來它正在為導致螢幕向下移動的每一行重新繪製螢幕。換句話說,如果螢幕上當前行下方有空白區域,則可以正常工作,但如果當前行位於螢幕底部,則當系統移動到下一行時,它會逐行刷新整個螢幕。這會導致系統運行速度非常慢,因為我必須等待整個螢幕刷新每一行,並且 CPU 使用率為 90%。
我在 VirtualBox 中安裝了 Debian Lenny,但它沒有這樣做。
為什麼 Ubuntu Server 會為每一行重繪螢幕?有沒有辦法讓這種行為消失?
更新:
我運行的是 Ubuntu Server 10.04。
我找到了另一個解決方案禁用幀緩衝區。我blacklist vga16fb
加到/etc/modprobe.d/blacklist-framebuffer.conf
.
ls -l /啟動:
total 14268
-rw-r--r-- 1 root root 640617 2010-04-16 06:01 abi-2.6.32-21-generic
-rw-r--r-- 1 root root 115847 2010-04-16 06:01 config-2.6.32-21-generic
drwxr-xr-x 3 root root 4096 2010-06-07 17:38 grub
-rw-r--r-- 1 root root 7957975 2010-06-07 17:36 initrd.img-2.6.32-21-generic
-rw-r--r-- 1 root root 160280 2010-03-23 02:37 memtest86+.bin
-rw-r--r-- 1 root root 1687378 2010-04-16 06:01 System.map-2.6.32-21-generic
-rw-r--r-- 1 root root 1196 2010-04-16 06:03 vmcoreinfo-2.6.32-21-generic
-rw-r--r-- 1 root root 4029792 2010-04-16 06:01 vmlinuz-2.6.32-21-generic
答案1
您的幀緩衝區已啟用。某些幀緩衝區配置不會加速,並且會使用 CPU 重繪螢幕 - 實際上,當 CPU 決定「滾動」文字時,會將 CPU 轉換為 bitblit 引擎。使用禁用它此處找到的說明,這將“告訴”VirtualBox您想要“文字”而不是“圖形”。