摘要: 因为本身从事存储行业,在工作中多次碰到用户有这样的要求:我的linux系统中原来有一块SCSI硬盘,系统分配的设备文件是/dev/sda。现在新增加了一个外置的磁盘阵列,通过SCSI卡连接。但接上这个磁盘阵列后,/dev/sda变成了磁盘阵列的硬盘了,原来内置的SCSI硬盘变成了 /dev/sdb,我希望将设备文件固定下来。 过去,我总是对用户说,这个比较麻烦,因为/dev/sda等文件都是linux内核自动分配的。很难固定下来,除非你更改加载SCSI卡驱动程序的顺序,让内置硬盘连接的SCSI卡比外接磁盘阵列连接的SCSI卡的驱动模块先加载到内核,这样就能保证/dev/sda总是指向内置的硬盘 阅读全文
posted @ 2011-06-15 14:09 hnrainll 阅读(399) 评论(0) 推荐(0) 编辑
摘要: 1、 使用新的入口 必须包含 <linux/init.h> module_init(your_init_func); module_exit(your_exit_func); 老版本:int init_module(void); void cleanup_module(voi); 2.4中两种都可以 阅读全文
posted @ 2011-06-15 14:06 hnrainll 阅读(1179) 评论(0) 推荐(0) 编辑
摘要: 预定义变量 含义 $* 不包含扩展名的目标文件名称。 $+ 所有的依赖文件,以空格分开,并以出现的先后为序,可能包含重复的依赖文件。 $< 第一个依赖文件的名称。 $? 所有的依赖文件,以空格分开,这些依赖文件的修改日期比目标的创建日期晚。 $@ 目标的完整名称。 $^ 所有的依赖文件,以空格分开, 阅读全文
posted @ 2011-06-15 08:59 hnrainll 阅读(2657) 评论(0) 推荐(0) 编辑
摘要: ( 转)嵌入式Linux驱动开发笔记 Linux驱动一般以模块module的形式来加载,首先需要把驱动编译成模块的形式。简单的例子, Begin of hello.c file #include <linux/init.h> #include <linux/kernel.h> #include <l 阅读全文
posted @ 2011-06-15 08:27 hnrainll 阅读(6312) 评论(0) 推荐(0) 编辑