银河麒麟v10办公卡顿主因是cfs调度器未倾斜前台ui线程,需将sched_latency_ns调至3000000、启用sched_fifo实时策略并配置rtprio权限。

银河麒麟V10在运行多任务办公、视频会议或WPS+浏览器+微信三开场景下出现响应延迟、窗口切换卡顿、鼠标指针偶发冻结,往往不是CPU算力不足,而是内核默认的CFS(完全公平调度器)未针对桌面交互负载做优先级倾斜——它把前台应用和后台日志进程同等对待,导致关键UI线程得不到及时CPU时间片。
确认当前进程调度策略
执行命令查看系统当前默认调度类:cat /proc/sys/kernel/sched_latency_ns。该值若为6000000(6ms),说明仍使用标准CFS;若已调优,通常会设为3000000或更低。
运行ps -eo pid,comm,cls,pri,rtprio | grep -E "(bash|wps|firefox)",观察关键进程的CLS列:值为“ts”表示普通时间共享进程(CFS),值为“rt”表示实时进程(需手动提升)。
临时启用SCHED_FIFO实时调度策略(适用于单个高优先级进程)
方法一:用chrt命令直接提升WPS主进程调度优先级
先查WPS主进程PID:pgrep -f "wps.*main",假设返回12847;再执行:sudo chrt -f 80 12847。这会让WPS以SCHED_FIFO策略、静态优先级80运行(范围1–99),抢占其他普通进程的CPU时间。
【注意:优先级80以上可能阻塞系统关键服务(如ukui-panel、dbus-daemon),切勿设为99】
验证是否生效:再次运行ps -o pid,comm,cls,pri,rtprio -p 12847,CLS列应变为“rt”,RTPRIO列显示80。
永久修改全局调度参数(降低交互延迟)
第一步:编辑内核调度参数配置文件
执行sudo vim /etc/sysctl.conf,在文件末尾新增以下三行:
kernel.sched_latency_ns = 3000000
kernel.sched_min_granularity_ns = 500000
kernel.sched_migration_cost_ns = 500000
第二步:使新参数立即生效
执行sudo sysctl -p。若提示“permission denied”,请检查/etc/sysctl.conf权限是否为644且属主为root。
第三步:重启验证
执行sudo reboot,开机后立刻运行sysctl kernel.sched_latency_ns,输出必须为3000000。
为特定用户组自动应用实时调度权限
方法一:配置limits.conf授予realtime权限
执行sudo vim /etc/security/limits.conf,追加两行:
@kylinusers soft rtprio 70
@kylinusers hard rtprio 70
其中kylinusers是麒麟桌面默认用户组名,若实际组名不同,请用groups $USER确认。
方法二:让WPS启动时自动以实时策略运行
编辑WPS桌面启动器:sudo vim /usr/share/applications/wps-office2019-wps.desktop,找到Exec=行,将其改为:Exec=sh -c 'chrt -f 70 /opt/apps/wps-office2019/files/wps "$@"' %F。
保存后,今后所有通过开始菜单启动的WPS进程都将默认获得SCHED_FIFO+70优先级。











