linux内核源码分析
文章平均质量分 79
猕猴大哥
多情自古伤离别
展开
-
linux的中断机制
linux混混之牢骚:温州老板借贷跑了?怨谁?他妈的怨他妈的谁?带都的找领导批条子,批你***,钱都给了有后台的了,还装模作样的紧缩中小型公司贷款,怨他妈的谁?日~~~~ linux version: 2.6.32 linux中断之数据结构:irq_desc结构:/** * struct irq_desc - interrupt descriptor * @ir原创 2011-10-19 14:36:05 · 2808 阅读 · 0 评论 -
linux进程调度分析
linxu混混之牢骚生命的意义就是在于它的变幻,你永远不会知道明天会发生什么事。 珍惜生命。。。。。 进程linux中,进程有自己的独立的用户空间,和自己独立的内核空间(堆栈),使用一个task_struct结构来表示一个进程。一般用fork,vfork等函数建立。线程:用户线程,内核线程linux中,用户进程没有自己独立的用户空间,需要和别的线程共享用户空间。有自原创 2011-10-30 20:35:58 · 2055 阅读 · 0 评论 -
VFS的数据结构
linux混混之牢骚:万恶的金钱,有人为你卖儿卖女,有人为你去坐牢。在具有中国特色的社会主义制度下,剥削似乎并没有像《资本论》中所述那样消失,反倒日益的猖獗。富人,是我个人所能理解的,毕竟他们曾付出过。但富人中有一大批富不仁之人,开宝马撞人,砍手.....比比皆是。 是否真的要让富人消灭了穷人才能达到共同富裕的目标,才能使中国富强?这是个问题!linux结构复杂,但靠着大批量的程序员不断的奋战原创 2011-12-13 23:23:46 · 2454 阅读 · 1 评论 -
驱动设备模型---sys文件系统之最后总结
此篇乃写完《驱动设备模型---sys文件系统》后的一些自己的想法,仅供自己参考,可能有错 实际的在操作系统中,很少有像教科书中那样的驱动。 建立一个 字符设备,初始化,注册, 然后就齐活了。这样的写法很少的。当然,如果仅仅像教科书中,使用alloc_chrdev(),add_chrdev()等函数的话,好像不会和sys文件系统产生什么关系。仅仅在添加了一个字符驱动,要再运行mknod 来建原创 2011-12-09 10:07:00 · 2346 阅读 · 0 评论 -
驱动设备模型---sys文件系统
linux混混之牢骚: 同事小李要移民到美国,领导问他:“你对你的工资不满意吗?” 小李说:“满意。”“对你的住房不满意?”“满意”“那是上网环境不满意?”“也满意”“对医疗,孩子上学都不满意?”“都满意!”“既然你都满意为什么还要移民?”“因为那里允许有不满意!” linux version:2.6.39什么是sys文件系统:Sy原创 2011-12-07 13:41:36 · 6967 阅读 · 2 评论 -
linux情景分析第二章--存储管理(1)
linux混混之牢骚:可怜的安阳的,你承担和温州一样的故事,却引不起老温的注意……悲哀啊,故乡。。。2.1 linux内存管理基本框架 linux中的分段分页机制分三层,页目录(PGD),中间目录(PMD),页表(PT)。PT中的表项称为页表项(PTE)。注意英文缩写,在linux程序中函数变量的名字等都会和英文缩写相关。LINUX中的三级映射流程如图:但是arm结构的M原创 2011-11-09 16:06:51 · 6867 阅读 · 1 评论 -
linux的内存管理概述
linux混混之牢骚:今年工作这么难找?小黄同志要努力啊········咱可不能拖社主义的后退啊····· linux的分页:linux将物理内存分成每个4K大小的页,来进行管理。linux中 号称 PFN, 是 page frame number的缩写。 取值范围是 0----(memory size >> 12)。但是由于物理内存映射的关系,物理内存的0地址对应到到系统原创 2011-11-08 11:29:37 · 5763 阅读 · 1 评论 -
Linux内核同步
linux混混之牢骚: 人生就像曾轶可,要是一开始就跑偏就再也跑不回来了linux中的并发:什么是并发?就是在多处理器(MP:multiple processor)的平台上,多个线程在不同的处理器上同时运行。或者是单处理器上,会有进程调度,从宏观上来看,也是一种并发。并发坏处:当多个进程同时访问一个全局变量时,就会造成这个变量混乱。(当然要同时写,或同时有写有读。同时读应该不会造成原创 2011-11-18 12:41:28 · 1067 阅读 · 0 评论 -
linux情景分析第二章-----存储管理(2)
2.4越界访问linux中的虚拟地址通过PGD,PTE等映射到物理地址。但当这个映射过程无法正常映射时候,就会报错,产生page fault exception。那么什么时候会无法正常呢?编程错误。程序使用了不存在的地址不是编程错误,linux的请求调页机制。即:当进程运行时,linux并不将全部的资源分配给进程,而是仅分配当前需要的这一部分,当进程需要另外的资源的时候(这时候就会产生原创 2011-11-14 10:07:28 · 7862 阅读 · 1 评论 -
为什么中断不能睡眠
这个问题有很多人问过,我看了下Linux得内核代码,原因如下:(当然我不能保证一定对,如果有牛人理解得更好,欢迎指正)1、 中断处理的时候,不应该发生进程切换,因为在中断context中,唯一能打断当前中断handler的只有更高优先级的中断,它不会被进程打断,如果在 中断context中休眠,则没有办法唤醒它,因为所有的wake_up_xxx都是针对某个进程而言的,而在中断context转载 2015-03-11 14:29:29 · 7987 阅读 · 0 评论