首页
学习
活动
专区
圈层
工具
发布

linux内核调度算法(2)–CPU时间片如何分配

就是在这颗CPU上,会比较均匀的把时间分配给这几个nginx worker,每个worker进程运行完一个时间片后,内核需要做进程切换,把正在运行的进程上下文保存下来。...当然,实际的运行进程里,大部分并不是nginx这种希望独占CPU全部时间片的进程,许多进程,比如vi,它在很多时间是在等待用户输入,这时vi在等待IO中断,是不占用时间片的,内核面对多样化的进程,就需要技巧性的分配...内核分配时间片是有策略和倾向性的。换句话说,内核是偏心的,它喜欢的是IO消耗型进程,因为这类进程如果不能及时响应,用户就会很不爽,所以它总会下意识的多分配CPU运行时间给这类进程。...通过动态调整进程的优先级,以及分配不同长短的CPU时间处来实现。先说内核如何决定时间片的长度。 对每一个进程,有一个整型static_prio表示用户设置的静态优先级,内核里它与nice值是对应的。...内核就是这么偏爱交互型进程,从上面的优先级和时间片分配上都能看出来。实际上,内核还有方法对交互型进程搞优待。

7.9K40
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Linux系统如何查看版本信息,内核、发行版、cpu、所有版本

    查看当前操作系统内核信息:uname -a查看当前操作系统版本信息:cat /proc/version查看当前操作系统发行版信息:cat /etc/issue 或 cat /etc/redhat-release...查看cpu相关信息,包括型号、主频、内核信息等:cat /proc/cpuinfo列出所有版本信息:lsb_release -auname -a #查看当前操作系统内核信息cat.../proc/version #查看当前操作系统版本信息cat /etc/issue 或 cat /etc/redhat-release #查看当前操作系统发行版信息cat /proc/cpuinfo...#查看cpu相关信息,包括型号、主频、内核信息等lsb_release -a #列出所有版本信息...说明没安装lsb_realease,可以执行命令yum install -y redhat-lsb安装lsb_realease,在线安装完成 #yum install -y redhat-lsb 以后,再次查看

    8.3K10

    Linux:查看服务器信息,CPU、内存、系统版本、内核版本等

    还是最近工作的总结,在做一些性能验证,这就需要要根据服务器的配置综合考虑来做进一步的结论论证,废话不多说 查看Linux内核版本 第一种方式 cat /proc/version 第二种方式 uname...-a 个人偏推崇第一种方式吧,能够更明显的看到版本和一些详细信息 查看Linux系统版本 第一种方式 这个命令适用于所有的Linux发行版,包括Redhat、SuSE、Debian…等发行版。...Linux发行版 cat /etc/issue CPU 首先我们应该知道通常说的CPU核数,是指物理总核数 总核数 = 物理CPU个数 X 每颗物理CPU的核数 总逻辑CPU数 = 物理CPU个数 X...每颗物理CPU的核数 X 超线程数 查看CPU信息(型号) cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c 物理CPU个数 cat /proc...查看linux系统和CPU型号,类型和大小 cat /proc/cpuinfo 查看linux 系统内存大小的信息,可以查看总内存,剩余内存,可使用内存等信息 cat /proc/meminfo 相关信息至此

    7.3K00

    【Linux 内核 内存管理】Linux 内核内存布局 ③ ( Linux 内核 动态分配内存 系统接口函数 | 统计输出 vmalloc 分配的内存 )

    文章目录 一、Linux 内核 动态分配内存 系统接口函数 二、统计输出 vmalloc 分配的内存 一、Linux 内核 动态分配内存 系统接口函数 ---- Linux 内核 " 动态分配内存 "...是通过 " 系统接口 " 实现的 , 下面介绍几个重要的 接口函数 ; ① 以 " 页 " 为单位分配内存 : alloc_pages , __get_free_page ; ② 以 " 字节 " 为单位分配..." 虚拟地址连续的内存块 " : vmalloc ; ③ 以 " 字节 " 为单位分配 " 物理地址连续的内存块 " : kmalloc ; 注意 该 " 物理地址连续的内存块 " 是以 Slab 为中心的...; 二、统计输出 vmalloc 分配的内存 ---- 执行 grep vmalloc /proc/vmallocinfo 命令 , 可以统计输出 通过 vmalloc 函数分配的 " 虚拟地址连续的内存块

    6.7K30

    Linux下查看内核、CPU、内存及各组件版本的命令和方法

    查看内核版本: uname -a                          more /etc/*release                           more /etc/redhat-release...  grep "model name" /proc/cpuinfo | cut -f2 -d:   怎么样,linux的命令就要这样熟悉。   ..." | awk '{print $2}'   三:查看cpu是32位还是64位   查看CPU位数(32 or 64)   #getconf LONG_BIT   #echo $HOSTTYPE   #...uname -a   四:查看当前linux的版本   #more /etc/RedHat-release   #cat /etc/redhat-release   五:查看内核版本   #uname...4.当前用户名:a.getuid()获取当前用户的uid;b.getpwuid(uid)或者用户名 5.cpu名称:/proc/cpuinfo ’model name‘字段 6.cpu内核数:/proc

    6.6K20

    linux查看CPU使用率

    top命令可以看到总体的系统运行状态和cpu使用效率 %us: 表示用户空间程序的cpu使用效率 %sy:表示系统空间程序的cpu使用效率 %ni: 表示用户空间通过nice调度过的程序的cpu使用效率...%id: 空闲cpu %wa:cpu运行时等待io的时间 %hi: cpu运行过程中硬中断的数量 %si: cpu处理软中断的数量 %st: 被虚拟机偷走的cpu 2: vmstat vmstat 1...每秒采集一次cpu使用率,采集5次 3:sar 每秒采集一次cpu,共采集5次 ? 查看某个cpu的使用情况 sar -P 0 -u 1 5 ? 进程队列长度和平均负载状态 sar -q 1 5 ?...9: 查看CPU个数 cat /proc/cpuinfo | grep "physical id" | uniq | wc -l 10: 查看CPU核数 cat /proc/cpuinfo | grep..."cpu cores" | uniq 11: 查看CPU型号 cat /proc/cpuinfo | grep 'model name' |uniq ?

    7.4K20

    linux cenots 查看cpu核数

    2.逻辑CPU Linux用户对 /proc/cpuinfo 这个文件肯定不陌生. 它是用来存储cpu硬件信息的,信息内容分别列出了processor 0 – n 的规格。...ht) 备注一下:Linux下top查看的CPU也是逻辑CPU个数 3.CPU核数 一块CPU上面能处理数据的芯片组的数量、比如现在的i5 760,是双核心四线程的CPU、而 i5 2250 是四核心四线程的...4.查看CPU信息 当我们 cat /proc/cpuinfo 时,具有相同core id的CPU是同一个core的超线程,具有相同physical id的CPU是同一个CPU封装的线程或核心。...下面举例说明 【1】查看CPU型号:cpu型号是E7-4820 [root@node1 ~]# cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c...| grep "processor" |wc -l 32 【4】查看cpu是几核:cpu是8核 [root@node1 ~]# cat /proc/cpuinfo | grep "cores"|uniq

    12.5K30
    领券