全部博文(77)
发布时间:2012-12-10 14:59:49
这两天一直看到uc论坛上关于系统中几种地址概念的讨论,加上这一块自己一直没有理解,索性就在网上多找了些资料,下面是自己的一些浅薄的理解。 设计平台为x86,如果是其它平台,不保证能一一对号入座,但应该也是可以举一反三的吧。 概念 在硬件工程师和普通用户看来,内存就是插在或固化在主板上的内存条,他们有一定的容量,比如512MB。但应用程序员并不过度关心内存容量,而是关心可以使用的内存空间。比如,他们可以开发一个占用1GB内存的程序,让其在操作系统下运行,哪怕实际内存不足1G。操作系统开发者则是介于二者之间,即需要知道物理内存的地址,......【阅读全文】
发布时间:2012-12-10 14:57:30
在早期的linux内核版本的时间概念都是由周期时钟提供的。虽然比较有效,但是,对于关注能耗电量的系统上,就不能满足长时间休眠的需求,因为周期系统要求必须在一定的频率下,周期性的处于活动状态。因此,linux提出了tickless system,即无时钟系统。其关键就是判定系统当前是否无事可做,若是则禁用时钟系统。判定系统当前无事可做的依据是:如果运行队列时没有活动进程,内核将选择idle进程来运行,而此时动态时钟发挥作用。 一、动态时钟使用的数据结构tick_sched 点击(此处)折叠或打开 struct tick_sched { &nbs......【阅读全文】