一般嵌入式 Linux 的开发过程, 无论是 ARM, PowerPC 或 MIPS 的处理器, 都必需经过以下的开发过程:
1、 创建 Linux 交叉编译环境;
2、建立 Bootloader;
3、移植 Linux 内核;
4、建立 Rootfs (根文件系统);
5、安装驱动程序;
6、安装软件;
熟悉这些嵚入式 Linux 的基本开发流程后,不再局限于 MIPS 处理器和无线路由器, 可以尝试在其它处理器, 或者非无线路由器的系统移植嵌入式 Linux, 定制合适自己的应用软件, 并建立一个完整的嵌入式产品 。
由于CPU内核体系不同,造成很多应用程序移植到OpenWrt上的时候经常崩溃 。
由于ADSL硬件模块的驱动程序没有开放源代码 , 造成很多ADSL一体无线路由的ADSL模块不能工作而造成功能缺失(RG100A和DB120除外) 。
由于OpenWRT并不是官方发布的路由器固件,所以要使用(刷入该固件)有困难,而且其基于Linux,导致OpenWRT的入门门槛较高 。
White RussianOpenWRT的初始版本 , 从2005年7月的White Russian RC1开始发展 , 一直到2007年1月才发布White Russian 0.9 。
KamikazeOpenWRT的第二个版本,从2007年6月开始发布Kamikaze 7.06,一直更新到2010年1月的Kamikaze 8.09.2结束 。这期间OpenWRT进行了大量改进,并为它的发展打下了坚实的基础 。
Backfire2010年03月04日,OpenWrt Backfire 10.03 Beta发布,该版本是开源的路由器固件,基于linux,功能强大,支持很多主流的平台和路由器,甚至支持国内的君正jz4740平台,是学习和开发嵌入式,也是工业、 商业应用理想平台 。更新方面: brcm-2.4 更新到 2.4.37 kernel ,other targets 更新到 2.6.30 or 2.6.32 ,arm/mips平台的 gcc 更新到 4.3.3 ,powerpc的gcc更新到 4.4.3,uClibc 更新到 0.9.30.1 ,Broadcom 11g 芯片组的 b43 无线网卡驱动更新到 2.6 kernel,支持Atheros 11n ath9k ,支持很多新的ar71xx设备,magicbox归入ppc40x平台。
2010年03月25日,OpenWrt 发布 Backfire 10.03-rc1,支持国内留下的 tp-link最新多款11n的路由器,是不是想让路由器支持万能中继呢,或者增加路由器的多wan口支持呢,更多的这些高端路由才有的功能,或许能 让家用路由轻松具备 。
2010年04月07日,OpenWRT放出Backfire 10.03正式版 。
2010年08月29日OpenWRT放出了Backfire 10.03.1 。修正了很多BUG,提高了兼容性 。TP-LINK WR841N v2 已经可以正常使用了,包括无线部分和上网部分 。自rc1之后的变动:改进了防DNS重绑定攻击,改进了uhttpd稳定性,Rootfs生成修复(Orion景象),修正了基于BRCM47XX的PCI初始化,添加了rtl8366 vlan 改变的 整合脚本,还原了一般x86镜像 GRUB控制台 , 提高了ar71xx系列以太网驱动程序性能,添加了ar7240 交换机驱动,一些swconfig 和 交换机驱动的改进,RDC 使用启动加载器支持波特率,允许原生HID 支持 通过添加 kmod-input-hid,6in4:适当的处理了PPPoE连接并且修复了终端隧道更新 。
鉴于开源软件在国内的发展态势,目前国内有基于OpenWRT改进而来的OpenWRT-DreamBox 。这个版本的OpenWRT集成了了很多常用功能(包括脱机下载等),而通过这个版本的OpenWRT便可以把一个路由器的功能发挥的淋漓尽致 。
现在有越来越多的Maker开始折腾OpenWrt,但作为一个Maker新手来讲,在网上还是很难找到一份系统的入门级资料 。查找资料很辛苦,而且OpenWrt的门槛相对较高,希望这篇文章所提供的从零开始学OpenWrt编译 + 刷机 + 使用教程能降低新手们的入门难度,当然,编译过程非必须,一般的路由都可找到可用的稳定固件直接刷机 。
1、安装Ubuntu(编译需要Linux环境) , 到其下载 , 版本根据自己所需选择即可 。可以选择安装到虚拟机或者物理机,图形化安装而且是中文版,连安装都搞不定的,可以关闭本页面了;(下载地址可以百度,回复贴中会提供)
推荐阅读
- 编程语言做游戏开发,游戏编程开发需要具备哪些技术
- html模板中使用函数,html function函数的用法
- 新媒体业绩如何写简历范文,新媒体简历个人总结
- go语言实现泛型了吗 go语言chan
- 关于linux命令nmtui的信息
- 包含jqueryeachcontiinue的词条
- 为什么蜘蛛喜欢黑暗视频,为什么蜘蛛喜欢黑暗视频呢
- php建立帐号数据库 php数据库登录注册页面
- 韩庚的视频调色软件安卓,韩庚变样