电源管理
Morton说: “我们在电源管理方面仍相当幼稚。”许多设备能够支持低功率状态。譬如说,不能接收入站信息流的网卡可以使用较低功率的状态。但Linux只支持开和关状态,Morton说: “我们让开和关状态正常工作有难度。”
Torvalds说,可正常工作(随Linux附带的驱动程序数量超过其他任何一款操作系统)的驱动程序与实现了高级硬件特性(如节电模式)的驱动程序是有区别的。许多Linux驱动程序仍缺少后一种特性。他说: “我们有大量驱动程序,但99%的人关注的是基本功能。许多人希望驱动程序也能够有效使用电源,并且很好地处理暂停/恢复操作,但这与‘可正常工作’相比绝对是次要问题。”
英特尔公司的开源技术中心主任Imad Sousou说,英特尔的几名开发人员正在研究电源问题。
其中一个项目就是针对多核处理器的节电功能。Sousou说,在一个双核处理器上,让一个核心进入低功率的“睡眠”模式,可以把处理器的功耗从34瓦减少到12瓦。他说,不过尽管处理器的节电功能在安装的现有Linux上使用良好,但在PCI设备的驱动程序方面仍然有许多工作要做。
不像其他重要、新颖又引人注目的内核特性,譬如新的虚拟化技术那样,电源问题需要逐步解决,不能一蹴而就。
近期在内核端电源管理方面向前迈出的一步仍有待其他计划迎头赶上。Red Hat公司的Ingo Molnar和嵌入式Linux开发公司Linutronix的创办人Thomas Gleixner的开发工作为Linux添加了名为“无时钟内核(tickless)”的节电特性,它可以关闭Linux常用的定时器中断(每秒通常中断 100次到1000次)。取代周期性定时器的无时钟内核只有在需要时才唤醒。
虽然无时钟内核有望使成千上万个Linux设备进入耗电量很小的睡眠状态,但两个限制因素成了它的绊脚石。首先,无时钟内核只适用于32位内核,不能适用于新服务器上通常使用的64位内核(据说很快会有支持64位的功能)。其次,许多用户程序仍在没有必要的时候唤醒内核—— 譬如说,为了检查有没有新文件而唤醒内核,其实用户程序可以使用名为inotify的功能,让内核告知何时出现了新文件。
检测工具
Morton说: “我认为我们没有向经验丰富的编程人员提供足够多的信息,从而告诉他们内核里面的情况。”不过在三大缺口当中,检测工具方面恐怕是进展最大的。Morton列出了检测工具方面的诸多亮点,包括每个任务的I/O操作统计以及每个进程的内存占用空间监控。
他还提到了Matt Mackall 用来衡量进程使用内存情况的两个尺度PSS和USS是可喜的进步。当前的内存使用统计数字并不能表明多少进程在共享某个内存页面,所以用户无法得到准确的衡量值来回答简单的问题,譬如“如果我终止这个进程,可以释放多少内存?”Mackall的工作简化了找出占用大量内存的程序。
Morton说,目前,基于IA-64平台的Linux可以通过perfmon来使用该平台的硬件性能计数器,“我们最终会获得其他平台的此类计数器。”
用户现在可以获得CPU的许多性能分析事件,然后可以进行高速缓存未命中分析之类的操作。然而,大多数实际的性能问题出现在较高层面上; 而实际上,简单的周期分析就往往足以获得底层的性能数据,从而了解低层问题是什么。
声明:LUPA开源社区刊登此文只为传递信息,并不表示赞同或者反对。

迷你博客
日志
相册
群组
分享
电影
问答
停车游戏
奴隶游戏
开源大搜索
项目点评
礼品中心
职业评测
开源博客
新闻阅读
考试练习
LW3DK开发
开源论坛
下载频道



查看全部评论(1) 最新评论