- 博客(8)
- 收藏
- 关注
原创 [ TED ] 一个简单的thttpd应用
这里是在ramfs中使用thttpd的一个简单流程,作为备忘。1)利用buildroot构建ramfs,make menuconfig 在network中勾选thttpd,保存sudo make2)配置登录密码,将做好的rootfs.tar解压到chroot /home/myroot下,chroot . bin/sh 用htpasswd生成密码文件 htpasswd -c
2013-12-26 14:54:21
1035
原创 [TED] 创建自己的ramfs (二)
上一次我们说到如何用buildroot建立ramfs,虽然buildroot方便好用但是因为采用uClinux所以如果遇到必须用LIBC的情况就得另辟蹊径了。这次我们化整为零,从busybox开始构建自己的ramfs,首先我们先弄清楚1) 首先创建一个文件夹作为你的ramfs根目录,我们暂定为/home/myroot2) 现在在myroot下 已经有 /usr/sbin,
2013-12-26 13:21:34
898
原创 [TED] linux下的PCI备忘
网上关于PCI驱动的文章很多,这里做个备忘加深印象。主机启动过程中会检测所有PCI设备并且收集信息,通常就是PCI设备的访问空间信息也就是地址空间。之后Linux Kernel就可以通过访问BIOS的保留空间直接取得指定的PCI设备的基地址以及其他寄存器。这个工作一般都是由BIOS完成,当然如果主机不支持BIOS,Linux就会自己去扫描所有总线获取PCI信息。下图就是PCI设备的地址
2013-12-11 11:05:20
746
原创 [TED] 在用户空间Debug kernel
说到调试kernel大家第一个想到的估计是在kernel的配置文件中勾选debug项然后通过printk或者dump打印调试信息。今天我们就介绍另一种方法,把kernel编译成一个可在用户和空间直接执行的应用程序,然后利用GDB直接调试这个应用程序。不但方便调试而且即使发生崩溃也不会影响到当前系统。特别适合初次接触linux kernel的筒子。做法其实也很简单:首先下载你要调试的kern
2013-11-22 14:02:23
908
原创 [TED] 一个简单的LED驱动
linux下提供了相当多的驱动的接口和模板,所以很多情况下我们只需要提供一个底层接口就好了,把剩下的事情全部交给驱动框架自己去完成。今天我们就拿LED为例来实现一个简单的LED模块,LED的功能很简单无非就是亮,灭,闪烁。驱动框架其实已经将大部分工作做好了,而我们要做的只是提供一个实现LED亮灭的底层接口。首先需要一些先决条件和准备知识,比如你的LED的硬件连接以及如何设置寄存器或者GPIO来
2013-11-19 16:30:55
1223
原创 [TED] 用git下载kernel源码
最近突然对git挺有兴趣, 过去一直都是用wget上站点下载源码包如今发现真是老土了。虽然用起来不如cvs或者svn用起来顺手,不过作为跟踪提交代码的官方指定工具还是有过人之处的。 那么我们就开始吧:首先当然是下载git,git的版本很多我们就下载基本款apt-get install git通过网页找到一个linux的主站https://kernel.org/,当前最新的k
2013-11-14 11:07:39
656
原创 [TED] 创建自己的ramfs (一)
如何创建的自己的ramfs ? buildroot就是个不错的选择。如果刚巧你是要进行交叉编译并且目标是arm那buildroot就是你不二选择。你可以通过“make menuconfig” 选择需要的工具,网络协议甚至指定自己的busybox。因为采用uClinux的库所以体积要比采用libc小的多。而且整个编译和生成打包过程基本上是平台无关,从基本的gcc开始所有工具都是从网上
2013-11-12 16:33:05
1207
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人