每一个“丑得人神共愤”的泡妞高 手都有一颗坚忍的心,这证明了人类 在绝境中毫不妥协的求生精神,反正丑都丑了,索性放开手脚大干一场,这就叫“无产阶级失去的是锁链,得到的是全世界”
2013年(130)
发布时间:2013-05-02 15:28:10
中断和异常:(一)概述概述中断通常被定义为一个事件,该指令改变处理器执行指令的顺序。这样的事件与CPU芯片内外部硬件电路产生的电信号相对应。中断提供了一种特殊的方式,使处理器转而去运行正常控制流之外的代码,当一个中断到达时,CPU必须停止当前正在做的事情,并且切换到一个新的活动。为了做到这一点,.........【阅读全文】
发布时间:2013-04-22 08:59:19
一个进程就是处于执行期的程序,但进程不仅仅局限于一段可执行程序代码,通常进程还要包括其他资源,如打开的文件、挂起的信号、内和内部数据、处理器状态、地址空间以及一个或多个执行线程(thread of execution)等,当然还包括用来存储全局变量的数据段。
执行线程,简称线程(thread),是在进程中的活动对象,每个线程拥有一个独立的程序计数器(即IP),进程栈和一组进程寄存器。内核调度的对象是线程而不是进程。
在现代操作系统中,进程提供两种虚拟机制:虚拟处理器和虚拟内存。虽然实际上可能是多进程正在分享一个处理器,但虚拟处理器给进程一种假象,让进程觉得自己在独享处理器;而虚拟内存让进程在获取和使用内存时感觉自己拥有整个系统所有的内存资源。......【阅读全文】
发布时间:2013-04-19 11:39:31
就像许多其他程序一样,操作系统内核经常需要维护数据结构的列表。有时,linux内核中同时存在多个链表的实现代码。为了减少重复代码的数量,内核开发者已经建立了一套标准的双向循环链表。如果你需要操作链表,那么建议你使用这一内核设施。内核链表的好主要体现为两点,一是可扩展性,内核一直都是在发展中的,所以代码都不能写成死代码,要方便修改和追加,内核链表和其他结构集合十分容易;二是封装,将链表常见的操作都进行封装,使用者只关注接口,不需关注实现。当使用这些链表接口时,应该始终牢记这些链表函数不进行任何锁定。如果你的程序有可能试图对同一个链表执行并发操作的话,则有责任实现一个锁方案。
......【阅读全文】