在做内核驱动开发的时候,可以使用/proc下的文件,获取相应的信息,以便调试。
大多数/proc下的文件是只读的,但为了示例的完整性,都提供了写方法。
方法一:使用create_proc_entry创建proc文件(简单,但写操作有缓冲区溢出的危险);
方法二:使用proc_create和seq_file创建proc文件(较方法三简洁);
方法三:使用proc_create_data和seq_file创建proc文件(较麻烦,但比较完整);
示例四:在proc文件中使用内核链表的一个示例(用的方法三)。
...
                            
                            
                                分类:
系统相关   时间:
2014-07-11 08:22:22   
                                阅读次数:
354
                             
                         
                    
                        
                            
                            
                                早先看linux驱动相关书籍的时候,隐约记得物理地址有动态映射和静态映射,当时写驱动都是想着自己动手写,所以一上手看着动态映射好用,就在自己的驱动上使用动态映射,将寄存器地址映射到内存上,即调用ioremap函数。在单线作战的时候ioremap确实好用,不需要改动内核的其他部分,直接将自己想用的物理地址映射到内存再操作。但很多时候当我们的设备需要在全局范围内被使用的时候,ioremap就会比较尴尬...
                            
                            
                                分类:
系统相关   时间:
2014-07-11 08:19:04   
                                阅读次数:
316
                             
                         
                    
                        
                            
                            
                                在做内核驱动开发的时候,可以使用/proc下的文件,获取相应的信息,以便调试。
大多数/proc下的文件是只读的,但为了示例的完整性,都提供了写方法。
方法一:使用create_proc_entry创建proc文件(简单,但写操作有缓冲区溢出的危险);
方法二:使用proc_create和seq_file创建proc文件(较方法三简洁);
方法三:使用proc_create_dat...
                            
                            
                                分类:
系统相关   时间:
2014-07-11 00:45:14   
                                阅读次数:
285
                             
                         
                    
                        
                            
                            
                                Debug (调试版)  汇编和 Release (发行版)
汇编的认识
调试版基本不优化,发行版则一般都优化到极致。
Windows驱动开发中,一般称为Check版本和Free版本
我们暂时只研究Debug(调试版)
for循环C实现:
int func(int a,int b)
{
 int c=a+b;
 int i;
 for(i=0;i<50;i++){
...
                            
                            
                                分类:
编程语言   时间:
2014-07-10 23:42:14   
                                阅读次数:
284
                             
                         
                    
                        
                            
                            
                                在做内核驱动开发的时候,可以使用/proc下的文件,获取相应的信息,以便调试。
大多数/proc下的文件是只读的,但为了示例的完整性,都提供了写方法。
方法一:使用create_proc_entry创建proc文件(简单,但写操作有缓冲区溢出的危险);
方法二:使用proc_create和seq_file创建proc文件(较方法三简洁);
方法三:使用proc_create_data和seq_file创建proc文件(较麻烦,但比较完整);
示例四:在proc文件中使用内核链表的一个示例(用的方法三)。
...
                            
                            
                                分类:
系统相关   时间:
2014-07-10 22:23:53   
                                阅读次数:
5686
                             
                         
                    
                        
                            
                            
                                Linux驱动注册有多种方式,通常是以内核提供的表征数据结构封装后按照内核子系统提供的接口函数进行注册,还有一些是比较复杂的以链表方式进行维护。以下对几种驱动注册方式进行介绍:
一、子系统有专门的驱动注册函数:
例如RTC子系统,提供rtc_device_register注册接口函数。
例如:
rtc_device_register(client->name,&client->dev, &...
                            
                            
                                分类:
系统相关   时间:
2014-07-10 22:13:06   
                                阅读次数:
519
                             
                         
                    
                        
                            
                            
                                在做内核驱动开发的时候,可以使用/proc下的文件,获取相应的信息,以便调试。
大多数/proc下的文件是只读的,但为了示例的完整性,都提供了写方法。
方法一:使用create_proc_entry创建proc文件(简单,但写操作有缓冲区溢出的危险);
方法二:使用proc_create和seq_file创建proc文件(较方法三简洁);
方法三:使用proc_create_data和seq_file创建proc文件(较麻烦,但比较完整);
示例四:在proc文件中使用内核链表的一个示例(用的方法三)。
...
                            
                            
                                分类:
系统相关   时间:
2014-07-10 21:36:17   
                                阅读次数:
421
                             
                         
                    
                        
                            
                            
                                解决方式来自于debian官网
??
https://wiki.debian.org/wl
1、添加源
deb http://http.debian.net/debian/ wheezy main contrib non-free
deb http://http.debian.net/debian/ squeeze main contrib non-free
2、更新源软件
apt-g...
                            
                            
                                分类:
其他好文   时间:
2014-07-10 19:42:25   
                                阅读次数:
265
                             
                         
                    
                        
                            
                            
                                虚拟机安装VMwareToolsforLinux介绍:	VMwareTools是VMware虚拟机中自带的一种增强工具,相当于VirtualBox中的增强功能(SunVirtualBoxGuestAdditions),是VMware提供的增强虚拟显卡和硬盘性能、以及同步虚拟机与主机时钟的驱动程序。	只有在VMware虚拟机中安装好了VMwareTools..
                            
                            
                                分类:
系统相关   时间:
2014-07-10 19:13:14   
                                阅读次数:
462