1某个博客 程序员和小女生 http://hzzz.lengzzz.com/blog/index 2joel的博客 http://www.joelonsoftware.com/点击打开链接 3Linux kernel development 点击打开链接 4jackychan blog 点击打开链接 5Apkbus 点击打开链接 6android学习之路 点击打开链接 7android train

本文内容遵从CC版权协议,转载请注明出自larmbr.me 概览 SMP这种并行架构相比传统的单处理器带来相当可观的性能提升。一个不可避免的问题是并行架构的处理器间的交互问题。一种可能的解决方案是,每个CPU都有自己唯一可访问内存,处理器间通过消息传递进行通信。这种架构的问题是带给程序员(尤其是系统程序员)巨大的编程负担,因为需要处理数据分隔与传递。相反,被广泛应用的另一种架构是,多处理器间共享一

[阅读本文仅需要一点x86汇编的知识。另, 本文的汇编使用AT&T语法] 在内核代码调试中, 或是漏洞分析中, 学会看懂backtrace或是熟悉汇编, 都是基础之功。这中间都牵涉到一个叫调用框架(call frame)的概念, 这个名词也叫栈帧(stack frame)或活动过程记录(activation record)。所谓调用框架就是指称一个函数(或过程,或方法)被调用时位于内存中的一块区域

操作系统的启动,英文称为bootstrap,又有汉译为“自举”,这一个自指涉的词汇生动地描述了操作系统启动前所遇的矛盾: 加电瞬间所有硬件处于一种随机状态,如何完成第一条指令的加载,如何了解整机的硬件状态,以便完成后续的操作系统启动。 即使第一条指令成功运行,如何把操作系统从外存加载到内存,以便执行一开始的初始化行为。 这两个问题都有了成熟的解决机制,为操作系统的启动铺设好了真正环境,分别是采取B

这篇文章讲述Linux内核的开发组织模式, 顺带地, 会描述几个Linux内核开发者必须知道的重要的内核分支。 开发组织模式 Linux作为迄今全球规范最庞大开源合作项目, 在20多年的发展过程中, 逐渐形成一套基于信任链的层级组织模式, 这套模式有个术语叫司令官与副官工作流(dictator and lieutenat workflow)。在这种模式中, 有若干个管理员, 分别负责项目中的特定部

Linux内核社区经历20多年的发展,逐渐形成了一套完善的开发模式。作为想要加入社区进行开发的人来说,当然必须熟悉下这套模式啦,其中最重要的两点是: 内核发布模式 内核开发组织模式 本文将对第一点进行讲述, 第二点在下一篇中讲述。(没耐心看完整篇文章的的朋友,直接看本文总结) 内核发布模式 追溯Linux内核版本号发展沿革,可知其经历了三个阶段,这分别为 v1.0以前时期 v1.0至

译者:张乐 robert_AT_thizlinux_DOT_com 原作:Greg KH 译注:本文依据take 3翻译,应该不会再有大的改动了,如果有本文会随时更新 时间仓促,恐难免错漏,欢迎指正 原文: http://permalink.gmane.org/gmane.linux.kernel/349656 (转贴说明:也可以在内核源代码目录下的Documentation/HOWTO找到本文英

Helloworldkernel 内核程序结构分析(前提是已经编译配置好内核) 现在,通过一个最简单的helloworld程序来将内核基础做一下分析~ 因为内核在加载之后就一直运行在内存中,为了保证linux内核代码的小而核心,使用模块的方式来开发驱动。模块就是在硬盘上的一段程序,通过内核特定的操作可以被链接到内核中(进入内存)。如此,便能保证我们可以选择自己需要的驱动模块链接入内核,而哪些我们不

1:Linux 设备通常划分为三种:字符设备、块设备和网络接口设备。 字符设备是指:那些只能一个字节一个字节读写数据的设备,不能随即读取设备内存中的某一数据。其读取数据需要按照先后顺序,从这点上看,字符设备是面向数据流的设备。常用的字符设备有鼠标、键盘、串口、控制台和LED等设备。 块设备是指:可以从设备的任意位置读取一定长度数据的设备。其读取数据不必按照先后的顺序,可以定位到设备的某一具体的位置

这些实例都是前辈博客中的,小菜我拿来参考和理解。 网址:http://hi.baidu.com/zzztou/blog/item/fc4b537ea2afd23e0cd7daeb.html 1.删除b文件中和a文件相同的内容;按照行为单位,下例“内容相同”的含义是 a文件中一行正好匹配b文件的一行,则称为“内容相同”,于是删除b文件的该行 [plain]  view plain copy #!/b