自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

转载 C# 读取和设置app.config里的connectionstring

//第一种获取连接字符串的方法 Properties.Settings connset = Properties.Settings.Default; constr = connset.ConnectionString;               //第二种获取连接字符串的方法 ConnectionStringSettings settings = Configuratio

2015-01-21 15:33:51 6159

转载 判断DataTable为空

判断DataTable为空请几天项目中增加了一个功能,就是通过windows服务往数据库里填充数据。有一表A,表A里有字段“日期”,如果表A中有日期为“XXXX”的数据,则windows服务不在往改表中添加数据。我是这样写的:public  bool HasData(datetime dt){   string sql="select *from A WHERE date=

2015-01-21 15:28:00 1094

转载 MODULE_DEVICE_TABLE的理解

在Linux IIC驱动中看到一段代码:static struct platform_device_id xx_driver_ids[] = {{.name = "s3c2410-i2c",.driver_data  = TYPE_S3C2410,}, {.name = "s3c2440-i2c",.driver_data  = TYPE_S3C2440,

2014-09-04 15:50:27 1368

转载 Linux workqueue工作原理

1. 什么是workqueue       Linux中的Workqueue机制就是为了简化内核线程的创建。通过调用workqueue的接口就能创建内核线程。并且可以根据当前系统CPU的个数创建线程的数量,使得线程处理的事务能够并行化。workqueue是内核中实现简单而有效的机制,他显然简化了内核daemon的创建,方便了用户的编程.      工作队列(workqueue)是另外一

2014-06-25 16:29:49 244

转载 linux i2c设备驱动

一. i2c的结构体     1. i2c适配器[cpp] view plaincopystruct i2c_adapter {      struct module *owner;   //模块所有者      unsigned int id __deprecated;      unsigned int class; //支持

2014-06-24 17:28:30 324

转载 module_init 和 late_initcall 区别

在init.h 中有如下定义 #define pure_initcall(fn)  __define_initcall("0",fn,1)#define core_initcall(fn)  __define_initcall("1",fn,1)#define core_initcall_sync(fn)  __define_initcall("1s",fn,1s)

2014-06-24 17:10:06 288

转载 Linux中断申请之request_threaded_irq

在linux里,中断处理分为顶半(top half),底半(bottom half),在顶半里处理优先级比较高的事情,要求占用中断时间尽量的短,在处理完成后,就激活底半,有底半处理其余任务。底半的处理方式主要有soft_irq, tasklet, workqueue三种,他们在使用方式和适用情况上各有不同。soft_irq用在对底半执行时间要求比较紧急或者非常重要的场合,主要为一些subsys

2014-05-23 13:46:47 817

转载 input_dev结构体分析

在输入子系统的设备驱动中,最重要的数据结构是struct input_dev,如下所示。需要完成的大部分工作都是围绕着它来的,它是驱动的主体。每个struct input_dev代表一个输入设备。  /* include/linux/input.h */struct input_dev { const char *name;//设备名 const char *phys; c

2014-05-23 11:18:01 434

转载 input-dev输入子系统

一.input子系统简介:        linux系统中,input输入子系统驱动主要可以分为:设备驱动层、input core层和input handler事件处理层。设备驱动层为具体用户设备驱动,输入设备由struct input-dev 结构表示,并由input_register_device和input_unregister_device来注册和卸载;input hander事件

2014-05-23 11:16:59 542

转载 System.map

有关System.map文件的信息好象很缺乏。其实它一点也不神秘,并且在整个事情当中它并不象看上去那么得重要。但是由于缺乏必要的文档说明,使其显得比较神秘。它就象耳垂,我们每个人都有,但却不知道是干什么用的。本网页就是用来说明这个问题的。注意,我并不会是百分之一百正确的。例如,一个系统很可能没有/proc文件系统支持,但是大多数系统肯定有。这里我假定你是“随大流的”,并有一个典型配置的系统

2014-05-22 10:50:19 226

转载 Linux内核中的Kconfig、Makefile、.config

毛毛同学今天学习了驱动程序模块的安装与卸载,在这个过程中毛毛发现,内核的目录中有许多的Kconfig、Makefile文件,但是毛毛不知道为什么需要这些文件,这些文件又是用来做什么的。下面我们就和陶毛毛同学一起来学习下这些文件的作用是什么。         首先我们来学习什么Makefile,什么是Kconfig ,什么是.config         Makefile:一个文本形式的文件

2014-05-16 15:43:41 260

转载 字符杂项设备(miscdevice)

misc杂项设备是主设备号为10的驱动设备在linux内核源码miscdevice.h里杂项设备描述结构体定义:struct miscdevice  {int minor;const char *name;const struct file_operations *fops;struct list_head list;struct

2014-05-16 11:25:13 449

转载 ABS_MT_TOUCH_MAJOR和ABS_MT_WIDTH_MAJOR

通常的多点触摸周期可以描述为:        ABS_MT_*|SYN_MT_REPORT|ABS_MT_*|SYN_MT_REPORT|SYN_REPORT        有些ABS_MT事件是必须实现的,如ABS_MT_POSITION_X和ABS_MT_POSITION_Y.而某些事件,如ABS_MT_TOUCH_MAJOR和ABS_MT_WIDTH_MAJOR是否需要实现则

2014-05-16 11:20:23 2016

转载 关于file_operations结构体

结构体file_operations在头文件 linux/fs.h中定义,用来存储驱动内核模块提供的对设备进行各种操作的函数的指针。该结构体的每个域都对应着驱动内核模块用来处理某个被请求的 事务的函数的地址。举个例子,每个字符设备需要定义一个用来读取设备数据的函数。结构体 file_operations中存储着内核模块中执行这项操作的函数的地址。一下是该结构体 在内核2.6.5中看起来的样子:

2014-05-16 09:39:32 230

转载 file_operations中各项解析

linux设备驱动中file_operations结构体分析 struct module *owner第一个 file_operations 成员根本不是一个操作; 它是一个指向拥有这个结构的模块的指针. 这个成员用来在它的操作还在被使用时阻止模块被卸载. 几乎所有时间中, 它被简单初始化为 THIS_MODULE, 一个在 中定义的宏.loff_t (*llseek)

2014-05-16 09:31:54 726

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除