我已经成功地在 cygwin 2.10.0(0.325/5/3) (Windows 7) 下编译了 bspwm 平铺窗口管理器,与 Openbox、LXDE 或 fwvm 相比,性能相当糟糕。您能给我建议一些如何解决这个问题的想法吗?
有时我需要在windows下测试一些linux bash脚本和命令,并且我需要多个终端窗口。将其放在 bspwm 的一个窗口中会非常方便,并且允许我根据需要设置终端工作区。
症状:
- 通过 Shift + PgUp 或 PgDown 在终端(urxvt)中滚动时重绘速度减慢
- Terminator 速度稍快一些,但打字速度相当慢。
- 节点切换、桌面之间跳转等命令的执行延迟约为 300 毫秒(只是猜测)。这是相当小的,但它使工作流程感觉不愉快。
有些应用程序即使在 Openbox 或 Fvwm 下也需要时间才能启动,但 gui 响应速度很快,urxvt 即使在运行大型 vim 文件等时也很快。
首先,这是我的 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.
答案1
速度缓慢是由 rxvt 终端仿真器引起的,特别是当它在 bspwmrc 文件中自动启动时。我现在使用 xterm 或 terminator,bspwm 速度很快。
我尝试过 strace 来查找原因,但没有得到任何显示可能存在问题的信息。