侵权投诉

一文详解OpenWrt系统架构和其他系统架构的对比

2018-02-05 08:27 次阅读

嵌入式系统学习之Openwrt与其它系统架构对比

下表是OpenWrt系统架构和其他系统架构的对比:

一文详解OpenWrt系统架构和其他系统架构的对比

1. 从上表我们可以看到,openwrt主要的优势体现在小,它运行的内存最小只要32M,存放FW的最小size只要8M,同时能够满足大多数汇编指令集的需求,所以从硬件成本来说,openwrt操作系统可以适应于内存和flash更小的产品上,对于功能相对单一的智能产品,openwrt有它独特的优势。

2. 不仅如此,openwrt支持使用和其他操作系统(Desktop Distributions/android)一样的linux内核,包括对802.11的支持,这也使它在无线开发方面有更多的空间。

3. openwrt使用的C库是uClibc,并不是使用glibc,它是一个面向嵌入式Linux系统的小型的C标准库,uClibc比一般用于Linux发行版的C库GNU C Library (glibc)要小得多,glibc目标是要支持最大范围的硬件和内核平台的所有C标准,而uClibc专注于嵌入式Linux.很多功能可以根据空间需求进行取舍。

4. 在openwrt中,文件系统的启动以及管理和其他几个系统有些不一样,而且在最新的版本中更是使用了集合度比较高的daemon进程进行控制。一般文件系统的启动都是从init进程开始的,从下表中我们可以看到,不同的操作系统,启动的进程不一样,即使是同一种“操作系统”,在新旧版本间的启动方式也不一样,比如openwrt中,将旧版本的bosybox里面的一些功能整合在了procd里面,hotplug2对热插拔事件的监听也又ubox来替代,crond仍然用busybox里面的,ubus是dbus的简化版,简洁的API接口更适用于嵌入式平台。

5. netifd是用来监控和配置网络信息

6. libubox是一些管理工具

7. opkg是openwrt里面安装一些应用程序的工具,就像ubuntu里面的apt-get, 安卓里面的apk

总的来说,运行一个openwrt系统至少需要一个32M内存+8M flash, 它支持linux内核,新版本文件系统的主要管理工具包括procd,ubox,ubus,netifd和opkg.

原文标题:嵌入式系统学习之Openwrt与其它系统架构对比

文章出处:【微信号:gh_c472c2199c88,微信公众号:嵌入式ARM】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
分享:

评论

相关推荐

详解Linux服务器的用户活动和命令

如果您在管理Linux服务器,最好准备好使用用于检查用户活动的多个命令——用户何时登录及登录频率、属....
的头像 如意 发表于 07-03 15:30 185次 阅读
详解Linux服务器的用户活动和命令

一文了解虚拟机Linux系统的几大组件

本文概述了Linux系统的几大组件,描述了这些组件之间的关系。文章解释了术语,并描述看似很基础的细节....
的头像 如意 发表于 07-03 15:20 115次 阅读
一文了解虚拟机Linux系统的几大组件

Linux就该这么学【电子书分享】

公益分享,侵删 章节包括有: 第0章 咱们先来谈谈学习方法和红帽系统。 第1章 部署虚拟环境安装linux系统。 第2章 新手...
发表于 07-03 14:45 101次 阅读
Linux就该这么学【电子书分享】

Linux初学者(学习资料)

根据统计结果,越来越多的人开始转向Linux,而程序员中使用Linux的比重也越来越高。于是整理一些Linux的资料就显得尤为重要。...
发表于 07-03 14:17 125次 阅读
Linux初学者(学习资料)

虚拟机:Linux生成自签名SSL证书

虚拟机:Linux生成自签名SSL证书
的头像 如意 发表于 07-02 16:34 309次 阅读
虚拟机:Linux生成自签名SSL证书

嵌入式必看 Linux内存管理工作原理

机器的内存是有限资源,而进程数量是无法确定的,如果在某些时候已经启动的进程占据了所有内存空间,此时就....
发表于 07-02 15:10 96次 阅读
嵌入式必看 Linux内存管理工作原理

如何创建AXI CDMA Linux用户空间示例应用

步骤 3:成功完成后,选择“验证设计 (Validate design)”以验证设计,并检查地址编辑....
的头像 FPGA开发圈 发表于 07-02 15:03 342次 阅读
如何创建AXI CDMA Linux用户空间示例应用

Linux下对于函数调用的工作原理

高地址的一部分空间会分配给内核,称为内核空间,剩下的内存空间给用户使用,称为用户空间。
发表于 07-02 14:46 39次 阅读
Linux下对于函数调用的工作原理

绿芯将在2020年慕尼黑展示最新EnduroSLC™固态硬盘

中国,上海和美国,硅谷, June 30, 2020 (GLOBE NEWSWIRE) -- 绿芯将....
发表于 07-02 09:13 26次 阅读
绿芯将在2020年慕尼黑展示最新EnduroSLC™固态硬盘

基于POSIX和Unix的多用户、支持多线程和多CPU的操作系统

Linux,全称GNU/Linux,是一套免费使用和自由传播的类UNIX操作系统,其内核由林纳斯·本....
的头像 ST视频 发表于 07-02 08:14 394次 观看
基于POSIX和Unix的多用户、支持多线程和多CPU的操作系统

梳理嵌入式Linux的一些知识

学单片机的朋友有些已经有一些Linux基础了,但也不乏有些朋友没用过Linux,甚至有些初学的读者朋....
的头像 玩转单片机 发表于 07-01 16:56 368次 阅读
梳理嵌入式Linux的一些知识

宋宝华: Linux为什么一定要copy_from_user ?

传给dev_set_name()的根本是个stack区域的临时变量,是一个匆匆过客。而device的....
的头像 Linuxer 发表于 07-01 14:49 290次 阅读
宋宝华: Linux为什么一定要copy_from_user ?

一文详谈高并发

高并发,几乎是每个程序员都想拥有的经验。原因很简单:随着流量变大,会遇到各种各样的技术问题,比如接口....
的头像 如意 发表于 06-30 17:18 80次 阅读
一文详谈高并发

极度详细之Linux官方最新版本5.4移植教程

    我们在学习Linux内核开发的时候,拿到的Linux内核源码都是开发板厂家移植修改过的。我们按照厂家的使用手册,...
发表于 06-29 11:15 954次 阅读
极度详细之Linux官方最新版本5.4移植教程

软件测试的开发阶段:特点和分类

软件测试的开发阶段:特点和分类
的头像 如意 发表于 06-29 10:55 101次 阅读
软件测试的开发阶段:特点和分类

虚拟机:程序在指定地址运行的步骤

我们知道程序在每次运行的时候地址都是不一样的,linux之所以有这样的设计也许是为了安全性考虑,不利....
的头像 如意 发表于 06-29 09:45 381次 阅读
虚拟机:程序在指定地址运行的步骤

开源LIDAR原型制作平台

内核中使用的软件驱动器会启动硬件组件,向用户显示所有可用功能。这些驱动器大部分都是工业I/O (II....
发表于 06-28 14:19 163次 阅读
开源LIDAR原型制作平台

将文件自动备份到连上的USB介质的步骤

备份是防止数据丢失的最后一道防线,它提供了恢复原始数据的一种方法。您可以使用可移动介质(比如外部硬驱....
的头像 如意 发表于 06-28 11:44 446次 阅读
将文件自动备份到连上的USB介质的步骤

嵌入式系统主要学什么

  嵌入式分为嵌入式硬件和嵌入式软件。所谓嵌入式,就是指软件在特定的嵌入式硬件开发完成后,最后被固化在此硬件平台中,当硬...
发表于 06-28 11:07 81次 阅读
嵌入式系统主要学什么

Linux pstore实现自动“抓捕”内核崩溃日志

Android最早的panic信息记录的方案。在linux 2.6的安卓的内核中找到,却没有提交到社....
的头像 Linuxer 发表于 06-28 09:50 440次 阅读
Linux pstore实现自动“抓捕”内核崩溃日志

火焰图:全局视野的Linux性能剖析

CPU火焰图中的每一个方框是一个函数,方框的长度,代表了它的执行时间,所以越宽的函数,执行越久。火焰....
的头像 Linuxer 发表于 06-28 09:44 230次 阅读
火焰图:全局视野的Linux性能剖析

进程虚拟内存布局以及进程的虚拟内存分配释放流程,涉及的代码

我们计划通过一系列文章来介绍虚拟内存分配/释放,缺页处理,内存压缩/回收,内存分配器等知识,梳理虚拟....
的头像 Linuxer 发表于 06-28 09:38 210次 阅读
进程虚拟内存布局以及进程的虚拟内存分配释放流程,涉及的代码

Linux TraceEvent - 史上最长宏定义

看完了例子,我们就该看代码实现了。讲真,这是我见过的最长的宏展开了。之前在qemu上看到的那个hmp....
的头像 Linuxer 发表于 06-28 09:34 165次 阅读
Linux TraceEvent - 史上最长宏定义

嵌入式系统的三要素

  嵌入式系统三要素   嵌入式系统的三个基本要素是嵌入性、专用性与计算机系统。   (1)嵌入性是把软件嵌入到Flash存储...
发表于 06-28 08:48 740次 阅读
嵌入式系统的三要素

Linux虚拟网络技术的资料讲解

在Linux虚拟化技术中,网络级别上最重要的三项技术是网络名称空间、线对和Veth桥接器或虚拟交换机....
的头像 Wildesbeast 发表于 06-27 09:35 704次 阅读
Linux虚拟网络技术的资料讲解

Linux系统不停的报磁盘已满应该如何处理

由于是开发环境,堆满了大量的日志没删,10g了,于是我删除了一些很久的日志,8g。奇怪的事情发生了,....
的头像 Wildesbeast 发表于 06-27 09:35 357次 阅读
Linux系统不停的报磁盘已满应该如何处理

Linux的发展历史和Linux与Unix有怎么样的关系

这篇文章将介绍Linux的发展历史以及Linux与著名操作系统Unix之间的关系。不会深入探讨Lin....
的头像 Wildesbeast 发表于 06-27 09:00 116次 阅读
Linux的发展历史和Linux与Unix有怎么样的关系

STM32F407 AD18原理图,PCB器件库

刚刚用STM32F407 哪位前辈有144管脚的原理图,PCB器件库 ...
发表于 06-26 20:42 219次 阅读
STM32F407  AD18原理图,PCB器件库

如果想学嵌入式应该先学什么?

嵌入式现在已经是一个很宽泛的概念了:多平台、多操作系统、多行业,只要你编写的程序不在PC上跑,在移动设备上运行,都可以称...
发表于 06-24 14:32 1196次 阅读
如果想学嵌入式应该先学什么?

请问为什么要在Linux下学习C语言?

前些日子,由于看到同学安装了deepin,所以我也搞了一个玩玩,最后双系统折腾来折腾去,一直在纠结用什么发行版比较好,什么版本...
发表于 06-24 14:25 1227次 阅读
请问为什么要在Linux下学习C语言?

嵌入式系统的分层与专业的分类

3、把软件内核或应用文件系统等东西烧到嵌入式系统硬件平台中的ROM中就实现了一个真正的“嵌入”。
的头像 玩转单片机 发表于 06-24 11:44 170次 阅读
嵌入式系统的分层与专业的分类

SpaceX的龙飞船5384倍的主芯片降本成效让半导体业者振奋

SpaceX 最新的载人龙飞船在美国肯尼迪航天中心 39A 发射台成功发发射。在经过将近一整天的飞行....
的头像 微波射频网 发表于 06-24 10:46 403次 阅读
SpaceX的龙飞船5384倍的主芯片降本成效让半导体业者振奋

如何应对旧电脑运行慢 试试这五个微型Linux,降低CPU占用

实际上,电脑使用了较长的一段时间之后,整体的性能都会呈现下降的趋势,而对Windows系统的适应性也....
的头像 如意 发表于 06-24 10:24 727次 阅读
如何应对旧电脑运行慢 试试这五个微型Linux,降低CPU占用

支持Linux和C-like驱动程序的三种驱动方法

DA7281与DA7280和DA7282的不同之处在于,它将两个原始触发输入引脚用作I2C地址引脚,....
的头像 Dialog半导体公司 发表于 06-24 08:42 305次 阅读
支持Linux和C-like驱动程序的三种驱动方法

虚拟机:Linux查看线程信息的步骤

虚拟机:Linux查看线程信息的步骤
的头像 如意 发表于 06-24 08:41 214次 阅读
虚拟机:Linux查看线程信息的步骤

嵌入式系统发展的四个阶段

  嵌入式系统发展的四个阶段   从上个世纪70年代单片机的出现到今天,应用,嵌入式系统少说也有近30年的历史了。可以说嵌入...
发表于 06-23 15:51 1409次 阅读
嵌入式系统发展的四个阶段

嵌入式系统有哪些特性

  一、系统时序   询问任何开发人员系统中断或其他系统功能的最小,最大和平均执行时间,并且百分之九十的时间答案是空白的...
发表于 06-23 11:07 112次 阅读
嵌入式系统有哪些特性

详谈Linux的find命令

find 是 Linux 下最有用的命令之一,熟练的使用它对于提高工作效率很有帮助。下面介绍它的一些....
的头像 如意 发表于 06-23 09:43 181次 阅读
详谈Linux的find命令

Linux:使用 QEMU 测试 U-BOOT的步骤

Linux:使用 QEMU 测试 U-BOOT的步骤
的头像 如意 发表于 06-23 09:42 201次 阅读
Linux:使用 QEMU 测试 U-BOOT的步骤

Linux:测试进程占用的虚拟内存大小

Linux:测试进程占用的虚拟内存大小
的头像 如意 发表于 06-23 09:23 144次 阅读
Linux:测试进程占用的虚拟内存大小

Linux:QEMU的网络配置

1. 配置 qemu-ifup(主机): 2. 配置 kernel: 3. 修改rcS:, 添加如下....
的头像 如意 发表于 06-23 09:22 204次 阅读
Linux:QEMU的网络配置

Linux:无法写入文件到NFS目录的解决措施

在qemu的网络和主机能通信后,就可以使用nfs来从虚拟机访问主机了,方法是在虚拟机内执行命令
的头像 如意 发表于 06-23 09:10 235次 阅读
Linux:无法写入文件到NFS目录的解决措施

Linux:QEMU调试内核的步骤

Linux:QEMU调试内核的步骤
的头像 如意 发表于 06-23 09:03 154次 阅读
Linux:QEMU调试内核的步骤

Linux:制作mipsel 交叉工具链 (更新版)

Linux:制作mipsel 交叉工具链 (更新版)
的头像 如意 发表于 06-23 08:56 155次 阅读
Linux:制作mipsel 交叉工具链 (更新版)

Linux:交叉编译需要 configure的代码

很多代码都有 configure文件,需要执行一下 configure 才能产生Makefile。
的头像 如意 发表于 06-23 08:56 157次 阅读
Linux:交叉编译需要 configure的代码

虚拟机:linux高端内存管理之永久内核映射

与直接映射的物理内存末端、高端内存的始端所对应的线性地址存放在high_memory变量中,在x86....
的头像 如意 发表于 06-23 08:38 542次 阅读
虚拟机:linux高端内存管理之永久内核映射

Linux:QEMU的CPU配置

根据前面描述 CPU 的基本知识, 可以知道 CPU 有物理 CPU, 多核 CPU, 超线程 CP....
的头像 如意 发表于 06-22 18:01 284次 阅读
Linux:QEMU的CPU配置

虚拟机:Linux设置core dump文件名的格式

虚拟机:Linux设置core dump文件名的格式
的头像 如意 发表于 06-22 17:50 313次 阅读
虚拟机:Linux设置core dump文件名的格式

虚拟机:Linux的Makefile使用for编译多个目标文件

假如,有很多文件,每个文件都要变成一个单独的目标文件,如果使用makefile的话,最好能用一个 f....
的头像 如意 发表于 06-22 17:40 256次 阅读
虚拟机:Linux的Makefile使用for编译多个目标文件

虚拟机:linux的shell数制转换

shell 脚本默认数值是由10 进制数处理,除非这个数字某种特殊的标记法或前缀开头。 才可以表示其....
的头像 如意 发表于 06-22 17:13 264次 阅读
虚拟机:linux的shell数制转换

虚拟机:linux Kernel 添加 ZRAM 支持

ZRAM, 简单的说,就是拿一部分内存当做交换分区使用,暂时不用的内存页面压缩后保存在 zram交换....
的头像 如意 发表于 06-22 17:09 351次 阅读
虚拟机:linux Kernel 添加 ZRAM 支持

ARM Linux中一些重要的宏及地址定义

ARM Linux中一些重要的宏及地址定义
的头像 如意 发表于 06-22 17:02 494次 阅读
ARM Linux中一些重要的宏及地址定义

虚拟机:Linux查看tar包文件内容的方法

虚拟机:Linux查看tar包文件内容的方法
的头像 如意 发表于 06-22 16:49 199次 阅读
虚拟机:Linux查看tar包文件内容的方法

虚拟机:Linux或Unix系统使用chroot

chroot是一个比较有用的命令,它可以构造一个相对封闭的环境(sandbox),在这个封闭系统里运....
的头像 如意 发表于 06-22 16:43 190次 阅读
虚拟机:Linux或Unix系统使用chroot

虚拟机:Linux改变打开文件的个数

虚拟机:Linux改变打开文件的个数
的头像 如意 发表于 06-22 16:38 198次 阅读
虚拟机:Linux改变打开文件的个数

虚拟机:Linux如何测试 DBUS Daemon

虚拟机:Linux如何测试 DBUS Daemon
的头像 如意 发表于 06-22 16:35 189次 阅读
虚拟机:Linux如何测试 DBUS Daemon

虚拟机:linux 进程的最大线程个数

虚拟机:linux 进程的最大线程个数
的头像 如意 发表于 06-22 15:56 175次 阅读
虚拟机:linux 进程的最大线程个数

虚拟机:Linux查找网卡所用的驱动

虚拟机:Linux查找网卡所用的驱动
的头像 如意 发表于 06-22 15:29 226次 阅读
虚拟机:Linux查找网卡所用的驱动

虚拟机:Linux查看路由信息的几种方法

虚拟机:Linux查看路由信息的几种方法
的头像 如意 发表于 06-22 15:24 337次 阅读
虚拟机:Linux查看路由信息的几种方法

虚拟机:Linux查看DNS服务器IP地址的方法

虚拟机:Linux查看DNS服务器IP地址的方法
的头像 如意 发表于 06-22 15:12 356次 阅读
虚拟机:Linux查看DNS服务器IP地址的方法

AM4379 AM437x ARM Cortex-A9 微处理器 (MPU)

TI AM437x高性能处理器基于ARM Cortex-A9内核。 这些处理器通过3D图形加速得到增强,可实现丰富的图形用户界面,还配备了协处理器,用于进行确定性实时处理(包括EtherCAT,PROFIBUS,EnDat等工业通信协议)。该器件支持高级操作系统(HLOS)。基于Linux的® 可从TI免费获取。其它HLOS可从TI的设计网络和生态系统合作伙伴处获取。 这些器件支持对采用较低性能ARM内核的系统升级,并提供更新外设,包括QSPI-NOR和LPDDR2等存储器选项。 这些处理器包含功能方框图中显示的子系统,并且后跟相应的“说明”中添加了更多信息说明。 处理器子系统基于ARM Cortex-A9内核,PowerVR SGX™图形加速器子系统提供3D图形加速功能以支持显示和高级用户界面。 可编程实时单元子系统和工业通信子系统(PRU-ICSS与ARM内核分离,允许单独操作和计时,以实现更高的效率和灵活性.PRU-ICSS支持更多外设接口和EtherCAT,PROFINET,EtherNet /IP,PROFIBUS,以太网Powerlink,Sercos,EnDat等...
发表于 09-25 11:51 140次 阅读
AM4379 AM437x ARM Cortex-A9 微处理器 (MPU)