linux进入休眠命令 linux休眠指令

如何设置linux进程的休眠将一个进程置于休眠状态linux进入休眠命令,一般步骤如下:
0. 定义并初始化(如果还没有的话)一个等待队列头(wait_queue_head_t)linux进入休眠命令,这个等待队列头应该是能被要休眠的进程和负责唤醒的进程都能访问 到 。
1. 对进程的每次休眠,定义并初始化一个等待队列(wait_queue_t)
2. 把等待队列加入到相应的等待队列头中 。
3. 把进程状态置为 TASK_INTERRUPTIBLE 或 TASK_UNINTERRUPTIBLE
4. 再次检查休眠条件是否为真,否则跳过第5步
5. 执行 schedule()
6. 清理:将进程状态改为 TASK_RUNNING(通常已经是,除非是从第4步跳过来的) , 把等待队列从等待队列头中删除(防止多次唤醒)
linux无读者硬盘不能休眠hd-idle无论怎样设置都无法使用硬盘在空闲时休眠,实在找不到原因 。在查找相关资料时发现在linux操作系统还有个叫hdparm的硬盘控制软件,然后在OPENWRT软件搜索果真有这个软件,然后就安装试试 。不想真能让我的硬盘在设置好的空闲时间后进入省电模式也可以说是休眠模式吧!给出我的安装使用过程 。注:我的路由(HG255D刷OPENWRT)装有迅雷固件、个人博客、aria2、百度同步+常用共享组件!使用还是可以的负载不算很高 。之前有人说装迅雷固件后不能休眠,但我的可以休眠 。不能休眠的可以试试这个软件...
OPENWRT路由上安装与设置:
一、安装hdparm
opkg update
opkg install hdparm
二、执行命令:
hdparm -S 60 /dev/sda (放到开机启动项就可以每次开机都生效!)
hdparm -y /dev/sda (这个命令是立即休眠 , 测试硬盘是否休眠成功 。)
说明:hdparm -S 60 /dev/sda 设置超时值(5分钟)使硬盘进入休眠模式(省电模式)(这个 S数值/12=分钟); /dev/sda 为挂载的硬盘路径 , ls /dev/sda*查看你的盘符 。
三、执行完hdparm -S 60 /dev/sda 这个命令时你的路由已经设置为5分钟休眠了 。(注:5分钟硬盘无操作时省电模式,休眠时接到读写命令会自动唤醒进入工作模式)**Linux hdparm 命令**
四、hdparm功能说明:显示与设定硬盘的参数 。
语法:hdparm -CfghiIqtTvyYZ-A 0或1-d 0或1-K 0或1-n 0或1-P -S -W 0或1[设备]
补充说明:hdparm可检测 , 显示与设定IDE或SCSI硬盘的参数 。
测试各硬盘读取速度判断硬盘故障
在服务端命令窗口中执行如下命令
hdparm -t /dev/hda (IDE硬盘)
hdparm -t /dev/sda (SATA、SCSI、硬RAID卡阵列)
hdparm -t /dev/md0 (软RAID设备)
测试结果在空载情况下应 40M/s ,在负载情况下平均应20M/s 为正常 , 如测试结果极低则需要进一步使用硬盘专用检测工具测试是否为硬盘故障 。
参数:
-a 设定读取文件时,预先存入块区的分区数,若不加上选项,则显示目前的设定 。
【linux进入休眠命令 linux休眠指令】-A0或1 启动或关闭读取文件时的快取功能 。
-c 设定IDE32位I/O模式 。
-C 检测IDE硬盘的电源管理模式 。
-d0或1 设定磁盘的DMA模式 。
-f 将内存缓冲区的数据写入硬盘,并清楚缓冲区 。
-g 显示硬盘的磁轨 , 磁头,磁区等参数 。
-h 显示帮助 。
-i 显示硬盘的硬件规格信息,这些信息是在开机时由硬盘本身所提供 。
-I 直接读取硬盘所提供的硬件规格信息 。
-k0或1 重设硬盘时 , 保留-dmu参数的设定 。
-K0或1 重设硬盘时 , 保留-APSWXZ参数的设定 。
-m 设定硬盘多重分区存取的分区数 。
-n0或1 忽略硬盘写入时所发生的错误 。
-p 设定硬盘的PIO模式 。

推荐阅读