易截截图软件、单文件、免安装、纯绿色、仅160KB

linux基本驱动和linux字符设备驱动

 先粘贴一个linux最简单的驱动,其实对于一个从2.4玩上来的人来说,驱动不复杂,比较不习惯的是那个makefile
驱动本身:
hello.c:
#include <linux/init.h>
#include <linux/module.h>
#include <linux/kernel.h>
MODULE_LICENSE("Dual BSD/GPL");
static int hello_init(vodi){
    printk(KERN_ALERT "hello world\n");
    return 0;
}
static void hello_exit(vodi){
    printk(KERN_ALERT"bye bye\n");
}
module_init(hello_init);
module_exit(hello_exit);
Makefile:
obj-m := hello.o
KERNELDIR :=/lib/modules/$(shell uname -r)/build
all:
    make -C $(KERNELDIR) M=$(shell pwd) modules
clean:
    rm -rf *.o *.ko
然后附过来一个驱动,暂时没有验证,是字符型的,如果验证好用,我再更新这篇日志
本例是冯国进的 《嵌入式Linux 驱动程序设计从入门到精通》的第一个例子
感觉真是好书   强烈推荐
注释是deep_pro加的 转载请注明!我的特点是文不加点!
这个驱动是在内存中分配一个256字节的空间,供用户态应用程序读写。
先是头文件 demo.h
#ifndef _DEMO_H_
#define _DEMO_H_
#include <linux/ioctl.h> /* needed for the _IOW etc stuff used later */
/********************************************************
* Macros to help debugging
********************************************************/
#undef PDEBUG             /* undef it, just in case */
#ifdef DEMO_DEBUG
#ifdef __KERNEL__
#    define PDEBUG(fmt, args...) printk( KERN_DEBUG "DEMO: " fmt, ## args)
#else//usr space
#    define PDEBUG(fmt, args...) fprintf(stderr, fmt, ## args)
#endif
#else
# define PDEBUG(fmt, args...) /* not debugging: nothing */
#endif
#undef PDEBUGG
#define PDEBUGG(fmt, args...) /* nothing: it's a placeholder */
//设备号
#define DEMO_MAJOR 224
#define DEMO_MINOR 0
#define COMMAND1 1
#define COMMAND2 2
//自己定义的设备结构
struct DEMO_dev
{
    struct cdev cdev;    /* Char de


相关文档:

实战Linux Bluetooth编程(六) L2CAP编程实例

例一:发送Signaling Packet:
Signaling Command是2个Bluetooth实体之间的L2CAP层命令传输。所以得Signaling Command使用CID 0x0001.
多个Command可以在一个C-frame(control frame)中发送。
 如果要直接发送Signaling Command.需要建立SOCK_RAW类型的L2CAP连接Socket。这样才有机会自己填充Command Code,Identi ......

解开linux下的tar.z和.tgz还有bz2格式的包

 1,解开tar.z的压缩包
     # tar xvfz backup.tar.Z
     或# uncompress backup.tar.Z
        #tar xvf backup.tar
 2,解开.tgz的文件
    #gunzip backup.tgz
 3,如何压缩和解压.bz2的文件
&nbs ......

linux调整系统时间 永久 z



    参考资料一、linux调整系统时区/时间的方法(tzselect命令)

1) 找到相应的时区文件 /usr/share/zoneinfo/Asia/Shanghai

用这个文件替换当前的/etc/localtime文件。

2) 修改/etc/sysconfig/clock文件,修改为:

ZONE="Asia/Shanghai"
[color=red]UTC=true[/color]
ARC=false ......

Linux下的Dhcp安装(服务器名DHcpd)

 
一 安装DHCP服务器
1.先查看系统是否安装DHcp
#rpm -qa|grep dhcp
2.安装RPM包,如果是Rea Hat LInux9安装包在第二章光盘,挂在了光驱后可用查找命令找DHCP包
#find /mnt/cdrom/ -name "dhcp"
3.查看find命令搜出来的文件路径进行安装
#rpm -ivh/mnt/cdrom/RedHat/RPMS/dhcp*/dhcpd*(根据自己实际文件路径)
4. ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号