Cygwin

cygwin 上的 bspwm - 重繪緩慢問題

  • June 28, 2018

我已經設法在 cygwin 2.10.0(0.325/5/3) (Windows 7) 下編譯 bspwm 平鋪視窗管理器,與 Openbox、LXDE 或 fwvm 相比,性能相當差。你能建議我一些如何解決這個問題的想法嗎?

有時我需要在 windows 下測試一些 linux bash 腳本和命令,我需要多個終端視窗。將它裝箱在 bspwm 的一個視窗中會非常方便,並且允許我根據需要設置我的終端工作區。

症狀:

  • 通過 Shift + PgUp 或 PgDown 在終端(urxvt)中滾動時重繪速度緩慢
  • 終結者有點快,但打字很慢。
  • 節點切換、桌面間跳轉等命令的執行延遲約為 300 毫秒(只是猜測)。這是相當小的,但它使工作流程感覺不愉快。

一些應用程序即使在 Openbox 或 Fvwm 下也需要一些時間才能啟動,但 gui 響應速度很快,即使在執行大型 vim 文件等時 urxvt 也很快。

首先,這是我的 XWin 啟動日誌:

Welcome to the XWin X Server
Vendor: The Cygwin/X Project
Release: 1.19.6.0
OS: CYGWIN_NT-6.1 CZCHOWN5022406 2.10.0(0.325/5/3) 2018-02-02 15:16 x86_64
OS: Windows 7 Service Pack 1 [Windows NT 6.1 build 7601] (Win64)
Package: version 1.19.6-2 built 2018-03-12

XWin was started with the following command line:

/usr/bin/X :0 -auth /home/marek/.serverauth.9768 

ddxProcessArgument - Initializing default screens
winInitializeScreenDefaults - primary monitor w 1920 h 1080
winInitializeScreenDefaults - native DPI x 96 y 96
[ 19542.838] (II) xorg.conf is not supported
[ 19542.838] (II) See http://x.cygwin.com/docs/faq/cygwin-x-faq.html for more information
[ 19542.838] LoadPreferences: /home/marek/.XWinrc not found
[ 19542.838] LoadPreferences: Loading /etc/X11/system.XWinrc
[ 19542.838] LoadPreferences: Done parsing the configuration file...
[ 19542.838] winDetectSupportedEngines - RemoteSession: no
[ 19543.087] winDetectSupportedEngines - DirectDraw4 installed, allowing ShadowDDNL
[ 19543.087] winDetectSupportedEngines - Returning, supported engines 00000005
[ 19543.087] winSetEngine - Using Shadow DirectDraw NonLocking
[ 19543.087] winScreenInit - Using Windows display depth of 32 bits per pixel
[ 19543.134] winWindowProc - WM_SIZE - new client area w: 1904 h: 1002
[ 19543.150] winFinishScreenInitFB - Masks: 00ff0000 0000ff00 000000ff
[ 19543.150] MIT-SHM extension disabled due to lack of kernel support
[ 19543.150] XFree86-Bigfont extension local-client optimization disabled due to lack of shared memory support in the kernel
[ 19543.150] (EE) AIGLX: No native OpenGL in modes with a root window
[ 19543.430] (II) IGLX: enabled GLX_MESA_copy_sub_buffer
[ 19543.446] (II) IGLX: Loaded and initialized swrast
[ 19543.446] (II) GLX: Initialized DRISWRAST GL provider for screen 0
[ 19544.054] winPointerWarpCursor - Discarding first warp: 952 501
[ 19544.054] (--) 5 mouse buttons found
[ 19544.054] (--) Setting autorepeat to delay=500, rate=31
[ 19544.054] (--) Windows keyboard layout: "00000409" (00000409) "US", type 4
[ 19544.054] (--) Found matching XKB configuration "English (USA)"
[ 19544.054] (--) Model = "pc105" Layout = "us" Variant = "none" Options = "none"
[ 19544.054] Rules = "base" Model = "pc105" Layout = "us" Variant = "none" Options = "none"
[ 19544.725] winProcEstablishConnection - winInitClipboard returned.
[ 19544.725] winClipboardThreadProc - DISPLAY=:0.0
[ 19544.725] OS maintains clipboard viewer chain: yes
[ 19544.741] winClipboardProc - XOpenDisplay () returned and successfully opened the display.

緩慢是由 rxvt 終端仿真器引起的,尤其是當它在 bspwmrc 文件中自動啟動時。我現在正在使用 xterm 或 terminator 並且 bspwm 很快。

我已經嘗試 strace 找出原因,但我沒有得到任何顯示可能存在問題的資訊。

引用自:https://unix.stackexchange.com/questions/450001