发布时间:2012-12-12 14:40:44
下面这些绝对是本人亲身经历的面试题目:有的直接就傻眼,竟然当时忘记答案了,没法啊,作为初学者,我承认我很水。1)Linux下获取文件关键字所在的行的行号:cat 文件名|awk '{print NR" "$0}'|grep 关键字|awk '{print $1}'举例:文件名a.txt ,关键字为:“abc”文件内容是:HelloWorldLinuxUnixabc命令为:cat a.txt|awk '{print NR " " $0}'|grep "abc"|awk '{print $1}'命令用了3次管道,被分成了4部分。我一段段解释:第一段:cat a.txt, &......【阅读全文】
发布时间:2012-12-12 14:40:03
任何代码的美丽不仅在于找到一个给定的问题的解决方案,但在它的简单性,有效性,紧凑性和效率(内存)。设计的代码比实际执行更难 。因此,每一个程序员当用C语言开发时,都应该保持这些基本的东西在头脑中。 本文向你介绍规范你的C代码的10种方法。1. 避免不必要的函数调用考虑下面的2个函数:void str_print( char *str ){ int i; for ( i = 0; i < strlen ( str ); i++ ) { printf("%c",str[ i ......【阅读全文】
发布时间:2012-12-12 14:39:46
互斥锁pthread_mutex_t的使用有两种方法创建互斥锁,静态方式和动态方式。POSIX定义了一个宏PTHREAD_MUTEX_INITIALIZER来静态初始化互斥锁,方法如下:pthread_mutex_t mutex=PTHREAD_MUTEX_INITIALIZER; 在LinuxThreads实现中,pthread_mutex_t是一个结构,而PTHREAD_MUTEX_INITIALIZER则是一个结构常量。 动态方式是采用pthread_mutex_init()函数来初始化互斥锁,API定义如下:int pthread_mutex_init(pthread_mu......【阅读全文】
发布时间:2012-12-12 14:39:30
http://blog.csdn.net/zjjyliuweijie/article/details/7205374NAND是嵌入式系统一个很重要的部件,而mtd-utilts中包含了很多针对NAND的调试和测试的工具。 1. 在http://git.infradead.org/mtd-utils.git上下载最新的mtd-utils代码, 下面是以2009-07-03的代码为例。 2. 解压缩mtd-utils.tgz 3. cd mtd-utils,编辑common.mk: 增加CROSS=arm-linux- 4. 执行make即可。 ......【阅读全文】
发布时间:2012-12-12 14:39:11
本文软件以“hello world”程软件式为例,简单说明linux下源代码包(.tar.gz)的制作。当然,本身把hello world制作成源代码包是没什么意义的。在此,谨以说明源代码包的制作过程。 首先,确保您的系统装有以下GNU软件: Automake Autoconf m4 perl libtool 1.新建一目录,将您的源代码放在此目录下,以下的操作均在此目录里进行。 shell> mkdir hello 2.执行autoscan命令来扫描源代码。 shell>autoscan 执行该命令后会生成configure.scan 和configure.log文档。 3.修改......【阅读全文】