Unit 9 Kernel Timing and Process Latency 内核定时与进程延时
学习目标:
A.了解CPU 是怎样追踪时间的
B.调整CPU的访问次数
C.调整调度延时
D.虚拟机上的CPU任务调整
 
9.1How Linux tracks time Linux下的时间追踪
A. 硬件定时器是靠使用时钟来完成计时的。
包括以下时间资源:
a. Real time clock(RTC):实时时钟是用来持久存放系统时间的设备,即便系统关闭后,它也可以靠主板上的微电池提供的电力保持系统定时。
b. Time stamp counter(TSC):时间戳计数器
c. Advanced Programmable Interrupt Controller(APIC)可编程中断控制器
d. Programmable Interrupt counter (PIC)可编程中断计数器
B. 系统上所有的事件都是通过节拍数(Ticks)来控制的
a. 通过内核变量jiffy来记录系统启动后产生的节拍的总数.
b. PIC产生时间中断的频率(Hz/秒):
标准:1000Hz(1节拍=1ms)
Kernel-Xen: 250Hz(1节拍=4ms)
 
查看实时时钟: cat /proc/driver/rtc
 
9.2Tuning system ticks 系统节拍数调整
A. 在内核启动参数里调整
tick_divider=value
可使用下列值:
   2=500 Hz
   4=250 Hz
   5=200 Hz
   8=125 Hz
   10= 100 Hz
只限于X86和X86_64架构,不支持Xen.
       B.结论
           调整系统节拍数可以:
a. 减少CPU负载
b. 这种调度对交互式进程会不公平.
 
9.3Tuning processor speed 调整处理器速度
A.系统会自动调整CPU速度
       a. 不要使用CPU时钟周期来提升效率
        b. 可以在不影响性能的情况下减少cpu速度
        c.系统启动时通过/etc/init.d/cpuspeed文件来设置默认值
     B. 配置指南
        配置文件:/etc/init.d/cpuspeed
        参数:   MAX_SPEED  
                 MIN_SPEED
C. 结论
a. 不改变IO范围情况下可以减少电源消耗。
b. 调整cpu时钟频率会干扰时间记录。
 
 
9.4IRQ balancing负载均衡
A.硬中断会抢占当前进程
       a. 中断会产生延时
B. 查看IRQ
         procinfo
         cat /proc/interrupts
C. IRQ负载均衡

RHCA学习笔记:RH442-Unit9内核定时与进程延时的更多相关文章

  1. Linux内核分析第六周学习笔记——分析Linux内核创建一个新进程的过程

    Linux内核分析第六周学习笔记--分析Linux内核创建一个新进程的过程 zl + <Linux内核分析>MOOC课程http://mooc.study.163.com/course/U ...

  2. Python Web学习笔记之并发编程的孤儿进程与僵尸进程

    1.前言 之前在看<unix环境高级编程>第八章进程时候,提到孤儿进程和僵尸进程,一直对这两个概念比较模糊.今天被人问到什么是孤儿进程和僵尸进程,会带来什么问题,怎么解决,我只停留在概念上 ...

  3. Linux学习笔记(16)Linux前后台进程切换(fg/bg/jobs/ctrl+z)

    关键词:Linux前后台进程切换,linux进程切换 fg.bg.jobs.&.ctrl + z都是跟系统任务有关的,虽然现在基本上不怎么需要用到这些命令,但学会了也是很实用的一.& ...

  4. RHCA学习笔记:RH442-Unit8进程与调度

      UNIT 8  Processes and the Scheduler 进程与调度 学习目标 A. CPU cache 与Service time之间的关系 B. 分析应用程序使用CPU cach ...

  5. RHCA学习笔记:RH442-Unit6 磁盘性能调整

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://alansky.blog.51cto.com/634963/654451 UNIT ...

  6. 学习笔记之Linux内核编译过程

    准备工作 物理主机:win8(32位) 虚拟机工具:VirtualBox_4.3.16_Win32 虚拟主机:xubuntu-12.04.4 安装virtualBox功能增强包 设置好虚拟机与主机的共 ...

  7. RHCA学习笔记:RH442-Unit5 队列原理

    NIT 5 Queuing Theory 队列原理 目标: 1.明白性能调优的关键术语       2. 应用队列技术解决性能问题       3.明白性能调优的复杂性   5.1    Introd ...

  8. Linux内核学习笔记2——Linux内核源码结构

    一 内核组成部分 内核是一个操作系统的核心,主要由五个部分组成:进程调度,内存管理,虚拟文件系统,网络结构,进程间通信. 1.进程调度(SCHED) 控制进程对CPU的访问.当需要选择下一个进程运行时 ...

  9. FreeRTOS学习笔记3:内核控制及开启调度器

    内核控制函数API 应用层中不会用到taskYIELD() //任务切换.会自动切换当前就绪表里优先级最高的任务 临界区 //不能被打断的代码段任务中进入临界区任务中退出临界区中断服务进入临界区中断服 ...

随机推荐

  1. SPRING IN ACTION 第4版笔记-第四章ASPECT-ORIENTED SPRING-011-注入AspectJ Aspect

    一. 1. package concert; public interface CriticismEngine { public String getCriticism(); } 2. package ...

  2. 奇怪的JS

    有的时候发现JS是一门很高深的语言,不是我等俗人可以学会,没有private,没有public不说,居然连Class都没有,这个世界就是这样,有的东西你不一定非要想通,也不一定非要剖根问底,有的时候你 ...

  3. chrome插件 postman插件 接口测试、API & HTTP 请求调试工具

    Postman 是一个非常棒的Chrome扩展,提供功能强大的API & HTTP 请求调试. 它能够发送任何类型的HTTP requests (GET, HEAD, POST, PUT..) ...

  4. 编译android后找不到ramdisk-u.img[已解决]

    --- --- #!/bin/bash OUTDIR=out/target/product/tiny4412AHOSTBIN=out/host/linux-x86/bin # install vend ...

  5. poj1054The Troublesome Frog

    链接 想O(n*n)的DP  怎么想都超内存 看讨论有说hash+DP过的 实现比较繁琐 大部分直接暴力过了 直接枚举每个i j 与他们在一条线上的点 是不是给出的点 注意它必须能跳进和跳出 #inc ...

  6. 关于JQuery与AJAX验证

    AJAX验证,其实就是JS代码,他就是先利用Jquery或JS获取一个值,然后偷偷的把值传送到验证界面,然后在偷偷的把验证后的结果给传回来,利用传回来的结果在进行JS判断,从而不会刷新界面. 用图片解 ...

  7. [light oj 1013] Love Calculator

    1013 - Love Calculator Yes, you are developing a 'Love calculator'. The software would be quite comp ...

  8. iOS 开发者计划申请 2014 年最新心得[转]

    iOS 开发者计划申请 2014 年最新心得 http://myfairland.net/ios-developer-program/

  9. apache配置虚拟主机的三种方式

    Apache 配置虚拟主机三种方式   一.基于IP 1. 假设服务器有个IP地址为192.168.1.10,使用ifconfig在同一个网络接口eth0上绑定3个IP: [root@localhos ...

  10. Linux中ifreq 结构体分析和使用

    结构原型: struct ifreq{#define IFHWADDRLEN 6 union {  char ifrn_name[IFNAMSIZ];   } ifr_ifrn;  union {   ...