Notes on Understanding the Linux Kernel

原创 2015年11月17日 17:36:03

第五章 定时测量

硬时钟

内核与三种时钟打交道

  • 实时时钟 Real Time Clock RTC
  • 时间标记计数器 Time Stamp Counter TSC
  • 可编程间隔定时器 Programmable Interval Time PIT

实时时钟

RTC独立于CPU和其他所有芯片,靠小电池供电。Linux获取时间和日期。

时间标记计数器

Linux通过寄存器获得更精确的时间测量。|2^32/f|
f是以Mhz为单位的CPU频率

可编程间隔定时器

通过定时中断来通知内核一个时间间隔已经过去。

CPU的分时

定时中断对于进程共享CPU时间是必不可少的。内核给每个进程分配一个时间片,如果时间片到时,进程没有终止,schedule()函数选择一个新的进程投入运行。

PID为0的进程不与其他进程共享CPU时间,因为当不存在其他的TASK_RUNNING进程时,它才在CPU运行。

定时器的作用

内核和进程广泛使用定时器。大多数设备驱动程序利用定时器检测反常情况。也可以利用定时器在将来某一时刻执行特定的函数。

Linux考虑了三种定时器,静态定时器,动态定时器和间隔定时器。前两种类型由内核使用,而间隔定时器可以由进程在用户态创建。

版权声明:本文为博主原创文章,未经博主允许不得转载。

Notes on "Understanding the Linux kernel“

操作系统基本概念 主要目标: 与硬件部分交互,为包含在硬件平台上的所有底层可编程部件提供服务。 为运行在计算机系统上的应用程序提供执行环境。 多用户系统 (multiuser system) ...
  • saintmetatron
  • saintmetatron
  • 2015年10月25日 21:31
  • 209

Notes on Understanding The Linux Kernel

第二章 内存寻址 内存地址 逻辑地址 logical address 包含在机器语言指令中用来指定一个操作数或一条指令的地址。每个逻辑地址由一个段segment和偏移量offset组成,偏移量指明了从...
  • saintmetatron
  • saintmetatron
  • 2015年10月26日 23:50
  • 209

Notes on Understanding the Linux Kernel

中断和异常中断通常被定义为改变处理器指令顺序的事件。这些事件对应于CPU芯片内部和外部的硬件电路产生的电信号。 中断通常被分为同步中断和异步中断 同步中断是指指令执行时由cpu控制单元产生的,之所以...
  • saintmetatron
  • saintmetatron
  • 2015年11月17日 16:04
  • 170

Notes Understanding the Linux kernel

第三章 进程 进程,轻量级进程和线程 进程是程序执行时的一个实例。从内核观点看,进程的目的是担当分配系统资源的实体。 当一个进程创建时,它几乎与父进程相同。它接受父进程地址空间的一个逻辑拷贝,从进程创...
  • saintmetatron
  • saintmetatron
  • 2015年11月03日 00:11
  • 178

Understanding the Linux Kernel (2nd Edition)

 To thoroughly understand what makes Linux tick and why its so efficient, you need to delve deep int...
  • linhanshi
  • linhanshi
  • 2008年01月31日 23:03
  • 607

《Understanding the Linux kernel》学习笔记 Chapter 12: The Virtual Filesystem

Linux manages to support multiple filesystem types in the same way other Unix variants do, through a...
  • Mathysicheman
  • Mathysicheman
  • 2017年03月08日 18:22
  • 114

Understanding the Linux Kernel

最近一段时间一直在做Linux Kernel相关的工作。有关Kernel的文章网上遍地都是,只要肯学,什么都能查得到。但是,Linux太复杂了,要把各个模块有机地串起来,对Kernel有个相对全面的认...
  • freemancqcsdn
  • freemancqcsdn
  • 2009年08月29日 19:50
  • 1300

understanding the linux kernel

这本书买了有3个月了,一直没敢看,怕自己看不懂。最近实在不想看别的书籍了,于是拿起了这本书 书中,代码比较少,不像赵炯的那本书,全是代码 我看的是第三版,中国电力出版社翻译的。 第一章: 1. 自旋锁...
  • yazhouren
  • yazhouren
  • 2012年08月13日 10:16
  • 566

Understanding The Linux Kernel 3rd

类别名:UnderstandingTheLinuxKernel3rd 第1页 第2页 section a.1.  prehistoric age: the bios-...
  • q1q2q3q4ln
  • q1q2q3q4ln
  • 2013年12月13日 00:33
  • 422

linux kernel learning notes

问题:1.insmod: ERROR: could not insert module hello.ko: Invalid module format 解决:使用modprobe --force-mo...
  • yeruo
  • yeruo
  • 2015年09月24日 21:35
  • 384
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Notes on Understanding the Linux Kernel
举报原因:
原因补充:

(最多只允许输入30个字)