admin管理员组文章数量:1566356
2024年4月2日发(作者:)
1.1 让CPU占用率曲线听你指挥
1
《编程之美——微软技术面试心得》
题目《让CPU占用率曲线听你指挥》
问题
写一个程序,让用户来决定Windows任务管理器(Task Manager)的CPU占用率。程
序越精简越好,计算机语言不限。例如,可以实现下面三种情况:
1.
CPU的占用率固定在50%,为一条直线;
2.
CPU的占用率为一条直线,但是具体占用率由命令行参数决定(参数范围1~ 100);
2
1.1 让CPU占用率曲线听你指挥
3.
CPU的占用率状态是一个正弦曲线。
1
分析与解法
有一名学生写了如下的代码:
while (true)
{
if (busy)
i++;
else
}
然后她就陷入了苦苦思索:else干什么呢?怎么才能让电脑不做事情呢?CPU使用率为
0的时候,到底是什么东西在用CPU?另一名学生花了很多时间构想如何“深入内核,以控
制CPU占用率”——可是事情真的有这么复杂么?
MSRA TTG(Microsoft Research Asia, Technology Transfer Group)的一些实习生写了各
种解法,他们写的简单程序可以达到如图1-1所示的效果。
图1-1 编码控制CPU占用率呈现正弦曲线形态
看来这并不是不可能完成的任务。让我们仔细地回想一下写程序时曾经碰到的问题,如
1
作者注:当面试的同学听到这个问题的时候,很多人都有点意外。我把我的笔记本电脑交给他们说,这是开
卷考试,你可以上网查资料,干什么都可以。大部分面试者在电脑上的第一个动作就是上网搜索“CPU 控
制50%”这样的关键字,当然没有找到什么直接的结果。不过这本书出版以后,情况可能就不一样了。
版权声明:本文标题:编程之美——微软技术面试心得:task manager 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.elefans.com/xitong/1712070217a341620.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论