上一页 1 ··· 15 16 17 18 19 20 21 22 23 ··· 26 下一页
摘要: autotools的使用流程autoscan->aclocal->autoconf-> automake->configure以helloworld为例加以说明:1)新建helloworld.c,并修改代码如下: int main(int argc,char** argv) { printf("hello world!"); }2)autoscan:autoscan:生成configure.scan3)编辑configure.scan,并重命名为configure.in 内容如下: # -*- Run autoconf -*-# Process th 阅读全文
posted @ 2013-04-19 14:06 ydzhang 阅读(438) 评论(0) 推荐(0) 编辑
摘要: 可穿戴计算技术浅析摘要可穿戴计算技术就是把计算机“穿”在身上进行应用的技术,该技术解放了人的双手,在对计算机操作时不影响双手做其他工作,其在工业,军事,医疗等方面有着广泛的应用,符合“以人为本”的发展思路。本文首先简单的介绍了可穿戴计算起源,基本特点及基本的应用模型;然后详细描述了可穿戴计算系统需要用到的关键技术;最后对全文进行了总结,对可穿戴计算技术的应用前景进行了分析。关键字可穿戴计算,移动计算,移动网络通信,微小型计算机1 可穿戴计算的起源 近几年来,在计算机领域出现了一个新的系统技术,这就是可穿戴计算技术(wearable computing)。顾名思义,可穿戴计算技术就是把计算机“穿 阅读全文
posted @ 2013-04-19 14:06 ydzhang 阅读(526) 评论(0) 推荐(0) 编辑
摘要: 最近准备花点时间学习下shell脚本语言,一是考虑到对以后找工作有帮助,因为很多上班了同学还有去面试的同学都说有的公司还是比较看重写shell脚本这个技能的,二是自己的工作需要,可能要写一些简单的脚本,虽然刚学linux时看《鸟哥的私房菜》时学过点皮毛,但现在已经忘的差不多了,刚好借这个机会系统学习一下。先将基础知识复习了一下,为进一步深入学习做准备。Shell脚本第一行的#!当一个文件中开头的两个字符是#!时,内核会扫描该行其余的部分,看是否存在可用来执行程序的解释器的完整路径(中间如果出现任何空白符号都会略过),此外内核还会扫描是否有一个选项要传递给解释器,内核会以被指定的选项来引用解释器 阅读全文
posted @ 2013-04-19 14:06 ydzhang 阅读(229) 评论(0) 推荐(0) 编辑
摘要: 单独编译某个内核模块编内核难免有的时候忘记了配置某个模块,导致该模块不可用,那是不是必须重新配置内核并重新编译呢,答案是否定的,完全可以单独编译某一个内核模块,我在使用最新的fuse-2.8.0-pre1时,发现其中已经没有fuse模块了,原来fuse从2.8版本开始就不包含内核模块了,其已作为内核源码的一部分发布。定位fuse模块内核代码/home/ydzhang/linux-2.6.19/fs/fuse/*.c查看其下的Makefile:# Makefile for the FUSE filesystem.obj-$(CONFIG_FUSE_FS) += fuse.ofuse-objs : 阅读全文
posted @ 2013-04-19 14:06 ydzhang 阅读(1226) 评论(0) 推荐(0) 编辑
摘要: 最近又碰到一个熟悉的问题,在准备修改代码的时候,刚开始只准备对一个地方做修改,结果写着写着有冒出很多想法,于是就一直改一直改,等把几个想法的代码完成之后,运行的时候碰到一些逻辑的错误,由于修改的地方太多,一下子也分析不出来是哪里出错了,然后很郁闷的定位错误,修改代码,直到功能正常,有时花在调试上的时间比重新写一遍还要长很多。版本控制工具给我们的开发工作带来很多便利,而我们使用svn commit这个动作往往很“吝啬”,这样svn都发挥不了自己的优势了,做版本控制时,每次修改最好只针对某一功能模块,写完之后commit并附上log信息,这样即使改完后有错误,也能马上定位错误源,从而提高效率。管理 阅读全文
posted @ 2013-04-19 14:06 ydzhang 阅读(96) 评论(0) 推荐(0) 编辑
摘要: UCARP允许多个主机共享一个虚拟的ip地址,以提供自动的故障恢复功能,当其中某个主机宕机时,其它的主机会自动接管服务。UCARP是CARP协议(通用地址冗余协议,最早在OpenBSD上实现)的linux实现版本,同时也能移植到其它多个unix平台,UCARP的官方网站:http://www.ucarp.org/project/ucarp 。 CARP协议的特点在于其非常低的开销,主机间使用加密数据传递信息,并且在冗余主机之间不需要任何额外的网络链接。下载ucarp源代码包:http://download.pureftpd.org/pub/ucarp/,在README中有ucarp的简单部署实 阅读全文
posted @ 2013-04-19 14:06 ydzhang 阅读(485) 评论(0) 推荐(0) 编辑
摘要: 最近学习块设备驱动程序的编写,在网上发现一个题为“写一个块设备驱动“的教程,共包含15章,教程最先是在chinaunix论坛上发的,很多人的博客都转载了这组文章,是一个叫赵磊的大牛写的,拜读了一下,教程写得通俗易懂,很有收获。本文对这组文章的内容进行了简要的概括,并附上每章的链接,当然,你google一下也能找到一大堆。第一章内容概括:模块的编写,块设备的基础编程结构,gendisk及其request_queue的管理,简单块设备驱动的实现(初始化gendisk,实现request_queue的处理方法),对块设备进行格式化文件系统并使用。链接1:http://hi.baidu.com/jjb 阅读全文
posted @ 2013-04-19 14:06 ydzhang 阅读(657) 评论(0) 推荐(0) 编辑
摘要: 最近在使用filp_open打开文件时遇到到一个问题,当打开一个并不存在的文件时,filp_open返回值值为0xfffffffe,而并不是0(NULL),这是因为内核对返回指针的函数做了特殊处理。内核中的函数常常返回指针,通常如果调用出错,会返回NULL空指针,但linux做了更精妙的处理,能够通过返回的指针体现出来。对任何一个指针,必然有三种情况:一种是有效指针,一种是NULL,空指针,一种是错误指针,或者说无效指针。而所谓的错误指针就是指其已经到达了最后一个page,比如对于32bit的系统来说,内核空间最高地址0xffffffff,那么最后一个page就是指的0xfffff000~0x 阅读全文
posted @ 2013-04-19 14:06 ydzhang 阅读(1699) 评论(2) 推荐(0) 编辑
摘要: l 符号表链接过程的本质就是把多个不同的目标文件之间相互粘在一起。在链接中,目标文件之间相互拼合实际上是目标文件之间对地址的引用,即对函数和变量(函数,变量统称符号)的地址的引用。符号是链接过程中的粘合剂,整个链接过程是基于符号引用完成的,链接过程中很关键的一部分就是符号的管理,每一个目标文件都会有一个相应的符号表(Symbol Table),这个表里面记录了目标文件中用到的所有符号。每个定义的符号有一个对应的值,叫做符号值,对于变量和函数来说,符号值就是它们的地址。符号主要包括定义在本文件内的全局符号,在本文件中引用的全局符号(但定义在其它文件),段名,局部符号,行号信息(目标文件指令与源代 阅读全文
posted @ 2013-04-19 14:06 ydzhang 阅读(561) 评论(0) 推荐(0) 编辑
摘要: Linux可执行文件为ELF格式,ELF格式文件主要分为以下几类:1. 可重定位文件(Relocatable File),这类文件包含了代码和数据,可以被用来链接成可执行文件或共享目标文件,静态链接库也可以归为这一类,如.o文件。2. 可执行文件(Executable File),这类文件包含了直接执行的程序,如/bin/bash等。3. 共享目标文件(Shared Object File),链接器可以使用这种文件跟其他的可重定位文件和共享目标文件链接,产生新的目标文件;动态链接器可以将几个共享目标文件与可执行文件结合,作为进程映像的一部分来运行,如glibc***.so。4. 核心转储文件( 阅读全文
posted @ 2013-04-19 14:06 ydzhang 阅读(932) 评论(0) 推荐(0) 编辑
上一页 1 ··· 15 16 17 18 19 20 21 22 23 ··· 26 下一页