
linux
文章平均质量分 54
suen1987
这个作者很懒,什么都没留下…
展开
-
SDL常用库介绍
http://blog.chinaunix.net/uid-14825809-id-3380726.html库及帮助文档下载: http://www.libsdl.org/projects/ http://www.libsdl.org/libraries.php(帮助文档在http://www.libsdl.org/projects/docs下)转载 2013-09-05 10:05:02 · 1314 阅读 · 0 评论 -
linux下make错误汇集
前提:make zImage 2.6.38内核错误:drivers/media/video/gspca/m5602/m5602_core.c:434:1: fatal error: error writing to /tmp/ccYxZaeC.s: No space left on device最终解决是删除了一些源文件,可能是linux硬盘不够大就几十G,还有就是把make 过2.6.2原创 2013-06-25 21:54:37 · 2557 阅读 · 0 评论 -
mutex_lock&spin_lock和信号量区别
void pwm_free(struct pwm_device *pwm){ mutex_lock(&pwm_lock); if (pwm->use_count) { pwm->use_count--; pwm->label = NULL; } else printk(KERN_ERR "PWM%d device already freed\n", pwm原创 2013-07-11 21:13:18 · 890 阅读 · 0 评论 -
IO端口和IO内存的区别及分别使用的函数接口
IO端口和IO内存的区别及分别使用的函数接口 每个外设都是通过读写其寄存器来控制的。外设寄存器也称为I/O端口,通常包括:控制寄存器、状态寄存器和数据寄存器三大类。根据访问外设寄存器的不同方式,可以把CPU分成两大类。一类CPU(如M68K,Power PC等)把这些寄存器看作内存的一部分,寄存器参与内存统一编址,访问寄存器就通过访问一般的内存指令进行,所以,这种CPU没转载 2013-07-11 22:36:11 · 765 阅读 · 0 评论 -
I/O驱动相关__raw_readl和__raw_writel
1.S3C2410_GPB5是端口编号,定义在regs-gpio.h中,#define S3C2410_GPIO_BANKB (32*1)#define S3C2410_GPIONO(bank,offset) ((bank) + (offset))#define S3C2410_GPB5 S3C2410_GPIONO(S3C2410_GPIO_BANKB,转载 2013-07-11 22:34:47 · 490 阅读 · 0 评论 -
cdev结构和MKDEV和主次设备号
字符设备在linux内核中用cdev来描述struct cdev{struct kobject kobj;struct module *owner;//所属模块;const struct file_operations *ops;//文件操作结构,在写驱动时,大部分函数要实现;struct list_head list;dev_t dev;//设备号,int类型,高12位为原创 2013-06-24 21:21:54 · 801 阅读 · 0 评论 -
Kobject结构体分析
kobject是组成设备device、驱动driver、总线bus、class的基本结构。如果把前者看成基类,则后者均为它的派生产物。device、driver、bus、class构成了设备模型,而kobject内嵌于其中,将这些设备模型的部件组织起来,并形成了sysfs文件系统。kobject就是device、driver、bus、class在文件系统中的代表。在sysfs操作设备时转载 2013-06-25 11:27:27 · 490 阅读 · 0 评论 -
DS18B20工作原理
下面简单介绍一下ds18b20的东西吧1.DS18B20是Dallas公司生产的数字温度传感器,具有体积小、适用电压宽、经济灵活的特点。它内部使用了onboard专利技术,全部传感元件及转换电路集成在一个形如三极管的集成电路内。DS18B20有电源线、地线及数据线3根引脚线,工作电压范围为3~5.5 V,支持单总线接口。DS18B20的结构和工作原理2.1DS18B20的内转载 2013-06-23 15:28:21 · 10179 阅读 · 0 评论 -
linux动态链接库(***.so)
动态函数与静态函数的原型说明不同的是,动态函数应使用(*函数名)的形式,以便引用其指针。#ifdef SHAREDint(*gettime)(TIMETYPE *t);//动态函数说明;#elseint gettime(TIMETYPE *t);//静态函数说明;#endif路径:F:\Linux_书籍1. LINUX下动态链接库的创建原创 2013-07-16 16:01:03 · 546 阅读 · 0 评论 -
Linux下/dev/tty*的文本模式和图形模式及其转换
/dev/tty*可有两种模式:1.文本模式(就是只能显示英文);2.图形模式(可以显示图像)怎样从tty*的文本模式转换到图形模式呢?可以利用open、ioctl /dev/tty 调用基本接口来做,但是麻烦。我们可以利用SVGAlib库来做,SVGAlib is a low-level graphics library for Linux. It augments the原创 2013-09-03 17:40:34 · 1112 阅读 · 0 评论 -
怎么构造字体文件
我们想要制作字库的时候就要把它描出来,要想描绘的非常细就需要格子非常细,在非常细的格子中以点阵的方式描绘出你要显示的文字,美工描绘好后; 程序员需要取出关键点,制作为字库文件,比如新宋C:\Windows\Fonts中的simsun.ttc,这个字体文件中有所有常用汉字、英文字母(为了兼容ASCII码)和它们的关键点,我们成为glyph(关键点)。一个文字的显示步骤:第一步:给原创 2013-08-19 22:01:38 · 1016 阅读 · 0 评论 -
4.3 串的模式匹配算法
4.3.1 求子串位置的定位函数Index(S,T,pos)算法4.5:采用定长顺序存储结构,可以写出不依赖于其它串操作的匹配算法。int Index(SString S,SString T,int pos) { i = pos; j = 1; while(i <= S[0] && j <= T[0])原创 2013-08-20 10:41:15 · 1036 阅读 · 0 评论 -
linux编程gcc小技巧
gcc 中 -大i 指定头文件的目录gcc中 -小l 链接到你安装的库如freetype库 gcc -lfreetype当数学定义有问题是用 gcc -lm m是数学的意思数学定义问题如 undefined reference to ’sin‘ undefined reference to ’cos‘原创 2013-08-19 17:45:18 · 451 阅读 · 0 评论 -
智能电池管理系统应用
硬件接口:本项目硬件接口采用ARM处理器s3c6410的ADC和触摸屏复用功能的接口,因为触摸屏我们选择的是一线触摸式的,而不是四线电阻式的。所以复用接口可以被复用为ADC。ADC接口功能描述:这里要用到ADC接口,所以只描述接口ADC功能。接口操作:当触摸屏装置被使用,触摸屏的I/F,XM或YM只接地。当触摸屏的装置未被使用,为正常ADC转换,XM或YM是连接模拟输入原创 2013-07-13 10:01:42 · 977 阅读 · 0 评论 -
2.6.38版本 zImage移植错误问题
Uncompressing Linux......................................................................................................... done, booting the kernel.[ 0.000000] in start_kernel[ 0.000000] I转载 2013-07-02 21:24:11 · 876 阅读 · 0 评论 -
mmap函数
关于IO端口几乎每一种外设都是通过读写设备上的寄存器来进行的。外设寄存器也称为“I/O端口”,通常包括:控制寄存器、状态寄存器和数据寄存器三大类,而且一个外设的寄存器通常被连续地编址。CPU对外设IO端口物理地址的编址方式有两种:一种:I/O映射方式(I/O-mapped),另一种:内存映射方式(Memory-mapped)。而具体采用哪一种则取决于CPU的体系结构。有些体原创 2013-06-19 21:00:01 · 663 阅读 · 0 评论 -
linux内核cdev_init系列函数(字符设备DS18B20的注册)
内核中每个字符设备都对应一个 cdev 结构的变量,下面是它的定义:linux-2.6.22/include/linux/cdev.hstruct cdev { struct kobject kobj; // 每个 cdev 都是一个 kobject struct module *owner; // 指向实现驱动的模块 const转载 2013-06-25 10:46:33 · 853 阅读 · 0 评论 -
register_chrdev_region与register_chrdev和alloc_chrdev_region区别
在fs.h中的申明如下:分配设备号:extern int alloc_chrdev_region(dev_t *, unsigned, unsigned, const char *);extern int register_chrdev_region(dev_t, unsigned, const char *);注册设备:extern int register_chrdev(u转载 2013-06-24 21:44:13 · 830 阅读 · 0 评论 -
三. 学习Unix/Linux编程之事件驱动编程:编写一个视频游戏
参考《Unix/Linux编程实践教程》插个情趣事件:贝尔实验室的Dennise Ritchie和Ken Thompson为了玩一个叫《星级旅行》的游戏而编写了Unix系统。你信不信,反成我信了,视频游戏和操作系统有许多共同点?我咋感觉不出来呢,太浅了吧。在本文介绍一个简单的视频游戏,通过这个游戏来介绍更多的Unix系统服务、一些 基本原则和操作系统设计技术。先发问?1.视频游原创 2013-05-29 11:30:03 · 1425 阅读 · 0 评论 -
动态和静态库即调用
库:一种可执行代码的二进制形式,可以被载入内存执行,其中可分为静态库和动态库。一· 静态库:linux下一般为.a结束,由于静态库是要编译进程序中的,所以利用静态库编译成的执行文件比较大(相比动态库);优点:因为整个静态库的所有数据(代码)都会被整合进目标代码中,所有使用的函数也被编译进去了,所以编译后生成的可执行文件不需要任何外部库的支持;缺点:因为当库改变时,要重新编译转载 2013-06-14 14:39:26 · 451 阅读 · 0 评论 -
libstdc++.so.6误删问题,完整解决办法
首先叙述下出现误删会出现的症状:我的如下1.firefox肯定是打不开的2.很多的与C++有关的编译是会出现错误的暂时这么多提示一般就是找不到/usr/lib/libstdc++.so.6。好吧,解决办法,在lib目录下输入[root@localhost lib]# ls -ll查看这个库的链接关系,如果出现红色部分,说明时链接出现错误了。正确的链接是lrwxrwxrwx原创 2013-06-05 16:02:57 · 5292 阅读 · 0 评论 -
ioctl函数
#include if (ioctl(fd, FBIOGET_FSCREENINFO, &Fix) 定义:ioctl是设备驱动程序中对设备IO通道进行管理的函数;所谓对IO通道进行管理就是对设备的一些特性进行控制、设置;例如串口的传输波特率、马达的转速等。int ioctl(int fd, int cmd, …);fd是用户程序打开设备时使用open原创 2013-06-13 15:59:40 · 958 阅读 · 0 评论 -
二. linux下安装中文输入法
我的是redhat9,下面是两个安装包:fonts-chinese-3.02-9.6.el5.noarch.rpmfonts-ISO8859-2-75dpi-1.0-17.1.noarch.rpm 执行命令:[root@localhost ~]# rpm -ivh fonts-chinese-3.02-9.6.el5.noarch.rpm [ro翻译 2013-05-28 21:04:20 · 516 阅读 · 0 评论 -
Linux下的ds18b20驱动(编译成模块)
本实验基于Tiny6410开发板上的模块代码如下:代码声明是参考友善之臂论坛里面的,注释是自己添加的。#include //最基本的文件,支持动态添加和卸载模块。Hello World驱动要这一个文件就可以了#include //包含了文件操作相关struct的定义,例如大名鼎鼎的struct file_operations#include #in原创 2013-06-24 17:29:06 · 1659 阅读 · 1 评论 -
linux中的_init应用,含有__attribute__ 和section的意义和作用
在linux/init.h中定义如下:#define __init __section(.init.text) __cold notrace有些版本的内核是这样定义的:#define __init __attribute__ ((__section__ (".init.text"))) __cold__attribute__ 是什么?linux内核代码使用原创 2013-06-23 16:21:55 · 3283 阅读 · 0 评论 -
Linux内核中的Kconfig、Makefile、.config
参考:http://www.cnblogs.com/taomaomao/archive/2012/01/05/2312816.html首先我们来学习什么Makefile,什么是Kconfig ,什么是.config Makefile:一个文本形式的文件,其中包含一些规则告诉make编译哪些文件以及怎样编译这些文件。 Kconfig:一个文转载 2013-06-23 14:49:06 · 399 阅读 · 0 评论 -
win7笔记本usb转串口SecureCRT 连接问题
unable to open com1http://support1.lenovo.com.cn/lenovo/wsi/htmls/detail_12608722044535045.html参考以上网站以上是一种参考情况,一般情况下,首先要确保硬件无误,比如你的转串口线,因为usb转串口线很容易坏,所以你链接时可能会提示连接成功但是无任何信息显示,也有可能是有信息显示但是是乱码转载 2013-06-20 22:15:02 · 2326 阅读 · 0 评论 -
linux编译基本
gcc编译的只能在pc上运行arm-linux-gcc编译的只能在板子上运行,搞错的话会提示syntac语法错误,小小提示原创 2013-06-22 16:02:38 · 465 阅读 · 0 评论 -
cuteftp链接不上虚拟机的问题
http://bbs.youkuaiyun.com/topics/390276636如果端口都是没有问题的,ftp也配置好了,ping也能通,那么[root@localhost opt]# service vsftpd restart再链接应该可以了。请参考上面的网址。原创 2013-06-20 11:17:18 · 873 阅读 · 0 评论 -
SD-Flasher在win7系统里面烧写SD卡的问题
http://blog.youkuaiyun.com/cghver/article/details/8522021参考上面网站转载 2013-06-20 19:20:23 · 1804 阅读 · 0 评论 -
一. 关于SecureCRT 登录linux系统的问题
我之前一直无法登录,因为我的是虚拟机安装linux的时候没有新建用户,所以系统只有一个根用户root。但是你当前登录的时候,直接登录root是不行的,所以创建一个新的系统用户,然后登录那个用户就可以解决了。当然如果你的事防火墙或selinux设置问题,我这个就是没有意义了。本段只表达的是SecureCRT 登录遇到问题中的一种,并且lz自己解决了,很显然的原因是网上没有搜到合适的解决方原创 2013-05-28 20:01:42 · 496 阅读 · 0 评论