摘要: 许多语言,例如C,C++,JAVA等等都是从hello world开始的,因此我们的驱动程序的开发也要从hello world入手。 首先来看下我们的代码: 上面的代码所有的程序都是从module_init函数开始的,module_init的使用是强制性的,这个宏会在模块的目标代码中增加一个特殊的段 阅读全文
posted @ 2016-05-03 17:38 小禾先生 阅读(235) 评论(0) 推荐(0) 编辑
摘要: 移动命令: h:左移 l:右移 k:上移 j:下移 ^:移动到本行第一个非空白字符上 0:移动到本行第一个字符上 gg:移动到文件头 G = shift + g:移动到文件尾 %:从一个"{"切换到另一个"}"上面去 切换到编辑模式: i 在当前位置插入 I 在当前行首插入 a 在当前位置后插入 A 阅读全文
posted @ 2016-05-01 20:09 小禾先生 阅读(134) 评论(0) 推荐(0) 编辑
摘要: 定义在linux/kernel.h中 #define ARRAY_SIZE(arr) (sizeof(arr)/sizeof((arr)[0]) + __must_be_array(arr)) 写驱动时,看到这个宏,是求设备结构体中设备的个数。 __must_be_array(arr))作用:宏定义 阅读全文
posted @ 2016-04-29 08:41 小禾先生 阅读(1896) 评论(0) 推荐(0) 编辑
摘要: 编译u-boot时遇到的问题及解决方法。 阅读全文
posted @ 2016-04-17 17:25 小禾先生 阅读(281) 评论(0) 推荐(0) 编辑
摘要: 首先创建一个文件夹作为git仓库,创建一个test文件夹,并在文件夹下创建一个test.c的文件用以测试: git init git使用git init来初始化一个git仓库,git的很多命令都是在git仓库中运行,所以git init是使用git的第一个命令。在执行完git init命令后,git 阅读全文
posted @ 2016-04-08 17:01 小禾先生 阅读(161) 评论(0) 推荐(0) 编辑
摘要: TFTP是用来下载远程文件的最简单网络协议,它其于UDP协议而实现。 xinetd(eXtended InterNET services daemon)是新一代的网络守护进程服务程序,又叫超级INTERNET服务器,经常用于管理多种轻量型INTERNET服务,xinetd提供类似于inetd+tcp 阅读全文
posted @ 2016-04-06 22:33 小禾先生 阅读(319) 评论(0) 推荐(0) 编辑
摘要: Linux下实现ftp的软件有很多,最常见的有vsftpd,Wu-ftpd和proftp等。访问ftp服务器时需要验证,只有经过了ftp服务器的验证用户才能访问和传输文件。这里我们用vsftpd,vsftpd提供了3种登陆形式: (1)anonymous(匿名账号) 使用anonymous是应用广泛 阅读全文
posted @ 2016-04-06 22:00 小禾先生 阅读(480) 评论(0) 推荐(0) 编辑
摘要: 什么是SVN(subversion)? 有一个简单但不十分精确的比喻:SVN = 版本控制 + 备份服务。 简单的说就是,你可以把SVN看做一个备份服务器,但是更好的是,他可以帮助记住每一次上传的版本,并且自动的赋予每次的变更版本。 通常,我们称用来 存放上传上传档案的地方就叫做repository 阅读全文
posted @ 2016-01-14 20:21 小禾先生 阅读(407) 评论(0) 推荐(0) 编辑