其实这也没什么值得惊讶的,因为在理解了操作系统调度,以及cpu的指令周期后,都可以用程序模拟出来

下面是编程之美给出的正弦曲线,在一定间隔内,一半时间运行,一半时间sleep。Windows自带的perfmon可以查看详细曲线

#include<iostream>
#include<string.h>
#include<sstream>
#include<set>
#include<algorithm>
#include<vector>
#include<map>
#include<queue>
#include<Windows.h>
#include<math.h>
const double SPLIT = 0.001;
const int COUNT = 2000;
const double PI = acos(-1);
const int INTERVAL = 30;
int main(){double busyspan[COUNT];double idlespan[COUNT];double radian = 0.0;int half = INTERVAL / 2;for (int i = 0; i < COUNT; i++) {busyspan[i] = (double)(half + (sin(PI*radian)));idlespan[i] = INTERVAL - busyspan[i];radian += SPLIT;}double starttime = 0;int j = 0;while (true) {j = j % COUNT;starttime = GetTickCount();while ((GetTickCount() - starttime) < busyspan[j]);Sleep(idlespan[j]);j++;}return 0;
}

编程之美之控制cpu线相关推荐

  1. CPU占用率控制-编程之美初学者参考文档 1.1(上)

    此文档的目的是帮助更多初学<编程之美>的Programmers少走弯路,致力于顺藤摸瓜.笔者也是一名编程初学者.实际编写中时有重新发明轮子的行为,并已患上重度查询文档症.精巧的算法往往伴随 ...

  2. 让多核CPU占用率曲线听你指挥(Windows实现)——《编程之美》1.1学习笔记

    让多核CPU占用率曲线听你指挥--<编程之美>1.1学习笔记 Problem: 写一个程序,让用户来决定Windows任务管理器(Task Manager)的CPU占用率.有以下几种情况: ...

  3. 《编程之美》读书笔记23: 1.1 让CPU占用率曲线听你指挥

    题目:写一个程序,让用户来决定Windows任务管理器(Task Manager)的CPU占用率.程序越精简越好,计算机语言不限.例如,可以实现下面三种情况:   1.    CPU的占用率固定在50 ...

  4. 编程之美读书笔记_1.1_让CPU占用率曲线听你指挥

    题目:写一个程序,让用户来决定Windows任务管理器(Task Manager)的CPU占用率.程序越精简越好,计算机语言不限.例如,可以实现下面三种情况:   1.    CPU的占用率固定在50 ...

  5. linux c 控制cpu占用率

    之前在<编程之美>上提到说控制cpu的使用率使能在任务管理器上画一条正弦线 现在下面提供一个在Linux平台上实现的控制cpu频率在某个值 cpu_load.c #include < ...

  6. linux控制cpu占用率

    之前在<编程之美>上提到说控制cpu的使用率使能在任务管理器上画一条正弦线 现在下面提供一个在Linux平台上实现的控制cpu频率在某个值 cpu_load.c #include < ...

  7. 《编程之美》学习笔记

    师兄留下了<编程之美>,今天翻开之后,打算开始学习,为下步工作准备: 先记下几句话吧: 1.题目关键不在于答案,在于思考问题的方法. 2.微软职位:1AR 协助研究员2,DEV 软件开发工 ...

  8. 读书笔记:《编程之美》

    <编程之美>读书笔记 我所阅读的<编程之美>是由<编程之美>小组所编写,由电子工业出版社出版,出版时间为2018年11月.此书的由来是有关于微软的面试,后来被用来教 ...

  9. 初读《编程之美》就想秀一下,结果还翻车了

    文章目录 一.前言 二.我的思路 三.Code 四.翻车现场 五.后续问题 一.前言 ---如何写一个短小的程序,让 Windows 的任务管理器显示CPU的占用率为50%? 这道有趣的面试题我是这两 ...

最新文章

  1. 我总结的js性能优化的小知识
  2. linux下安装oracle客户端,实现远程连接oracle库,导出数据表
  3. 电路交换网络中,每条电路独占其经过的物理链路。
  4. 【渝粤题库】陕西师范大学210001儿童心理学 作业(高起专、高起本)
  5. 内卷的世界,我们是否可以换一种思维生活?
  6. HDU 4812 D Tree
  7. mfc mysql 选择删除文件_MFC应用实例:[60]删除指定类型的文件
  8. NSArray和NSString的联合使用
  9. java棋盘覆盖分治法_【单选题】实现棋盘覆盖算法利用的算法是( ) A. 分治法 B. 动态规划法 C. 贪心法 D. 回溯法...
  10. mongodb常用操作——命令行
  11. vigenere加密与解密算法
  12. 路由器工作原理与静态路由配置
  13. linux系统python中的列表 || python中的集合
  14. Spring Cloud 基本理论概述
  15. 编译原理个人作业--第五章——基于 编译原理 国防工业出版社 第三版
  16. 机房温度可视化:物联网下的数据中心环境运维新方式
  17. 喵星史话(一)——猫的起源
  18. 从三网融合看音视频即时通讯的市场与挑战
  19. Quartz定时任务项目中的应用
  20. iphone相册储存空间已满_iPhone手机提示icloud储存空间已满怎么办?icloud储存空间已满怎么解决?...

热门文章

  1. Spring什么是复杂对象
  2. RabbitMQ单个发布确认
  3. InnoDB的行锁和表锁
  4. dubbo每次都要连zookeeper?
  5. curator分布式锁的基本使用
  6. EventLoopGroup 与Reactor
  7. Java领域的对象如何传输-如何解决报错的问题呢?
  8. 什么是Spring inner beans?
  9. 高仿真的类-BeanWrapper
  10. 加速静态内容访问速度的CDN