CPU和内存的关系:

  • CPU是负责运算和处理的
  • 内存是交换数据的

当程序或者操作者对CPU发出指令,这些指令和数据暂存在内存里,在CPU空闲时传送给CPU,CPU处理后把结果输出到输出设备上,输出设备就是显示器,打印机等。在没有显示完之前,这些数据也保存在内存里,如果内存不足,那么系统自动从硬盘上划分一部分空间作为虚拟内存来用。但写入和读取的速度 跟物理内存差的很远很远,所以,在内存不足的时候,会感到机器反应很慢,硬盘一直在响。
       512M的物理内存如果增加到2GB,你会感到电脑变得飞快。但内存512,即使你把CPU从单核换成双核,加速感觉也不明显。如果你本来就有2G内存,再增加2G,使用起来几乎没有多少性能的改变。在理论上,物理内存太大反而会减慢速度,因为它增加了寻址的时间。所以家用机器推荐使用2GB-4GB足矣。

CPU、内存、磁盘IO之间的关系

  • CPU:工人,干活的,判断以及逻辑处理
  • 内存:车间,工人干活的地方,车间中加工原料,当车间中没有原料了,在从仓库中取原料,对原料进行加工
    内存本身有一定的存储空间,对内存中的数据进行处理的速度比从硬盘取数据再处理的速度快很多
  • 硬盘:仓库,原料,数据存储

CPU对数据进行判断以及逻辑处理,本身不能存储数据,这时cpu从内存取数据进行逻辑计算,如果内存没有数据,才会从硬盘读数据到内存,再对数据进行处理
就像人吃饭一样,cpu就是人,内存就是碗,硬盘就是饭锅。
       当cpu进程等待,会造成内存开销的增加,内存不够用的时候会用到虚拟内存,导致虚拟内存的增加,这时磁盘IO开销就会增加,系统态sy%提升,cpu开销增加,内存里数据不够用,才用磁盘中取数据。
       内存中的信息会随断电而丢失,硬盘中的信息会持久化存在。

CPU过高的原因常有?

  • 计算量大,比如运算,连接查询,数据统计
  • 非空闲等待,比如IO等待、资源争用(同一资源被不同线程请求,而此资源又需要保持一致性,只能前一个释放后一个再访问,这样导致的等待)
  • 过多的系统调用,系统调用即调用操作系统提供的程序接口,比如Java项目中写日志,会调用系统接口进行日志写操作,这样会导致系统CPU使用率过高
  • 过多的中断,中断是CPU用来响应请求的机制,比如键盘的输入,鼠标的点击等都会产生中断,中断是通知CPU有任务需要响应,CPU停下正在执行的程序来响应当前的中断

CPU过高具体影响什么?

cpu使用率过高直接导致cpu温度过高,这样会简短cpu的寿命的,而且还会影响你对其他软件的正常使用,导致其他软件速度慢。
       如果CPU使用一直是在85%以上的话,会对电脑有危害的, 不会对CPU产生危害。
CPU的利用率是指CPU做运算时,达到自己额定频率的百分比,这个利用率高的时候,能够消耗更多的电能和产生更多的热量。
       超过75度会对CPU产生危害,因为当CPU温度超过75度时,除了可能烧坏CPU之外,还可能因为电子转移过快而影响CPU寿命。

内存吃紧的原因?

多数是过多的页交换和内存泄漏

页交换:内存不够用来存储需要的数据时,操作系统会把原内存中的部分内容释放掉(移除或者存入磁盘),然后把需要的内容载入,这个过程就是页交换。

参考博客:http://it.dataguru.cn/thread-542839-1-1.html
https://zhidao.baidu.com/question/221784091.html

CPU、内存、磁盘IO之间的关系相关推荐

  1. Linux系统监控命令整理汇总-掌握CPU,内存,磁盘IO等找出性能瓶颈

    的性能有问题,总之,每到晚上挖站否的主机就出现了不稳定的情况,系统负载忽高忽低.利用服务器日志分析利器:ngxtop和GoAccess也能查出有一些IP一直在不断地扫描服务器端口还有WP后台. 但是, ...

  2. cpu和内存的关系(CPU,内存和cache之间的关系)

    CPU.内存.主板三者间关系.插座形式.安装注意事项 这种问题很难回答,你可以找一本书看,呵呵 .我只能说出一点,CPU读取数据速度很慢,因为要从硬盘读取,所以用内存来读取.但是用 内存卡,段电后会丢 ...

  3. Java使用siger开源包获取服务器硬件信息(CPU 内存 网络 io等)

    Java使用siger开源包获取服务器硬件信息(CPU 内存 网络 io等) 通过使用第三方开源jar包sigar.jar我们可以获得本地的信息 1.下载sigar.jar sigar官方主页 sig ...

  4. linux磁盘io调优,Linux系统管理和调优(内存、CPU、磁盘IO、网络)

    系统管理 Author:Rich七哥 查看 CPU 负载相关工具,找出系统中使用 CPU 最多的进程 查看 Memory 运行状态相关工具,找出系统中使用内存最多的进程 查看 IO 运行状态相关工具, ...

  5. vc++6.0获取磁盘基本信息_分享一个实用脚本--一键获取linux内存、cpu、磁盘IO等信息...

    概述 今天主要分享一个shell脚本,用来获取linux系统CPU.内存.磁盘IO等信息. 脚本 #!/bin/bash # 获取要监控的本地服务器IP地址 IP=`ifconfig | grep i ...

  6. cpu(处理器)、内存、硬盘之间的关系

    前面提到了,电脑之父--冯·诺伊曼提出了计算机的五大部件:输入设备.输出设备.存储器.运算器和控制器. 我们看一下现在我们电脑的: 键盘鼠标.显示器.机箱.音响等等. 这里显示器为比较老的CRT显示器 ...

  7. cpu、内存、硬盘之间的关系

    前面提到了,电脑之父--冯·诺伊曼提出了计算机的五大部件:输入设备.输出设备.存储器.运算器和控制器. 我们看一下现在我们电脑的: 键盘鼠标.显示器.机箱.音响等等. 这里显示器为比较老的CRT显示器 ...

  8. 一键获取linux内存、cpu、磁盘IO等信息脚本编写,及其原理详解

    一.脚本 今天主要分享一个shell脚本,用来获取linux系统CPU.内存.磁盘IO等信息. #!/bin/bash # 获取要监控的本地服务器IP地址 IP=`ifconfig | grep in ...

  9. docker(三)——cpu/内存/磁盘资源控制

    目录 一.资源控制 1.1 cgroups工具 1.1.1 概述 1.1.2 功能 1.2 设置CPU使用率上限 1.2.1 cpu-period与cpu-quota 1.2.2 查看两个配额数值 1 ...

最新文章

  1. 【每日一英语】“baker's dozen”是“十几”呢?
  2. linux 内核模块 编译错误 include/linux/mmzone.h:18:26: fatal error: linux/bounds.h: No such file or director
  3. 【PHP】函数的引用返回
  4. Hadoop集群添加新节点正确操作步骤
  5. 手机技巧:手机电量为啥到20%就会提醒充电,看完你就懂了!
  6. python多线程,多进程,线程池,进程池
  7. 每个人都可以创业成功,不要急于求成,慢慢来
  8. Java springboot访问templates的html和静态资源
  9. 51nod-1562:玻璃切割(O(n)模拟)
  10. 经典参考书:《编程之美——微软技术面试心得》
  11. 网络爬虫的基本原理(一)
  12. this conn php,测试connect.php文件出现问题
  13. PS AD命令之Remove-adcomputer!
  14. 10个文献、期刊、论文、学术查找的学术网站整理
  15. 如何为您的ADC选择最合适的基准电压源和放大器
  16. 各大洲时区以及Linux环境下修改时区
  17. python——and和or逻辑运算符用法详解
  18. VirtualBox+CentOS6.5安装增强功能包 - Building the main Guest Additions module [失败]
  19. [大数据计算基础] 大数据计算系统
  20. 中国人身材测试小软件编码,测试 || 我怀疑你是假中国人,不信你来试试

热门文章

  1. 51单片机DS1302时钟芯片应用Proteus仿真
  2. 怎样理解最小二乘法原理及其用途
  3. 2017安徽省计算机一级试题,2017年计算机一级练习试题「附答案解析」
  4. 《最详细的docker+php开发环境教程》(五) 搭建开发环境概要
  5. tomcat部署jar包
  6. 将项目部署到Linux系统上
  7. xmlhttp实现文件上传
  8. 课程设计题目答案java,java课程设计题目及源代码
  9. 【听】情商,理性和感性之间的平衡
  10. 如何快速的搭建自己的云盘