- 博客(7)
- 资源 (5)
- 收藏
- 关注
原创 Linux设备驱动开发基础---字符设备驱动程序开发
一、Linux字符设备驱动结构1、cdev结构体在 Linux 2.6 内核中使用 cdev结构体描述字符设备, cdev 结构体的定义如下所示: cdev 结构体 1 struct cdev 2 { 3 struct kobject kobj; /* 内嵌的kobject对象 */ 4 struct module *owner; /*所属模块*/
2013-06-28 09:49:47 806
原创 Linux设备驱动开发基础---Linux内核模块
一、Linux内核模块的程序结构●模块加载函数(必须) 当通过insmod或 modprobe命令加载内核模块时,模块的加载函数会自动被内核执行,完成本模块的相关初始化工作。 ●模块卸载函数(必须) 。 当通过rmmod命令卸载某模块时,模块的卸载函数会自动被内核执行,完成与模块加载函数相反的功能。 ●模块许可证声明(必须) 。 ●模块许可证(LICENSE)声明描述内
2013-06-26 22:48:00 772
原创 Linux设备驱动开发基础---新驱动程序添加到内核方法(2)
一 . 概述:在 linux 内核中增加程序需要完成以下三项工作:1. 将编写的源代码复制到 Linux 内核源代码的相应目录2. 在目录的 Kconfig 文件中增加新源代码对应项目的编译配置选项3. 在目录的 Makefile 文件中增加对新源代码的编译条目二 . 以mini2440中ADC驱动的添加为例来进行说明ADC设备在Linux中可以看做是简单的字符设备,也可以
2013-06-26 20:19:13 1107
原创 Linux设备驱动开发基础---新驱动程序添加到内核方法(1)
1、编写Linux设备驱动的技术基础●编写Linux 设备驱动要求工程师具有良好的硬件基础,懂得 SRAM、Flash、SDRAM、磁盘的读写方式,UART、I2C、USB等设备的接口,轮询、中断、DMA的原理,PCI总线的工作方式以及CPU的内存管理单元(MMU)等。 ●编写Linux 设备驱动要求工程师具有良好的 C语言基础, 能灵活地运用 C语言的结构体、指针、函数指针及内存动
2013-06-25 22:47:34 1320
原创 文件操作之特殊文件操作
四、特殊文件操作在linux系统中,所谓特殊文件,就是指普通文件以外的其他文件,除了普通文件外,还有其他三类文件:设备文件,目录文件,链接文件,管道文件!在这一节里,我们将学习以上所述的,区别于普通文件的操作——特殊文件操作。1、目录文件操作与文件目录相关的系统调用有mkdir,opendir,closedir ,readir,scandir等:mkdir函数说明:创建目录
2013-06-02 22:51:26 921
原创 文件操作之标准I/O函数库
三、标准I/O函数库C标准库提供了文件的标准 I/O函数库,相比前述的系统调用,主要差别是实现了跨平台的用户态缓冲的解决方案。标准I/O库使用简单,与系统调用I/O相似,也包括打开、读写、关闭这些操作。系统调用是操作系统直接提供的函数接口。因为运行系统调用时,Linux必须从用户态切换到内核态,执行相应的请求,然后再返回到用户态,所以应该尽量减少系统调用的次数,从而提高程序的效率。1、
2013-06-02 15:44:14 1090
原创 使用Eclipse开发Arm-linux程序
1、首先是安装Eclipse在命令行终端下运行,会将需要安装的软件都安装上clx@think:~$ sudo apt-get install eclipse安装完成后将会出现如下的界面,但此时还不能进行C/C++程序的编写,还需要安装安装CDT插件。2、安装CDT插件(1)、启动eclipse,(2)、选择Help->Install New Software...,
2013-06-01 11:45:07 968
ucos_II+ucGUI+s3c2410+LCD+触摸屏整合
2012-04-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人