GNU/Linux >> Linux の 問題 >  >> Ubuntu

ノートパソコンの明るさを変更した後の5%のXorg CPU使用率?

ノートパソコンのキーを使用してノートパソコンの明るさを変更すると、明るさが数分間奇妙に動作し、Xorgはこの間に5%のCPUを消費します。

以前のラップトップにも同じ効果がありましたが、これはハードウェアが死にかけているためです。新しいラップトップを1年間使用した後、同じ問題が発生します。

最初のラップトップでは、適切なATI Radeonドライバーを使用し、現在のラップトップでは、適切なNVIDIAドライバーを使用しています。

現在Kubuntu-devを使用していますが、古いラップトップでは安定版を使用しています。

私はubuntuフォーラムで、応答のない似たような古いスレッドを見つけました。

編集

cli(こことあちこちを参照)から明るさを調整し、gui wigdet(KDEを使用しています)を使用してみましたが、何も機能しません。ずさんな状態の方が早く解放されますが、明るさは変わりません。

明るさはラップトップの明るさキーでのみ変更され、5%のCPUXorgタスクを完了するのに数分かかります。

承認された回答:

解決しました!

$ find /sys -name "max_brightness"
/sys/devices/pci0000:00/0000:00:02.0/drm/card0/card0-LVDS-1/intel_backlight/max_brightness
/sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/leds/phy0-led/max_brightness
/sys/devices/platform/dell-laptop/backlight/dell_backlight/max_brightness

$ cat /sys/devices/pci0000:00/0000:00:02.0/drm/card0/card0-LVDS-1/intel_backlight/max_brightness
4648

$ sudo bash -c 'echo 2000 >> /sys/devices/pci0000:00/0000:00:02.0/drm/card0/card0-LVDS-1/intel_backlight/brightness'
# note that now it is brightness - not max_brightness

これですぐに明るさが変わります!以前と同じように。

しかし、私はまだ何が悪かったのかわかりません。

編集

ソリューションは簡単にスクリプト化できるかもしれません。唯一の欠点は、rootが必要であり、それなしでPolicyKitを適切に設定する方法がわかりません。

編集2

次のスクリプトを使用しています。 2つのハードコードされた値があります:Max およびBrightnessFile 17行目と18​​行目にあります:

#!/bin/bash
# to get description use the -h flag

# exit after a single error:
set -e


# ================
## default values:

Inc=
Dec=
Set=

Get=false

Max=4648 # max_brightness
BrightnessFile=/sys/devices/pci0000:00/0000:00:02.0/drm/card0/card0-LVDS-1/intel_backlight/brightness

Current=`cat $BrightnessFile`


# ===========
## preambula:

PROGNAME=${0##*/}
PROGVERSION=0.01
noColors=false

usage()
{
cat << EO
usage: $PROGNAME [OPTIONS...]

Changes brightness of the laptop.

The value of the max brightness depends on the hardware, and is hardcoded. On my machine it is 4648:

  $ find /sys -name "max_brightness"
  /sys/devices/pci0000:00/0000:00:02.0/drm/card0/card0-LVDS-1/intel_backlight/max_brightness
  /sys/devices/pci0000:00/0000:00:1c.1/0000:03:00.0/leds/phy0-led/max_brightness
  /sys/devices/platform/dell-laptop/backlight/dell_backlight/max_brightness

  $ cat /sys/devices/pci0000:00/0000:00:02.0/drm/card0/card0-LVDS-1/intel_backlight/max_brightness
  4648

Requires superuser privilages.

Examples:

  Increase brightness by 10 percents:

    $PROGNAME --inc 10

  Decrease brightness by 10 percents:

    $PROGNAME --dec 10

  Set brightness to 10 percents:

    $PROGNAME --set 10

optional arguments:

EO

cat << EO | column -s\& -t

  -i, --inc & increase brightness (in percents)
  -d, --dec & decrease brightness (in percents)
  -s, --set & set brightness (in percents)
 
  -g, --get & print current value (in percents)
  -G, --GUI & ask password with kdialog
 
  -h, --help & show this output
  -v, --version & show version information
EO
}

SHORTOPTS="hvi:d:s:g"
LONGOPTS="help,version,inc:,dec:,set:get"

ARGS=$(getopt -s bash --options $SHORTOPTS --longoptions $LONGOPTS --name $PROGNAME -- "[email protected]")

eval set -- "$ARGS"

while true; do
    case $1 in

        -i|--inc)
            Inc=$2; shift;;
        -d|--dec)
            Dec=$2; shift;;
        -s|--set)
            Set=$2; shift;;

        -g|--get)
            Get=true;;

        -h|--help)
            usage; exit 0;;
        -v|--version)
            echo "$PROGVERSION"; exit 0;;
        --)
            shift; break;;
        *)
            shift; break;;
    esac
    shift
done


# =========
## program:

if $Get; then
    CurrentRelVal=`bc <<< "$Current*100/$Max"`
    echo "Current brightness: $CurrentRelVal%"
    exit 0
elif [ -n "$Inc" -a $Inc -eq $Inc 2>/dev/null ]; then
    IncAbsVal=`bc <<< "$Current+$Inc*$Max/100"`
    sudo bash -c "echo $IncAbsVal >> $BrightnessFile"
    exit
elif [ -n "$Dec" -a $Dec -eq $Dec 2>/dev/null ]; then
    DecAbsVal=`bc <<< "$Current-$Dec*$Max/100"`
    sudo bash -c "echo $DecAbsVal >> $BrightnessFile"
    exit 0
elif [ -n "$Set" -a $Set -eq $Set 2>/dev/null ]; then
    SetAbsVal=`bc <<< "$Set*$Max/100"`
    sudo bash -c "echo $SetAbsVal >> $BrightnessFile"
    exit 0
else
    usage
fi

Ubuntu
  1. LinuxでプロセスのCPU使用率を制限する方法

  2. Macbook ProでUbuntuのCPU使用率が高くなる原因は?

  3. Ubuntuに移行した後、ラップトップのバッテリーが急速に消耗しますか?

  1. Asus 75ラップトップに明るさの制御はありませんか?

  2. 追加のディスプレイがラップトップに接続されている場合、Ubuntu 14.04はログイン後にフリーズしますか?

  3. シェルスクリプトでCPU使用率を取得しますか?

  1. アイドル状態のときにHPDv7ラップトップで非常に高いCPU使用率?

  2. CPU使用率を取得する方法

  3. 非常に高い CPU 使用率で実行されている Jenkins