1.Kernel初始化的过程:a、设备探测b、驱动初始化(可能会从initrd(initramfs)文件中装载驱动模块)c、以只读挂载根文件系统;d、装载第一个进程init(PID:1)e、int进程的配置文件/etc/inittabf、/etc/inittab文件的格式id:runlevels:action:processid:标识符runlevels:在..
分类:
其他好文 时间:
2015-05-12 11:45:44
阅读次数:
245
学习韦东山视频心得(二)1.字符设备驱动图2.6LCD驱动框架图2.7LCD硬件框架字符设备是Linux设备中最基本的设备驱动是其他大型驱动的基石。字符设备驱动模型,如下图2.8所示。Linux内核驱动模块一般由模块加载函数,模块卸载函数,模块许可申明等等组成。在字符设备驱动中在模块..
分类:
其他好文 时间:
2015-05-08 15:12:07
阅读次数:
156
软件测试贯穿于整个软件开发生命周期,在各个阶段有不同测试活动和过程。 软件测试可以分为4步进行:单元测试。也称为模块测试,在模块编写完就开始进行,确保本模块内数据传输正确,功能完全,符合需求。测试一个模块时需要为其编写一个驱动模块来调用本单元进行测试,还需要编写若干个桩模块以模拟该单元调用其他...
分类:
其他好文 时间:
2015-05-03 23:29:12
阅读次数:
146
一个简单的驱动 模块的使用能使linux内核便于裁剪,根据不同的应用需求得到一个最小的内核,同时调试内核驱动也更为方便,比如如果调试i2c驱动,如果不采用模块的方式,那么每次修改i2c驱动就得编译整个内核,对于编译调试极其耗时,使用模块,一个简单的insmod就将模块加载进了内核,如果觉得不合适,....
分类:
系统相关 时间:
2015-05-03 23:24:21
阅读次数:
466
其实内核就是系统上面的一个文件,包含了驱动主机各项硬件的检测程序与驱动模块,而Linux的内核是单内核体系,且是模块化的内核的组成部分:核心文件:/boot/vmlinuz-VERSION模块文件:/lib/modules/VERSION/*.ko:模块间或许存在依赖关系;ramdisk:非必须性内容;只是用于实现..
分类:
系统相关 时间:
2015-04-19 06:38:37
阅读次数:
706
一.编译安装字符设备驱动模块1.要有Makefileobj-m := memdev.oKDIR := /ok6410/linux-3.10all: make -C $(KDIR)M=(PWD) modules CROSS_COMPILE=arm-linux- ARCH=armclean: rm -f...
分类:
其他好文 时间:
2015-04-15 17:01:48
阅读次数:
153
1、ifeq”语法是ifeq (;, ;),功能是比较参数“arg1”和“arg2”的值是否相同。ifneq刚好相反,比较两者的值是否不同其中有一些是我们常见或是见过的,第一个ifneq ($(KERNELRELEASE),)目前,有用处,它的由来是指在Linux源码根目录下的Makefile编译内核时,KERNELRELEASE宏会被定义,那么如果是从源码根目录开始的make则会将hello.o模块编译进内核。
KERNELDIR :=/home/ZP1015/Desktop/li...
分类:
系统相关 时间:
2015-04-13 11:07:00
阅读次数:
177
hello: module_layout: kernel tainted.
Disabling lock debugging due to kernel taint
hello: version magic '2.6.32-504.el6.i686 SMP mod_unload 686 ' should be '2.6.32-504.el6.i686 SMP mod_unload modversions 686 '
第一步、看看你运行内核的版本:ls /usr/src/kernels/2.6.32-504....
分类:
其他好文 时间:
2015-04-11 13:22:51
阅读次数:
923
静态编译,动态加载应用想访问内核需要通过系统调用驱动:1.模块(打包,加入内核)2.内核机制3.操作硬件在Kconfig里面配置menuconfig的时候,不同的类型会在图形化界面的终端显示不用的配置选项:bool CONFIG_HELLO []hello_driver 两态tri...
分类:
系统相关 时间:
2015-04-05 15:52:17
阅读次数:
221
1、模块驱动描述1)模块本身不被编译入内核映像,从而控制了内核的大小2)模块一旦被加载,它就和内核中的其他部分完全一样2、实验步骤1) 解压原厂提供的 linux-3.0.35 内核$ tar xf linux-3.0.35.tar.bz22)建立一个专门用于编写驱动模块的目录,该目录不在内核目录中...
分类:
其他好文 时间:
2015-03-18 11:54:40
阅读次数:
212