慢行者
发布时间:2013-09-15 21:07:50
1. 内存及虚存基本布局提起虚存,大都能说出几条来。对于32位系统,大多数操作系统都会将4gb的内存空间的一部分挪给内核使用,应用程序无法直接访问这一段内存,这部分内存空间称为内核空间。windows默认情况下会将高地址的2gb分配给内核(也可配置为1gb),而linux默认情况下将高地址的1gb空间分配给内核。.........【阅读全文】
发布时间:2013-09-13 17:58:23
linux内核抢占实现机制分析【摘要】本文详解了linux内核抢占实现机制。首先介绍了内核抢占和用户抢占的概念和区别,接着分析了不可抢占内核的特点及实时系统中实现内核抢占的必要性。然后分析了禁止内核抢占的情况和内核抢占的时机,最后介绍了实现抢占内核所做的改动以及何时需要重新调度。【关键字】内核抢占,.........【阅读全文】
发布时间:2013-09-13 17:55:50
最近在内核频繁使用了自旋锁,自旋锁如果使用不当,极易引起死锁,在此总结一下。自旋锁是一个互斥设备,它只有两个值:“锁定”和“解锁”。它通常实现为某个整数值中的某个位。希望获得某个特定锁得代码测试相关的位。如果锁可用,则“锁定”被设置,而代码继续进入临界区;相反,如果锁被其他人获得,则代码进入忙.........【阅读全文】
发布时间:2013-09-13 17:54:05
操作系统要实现多进程,进程调度必不可少。有人说,进程调度是操作系统中最为重要的一个部分。我觉得这种说法说得太绝对了一点,就像很多人动辄就说"某某函数比某某函数效率高xx倍"一样,脱离了实际环境,这些结论是比较片面的。 而进程调度究竟有多重要呢? 首先,我们需要明确一点:进程调度是对task_running状.........【阅读全文】
发布时间:2013-09-13 15:28:28
select,poll,epoll都是io多路复用的机制。所谓i/o多路复用机制,就是说通过一种机制,可以监视多个描述符,一旦某个描述符就绪(一般是读就绪或者写就绪),能够通知程序进行相应的读写操作。但select,poll,epoll本质上都是同步i/o,因为他们都需要在读写事件就绪后自己负责进行读写,也就是说这个读写过程是阻塞的,.........【阅读全文】