当前位置:首页 > 嵌入式 > 嵌入式软件
[导读]OpenWrt嵌入式Linux开发环境

1. 什么是OpenWrt

  Cisco/Linksys 在2003 年发行的WRT54G这款无线路由器非常“经典”。同年有好事者在 Linux Kernel Mailing List 搜索 WRT54G,发现它的IOS 是基于Linux,然而Linux 基于GPL 发布许可证,就是 GNU General Public License. 该许可证规定Cisco 应该把WRT54G 的IOS 的源代码公开。本来Cisco 拒绝公开源代码,最后,03 年三月份的时候,基于公众压力Linksys 公开了WRT54G 的源代码。

  故事本来到这里就结束了,然而相反,结果越闹越大:有了源代码以后,开发者便清楚知道代码如何控制路由器的硬件,并且掌握了一些通过增加新的代码到原有的IOS 当中去 —— 使得硬件支持更多的Feature 的技术。这些开发者组成了一个项目开发团队,不断对原来的IOS 进行更新,编码,加入新的特性…… 现在他们手上的WRT54G 无线路由器的能力已经大大超过了原来Cisco 设计的地摊货的设计思路。不但如此,随着这两年互联网Web2.0 技术的发展,不同的开发团队之间找到了更好的协同工作平台,其规模不亚于TAC. 他们最近建立了一个DD-WRT 项目的Wiki 站点将全套文档以及代码公开发布。使用DD-WRT 项目提供的源代码,重新升级WRT54G 以后你就能够获得一台相当于$600 左右的中端无线路由器了。

  当Linksys 释放 WRT54G/GS 的源码后,网上出现了很多不同版本的 Firmware 去增强原有的功能。大多数的 Firmware 都是99%使用 Linksys的源码,只有1%是加上去的,每一种 Firmware 都是针对特定的市场而设计,这样做有2个缺点,第一个是难以集合各版本Firmware的长处,第二个是这版本距离 Linux 正式发行版越来越远。

  OpenWrt 选择了另一条路,它从零开始,一点一点的把各软件加入去,使其接近 Linksys 版 Firmware的功能,而OpenWrt 的成功之处是它的文件系统是可写的,开发者无需在每一次修改后重新编译,另它更像一个小型的 Linux 电脑系统,也加快了开发速度。

  OpenWrt开源项目的主页 http://openwrt.org/

  2. 为什么使用 OpenWrt

  因为 Linux 为我们提供了很多免费的软件,我们可以用一个很低的价钱购买像WRT54G的硬件,做成一个小型的 Linux 系统,现在OpenWrt已经提供了100多个已编译好的软件,而且数量还在不断增加,而 OpenWrt SDK 更简化了开发软件的工序

  3. OpenWrt 的历史

  OpenWrt 项目由 2004 年 1 月开始, 第一个版本是基于 Linksys 提供的 GPL 源码及 uclibc 中的 buildroot 项目, 这个版本称为 “stable” 版, 在网上至今仍有很多项目使用这个版本, 较为有名 Freifunk-Firmware 和Sip@Home.

  到了2005年初, 一些新的开发人员加入了这项目, 几个月后他们释出了第一个 “experimental” 版本, 这和以前版本不同的是, 这版本差不多完全舍弃了 Linksys 的 GPL 源码, 使用了 buildroot2 作为核心技术, 将 OpenWrt 完全模块化,OpenWrt 使用 Linux 正式发行的核心源码(2.4.30),加上了一些补丁和网络驱动,开发队伍更为OpenWrt添加了许多免费的工具,你可以直拉把Image写入Flash (mtd)里面,设定无线功能和VLAN交换功能,这个版本名为“White Russian”,而1.0版本大概于2005年底公布。

  4. 为什么是OpenWrt?

  虽然几年前已看过一些和嵌入式 Linux 相关的报道, 但由于我的工作和 Linux , 甚至嵚入式 Linux 完全扯不上关系, 所以一直没有机会接触嵌入式 Linux。而且在香港, 要找到嵚入式系统的开发工具并不是那么容易的。

  有一次, 我为了在宿舍内安装无线网桥, 买了一对Linksys WRT54G, 回来后才知道买错了(应该买WAP54G才对), 于是我上网看看有没有其他办法, 在这偶然的情况下, 我发现 OpenWRT 可以实现这功能, 便开始了改装这路由器的研究...

  Linksys WRT54G 是一个几乎在任何电脑商场都可以买到的无线路由器, 你就可以拥有一个配备 200MHz CPU, 4MB Flash, 16MB Ram的嵌入式开发系统, 而且在你完成你的开发后, 你还可以应用在生活上, 一点都不浪费。由于它使用 Linux 作为操作系统, 并公开源码及驱动, 在网络上已有很多为它而设计的开源项目, 包括HyperWRT, OpenWRT, SIP Phone等等, 实在是学习嵌入式 Linux 的入门级首选。[!--empirenews.page--]5、为什么学习OpenWRT?

 

  你不需要对 MIPS 处理器有很深入的了解, 也不用懂得如何去设计一个 MIPS 处理器专用的内核, 因为这些在网上已有人为你做好, 你只需懂得如何安装和使用就行了, 不过你也可以去 http://www.linux-mips.org 找到相关的资料。

  如果你对 Linux 系统有一定的认识, 并想学习或接触嵌入式 Linux 的话, OpenWRT很适合你, 你将学会一些无线路由器的基本知识, 以及一般嵌入式 Linux 的开发过程, 你会发现无论是 ARM, PowerPC 或 MIPS 的处理器, 都必需经过以下的开发过程:

  创建 Linux 交叉编译环境

  建立 Bootloader

  移植 Linux 内核

  建立 Rootfs (根文件系统)

  安装驱动程序

  安装软件

  调试

  随着 Linux 的成熟, 大量不同的处理器内核和应用软件相继出现, 当你熟悉这些嵚入式 Linux 的基本开发流程后, 你不再局限于 MIPS 处理器和无线路由器, 你可以尝试在其它处理器, 或者非无线路由器的系统移植嵌入式 Linux, 定制合适自己的应用软件, 并建立一个完整的嵌入式产品。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

为了满足日益增长的数据处理需求,铁威马NAS推出了全新的性能巅峰2024年旗舰之作F4-424 Pro,并搭载了最新的操作系统--TOS 6。这款高效办公神器的问世,无疑将为企业和专业人士带来前所未有的便捷与效率。

关键字: 存储 Linux 服务器

一直以来,5G手机都是大家的关注焦点之一。因此针对大家的兴趣点所在,小编将为大家带来5G手机的相关介绍,详细内容请看下文。

关键字: 5G 手机 4G

以下内容中,小编将对5G手机的相关内容进行着重介绍和阐述,希望本文能帮您增进对5G手机的了解,和小编一起来看看吧。

关键字: 5G 4G

本文中,小编将对5G予以介绍,如果你想对它的详细情况有所认识,或者想要增进对5G的了解程度,不妨请看以下内容哦。

关键字: 5G 4G 网速

在这篇文章中,小编将为大家带来5G手机的相关报道。如果你对本文即将要讲解的内容存在一定兴趣,不妨继续往下阅读哦。

关键字: 5G 4G

今天,小编将在这篇文章中为大家带来5G的有关报道,通过阅读这篇文章,大家可以对它具备清晰的认识,主要内容如下。

关键字: 5G 4G

5G将是下述内容的主要介绍对象,通过这篇文章,小编希望大家可以对它的相关情况以及信息有所认识和了解,详细内容如下。

关键字: 5G 4G

在这篇文章中,小编将对5g视频和4g视频的区别的相关内容和情况加以介绍以帮助大家增进对它们的了解程度,和小编一起来阅读以下内容吧。

关键字: 5G 4G

随着5G技术的不断发展和商用化进程的推进,越来越多的用户开始体验到了5G网络带来的高速和低延迟优势。然而,也有部分用户反映,他们使用的5G网络速度并没有比4G快多少,甚至有时还不如4G。这究竟是什么原因导致的呢?本文将围...

关键字: 5G 4G 无线网络

双系统将是下述内容的主要介绍对象,通过这篇文章,小编希望大家可以对双系统的相关情况以及信息有所认识和了解,详细内容如下。

关键字: 双系统 Windows Linux
关闭
关闭