海王  

随笔分类 -  linux 应用层代码

  • 浅析linux中鼠标数据读取
    摘要:http://blog.chinaunix.net/u3/108121/showart_2282259.htmlluther@gliethttp:~$ ll /dev/input/micecrw-rw---- 1 root root 13, 63 2009-07-09 15:54 /dev/input/mice我们就是去读/dev/input /mice设备节点,源码如下: #include &l... 阅读全文
    posted @ 2010-11-30 13:31 海王 阅读(2604) 评论(0) 推荐(0) 编辑
  • linux下如何模拟按键输入和模拟鼠标
    摘要:http://blog.chinaunix.net/u3/94700/showart_2211516.html 查看/dev/input/eventX是什么类型的事件, cat /proc/bus/input/devices设备有着自己特殊的按键键码,我需要将一些标准的按键,比如0-9,X-Z等模拟成标准按键,比如KEY_0,KEY-Z等,所以需要用到按键模拟,具体方法就是操作/dev/input... 阅读全文
    posted @ 2010-11-30 13:29 海王 阅读(3735) 评论(0) 推荐(0) 编辑
  • getenv(取得环境变量内容)
    摘要:getenv(取得环境变量内容) 相关函数 putenv,setenv,unsetenv 表头文件 #include<stdlib.h> 定义函数 char * getenv(const char *name); 函数说明 getenv()用来取得参数name环境变量的内容。参数name为环境变量的名称,如果该变量存在则会返回指向该内容的指针。环境变量的格式为name=val... 阅读全文
    posted @ 2010-11-12 20:04 海王 阅读(1523) 评论(0) 推荐(0) 编辑
  • C/C++ 笔试、面试题目大汇总
    摘要:1.求下面函数的返回值(微软) int func(x) { int countx = 0; while(x) { countx ++; x = x&(x-1); } return countx; } 假定x = 9999。 答案:8 思路:将x转化为2进制,看含有的1的个数。 2. 什么是“引用”?申明和使用“引用”要注意哪些问题? 答:引用就是某个目标变量的“别名”(ali... 阅读全文
    posted @ 2010-11-09 21:27 海王 阅读(358) 评论(0) 推荐(0) 编辑
  • Linux下的C编程实战之文件系统编程
    摘要:http://dev.yesky.com/468/7601968.shtml 2007-10-12 11:01作者:宋宝华 1.Linux文件系统  Linux支 持多种文件系统,如ext、ext2、minix、iso9660、msdos、fat、vfat、nfs等。在这些具体文件系统的上层,Linux提供 了虚拟文件系统(VFS)来统一它们的行为,虚拟文件系统为不同的文件系统与内核的通信提供了一致的接口。下图给出了Linux中文件系统的关系:   在Linux平台下对文件编程可以使用两类函数:(1)Linux操作系统文件API;(2)C语言I/O库函数。 前者依赖于Linux系统调用,后者实 阅读全文
    posted @ 2010-09-15 11:26 海王 阅读(669) 评论(0) 推荐(0) 编辑
  • NTP服务器
    摘要:linux NTP服务实现详解 http://www.freebsd.org/doc/zh_CN/books/handbook/network-ntp.html NTP协议介绍 NTP协议全称网络时间协议(Network Time Procotol)。它的目的是在国际互联网上传递统一、标准的时间。具体的实现方案是在网络上指定若干时钟源网站,为用户提供授时服务,并且这些网站间应该能够相互比对,提高准... 阅读全文
    posted @ 2010-09-09 09:34 海王 阅读(408) 评论(0) 推荐(0) 编辑
  • date 命令实现源码分析
    摘要:http://qgjie456.blog.163.com/blog/static/354513672008465031709/ hwclock可以设置系统时间,大家可能都用过。但是我想每个人对知道此命令的途径却不完全相同。我陈述一下自己得知此命令的过程,希望能那些对linux望而却步的初学者有些帮助,linux本身公开源码,这对那些追根问底的人是个不错的选择。文中过程废话较多,假设读者是初学者,对... 阅读全文
    posted @ 2010-09-09 09:05 海王 阅读(6516) 评论(0) 推荐(0) 编辑
  • backlight misc驱动范例 及应用程序范例
    摘要:http://blog.chinaunix.net/u3/101649/showart_2081192.html1.编写背光驱动。文件名为my2440_backlight.c(1)代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--#include&l... 阅读全文
    posted @ 2010-08-23 12:20 海王 阅读(619) 评论(0) 推荐(0) 编辑
  • V4L2应用程序框架
    摘要:http://blog.csdn.net/ipromiseu/archive/2010/03/29/5428578.aspx 一.什么是video4linuxVideo4linux2(简称V4L2),是linux中关于视频设备的内核驱动。 V4L2较V4L有较大的改动,并已成为2.6的标准接口,函盖video\dvb\FM...,多数驱动都在向V4l2迁移。更好地了解V4L2先从应用入手,然后再... 阅读全文
    posted @ 2010-08-19 23:16 海王 阅读(2278) 评论(1) 推荐(1) 编辑
  • 用户信息获取程序例子
    摘要:#include <stdio.h>#include <pwd.h> int main(){ struct passwd * pw; char *username = "root"; pw = getpwnam(username); if (!pw) { printf("%s is not exist\n", username); return -1; } printf(... 阅读全文
    posted @ 2010-08-15 19:45 海王 阅读(278) 评论(0) 推荐(0) 编辑
  • 查看 各种寄存器值的 内核模块 C语言
    摘要:#include <linux/kernel.h>#include <linux/module.h>#include <linux/types.h>#include <linux/fs.h>#include <linux/errno.h>#include <linux/init.h>#include <linux/cde... 阅读全文
    posted @ 2010-08-13 10:39 海王 阅读(1942) 评论(0) 推荐(0) 编辑
  • linux2.4.18内核定时器的使用
    摘要:http://www.52rd.com/Blog/Detail_RD.Blog_cxf17_16855.html Linux2.4下驱动中定时器的应用我的内核是2.4.18的。Linux的内核中定义了一个定时器的结构:#include<linux/timer.h>struct timer_list{ struct list_head list;unsigned long expires... 阅读全文
    posted @ 2010-07-09 16:14 海王 阅读(795) 评论(0) 推荐(0) 编辑
  • 浮点类型强制转换会丢弃小数部分(linux内核中一般不要使用浮点数,解决方法是放大为整数操作)
    摘要:#include <stdio.h>#include <stdlib.h> int main(){ int i; float a=0.2; float f=0.49; float b = 0.5; float e = 0.51; float c=0.6; float k=0.99; float g = 1.0; float h = 1.1; printf("0.2 : %d... 阅读全文
    posted @ 2010-07-05 17:59 海王 阅读(2409) 评论(0) 推荐(0) 编辑
  • 关于短延迟 sleep usleep nanosleep select
    摘要:http://www.cppblog.com/prayer/archive/2008/08/21/59572.html udelay(unsigned long usecs);mdelay(unsigned long msecs);前者用软件循环指定的微妙数,后者调用前者达到延迟毫秒级。udelay 函数只能用于获取较短的时间延迟,因为loops_per_second值的精度只有8位,所以,当计算... 阅读全文
    posted @ 2010-07-05 15:25 海王 阅读(3530) 评论(0) 推荐(0) 编辑
  • 程序崩溃系统重启问题之 received SIGTERM
    摘要:问题的根源是数组越界。越界一个单位,单位为int。系统刚开机内存此时充足。 表现1:若用控制台启动则其能正常运行 表现2:若由系统自行启动应用程序,则程序崩溃系统重启,应用程序收到终止进程信号。 分析:系统监测到操作数组越界后便发出终止进程信号,而控制台启动时信号被控制台接收到,也许其将之忽略,从而表现正常。而系统自行启动时候,接收者为应用程序,自然就”崩溃”了,其实是... 阅读全文
    posted @ 2010-06-29 15:43 海王 阅读(2872) 评论(0) 推荐(0) 编辑
  • fprintf 的封装(vsprintf,va_start(), va_arg(), va_end()可变参数列表)
    摘要:首先我们来看一个封装的实例:[代码]1.fprintf()原形:#include <stdio.h> int fprintf( FILE *stream, const char *format, ... );2.vsprintf(), vnsprintf()的原形及使用:[代码]说明:vsprintf() 和 vsnprintf() 基本一样,但后者比前者多了一个字节数的限定。vspr... 阅读全文
    posted @ 2010-06-29 11:14 海王 阅读(6170) 评论(0) 推荐(0) 编辑
  • 将打印定位到输出文件(串口中端)printf、sprintf与fprintf 的用法区分
    摘要:/dev/console 对应启动命令的最后console赋值 /dev/tty 当前控制台 /dev/tty0 LCD控制台 命令tty 查看当前终端对应的设备ps -ax 查看进程对应的控制台////========================= #include <stdio.h>#include <stdlib.h>//#include <sys/type... 阅读全文
    posted @ 2010-06-28 18:02 海王 阅读(7251) 评论(0) 推荐(1) 编辑
  • C常用的LinuxC语言函数库
    摘要:http://www.xxlinux.com/linux/article/development/soft/20070902/9597.html 本附录列出 Linux 的常见发行版(如 RedHat Linux)中包含的函数库。除特别指出外,这些函数库的使用和发行适用 GPL 条款或 LGPL 条款。 需要注意的是,Linux 上的函数库正在以非常快的速度增加和更新,这里列出的函数库只是其中的... 阅读全文
    posted @ 2010-06-12 14:29 海王 阅读(4130) 评论(0) 推荐(1) 编辑
  • C程序实现在lcd 上全屏写 blue 色 及获取fb信息
    摘要:(1) 打开设备 open("/dev/fb0",O_RDWR); (2) 获取framebuffer设备信息.ioctl(int fb,FBIOGET_FSCREENINFO,&finfo); ioctl函数是实现对设备的信息获取和设定,第一个参数为文件描述符,第二个参数为具体设备的参数,对于framebuffer,参数在linux/fb.h中定义的。 #define FBIOGE... 阅读全文
    posted @ 2010-06-12 13:12 海王 阅读(4356) 评论(0) 推荐(0) 编辑
  • Linux动态库的编译与使用 转载
    摘要:http://hi.baidu.com/linuxlife/blog/item/0d3e302ae2384d3a5343c1b1.html Linux下的动态库以.so为后缀,我也是初次在Linux下使用动态库,写一点入门步骤,以便以后能方便使用。 第一步:编写Linux程序库 文件1.动态库接口文件 //动态库接口文件getmaxlen.h #ifndef _GETMAXLEN_H_ ... 阅读全文
    posted @ 2010-06-11 13:10 海王 阅读(20079) 评论(0) 推荐(1) 编辑