- 浏览: 226917 次
- 性别:
- 来自: 北京
最新评论
-
lzj0470:
这种方式,带来的问题很大。如:返回一个对象,然后再调用一些办法 ...
自定义classloader加密java程序 -
bushkarl:
JavaScript 胸罩尺寸计算器 -
bushkarl:
...
Ubuntu php 环境配置 -
dearsunkey:
hao !
Ubuntu php 环境配置 -
qskm:
这个怎么用呢?楼主没说清楚啊,
1、 加密的话该怎么加密?直接 ...
自定义classloader加密java程序
对UBUNTU6.06LTS中切入Laptop_mode模式的补充
UBUNTU6.06LTS版附带的laptop-mode-tools是 1.11(2005-10-29日发布)的版本,具最新的1.32版(2006-10-06日发布)已相差14个版本,UBUNTU的laptop- mode-tools包已经非常旧啦,一年多的时间没有维护和升级过啦。
为了更好的用好laptop_mode_tools带来的便利,强列推荐用户升级到1.32版,
ubuntu的用户可以到这里下载:http://www.xs4all.nl/~bsamwel/laptop_mode/tools/downloads/debian/laptop-mode-tools_1.32-1_all.deb
新版本的功能修证和增强请参阅:http://www.xs4all.nl/~bsamwel/laptop_mode/tools/revision-history.html
附1.32版的安装和启动方法:
I、安装:sudo dpkg -i laptop-mode-tools_1.32-1_all.deb
注:如果你已安装过ubuntu附带的1.11版,安装过程中将提示你是替换旧版的配置文件和守护脚本,按Y键替换,N键保留,D键查看新旧版配置文件的不同,这里请按Y键。
II、配置方法1.:sudo gedit /etc/default/acpi-support,更改ENABLE_LAPTOP_MODE=true
(注:这样设置只为允许启动laptop_mode,而laptop_mode_tools的配置文件默认在切挽到电池供电时启用 laptop_mode,如果你只想在电池供电状态下使用laptop_mode请用此设置且不用再作其它设定如配置方法2)
配置方法2:sudo gedit /etc/laptop-mode/laptop-mode.conf更改ENABLE_LAPTOP_MODE_ON_AC=1,ENABLE_LAPTOP_MODE_WHEN_LID_CLOSED=1
(注:在acpi-support中设置ENABLE_LAPTOP_MODE=true后,想在电源供电状态启动laptop_mode,或合上LCD时启用laptop_mode请用)
III、启动:新版的laptop_mode_tools,在你正确配置了相关配置文件后,会随系统自动启动。
你可以重新启动laptop,键入cat /proc/sys/vm/laptop_mode看看,非零则正常启动。
手动启动方法如同laptop_mode_tools 1.11版,新版守护脚本增加了force-reload参数,你可以在必要情况下使用。
下面讲讲sudo laptop_mode status后的信息。
sudo laptop_mode 返回当前laptop_mode的状态信息。
Mounts:安装点,形同/etc/mtab,当前系统安装点状态。
和mounts相关的laptop_mode.conf设置:
CONTROL_NOATIME=0
控制文件系统挂起选项noatime,禁止更新文件的访问时间,能大大提高效率。访问时间不是一个太有用的属性,修改/etc/fstab就可以了,
如:/etc/fstab中:/dev/fd0 /floppy auto user,noauto,noatime 0 0
CONTROL_MOUNT_OPTIONS=1
Change mount options on partitions in PARTITIONS?(partitions in PARTITIONS?不知怎样理解?知道的请跟贴。谢谢!),你最好不要改变此设置。
Drive power status:驱动器电源状态:
/dev/hda:
drive state is :active/idle
硬盘状态:活动或空闲状态
/dev/hdc:
drive state is :standby
光驱状态:待命
(NOTE: drive settings affected by Laptop Mode cannot be retrieved.)
注意:laptop mode不能恢复受影响驱动器设置。
注:Drive power status受laptop_mode.conf配置影响,
CONTROL_HD_IDLE_TIMEOUT=1,值为1时,控制硬盘空闲超时。
LM_AC_HD_IDLE_TIMEOUT_SECONDS=20:latop_mode模式电源供电时硬盘空闲超时秒数
LM_BATT_HD_IDLE_TIMEOUT_SECONDS=20:laptop_mode模式电池供时硬盘空闲超时秒数
NOLM_HD_IDLE_TIMEOUT_SECONDS=7200:非laptop_mode模式硬盘空闲超时秒数
这里的硬盘空闲超时指的是设置磁盘驱动器低速运转超时,磁盘根据此超时值决定在关闭主轴电机以节约能耗之前等待多长时间(无磁盘操作)。在这种状态下,驱动器可能需要来响应一个接下来的磁盘访问。
如上述laptop_mode模式下磁盘驱动器低带运转超时值为20秒,非laptop_mode模式超时值为2小时。
驱动器状态:active/idle--活动/闲置指普通操作;standby--待命指低能耗模式,驱动器待命中;sleep--挂起指最低能耗模式,驱动器被完全关闭。
Readahead states:(超前读状态)
/dev/hda3: 3072 kB
/dev/hda9: 3072 kB
/dev/hda1: 3072 kB
/dev/hda5: 3072 kB
/dev/hda6: 3072 kB
/dev/hda7: 3072 kB
预备知识:所有的Linux文件系统使用一个共同的buffer cache来缓存底层的设备的数据缓冲区,这样可以加速对于存放文件系统的物理设备的访问,从而加快对文件系统的访问。这个buffer cache独立于文件系统,集成在Linux核心分配、读和写数据缓冲区的机制中。让Linux文件系统独立于底层的介质和支撑的设备驱动程序有特殊的好处。所有的块结构的设备向Linux核心登记,并表现为一个统一的,以块为基础的,通常是异步的接口。甚至相对复杂的块设备比如SCSI设备也是这样。当真实的文件系统从底层的物理磁盘读取数据的,引起块设备驱动程序从它们控制的设备上读取物理块。在这个块设备接口中集成了buffer cache。当文件系统读取了块的时候,它们被存放到了所有的文件系统和Linux核心共享的全局的buffer cache中。其中的buffer(缓冲区)用它们的块编号和被读取设备的一个唯一的标识符来标记。所以,如果相同的数据经常需要,它会从buffer cache中读取,而不是从磁盘读取(会花费更多时间)。一些设备支持超前读(read ahead),数据块会预先读取,以备以后可能的读取。
从而看出我的laptop的readahead数据为3M.
Laptop Mode is allowed to run: /var/run/laptop-mode-enabled exists.
当/var/run/laptop-mode-enabled 文件存在时laptop mode充许运行。
此文件是你在配置文件acpi-support中更改ENABLE_LAPTOP_MODE=true时,守护脚本所产生的,也是你在电脑启动时看到“Enabling laptop mode”提示时产产生的。
/proc/sys/vm/dirty_ratio: 60
该文件表示如果进程产生的脏数据到达系统整体内存的百分比,此时进程自行把脏数据写回磁盘。缺省设置:40
/proc/sys/vm/dirty_background_ratio: 1
该文件表示脏数据到达系统整体内存的百分比,此时触发pdflush进程把脏数据写回磁盘。缺省设置:10
/proc/sys/vm/dirty_expire_centisecs: 36000
该文件表示如果脏数据在内存中驻留时间超过该值,pdflush进程在下一次将把这些数据写回磁盘。缺省设置:3000(1/100秒)
/proc/sys/vm/dirty_writeback_centisecs: 36000
该文件表示pdflush进程周期性间隔多久把脏数据写回磁盘。缺省设置:500(1/100秒)
有关脏数据的处理的相关设置:
LM_DIRTY_RATIO=60:含义请见status输出的/proc/sys/vm/dirty_ration部分,此处是指laptop_mode模式下的设置。
NOLM_DIRTY_RATIO=40:含义请见status输出的/proc/sys/vm/dirty_ration部分,此处是指非laptop_mode模式下的系统默认设置。
LM_DIRTY_BACKGROUND_RATIO=1:含义请见status输出的/proc/sys/vm/dirty_background_ratio部分,此处是指laptop_mode模式下的设置。
NOLM_DIRTY_BACKGROUND_RATIO=10含义请见status输出的/proc/sys/vm/dirty_background_ratio部分,此处是指laptop_mode模式下的系统默认设置。
有关磁盘行为的其它设置:
CONTROL_HD_WRITECACHE=0
控制磁盘驱动器的写缓存特性,值0为关闭,1为打开,此值直接影响到*_HD_WRITECACHE的设置。
NOLM_AC_HD_WRITECACHE=1
非laptop_mode模式电源适配器供电时磁盘驱动器的写缓存行为,值0为关闭,1为打开;
NOLM_BATT_HD_WRITECACHE=0
非laptop_mode模式电源供电时磁盘驱动器的写缓存行为,值0为关闭,1为打开;
LM_HD_WRITECACHE=0
laptop_mode模式磁盘驱动器的写缓存行为,值0为关闭,1为打开;
CONTROL_HD_POWERMGMT=0
控制磁盘驱动器的高级电源管理(请先确定你的磁盘是否支持APM),值0为关闭,1为打开;此值直接影响到*_HD_POWERMGMT的设置。
*_HD_POWERMGMT的值(1-255),低参数值获得更好的电源管理,高参数值获得更好的性能,值为255时关闭磁盘APM支持。
BATT_HD_POWERMGMT=1
电池供电时磁盘驱动器的电源管理,更省电。
LM_AC_HD_POWERMGMT=255
laptop_mode模式电源适配器供电时的电源管理,这里是关闭磁盘APM支持。
NOLM_AC_HD_POWERMGMT=255
非laptop_mode模式电源适配器供电时的电源管理,这里是关闭磁盘APM支持。
*_MAX_LOST_WORK_SECONDS:
当你系统崩溃或切断电源时,将丢失内存中多少钞内的数据。
LM_BATT_MAX_LOST_WORK_SECONDS=600
laptop_mode模式,电池供电时,若系统崩溃或断电时,将丢失600秒内的数据
LM_AC_MAX_LOST_WORK_SECONDS=360
laptop_mode模式,电源供电时,若系统崩溃或断电时,将丢失360秒内的数据
LM_SECONDS_BEFORE_SYNC=2:
laptop_mode模式,磁盘在进入空闲状态前几秒钟同步数据。
/sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq: 531672
cpu变频之当前频率
/sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq: 1528557
cpu变频之最大频率
/sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_min_freq:531672
cpu变频之最小频率
/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor:userspace
cpu变频之频率调节器
注:有关laptop_mode的CPU变频设定(该功能工作于2.6系统的内核),受/etc/laptop-mode/laptop-mode.conf文件的影响,
如果你是AMD的CPU,建意用AMD的PowerNow功能,ubuntu中的powernow脚本也是建立在cpufreq的基础上。
AMD CPU PowerNow的用法是在/etc/fstab中增加一行代码sysfs /sys sysfs defaults 0 0。
起用laptop_mode模式的CPU变频功能:更改CONTROL_CPU_FREQUENCY=1,
BATT_CPU_*:在电池供电时CPU变频设定,
LM_AC_CUP_*:laptop_mode模式电源供电时CPU进行变频设定,
NOLM_AC_CUP_*:非laptop_mode模式电源供电时CPU进行变频设定,
可用的CPU频率请见:/sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies
可以的CPU调节器请见:/sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors
CONTROL_CPU_THROTTLING=0
如果你的CPU不支持变频设定,只支持过热保护时请用(此功能多用于P4cpu,amd不适用),
CPU过热保护降频,可用的降频模式请见:/proc/acpi/processor/CPU*/throttling,
若*_CPU_THROTTLING=maximum则CPU运行非常慢!
若*_CPU_THROTTLING=minimum则CPU运行较快!
若*_CPU_THROTTLING=medium则是CPU一半的频率运行!
CPU 过热保护降频跟intel speed step不同。speed step的降频是根据CPU负荷自动调整工作频率的机制,它可以让CPU在两种工作模式之间随意地切换,即接交流电时的最大性能模式和电池状态时的节电模式,其目的在于降低发热和功耗;而CPU过热保护降频(即 CPU throttle)属于硬件过热保护技术,当CPU内部温度超过一定临界值时,为保护CPU不被烧毁而进行’降频’。
CPU throttle降频机制的原理是,当传感器检测到CPU内部温度超过临界值时,开始在CPU时钟周期中插入空闲周期然后再送入ALU(算术逻辑运算单元)。ALU是CPU中是真正负责运算的部件,因为此时ALU的频率为CPU时钟主频的一半,所以此时CPU性能也就降半。
/proc/acpi/button/lid/LID/state:
state: open
laptop的屏幕开合键状态,laptop-mode.conf的配置项ENABLE_LAPTOP_MODE_WHEN_LID_CLOSED将会用到此状态,若此配置项值为1,则合上屏幕时会进入laptop_mode模式。
laptop的LCD通常是个能源消耗大户,以至于LCD的开合,LCD的亮度调节都对laptop的能源有个重大影响,至于laptop的屏幕开合键状态及相关执行动作,请见系统菜单system-preferences-power management内容。
/proc/acpi/ac_adapter/AC/state:
state: on-line
laptop-mode.conf的配置项ENABLE_LAPTOP_MODE_ON_AC将会用到此状态,若此配置项值为1,则可以在电源适配器供电时使用laptop_mode模式。
laptop的电源适配器状态。on-line表示在电源适配器供电模式,off-line表示在电池供电模式。
至于laptop的电源状态及相关执行动作,请见系统菜单system-preferences-power management内容。
/proc/acpi/battery/CMB1/state:
present: yes
capacity state: ok
charging state: discharging
present rate: 0 mA
remaining capacity: 4000 mAh
present voltage: 12450 mV
/proc/acpi/battery/CMB2/state:
present: no
其它status中无表示的laptop_mode.conf配置
CONTRON_SYSLOG_CONF
CONTRON_SYSLOG_CONF=0:是否用laptop_mode_tools来控制syslogd,值0则否,值1则是;当值1 时,laptop_mode_tools则把原始的syslogd配置文件,备份为/etc/syslog.conf.no-lm,当系统为非 laptop_mode模式时则还原为原始的syslogd配置文件。
LM_AC_SYSLOG_CONF=/etc/syslog-on-ac-with-lm.conf
Laptop_mode模式用电源适配器供电时syslog文件为:/etc/syslog-on-ac-with-lm.conf
NOLM_AC_SYSLOG_CONF=/etc/syslog-on-ac-without-lm.conf
非Laptop_mode模式用电源适配器供电时syslog文件为:/etc/syslog-on-ac-without-lm.conf
BATT_SYSLOG_CONF=/etc/syslog-on-battery.conf
电池供电时syslog文件为:/etc/syslog-on-battery.conf
SYSLOG_CONF_SIGNAL_PROGRAM=syslogd
当产生syslog的配置文件被改变或替换时信号通知的程式为syslogd
SYSLOG_CONF=/etc/syslog.conf
原始syslogd配置文件为/etc/syslog.conf
CONTROL_START_STOP=1:laptop_mode_tools能自动开始和结束程序在不同的电源供电情况下。
简略点讲:你可以放置自已编写的脚本到/etc/laptop-mode/batt-stop, batt-start, lm-ac-stop,lm-ac-start, nolm-ac-stop,nolm-ac-start文目下,切换不同的供电情况时,将执行相关目录下的脚本。脚本的编写要求是可以传递"start" 或"stop"参数,如切换不同电源供电情况时将传递触发此情况之前所执行脚本的"stop"参数,和现在将执行脚本的"start"参数。
什么时候会用到此功能,比如,你在从桌面拿开laptop,到会议室时,可能想让电脑作些什么例行操作,然后由会议室回到办会桌时,又能让电脑作些什么例行操作之类的。大家自已想吧。
CONTROL_DPMS_STANDBY
CONTROL_DPMS_STANDBY=0:是否控制DPMS(显示器电源管理系统),DPMS通常支持两种模式Standby(待机), Suspend(挂起)。值0则否,值1则控制DPMS(显示器电电源管理信号)待命。
显示器工作状态的控制既可以由BIOS来完成,也可以在OS中设定。在BIOS电源管理设置项中,如果将 “Video off method(视频关闭方式)”交给DPMS,当在一定时间内没有对计算机进行操作后,显示器就会进入待机状态,电源指示灯闪烁;如果再隔一段时间仍未对计算机进行操作,显示器则进入节能效果更佳的挂起状态,此时电源指示灯为黄色(正常显示时为绿色)。
待机状态下,显卡停止输出场同步信号,显示器中场扫描电路停止工作,但行电路继续工作,灯丝也继续给阴极加热,虽然显示器处于黑屏,但可以被瞬间唤醒;
挂起状态下,显卡同时停止行、场扫描信号输出,显示器行、场扫描电路均停止工作,灯丝供电如果从行电路获得,此时灯丝也不亮了。挂起状态下只有电源维持工作,耗电量很少,但唤醒时间也较长。
提示,更多更祥细的有关显示器电源管理可到BIOS菜单配置。
BATT_DPMS_STANDBY=300:电池供电下显示器空闲超过5分种进入待机状态。
LM_AC_DPMS_STANDBY=1200:laptop_mode模式电源适配器供电下荧屏显示器超过20分种进入待机状态。
NOLM_AC_DPMS_STANDBY=1200:非laptop_mode模式电源适配器供电下荧屏显示器超过20分种进入待机状态。
CONTROL_TERMINAL=0
laptop_mode_tools是否控制终端(显示输出终端)关闭。值0为否,值1则是。
BATT_TERMINAL_BLANK_MINUTES=1
BATT_TERMINAL_POWERDOWN_MINUTES=2
电池供电情况下显示输出关闭和断电等候时间。
LM_AC_TERMINAL_BLANK_MINUTES=10
LM_AC_TERMINAL_POWERDOWN_MINUTES=10
laptop_mode模式电源适配器供电情况下显示输出关闭和断电等候时间。
NOLM_AC_TERMINAL_BLANK_MINUTES=10
NOLM_AC_TERMINAL_POWERDOWN_MINUTES=50
非laptop_mode模式电源适配器供电情况下显示输出关闭和断电等候时间。
上述这些设置指明了在多久时间后显示输出终端关闭并断电。如BLANK_MINUTES=2 and POWERDOWN_MINUTES=5意味着显示输出设备将在7分钟之后关闭并断电。
参数值的范围值在1到60分钟间,值0则表示禁止。
ENABLE_AUTO_HIBERNATION
ENABLE_AUTO_HIBERNATION=0:当电池将放完电时,是否允许laptop_mode_tools控制laptop自动进入睡眠,值0为否,值1则是。
HIBERNATE_COMMAND=/usr/sbin/hibernate:当触发电脑自动睡眠时将执行的命令为/usr/sbin/hibernate.
AUTO_HIBERNATION_BATTERY_CHARGE_PERCENT=2:当电池剩余电量为总电池充电量的百分之几时电脑将自动睡眠。
AUTO_HIBERNATION_ON_CRITICAL_BATTERY_LEVEL=1:当电池报告其放电到紧急情况时将启动电脑自动睡眠。
下面是一些系统内核默认参数,如果你不知道你要作什么,请不要随便改变它。
DEF_UPDATE=5
DEF_XFS_AGE_BUFFER=15
DEF_XFS_SYNC_INTERVAL=30
DEF_XFS_BUFD_INTERVAL=1
DEF_MAX_AGE=30
XFS_HZ=100
总结:本文通过结合laptop_mode_tools的输出信息来讲解laptop_mode_tools的配置文件,讲述了加载点控制、文件系统超前预读缓冲设置、脏数据处理、磁碟驱动器写缓冲、驱动器电源控制、内存数据同步时间、CPU变频及CPU过热保护设置、显示输出设备节省方案等方法相关知识。希望大家用好这个2.6内核加入的laptop_mode模式,用好你的laptop,也希望对想深入了解系统和对系统优化感兴趣的朋友启一个抛砖引玉的作用。
注:本文原创,传载请注明出处。谢谢!
来自:http://kw-gift.com/blog/index.php?entry=entry061025-180208
UBUNTU6.06LTS版附带的laptop-mode-tools是 1.11(2005-10-29日发布)的版本,具最新的1.32版(2006-10-06日发布)已相差14个版本,UBUNTU的laptop- mode-tools包已经非常旧啦,一年多的时间没有维护和升级过啦。
为了更好的用好laptop_mode_tools带来的便利,强列推荐用户升级到1.32版,
ubuntu的用户可以到这里下载:http://www.xs4all.nl/~bsamwel/laptop_mode/tools/downloads/debian/laptop-mode-tools_1.32-1_all.deb
新版本的功能修证和增强请参阅:http://www.xs4all.nl/~bsamwel/laptop_mode/tools/revision-history.html
附1.32版的安装和启动方法:
I、安装:sudo dpkg -i laptop-mode-tools_1.32-1_all.deb
注:如果你已安装过ubuntu附带的1.11版,安装过程中将提示你是替换旧版的配置文件和守护脚本,按Y键替换,N键保留,D键查看新旧版配置文件的不同,这里请按Y键。
II、配置方法1.:sudo gedit /etc/default/acpi-support,更改ENABLE_LAPTOP_MODE=true
(注:这样设置只为允许启动laptop_mode,而laptop_mode_tools的配置文件默认在切挽到电池供电时启用 laptop_mode,如果你只想在电池供电状态下使用laptop_mode请用此设置且不用再作其它设定如配置方法2)
配置方法2:sudo gedit /etc/laptop-mode/laptop-mode.conf更改ENABLE_LAPTOP_MODE_ON_AC=1,ENABLE_LAPTOP_MODE_WHEN_LID_CLOSED=1
(注:在acpi-support中设置ENABLE_LAPTOP_MODE=true后,想在电源供电状态启动laptop_mode,或合上LCD时启用laptop_mode请用)
III、启动:新版的laptop_mode_tools,在你正确配置了相关配置文件后,会随系统自动启动。
你可以重新启动laptop,键入cat /proc/sys/vm/laptop_mode看看,非零则正常启动。
手动启动方法如同laptop_mode_tools 1.11版,新版守护脚本增加了force-reload参数,你可以在必要情况下使用。
下面讲讲sudo laptop_mode status后的信息。
sudo laptop_mode 返回当前laptop_mode的状态信息。
Mounts:安装点,形同/etc/mtab,当前系统安装点状态。
和mounts相关的laptop_mode.conf设置:
CONTROL_NOATIME=0
控制文件系统挂起选项noatime,禁止更新文件的访问时间,能大大提高效率。访问时间不是一个太有用的属性,修改/etc/fstab就可以了,
如:/etc/fstab中:/dev/fd0 /floppy auto user,noauto,noatime 0 0
CONTROL_MOUNT_OPTIONS=1
Change mount options on partitions in PARTITIONS?(partitions in PARTITIONS?不知怎样理解?知道的请跟贴。谢谢!),你最好不要改变此设置。
Drive power status:驱动器电源状态:
/dev/hda:
drive state is :active/idle
硬盘状态:活动或空闲状态
/dev/hdc:
drive state is :standby
光驱状态:待命
(NOTE: drive settings affected by Laptop Mode cannot be retrieved.)
注意:laptop mode不能恢复受影响驱动器设置。
注:Drive power status受laptop_mode.conf配置影响,
CONTROL_HD_IDLE_TIMEOUT=1,值为1时,控制硬盘空闲超时。
LM_AC_HD_IDLE_TIMEOUT_SECONDS=20:latop_mode模式电源供电时硬盘空闲超时秒数
LM_BATT_HD_IDLE_TIMEOUT_SECONDS=20:laptop_mode模式电池供时硬盘空闲超时秒数
NOLM_HD_IDLE_TIMEOUT_SECONDS=7200:非laptop_mode模式硬盘空闲超时秒数
这里的硬盘空闲超时指的是设置磁盘驱动器低速运转超时,磁盘根据此超时值决定在关闭主轴电机以节约能耗之前等待多长时间(无磁盘操作)。在这种状态下,驱动器可能需要来响应一个接下来的磁盘访问。
如上述laptop_mode模式下磁盘驱动器低带运转超时值为20秒,非laptop_mode模式超时值为2小时。
驱动器状态:active/idle--活动/闲置指普通操作;standby--待命指低能耗模式,驱动器待命中;sleep--挂起指最低能耗模式,驱动器被完全关闭。
Readahead states:(超前读状态)
/dev/hda3: 3072 kB
/dev/hda9: 3072 kB
/dev/hda1: 3072 kB
/dev/hda5: 3072 kB
/dev/hda6: 3072 kB
/dev/hda7: 3072 kB
预备知识:所有的Linux文件系统使用一个共同的buffer cache来缓存底层的设备的数据缓冲区,这样可以加速对于存放文件系统的物理设备的访问,从而加快对文件系统的访问。这个buffer cache独立于文件系统,集成在Linux核心分配、读和写数据缓冲区的机制中。让Linux文件系统独立于底层的介质和支撑的设备驱动程序有特殊的好处。所有的块结构的设备向Linux核心登记,并表现为一个统一的,以块为基础的,通常是异步的接口。甚至相对复杂的块设备比如SCSI设备也是这样。当真实的文件系统从底层的物理磁盘读取数据的,引起块设备驱动程序从它们控制的设备上读取物理块。在这个块设备接口中集成了buffer cache。当文件系统读取了块的时候,它们被存放到了所有的文件系统和Linux核心共享的全局的buffer cache中。其中的buffer(缓冲区)用它们的块编号和被读取设备的一个唯一的标识符来标记。所以,如果相同的数据经常需要,它会从buffer cache中读取,而不是从磁盘读取(会花费更多时间)。一些设备支持超前读(read ahead),数据块会预先读取,以备以后可能的读取。
从而看出我的laptop的readahead数据为3M.
Laptop Mode is allowed to run: /var/run/laptop-mode-enabled exists.
当/var/run/laptop-mode-enabled 文件存在时laptop mode充许运行。
此文件是你在配置文件acpi-support中更改ENABLE_LAPTOP_MODE=true时,守护脚本所产生的,也是你在电脑启动时看到“Enabling laptop mode”提示时产产生的。
/proc/sys/vm/dirty_ratio: 60
该文件表示如果进程产生的脏数据到达系统整体内存的百分比,此时进程自行把脏数据写回磁盘。缺省设置:40
/proc/sys/vm/dirty_background_ratio: 1
该文件表示脏数据到达系统整体内存的百分比,此时触发pdflush进程把脏数据写回磁盘。缺省设置:10
/proc/sys/vm/dirty_expire_centisecs: 36000
该文件表示如果脏数据在内存中驻留时间超过该值,pdflush进程在下一次将把这些数据写回磁盘。缺省设置:3000(1/100秒)
/proc/sys/vm/dirty_writeback_centisecs: 36000
该文件表示pdflush进程周期性间隔多久把脏数据写回磁盘。缺省设置:500(1/100秒)
有关脏数据的处理的相关设置:
LM_DIRTY_RATIO=60:含义请见status输出的/proc/sys/vm/dirty_ration部分,此处是指laptop_mode模式下的设置。
NOLM_DIRTY_RATIO=40:含义请见status输出的/proc/sys/vm/dirty_ration部分,此处是指非laptop_mode模式下的系统默认设置。
LM_DIRTY_BACKGROUND_RATIO=1:含义请见status输出的/proc/sys/vm/dirty_background_ratio部分,此处是指laptop_mode模式下的设置。
NOLM_DIRTY_BACKGROUND_RATIO=10含义请见status输出的/proc/sys/vm/dirty_background_ratio部分,此处是指laptop_mode模式下的系统默认设置。
有关磁盘行为的其它设置:
CONTROL_HD_WRITECACHE=0
控制磁盘驱动器的写缓存特性,值0为关闭,1为打开,此值直接影响到*_HD_WRITECACHE的设置。
NOLM_AC_HD_WRITECACHE=1
非laptop_mode模式电源适配器供电时磁盘驱动器的写缓存行为,值0为关闭,1为打开;
NOLM_BATT_HD_WRITECACHE=0
非laptop_mode模式电源供电时磁盘驱动器的写缓存行为,值0为关闭,1为打开;
LM_HD_WRITECACHE=0
laptop_mode模式磁盘驱动器的写缓存行为,值0为关闭,1为打开;
CONTROL_HD_POWERMGMT=0
控制磁盘驱动器的高级电源管理(请先确定你的磁盘是否支持APM),值0为关闭,1为打开;此值直接影响到*_HD_POWERMGMT的设置。
*_HD_POWERMGMT的值(1-255),低参数值获得更好的电源管理,高参数值获得更好的性能,值为255时关闭磁盘APM支持。
BATT_HD_POWERMGMT=1
电池供电时磁盘驱动器的电源管理,更省电。
LM_AC_HD_POWERMGMT=255
laptop_mode模式电源适配器供电时的电源管理,这里是关闭磁盘APM支持。
NOLM_AC_HD_POWERMGMT=255
非laptop_mode模式电源适配器供电时的电源管理,这里是关闭磁盘APM支持。
*_MAX_LOST_WORK_SECONDS:
当你系统崩溃或切断电源时,将丢失内存中多少钞内的数据。
LM_BATT_MAX_LOST_WORK_SECONDS=600
laptop_mode模式,电池供电时,若系统崩溃或断电时,将丢失600秒内的数据
LM_AC_MAX_LOST_WORK_SECONDS=360
laptop_mode模式,电源供电时,若系统崩溃或断电时,将丢失360秒内的数据
LM_SECONDS_BEFORE_SYNC=2:
laptop_mode模式,磁盘在进入空闲状态前几秒钟同步数据。
/sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq: 531672
cpu变频之当前频率
/sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq: 1528557
cpu变频之最大频率
/sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_min_freq:531672
cpu变频之最小频率
/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor:userspace
cpu变频之频率调节器
注:有关laptop_mode的CPU变频设定(该功能工作于2.6系统的内核),受/etc/laptop-mode/laptop-mode.conf文件的影响,
如果你是AMD的CPU,建意用AMD的PowerNow功能,ubuntu中的powernow脚本也是建立在cpufreq的基础上。
AMD CPU PowerNow的用法是在/etc/fstab中增加一行代码sysfs /sys sysfs defaults 0 0。
起用laptop_mode模式的CPU变频功能:更改CONTROL_CPU_FREQUENCY=1,
BATT_CPU_*:在电池供电时CPU变频设定,
LM_AC_CUP_*:laptop_mode模式电源供电时CPU进行变频设定,
NOLM_AC_CUP_*:非laptop_mode模式电源供电时CPU进行变频设定,
可用的CPU频率请见:/sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies
可以的CPU调节器请见:/sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors
CONTROL_CPU_THROTTLING=0
如果你的CPU不支持变频设定,只支持过热保护时请用(此功能多用于P4cpu,amd不适用),
CPU过热保护降频,可用的降频模式请见:/proc/acpi/processor/CPU*/throttling,
若*_CPU_THROTTLING=maximum则CPU运行非常慢!
若*_CPU_THROTTLING=minimum则CPU运行较快!
若*_CPU_THROTTLING=medium则是CPU一半的频率运行!
CPU 过热保护降频跟intel speed step不同。speed step的降频是根据CPU负荷自动调整工作频率的机制,它可以让CPU在两种工作模式之间随意地切换,即接交流电时的最大性能模式和电池状态时的节电模式,其目的在于降低发热和功耗;而CPU过热保护降频(即 CPU throttle)属于硬件过热保护技术,当CPU内部温度超过一定临界值时,为保护CPU不被烧毁而进行’降频’。
CPU throttle降频机制的原理是,当传感器检测到CPU内部温度超过临界值时,开始在CPU时钟周期中插入空闲周期然后再送入ALU(算术逻辑运算单元)。ALU是CPU中是真正负责运算的部件,因为此时ALU的频率为CPU时钟主频的一半,所以此时CPU性能也就降半。
/proc/acpi/button/lid/LID/state:
state: open
laptop的屏幕开合键状态,laptop-mode.conf的配置项ENABLE_LAPTOP_MODE_WHEN_LID_CLOSED将会用到此状态,若此配置项值为1,则合上屏幕时会进入laptop_mode模式。
laptop的LCD通常是个能源消耗大户,以至于LCD的开合,LCD的亮度调节都对laptop的能源有个重大影响,至于laptop的屏幕开合键状态及相关执行动作,请见系统菜单system-preferences-power management内容。
/proc/acpi/ac_adapter/AC/state:
state: on-line
laptop-mode.conf的配置项ENABLE_LAPTOP_MODE_ON_AC将会用到此状态,若此配置项值为1,则可以在电源适配器供电时使用laptop_mode模式。
laptop的电源适配器状态。on-line表示在电源适配器供电模式,off-line表示在电池供电模式。
至于laptop的电源状态及相关执行动作,请见系统菜单system-preferences-power management内容。
/proc/acpi/battery/CMB1/state:
present: yes
capacity state: ok
charging state: discharging
present rate: 0 mA
remaining capacity: 4000 mAh
present voltage: 12450 mV
/proc/acpi/battery/CMB2/state:
present: no
其它status中无表示的laptop_mode.conf配置
CONTRON_SYSLOG_CONF
CONTRON_SYSLOG_CONF=0:是否用laptop_mode_tools来控制syslogd,值0则否,值1则是;当值1 时,laptop_mode_tools则把原始的syslogd配置文件,备份为/etc/syslog.conf.no-lm,当系统为非 laptop_mode模式时则还原为原始的syslogd配置文件。
LM_AC_SYSLOG_CONF=/etc/syslog-on-ac-with-lm.conf
Laptop_mode模式用电源适配器供电时syslog文件为:/etc/syslog-on-ac-with-lm.conf
NOLM_AC_SYSLOG_CONF=/etc/syslog-on-ac-without-lm.conf
非Laptop_mode模式用电源适配器供电时syslog文件为:/etc/syslog-on-ac-without-lm.conf
BATT_SYSLOG_CONF=/etc/syslog-on-battery.conf
电池供电时syslog文件为:/etc/syslog-on-battery.conf
SYSLOG_CONF_SIGNAL_PROGRAM=syslogd
当产生syslog的配置文件被改变或替换时信号通知的程式为syslogd
SYSLOG_CONF=/etc/syslog.conf
原始syslogd配置文件为/etc/syslog.conf
CONTROL_START_STOP=1:laptop_mode_tools能自动开始和结束程序在不同的电源供电情况下。
简略点讲:你可以放置自已编写的脚本到/etc/laptop-mode/batt-stop, batt-start, lm-ac-stop,lm-ac-start, nolm-ac-stop,nolm-ac-start文目下,切换不同的供电情况时,将执行相关目录下的脚本。脚本的编写要求是可以传递"start" 或"stop"参数,如切换不同电源供电情况时将传递触发此情况之前所执行脚本的"stop"参数,和现在将执行脚本的"start"参数。
什么时候会用到此功能,比如,你在从桌面拿开laptop,到会议室时,可能想让电脑作些什么例行操作,然后由会议室回到办会桌时,又能让电脑作些什么例行操作之类的。大家自已想吧。
CONTROL_DPMS_STANDBY
CONTROL_DPMS_STANDBY=0:是否控制DPMS(显示器电源管理系统),DPMS通常支持两种模式Standby(待机), Suspend(挂起)。值0则否,值1则控制DPMS(显示器电电源管理信号)待命。
显示器工作状态的控制既可以由BIOS来完成,也可以在OS中设定。在BIOS电源管理设置项中,如果将 “Video off method(视频关闭方式)”交给DPMS,当在一定时间内没有对计算机进行操作后,显示器就会进入待机状态,电源指示灯闪烁;如果再隔一段时间仍未对计算机进行操作,显示器则进入节能效果更佳的挂起状态,此时电源指示灯为黄色(正常显示时为绿色)。
待机状态下,显卡停止输出场同步信号,显示器中场扫描电路停止工作,但行电路继续工作,灯丝也继续给阴极加热,虽然显示器处于黑屏,但可以被瞬间唤醒;
挂起状态下,显卡同时停止行、场扫描信号输出,显示器行、场扫描电路均停止工作,灯丝供电如果从行电路获得,此时灯丝也不亮了。挂起状态下只有电源维持工作,耗电量很少,但唤醒时间也较长。
提示,更多更祥细的有关显示器电源管理可到BIOS菜单配置。
BATT_DPMS_STANDBY=300:电池供电下显示器空闲超过5分种进入待机状态。
LM_AC_DPMS_STANDBY=1200:laptop_mode模式电源适配器供电下荧屏显示器超过20分种进入待机状态。
NOLM_AC_DPMS_STANDBY=1200:非laptop_mode模式电源适配器供电下荧屏显示器超过20分种进入待机状态。
CONTROL_TERMINAL=0
laptop_mode_tools是否控制终端(显示输出终端)关闭。值0为否,值1则是。
BATT_TERMINAL_BLANK_MINUTES=1
BATT_TERMINAL_POWERDOWN_MINUTES=2
电池供电情况下显示输出关闭和断电等候时间。
LM_AC_TERMINAL_BLANK_MINUTES=10
LM_AC_TERMINAL_POWERDOWN_MINUTES=10
laptop_mode模式电源适配器供电情况下显示输出关闭和断电等候时间。
NOLM_AC_TERMINAL_BLANK_MINUTES=10
NOLM_AC_TERMINAL_POWERDOWN_MINUTES=50
非laptop_mode模式电源适配器供电情况下显示输出关闭和断电等候时间。
上述这些设置指明了在多久时间后显示输出终端关闭并断电。如BLANK_MINUTES=2 and POWERDOWN_MINUTES=5意味着显示输出设备将在7分钟之后关闭并断电。
参数值的范围值在1到60分钟间,值0则表示禁止。
ENABLE_AUTO_HIBERNATION
ENABLE_AUTO_HIBERNATION=0:当电池将放完电时,是否允许laptop_mode_tools控制laptop自动进入睡眠,值0为否,值1则是。
HIBERNATE_COMMAND=/usr/sbin/hibernate:当触发电脑自动睡眠时将执行的命令为/usr/sbin/hibernate.
AUTO_HIBERNATION_BATTERY_CHARGE_PERCENT=2:当电池剩余电量为总电池充电量的百分之几时电脑将自动睡眠。
AUTO_HIBERNATION_ON_CRITICAL_BATTERY_LEVEL=1:当电池报告其放电到紧急情况时将启动电脑自动睡眠。
下面是一些系统内核默认参数,如果你不知道你要作什么,请不要随便改变它。
DEF_UPDATE=5
DEF_XFS_AGE_BUFFER=15
DEF_XFS_SYNC_INTERVAL=30
DEF_XFS_BUFD_INTERVAL=1
DEF_MAX_AGE=30
XFS_HZ=100
总结:本文通过结合laptop_mode_tools的输出信息来讲解laptop_mode_tools的配置文件,讲述了加载点控制、文件系统超前预读缓冲设置、脏数据处理、磁碟驱动器写缓冲、驱动器电源控制、内存数据同步时间、CPU变频及CPU过热保护设置、显示输出设备节省方案等方法相关知识。希望大家用好这个2.6内核加入的laptop_mode模式,用好你的laptop,也希望对想深入了解系统和对系统优化感兴趣的朋友启一个抛砖引玉的作用。
注:本文原创,传载请注明出处。谢谢!
来自:http://kw-gift.com/blog/index.php?entry=entry061025-180208
发表评论
-
JavaScript 胸罩尺寸计算器
2008-11-30 10:45 2474只在周末放松一下 ;) Ed Spencer 已经用Java ... -
JDB 的简单使用
2008-11-24 10:08 1322当新手开始学习Java 时 ... -
自定义classloader加密java程序
2008-11-21 16:32 14155大概想法是这样的: 1. 生成密钥用于在des算法中加密。 2 ... -
dr.scheme中不能输入字符问题的解决
2008-11-02 20:23 1724LANG=C drscheme -
mit-scheme出现HEAP_IN_LOW_MEMORY错误的解决办法
2008-11-01 22:29 1410sudo sysctl -w vm.mmap_min_addr ... -
linux下的GTKLookAndFeel.initSystemColorDefaults异常
2008-10-26 16:25 1301不能使用SystemLookAndFeel,不知跟发行版有没有 ... -
我的emacs配置文件~
2008-10-26 00:29 3461贴在这,免得以后丢了还得写~ (setq default ... -
Linux操作系统中如何使用ISO文件
2008-08-17 22:02 20961.什么是ISO文件? ISO文件:就是以iso为扩展名的文 ... -
VIM 快捷键(转)
2008-08-10 14:56 2319VIM快捷键: ctags 文件名 ... -
hardy的vim语法高亮
2008-08-10 14:54 1612hardy自带的vim不是完全版的,所以在设置syntax o ... -
ubuntu handy编译google gadgets
2008-08-10 11:40 1274simple step by step instruction ... -
在linux下转换psp的mp4
2008-08-09 23:00 1420开始使用mencoder,比较麻烦,参数总调整不好,http: ... -
Alpine Messaging System, the alternative to Pine.
2008-08-02 16:12 1091I just tried Alpine the email p ... -
lftp中文问题
2008-07-19 09:33 1446<!-- @page { si ... -
The greatest equations ever
2008-07-17 15:48 1178Maxwell's equations of electrom ... -
只许你大步的向前走
2008-05-07 01:14 1286借用许飞的一句歌词,这几天把《恰许同学年少》这张听了n遍,真该 ... -
java socket-message-作业慢慢写~今天就到这
2008-05-04 21:10 1618package org.tiantian.message.se ... -
Html解析生成纯文本-使用SAX以及htmlcleaner
2008-04-22 01:00 2065package testlucene; import jav ... -
从HTML抽取纯文本
2008-04-20 23:28 1797spider中需要提取纯文本: 1.javax.swing.t ... -
JSP使用多线程
2008-04-20 23:23 1662spider之中需要使用多线程去抓取网页,本来还有点疑惑,没想 ...
相关推荐
laptop_run.txt .sh
laptop_business024
Veritas Desktop and Laptop Option 9.0 管理指南是 Veritas Technologies LLC 發布的一份管理指南,旨在幫助用户了解如何使用 Veritas Desktop and Laptop Option 9.0 产品。该指南涵盖了产品的安装、配置、管理和 ...
在升级笔记本电脑时,首先要了解的是硬件组件的兼容性和性能提升的可能性。例如,内存(RAM)升级可以显著提高系统运行速度,但需确保选购的内存条与原设备型号兼容。硬盘(HDD/SSD)的更换或升级可提供更快的数据...
在“Ansible-laptop_install.zip”这个压缩包中,我们可以看到是针对新笔记本电脑进行自动化安装和配置的资源。 首先,Ansible 的工作原理基于 SSH(Secure Shell)协议,无需在目标机器上安装额外代理。只需要在...
laptop_business
Symantec Desktop and Laptop Option 7.5 管理指南适用于 Windows Symantec Desktop and Laptop Option 7.5 是一款功能强大的 endpoint 管理解决方案,旨在帮助用户保护和管理其桌面和笔记本电脑。以下是该解决方案...
【标题】"no-verity-opt-encrypt-6.0_LAPTOP_" 指的是一种针对LAPTOP设备的系统优化方案,特别是针对Android 6.0(Marshmallow)系统的。"no-verity"通常意味着禁用了数据分区的强制验证功能,这在刷机或者系统...
Veritas Desktop and Laptop Option 9.3.1 管理指南 本文档提供了 Veritas Desktop and Laptop Option 9.3.1 的管理指南,涵盖了该产品的使用、安装、配置和维护等方面的信息。本文档面向的是 IT 专业人员和系统...
例如,`laptop_mode`命令用于启用或禁用笔记本模式,`echo`命令可以用来设置相关参数,而`sysfs`文件系统中的节点则可以用来实时查看和调整系统状态。 在提供的压缩包文件"rickysarraf-laptop-mode-tools-4131377...
笔记要配置笔记本电脑模式脚本,请编辑/etc/laptop-mode/laptop-mode.conf 。 笔记本电脑模式常见问题解答可以在找到修订历史记录包含在“ Documentation目录中。 与Linux内核一起分发的原始笔记本电脑模式文档包含...
【标题】"-Hackintosh-OMEN_by_HP_Laptop_15-ce0xx-master.zip" 提供的是一个针对惠普OMEN by HP Laptop 15-ce0xx笔记本电脑的Hackintosh项目,即在非苹果硬件上安装苹果操作系统的工程。这个压缩包包含了一套专门为...
:laptop_computer: 上下文菜单 :laptop_computer: 一个Python库,用于创建和部署跨平台的本机上下文菜单。 快速开始 通过pip安装库: python -m pip install context_menu 创建并编译菜单: 您最多可以创建3行...
Java实践 它将包含Java中的所有逻辑问题和相关概念。... :rocket: :laptop_computer: 保持 :eye_selector: 在上面。 我将添加数据结构和算法实现以及与各种DSA主题相关的问题。 我每天都在工作!
2020年:grinning_face::beaming_face_with_smiling_eyes::grinning_face::beaming_face_with_smiling_eyes::grinning_face:秋招笔试面试合集,以及2019届公司真题模拟题集&附上自己的替代指南,:laptop_computer:...
"Laptop_Landing_page"项目显然关注的是为笔记本电脑设计的登陆页面,这通常是为了优化特定的目标用户群体,如笔记本电脑的潜在购买者或爱好者。在这样的页面中,设计必须清晰、引人入胜且具有高度的互动性。CSS...
Laptop_Screen_Broadcaster 在网络应用程序中将笔记本电脑屏幕广播到内部网络中的设备的项目。运行项目的步骤克隆存储库。 安装所需的库。 在同一网络中连接笔记本电脑和智能手机。 运行 program.py 文件。 URL 将...
USB_Laptop_Keyboard_Controller 此存储库包含使用旧笔记本电脑制作USB键盘和KVM所需的所有文件。 在查看USB键盘视频 在观看Pi KVM视频 请参阅将IBM Thinkpad 380ED键盘和Trackpoint转换为USB视频。 请参阅的键盘...
- **数据结构**:了解数组、链表、栈、队列、树(二叉树、AVL树、红黑树等)、图等基本数据结构,并能根据问题选择合适的数据结构。 - **算法**:熟练运用排序(快速排序、归并排序、堆排序等)、搜索(深度优先...