
操作系统
文章平均质量分 62
zhoujunbuaa
这个作者很懒,什么都没留下…
展开
-
《Linux设备驱动程序》前两章 设备驱动程序 即构造和运行模块:读书笔记
这本书和《Linux内核分析》一起对于Linux的讲解比较透彻。《Linux内核分析》侧重有讲源代码,《Linux设备驱动程序》侧重于锻炼一个Linux黑客,理解与实现Linux驱动程序的开发。 理解Linux的内核模块的作用,之所以将其分为模块,是可以将其更高效地执行,模块可以在需要的时候载入内核(内存中),可以在不需要的时候从内核中删除rmmod,从而达到内存空间的充分利用。在涉及内核模块载入时,insmod可以直接载入模块;但是当该模块涉及到其他模块的一些内核符号(在内核符号表中)时,应原创 2010-12-14 23:46:00 · 660 阅读 · 0 评论 -
Linux 内核图
转载 2012-01-12 10:18:52 · 742 阅读 · 0 评论 -
进程与线程的区别(转)
线程是指进程内的一个执行单元,也是进程内的可调度实体.与进程的区别:(1)地址空间:进程内的一个执行单元;进程至少有一个线程;它们共享进程的地址空间;而进程有自己独立的地址空间;(2)资源拥有:进程是资源分配和拥有的单位,同一个进程内的线程共享进程的资源(3)线程是处理器调度的基本单位,但进程不是.4)二者均可并发执行. 进程和线程都是由操作系统所体会的程序运行的基本单元,转载 2011-10-26 23:55:22 · 422 阅读 · 0 评论 -
操作系统 进程/线程 同步与互斥
1临界区:通过对多线程的串行化来访问公共资源或一段代码,速度快,适合控制数据访问。 2互斥量:为协调共同对一个共享资源的单独访问而设计的。 3信号量:为控制一个具有有限数量用户资源而设计。 4事 件:用来通知线程有一些事件已发生,从而启动后继转载 2011-09-16 09:56:02 · 905 阅读 · 0 评论 -
操作系统死锁 四个必要条件
操作系统中有若干进程并发执行,它们不断申请、使用、释放系统资源,虽然系统的进程协调、通信机构会对它们进行控制,但也可能出现若干进程都相互等待对方释放资源才能继续运行,否则就阻塞的情况。此时,若不借助外界因素,谁也不能释放资源,谁也不能解除阻塞状态。根据这样的情况,操作转载 2011-09-15 17:06:42 · 3949 阅读 · 0 评论 -
计算机体系结构--粗浅认识
计算机体系结构我认为的主要的三个概念:数据、地址、控制。任何时候数据都是保存在各种存储介质中的对于用户有用的信息表示,而地址对于各种存储介质具体位置的标示,控制用于控制数据的运算与表达以及地址之间的转换以及地址与数据的关联表示。 一、数据 数据是存储在各种存储介质上的信息表示方式,不一定与用户所看到的具体内容完全一致,可能是经过各种标志位混合以后的表示,也有可能是经过加密之后的信息存储。数据用来表示各种信息,大都时候需要运算这些数据,同时很重要的是数据之间有着关联,数据之原创 2011-02-26 17:24:00 · 1701 阅读 · 0 评论 -
《深入理解Linux内核》--第七章:进程调度:读书笔记
零、感想 进程调度涉及的 priority、进程的状态(TASK_RUNNING、TASK_INTERRUPT、TASK_UNINTERRUPT、TASK_STOPPED)。Linux系统有个PID为0的进程——swapper进程(只有在CPU不能执行其他进程才执行)。 在多处理器系统中涉及 调度域,比较值得注意的是Intel的超线程技术(包括几个内部寄存器的拷贝,当前线程在访问内存的间隙时,处理器可以使用它的机器周期去执行另一个线程),因为超线程技术,引入了逻辑CP原创 2010-11-17 20:35:00 · 1803 阅读 · 0 评论 -
《深入理解Linux内核》--第六章 定时测量:读书笔记
感想:1)linux内核给用户很多选择选项,为了兼容不同的硬件提供了多种选项,硬件定时器(HPET、TSC),软件定时器。 2)注意处理竞争条件(在多核情况下,会引入在单核情况下不存在的竞争条件,例如,定时器函数在【被删除函数】终止时可能在其他CPU上运行【和删除函数不在一个CPU上】,del_timer_sync()删除指定的定时器后,需要检查定时函数是否还在其他CPU上运行,如果是,则需要等到定时器函数结束) 。 3)在体系结构中分为 全局时钟 和 CPU本地时钟原创 2010-11-15 22:02:00 · 1518 阅读 · 0 评论 -
《深入理解Linux内核》--第五章 内核同步:读书笔记
同步:识别出异常处理、中断处理、可延迟函数、内核线程中的临界区,采用适当的保护措施,以确保在任意时刻只有一个内核控制路径处于临界区。 如果是但CPU系统,可以采取访问共享数据结构时关闭中断的方式实现临界区,因为只有在开中断的情况下,才能发生内核控制路径的嵌套。 但是在多处理器系统中,许多CPU可能同时执行内核路径,不能假设只要禁止内核抢占功能,而且中断、异常和软中断处理程序都没有访问过该数据结构,就能保证这个数据结构能够安全地访问。 一、内核抢占 内核抢占:如果进程执原创 2010-11-12 23:34:00 · 899 阅读 · 0 评论 -
《深入理解Linux内核》--第四章 中断和异常:读书笔记
同步中断:只有在一条指令终止执行后CPU才会发出中断; 异步中断:由其它硬件设备依照CPU时钟信号随机产生的中断。 一般中断是指 异步中断。异常: 同步中断。 中断处理与进程切换的区别:中断或异常处理程序执行的代码不是一个进程,它是一个内核控制内经,代表中断发生时正在运行的进程执行。作为一个内核控制路径,中断处理程序比一个进程要“轻”。(没有进程要求那么多资源) 一、中断 分为:1)可屏蔽中断(maskable Inter原创 2010-11-09 22:28:00 · 1553 阅读 · 0 评论 -
Linux下运用MMAP在进程间通信
由于在操作系统层面,各个进程所看到的虚拟地址空间是独立的,之间没有交集。因此需要通过中间一个关联将多个关联进程的不同虚拟地址映射到相同的物理地址空间中。MMAP 就是这么一个功能,它把一个文件(也就是在内存中的物理地址空间确定)映射到不同进程的地址空间中。一、写 值得注意的是由于MMAP需要内存中的物理地址空间,因此在写操作过程中需要将文件加载到内存中才能进行操作,因此在打原创 2012-01-02 17:31:07 · 1213 阅读 · 0 评论