zoukankan      html  css  js  c++  java
  • cpu相关概念

    1.cpu使用率跟负载之间有什么关系

    cpu使用率:程序在运行期间实时占用cpu的百分比

    负载:正在调用cpu的进程+正在等待io的进程之和

    理论情况是cup使用率越高,负载就越高。一般是一个1个cpu,1个负载。负载安全为cpu颗粒数的0.7-0.8倍。

    (1)cpu使用率高,也会出现负载低的情况:

    当程序进行复杂的运算,但是只有一个进程时,cpu使用率就回很高,但是负载低。

    (2)cup使用率低,负载高情况:

    当系统有大量的io读写出现等待时,消耗的cpu使用率少,但是负载高

    2.cup上下文切换和中断

    (1)cup上下文切换

    每个进程都会分到CPU的时间片来运 行,当一个进程用完时间片或者被更高优先级的进程抢占后,它会备份到CPU的运行队列中,同时其他进程在CPU上运行。这个进程切换的过程被称作上下文切 换。过多的上下文切换会造成系统很大的开销。

    导致上下文切换的原因有:

    1、当前任务的时间片用完之后,系统CPU正常调度下一个任务;进程切换会产生cpu上下文切换
    2、当前任务碰到IO阻塞,调度线程将挂起此任务,继续下一个任务;
    3、多个任务抢占锁资源,当前任务没有抢到,被调度器挂起,继续下一个任务;
    4、用户代码挂起当前任务,让出CPU时间;
    5、硬件中断

    (2)cup中断

    产生上下文切换时,进入运行队列的进程没执行完,不能连续执行时就叫中断

    3.当启动程序时,如果程序读写磁盘,读写日志,那么程序消耗的是系统cup(sys%),因为io的读写时,系统调用内核,所有消耗的系统的cpu

    4.物理内存和虚拟内存的区别

    虚拟内存是磁盘开辟出来当做物理内存使用,当物理内存不足时,系统使用虚拟内存时特别慢

  • 相关阅读:
    Atom + activate-power-mode震屏插件Windows7下安装
    通过Google身份验证器加强Linux帐户安全
    adb 常用命令总结
    excel 文件加密
    docker 进入容器命令行 /bin/bash 后不支持中文
    无法获取 gcr.io 上的镜像的解决方法
    mysql unix 时间戳转换
    docker 镜像如何导入导出以及建立自己的镜像仓库
    asp.net core 文件的处理
    docker compose 设置环境变量
  • 原文地址:https://www.cnblogs.com/zzzao/p/9207746.html
Copyright © 2011-2022 走看看