06 2011 档案
摘要:一直在看代码,今天准备真正去试试,就拿tiny6410的LED灯开刀,虽说是自己写,但实际上也是参考例程来的。不过还好基本的思路还是蛮清晰的。 定义本次驱动为misc device(杂项设备驱动),包含头文件miscdevice.h,其实所谓的杂项驱动程序就是主设备号为10的字符设备驱动,其实就是用主设备号10调用了函数register_chrdev()。且misc device会自动在/dev目录下建立设备节点,而不需用mkmod手动建立。开发板IO定义:S3C6410 GPK口:#include <linux/miscdevice.h> #include <linux/f
阅读全文
摘要:他在评阅我们毕设论文时候就经常为计算机学生现状感到痛心疾首,在最后一次论文的 修订中收到老师最长的一封邮件,洋洋洒洒三千字有余。一口气读完,感慨颇多,特别是 读到96级和03级对比之处惊讶之余,心中生出感动的情绪来。在这个时候得到老师宝贵 的“批评”,我想我是幸运的,因为之后的路更长。 在此,我再次谢谢老师,谢谢这段时间在实验室遇到的其它老师和学长,各种教诲和帮 助铭记于心。经过老师同意后转贴于此,希望使更多人获益。 ----------------------------------我是分割线-------------------------------- 在这次论文评审中我要求比较严...
阅读全文
摘要:前些天不知为啥,我的ubuntu图标缩略图变得非常的小,看着很不爽,今天果断百度一下,找到方法修改了,这下想怎么改就怎么改了,嘿嘿。 变成这样了: Alt + F2 打开运行,输入conf-editor,打开“配置编辑器”,在/apps/nautilus/icon_view下的thumbnall_size就是了,想怎么改都可以,我改成70了,看看效果先。OK,很满意。。。。。。。。。。。。
阅读全文
摘要:#include <linux/module.h>#include <linux/moduleparam.h>#include <linux/init.h>#include <linux/kernel.h> /* printk() */#include <linux/slab.h> /* kmalloc() */#include <linux/fs.h> /* everything... */#include <linux/errno.h> /* error codes */#include <linux
阅读全文
摘要:1. 获取内核版本当设备驱动需要同时支持不同版本内核时,在编译阶段,内核模块需要知道当前使用的内核源码的版本,从而使用相应的内核 API。2.4 与 2.6 内核下,源码头文件 linux/version.h 定义有:LINUX_VERSION_CODE ― 内核版本的二进制表示,主、从、修订版本号各对应一个字节;KERNEL_VERSION(major, minor, release) - 由主、从、修订版本号构造二进制版本号。在同时支持2.4与2.6 内核的设备驱动程序中,经常可以看到以下代码段:清单1:判断内核版本的代码段。#include <linux/version.h>
阅读全文
摘要:因为本身从事存储行业,在工作中多次碰到用户有这样的要求:我的linux系统中原来有一块SCSI硬盘,系统分配的设备文件是/dev/sda。现在新增加了一个外置的磁盘阵列,通过SCSI卡连接。但接上这个磁盘阵列后,/dev/sda变成了磁盘阵列的硬盘了,原来内置的SCSI硬盘变成了 /dev/sdb,我希望将设备文件固定下来。 过去,我总是对用户说,这个比较麻烦,因为/dev/sda等文件都是linux内核自动分配的。很难固定下来,除非你更改加载SCSI卡驱动程序的顺序,让内置硬盘连接的SCSI卡比外接磁盘阵列连接的SCSI卡的驱动模块先加载到内核,这样就能保证/dev/sda总是指向内置的硬盘
阅读全文
摘要:刚刚make好scull,非常的兴奋,立即使用了一下,本想总结在写一篇文章,不够偶尔发现了一篇很不错的文章,于是就转载过来,偷偷懒,不自己写了,嘿嘿。By: 吴垠1.写在前面: a. 在进行下面的工作之前请先阅读我 的文章《在 Linux 2.6内核下编译可以加载的内核模块》,配 置好可加载内核模块的Linux环境b. 下载《Linux设备设备驱动程序(第三版)》配套的源代 码,在这里可 以下载到,如果无法下载的话可以留言或者给我发邮件索取。c. 本文的工作环境是Fedora ...
阅读全文
摘要:这两天一直看LDD3,看的很爽,似懂非懂的样子,今天开始编译例程代码scull的时候,悲剧很大,折腾了很久,主要是我Ubuntu11.04的内核版本是2.6.38,而例程编译的内核版本是2.6.10,这中间内核本身已经发生了翻天覆地的变化。说白了,能make过去,那才出鬼了,好吧,一个错误一个错误来,不急。 直接make,第一个问题来了。。。。 根据提示把Makefile里的CFLAGS改成EXTRA_CFLAGS即可,继续……提示: 如果您使用的是vi,可以和我一样一道命令解决:0,$s/CFLAGS/EXTRA_CFLAGS/g 别忘了保存,继续make…… 第二个问题来了。。。。 ...
阅读全文
摘要:Gedit中文乱码缺省配置下,用 Ubuntu 的文本编辑器(gedit)打开 GB18030/GBK/GB2312 等类型的中文编码文本文件时,将会出现乱码。出现这种情况的原因是,gedit 使用一个编码匹配列表,只有在这个列表中的编码才会进行匹配,不在这个列表中的编码将显示为乱码。您要做的就是将 GB18030 加入这个匹配列表。命令行方式,适用于所有 Ubuntu 用户。复制以下命令到终端中,然后回车即可:gconftool-2 –set –type=list –list-type=string /apps/gedit-2/preferences/encodings/auto_dete.
阅读全文
摘要:图解电力应用(日)木村博司,(日)粉川昌已著科学出版社2000TM92/4.111图解电机电器(日)饭高成男,泽间照一著科学出版社2000TM3-64/7.431图解晶体管电路(日)雨宫好文,小柴典居主编科学出版社200073.769074/12.3431图解电气电子测量(日)熊谷文宏著科学出版社200073.15074/14.543图解晶体管电路(日)饭高成男等著科学出版社200073.769074/7.431图解运算放大器电路(日)内山明治,村野靖著科学出版社200073.763074/4.222放大电路(日)雨宫好文,小柴典居主编科学出版社200073.763/9.133图解数字电路的计
阅读全文
摘要:Ubuntu11.04在28号如期发布,为了抢鲜,我也在当天晚上在线升级了一下版本。整个过程下来发现安装的时间达一小时之多,比下载软件包还要久。悲剧也就在此刻上演,据安装结束还剩十多分钟时,学校断电了(学校23点准时熄灯)。第二天开机,虽然内核已经更新到2.6.38,但没法进入系统,甚至无法加载任何系统文件,一直黑屏。只好重启进入旧内核版本2.6.37,发现旧内核也无法正常进入桌面,只能停留在命令模式。解决方法 当意外出现这种情况时,推荐下载离线iso镜像包更新。 首先切换到其他系统下载ubuntu-11.04-alternate-i386.iso,注意这里的发行版是alternate,而不.
阅读全文
摘要:买的友善的6410板子居然没有送IDE,印象中大家好像都是用的ADS1.2,于是就去下了,结果悲剧的发现了居然不支持ARM11,只支持到ARM10。后来下了RVDS2.2,经过了曲折的破解过程,一切OK。 当然事实永远不可能如此的一帆风顺,编译不通过:
阅读全文