全部博文(1493)
发布时间:2012-12-14 09:17:40
^word : 意义:待查找的字符串(word)在行首 范例:查找行首为#的那一行,并列出行号 &......【阅读全文】
发布时间:2012-12-14 09:17:32
众所周知,现在的分时操作系统能够在一个CPU上运行多个程序,让这些程序表面上看起来是在同时运行的。linux就是这样的一个操作系统。在linux系统中,每个被运行的程序实例对应一个或多个进程。linux内核需要对这些进程进行管理,以使它们在系统中“同时”运行。linux内核对进程的这种管理分两个方面:进程状态管理,和进程调度。进程状态在linux下,通过ps命令我们能够查看到系统中存在的进程,以及它们的状态:R (TASK_RUNNING),可执行状态。只有在该状态的进程才可能在CPU上运行。而同一时刻可能有多个进程处于可执行状态,这些进程的task_struct结构(进程控制块)被......【阅读全文】
发布时间:2012-12-14 09:17:20
1.查找 a.grep:能使用基本的正则表达式 b.egrep:能使用扩展的正则表达式 = grep -E c.fgrep:匹配固定的字符串而非正则表达式 2.meta字符 .*代表“匹配任一字符的任意长度”,*若置于正则表达式的第一字符,不具有任何特殊意义 ^符号置于[]中的第一个字符表示反向的意思 \{n,m\}:匹配他前面单个字符的重复出现的次数的区间 \{3\}表示至少三次 \( \):讲\(与\)间的模式存储在特殊的保留空间 3.后向引用 首先,将子表达式包含在\( \)中。最多包含9个子表达式然后,使用\digit digit可以......【阅读全文】
发布时间:2012-12-14 09:17:13
(该图转自他人,源作者不详) 该图很清晰的说明了Camera启动时从上到下的调用过程。 ICameraClient/ICameraSerice/ICamera是接口类,其功能真正实现是在继承了BnCamera*的Camera*中,而BpCamera*对象是在远程端用Binder来和Camera*对象通信的。 第四步比较复杂,解释如下: init.rc脚本会加载mediaserver,mediaserver中会创建CameraService。 getCameraService时会创建sp<ICameraService>类型,其实就是在CameraClient端创建Cam......【阅读全文】
发布时间:2012-12-12 08:57:02
我们知道CPU所访问的都是虚拟内存地址。那么平时我们自己在编写的内核模块时,linux到底分配的是什么样的内存空间呢?要解答这个问题,首先就要看看内核非连续内存。在linux的内存管理中,用户使用0~3GB的地址空间,而内核只是用了3GB~4GB区间的地址空间,共1GB;非连续空间的物理映射就位于3GB~4GB之间,如下图示0GB &......【阅读全文】