摘要: linux有太多命令,但用来处理打印结果或者中间文件的操作明明不会太多,下面我们逐一列举它们,而且我们也要熟记它们。 1. tee xxd tail grep/egrep sed awk find xargs tr cut 阅读全文
posted @ 2011-05-04 15:21 lcnewstart 阅读(179) 评论(0) 推荐(0) 编辑
摘要: 在测试程序当中,“让一部分事情自动去做”往往是绝对优先的选择,通常最新的菜鸟也要选择脚本语言,学着“让它自动去做”来作为第一项基本功,本篇不属于脚本高手的参考,而是旨在指导菜鸟如何用三天时间学会快速编程。 本篇文章包括脚本语言用到的较全的概念,而且这也是菜鸟写出脚本的最基本条件,累赘少许我们开始吧... 阅读全文
posted @ 2011-04-29 17:38 lcnewstart 阅读(562) 评论(0) 推荐(0) 编辑
摘要: Linux块设备的原理远比字符设备要复杂得多,尽管在linux这一块的方法论有很多相似之处,但考虑到它是用中块结构,它常常要搭配内存页管理,页缓冲块缓冲来改善硬盘访问的速度,按照块硬件最大的性能要求进行软件发挥。 我们现在从入门级别的角度来理解块设备在初建时候需要的数据结构和过程,在这里,我以图... 阅读全文
posted @ 2011-03-22 16:22 lcnewstart 阅读(997) 评论(0) 推荐(0) 编辑
摘要: 本文罗列和分析Linux内存管理的数据结构定义,注释常用的结构体变量意义,把握基本的结构体关系和潜在的相互作用,为理解内存管理原理打好基础。这是深入代码的第一步,当然痛苦也就从这里开始了。(没事,哈哈,有我陪着你呢.....) 阅读全文
posted @ 2010-12-17 16:02 lcnewstart 阅读(366) 评论(1) 推荐(0) 编辑
摘要: 详解NandFlash/NorFlash驱动编写,呈现简单的CFI架构模型,简述非协议独立编写Flash驱动的方法,简述linux MTD设备对Flash的使用方法和设计结构模型。 阅读全文
posted @ 2010-12-16 11:22 lcnewstart 阅读(432) 评论(1) 推荐(1) 编辑
摘要: 讲解复杂繁琐的机制原理,最通俗的方法就是用模型架构的方式向读者呈现,先要在整体上了解大方向大架构,再根据大方向大架构来进行分支深入,犹如毛主席那句话“战略上蔑视敌人,战术上重视敌人”。下面我也以这种方式把各个大模型方式向大家画出,并作出简略解述。 一. 地址划分。 1. CPU地址。 CPU地... 阅读全文
posted @ 2010-12-08 16:28 lcnewstart 阅读(2305) 评论(3) 推荐(2) 编辑
摘要: 在进入讲解linux内存管理的kernel阶段以前,了解一下uboot阶段是如何准备好内存物理设备的,这是非常有意义的。通常进入到linux内核阶段之后,对内存芯片的物理特性寄存器访问是比较少的,强调的是linux在管理上的用法,而大部分必要工作由uboot阶段进行处理,如打开内存功能,配置内存,... 阅读全文
posted @ 2010-12-08 16:25 lcnewstart 阅读(4640) 评论(2) 推荐(2) 编辑
摘要: linux内存管理是开源Linux当中最难啃的一部分,它涉及到具体的cpu架构,内存的类型,管理算法等诸多内容,但它的脉络十分清晰,本《linux内存管理》系列正是尝试用简洁清晰的脉络向读者呈现linux到底是怎么“管”的,并且讲解如何高效应用内存管理的机制。本文以ARM机制为平台讲述,芯片为Ma... 阅读全文
posted @ 2010-12-03 12:24 lcnewstart 阅读(524) 评论(0) 推荐(0) 编辑
摘要: 1. int NUM_PROCS = sysconf(_SC_NPROCESSORS_CONF); cpu亲和力可以分为软亲和力和硬亲和力, 亲和力可以让进程固定在哪个CPU core上运行,使用的函数为CPU_SET(i,&mask); 阅读全文
posted @ 2010-11-26 17:30 lcnewstart 阅读(504) 评论(0) 推荐(0) 编辑
摘要: 1.PCI driver关键的几个数据结构:pci_device_id,将该设备id映射到用户空间的pci_table, pci_driver使用该表格进行PCI设备注册。 PCI设备的初始化与具体RCmode关于CPU pci寄存器的访问有关,256字节的头配置字配字配置PCI设备工作的基本信息,... 阅读全文
posted @ 2010-11-26 11:32 lcnewstart 阅读(226) 评论(0) 推荐(0) 编辑