http://en.wikipedia.org/wiki/Linaro

Linaro

From Wikipedia, the free encyclopedia
 
 
This article appears to be written like an advertisement. Please help improve it by rewriting promotional content from a neutral point of view and removing any inappropriate external links(June 2013)
Linaro
Type Not-for-profit engineering organization
VAT ID No. 990027324
Registration No. 07180318
Founded June 3, 2010
Headquarters
Focus(es) Open-source software for the ARM architecture
Members 25
Website linaro.org

 

Linaro is a not-for-profit engineering organization that works on consolidating and optimizing open-source software for the ARM architecture, including the GCC toolchain, the Linux kernel, ARM power management, graphics and multimedia interfaces. It was announced at Computex in June 2010 by ARMFreescale SemiconductorIBMSamsungST-Ericsson, andTexas Instruments in a joint press conference.[1] It also provides aligned engineering and investment in upstream open source projects, a monthly release of tools and software[2] and support to silicon companies in upstreaming their system-on-a-chip (SoC) support.

Linaro focuses on optimized open-source support of the ARM v7A architecture and ARM v8 Architecture, for example SoCs that contain ARM Cortex-A9Cortex-A15, Cortex-A53 and Cortex-A57 processor(s). Linaro engineering works with upstream projects on a set of requirements that are determined by the Technical Steering Committee (TSC) and posted in a public roadmap.[3] At the end of each month there is a release of tools and software that acts as a staging tree for code that will be pushed upstream. Linaro works on software that is close to the silicon such as kernel, multimedia, power management, graphics and security. Linaro aims to provide stable, optimized and tested tools and code for multiple software distributions to use and hence reduce low-level fragmentation and improve the optimization of embedded Linux software.[4]

Activities[edit]

Linaro produces ARM tools, Linux kernels and builds of key Linux distributions (including Android and Ubuntu) on member SoCs.

Linaro maintains an automated testing system called LAVA (Linaro Automated Validation Architecture) that Linaro developed.[5] LAVA aims at improving automated testing of the open source components that are used in the major Linux-based software platforms and to increase the confidence in the quality of enablement of the member's platforms.

The Linaro Enterprise Group (LEG) focuses on accelerating Linux development for ARM servers.[6] The Enterprise Group is made up of the following companies: AMD,AppliedMicroARMCalxedaCanonicalCaviumFacebookHiSiliconHPMarvellRed HatSamsungST Ericsson and Texas Instruments. The team's mission is to bring competing companies together to work on common solutions to problems and enable OEM's, commercial Linux providers and System on Chip (SOC) vendors to collaborate in a neutral environment on the development and optimization of the core software needed by the rapidly emerging market for low-power hyperscale servers.

The Linaro Networking Group (LNG) is a coalition of technology companies whose mission is to deliver an enhanced core Linux platform for networking equipment. Its founding members include AppliedMicroARMEneaFreescaleLSIMontaVistaNokia Siemens Networks and Texas Instruments (TI).[7] With ARM-based SoCs part of the transformation occurring in cloud and mobile infrastructure applications such as switching, routing, base-stations and security, LNG’s members collaborate on fundamental software platforms to enable rapid deployment of new services across a range of converged infrastructure platforms.

History[edit]

In 2010 ARM joined with Freescale Semiconductor, IBM, Samsung, ST-Ericsson and Texas Instruments (TI) in forming Linaro as a not for profit open sourceengineering company, to enhance open source innovation for the next wave of always-connected, always-on computing.[8]

Two new members joined Linaro in October 2012. LG Electronics[9] and HiSilicon[10] joined and will contribute resources and work together with the engineers from other Linaro members. Both companies will join the Technical Steering Committee (TSC), which directs the shared Linaro engineering team of over 100 engineers.

Milestones[edit]

March 2010 – Company founded

  • Membership agreements initiated
  • Engineering begins

June 2010 – Company launch

  • Website and wiki opened
  • Engineering organization ramps
  • Open engineering

November 2010 – First release

  • Linaro's 10.11 release is announced at TechCon

May 2011 - Second Release

  • Linaro's 11.05 release and monthly releases announced
  • Linaro Partner Program announced

August 2011

  • First independent Linaro Connect held

January 2012

  • Demo Friday begins to be held at each Linaro Connect

October 2012

  • LG Electronics joins Linaro
  • HiSilicon joins Linaro

November 2012

  • Linaro Enterprise Group (LEG) announced

February 2013

  • Linaro Networking Group (LNG) announced

Release schedule[edit]

It was announced in June 2010 at Computex that Linaro would follow a six-month engineering cycle that would culminate in a release of tools and software that represents an integrated build of software worked on during the cycle.[1] Linaro version 10.11 was released on November 10, 2010. In May 2011 Linaro began a monthly engineering cycle in place of the previous six month cycle.

Platforms[edit]

Linaro runs and continuously tests its output on member platforms. For the ARMv7A code, these include TI's OMAP 3 and OMAP 4, Samsung's Exynos, and ST-Ericsson's NovaThor U8500. For development on platforms prior to silicon availability, e.g. big.LITTLE development starting at the end of 2011 and ARMv8 work begun in 2012, Linaro uses ARM Fast Models and then the ARM Versatile Express platform, when the necessary hardware tiles are available.

Products[edit]

Linaro
Initial release 10 November 2010; 3 years ago[11]
Stable release 13.11 / 28 November 2013; 41 days ago
Platform ARMv7-A
License EPL (default) and other licences

There are three types of software download available from Linaro:

  1. At the end of each monthly cycle Linaro release an integrated build including all the software worked on during the cycle. These images are available from Linaro.org/Downloads

     

    .

  2. There are monthly versions of upstream software, such as GCC or QEMU. These are downloads from places such aslaunchpad.net/gcc-linaro
     

    .

  3. Linaro maintains public staging trees of upstream code they are working on. For example the kernel and u-boot trees are kept on git.linaro.org
     

    .

License[edit]

All code developed within Linaro working groups is open source and therefore available under standard Open Source Initiative (OSI) license terms. For more details see Linaro Membership Rules and Linaro Articles of Association.[12]

Core OS[edit]

Linaro is Linux-based and works with the open source community by providing aligned upstream engineering investment.[13]

[hide]

The Linux operating system family
 
 
Organization
 
Linux kernel
 
GNU
 
Distribution
 
Linux
distribution
 
Other
 
Documentation
 
Developers
 
Users
 
Technical
 
Standards
 
Operation
 
Core components
 
C standard library
 
Init daemons
 
Sysutils
 
Linux kernel
components
 
Variants
 
Main line
 
High-performance
computing
 (HPC)
 
Real-time
computing
 (RTC)
 
MMU-less
 
Virtualization
 
Hypervisor
 
OS-level
virtualization
 
Other
 
Malware
 
User interfaces
 
Graphical UI
 
Linux adoption
 
Linux range of use
 
Mobile
 
Adopters
 
Media
 
People
 

http://en.wikipedia.org/wiki/Yocto_Project

Yocto Project

From Wikipedia, the free encyclopedia
 
 

The Yocto Project is a Linux Foundation workgroup whose goal is to produce tools and processes that will enable the creation of Linux distributions forembedded software that are independent of the underlying architecture of the embedded software itself. The project was announced by the Linux Foundation in 2010.[1] In March 2011, the project aligned itself with OpenEmbedded, an existing framework with similar goals, with the result being The OpenEmbedded-Core Project.

The Yocto Project is an open source project whose focus is on improving the software development process for embedded Linux distributions. The Yocto Project provides interoperable tools, metadata, and processes that enable the rapid, repeatable development of Linux-based embedded systems.

Project Scope[edit]

The Yocto Project has the aim and objective of attempting to improve the lives of developers of customised Linux systems supporting the ARMMIPSPowerPC andx86/x86 64 architectures. It is working towards this by focusing on one set of great tools rather than the several sets of mediocre ones that existed when the project was founded.[neutrality is disputed] A key part of this is an open source build system, based around the OpenEmbedded architecture, that enables developers to create their own Linux distribution specific to their environment. This reference implementation of OpenEmbedded is called Poky.

There are several other sub-projects under the project umbrella which include EGLIBC, pseudo, cross-prelink, eclipse integration, ADT/SDK, the matchbox suite of applications, and many others. One of the central goals of the project is interoperability among these tools.

The project offers different sized targets from "tiny" to fully featured images which are configurable and customisable by the end user. The project encourages interaction with upstream projects and has contributed heavily to OpenEmbedded-Core and BitBake as well as to numerous upstream projects, including the Linux kernel.[citation needed] The resulting images are typically useful in systems where embedded Linux would be used, these being single-use focused systems or systems without the usual screens/input devices associated with desktop Linux systems.

As well as building Linux systems, there is also an ability to generate a toolchain for cross compilation and a Software Development Kit (SDK) tailored to their own distribution, also referred to as the Application Developer Toolkit (ADT). The project tries to be software and vendor agnostic. Thus, for example, you can choose which package manager format you intend to use (debrpm, or ipk).

Within builds, there are options for various build-time sanity/regression tests, and also the option to boot and test certain images under QEMU to validate the build.

Governance[edit]

The Yocto Project is one of the Labs collaborative software projects at the Linux Foundation.

The project's governance is divided loosely into administrative and technical arms, although many members participate in both camps.

At a technical level, the project is overseen by the project architect Richard Purdie (a Linux Foundation Fellow) who has a long history of involvement with many of the project's components and technologies. The architect maintains a hierarchy of maintainers for the different components of the system, much as the Linux kernel is maintained.

The administrative arm consists of an Advisory Board made up of representatives from the project's member organizations, including several major silicon vendors and software vendors as well as representatives from groups such as software consultants and community members. The member organizations of this board provide resources to the project. There are also several Advisory Board working groups that handle administrative functions for the project such as finance, infrastructure, advocacy and outreach, and community management.

http://en.wikipedia.org/wiki/OpenWrt

OpenWrt

From Wikipedia, the free encyclopedia
 
 
This article may rely excessively on sources too closely associated with the subject, preventing the article from being verifiable and neutral. Please help improve it by replacing them with more appropriate citationsto reliable, independent, third-party sources(November 2013)
OpenWrt

OpenWrt 10.03.1-RC5 ("Backfire")
Company / developer OpenWrt Project
OS family Unix-like
Working state Current
Source model Free and open source software
Initial release January 2004
Latest stable release 12.09 (Attitude Adjustment)(April 25, 2013; 8 months ago)[±][1]
Latest unstable release -- (Barrier Breaker)(26 April 2013; 8 months ago)[±][2]
Available language(s) 22 languages[3]
Update method opkg
Package manager opkg
Supported platforms 50 different platforms using the followingInstruction setsAVR32,ARMCRISm68k,MIPSPowerPC,SPARCSuperH,Ubicom32x86,x86-64[4]
Kernel type Monolithic(Linux)
Userland BusyBoxGNU
Default user interface CLI, WebUIs
License Free software, mainly the GNU GPL, and other licenses
Official website openwrt.org

 

OpenWrt is an operating system / embedded operating system based on the Linux kernel, and primarily used on embedded devices to route network traffic. The main components are the Linux kernel, util-linuxuClibc and BusyBox. All components have been optimized for size, to be small enough for fitting into the limited storage and memory available in home routers.

OpenWrt is configured using a command-line interface (ash shell), or a web interface (LuCI

 

). There are about 3500 optional software packages available for installation via the opkg package management system.

OpenWrt can be run on CPE routers, residential gatewayssmartphones (e.g. Neo FreeRunner), pocket computers (e.g. Ben NanoNote), and laptops (e.g. One Laptop per Child (OLPC)). Also, it is possible to run OpenWrt on ordinary computers (e.g. x86 architecture). Many patches from the OpenWrt source base have been included upstream in the Linux kernel mainline.

History[edit]

The project came into being because Linksys built the firmware for their WRT54G wireless router from publicly available code licensed under the GPL. Under the terms of that license, they were required to make the source code of their modified version available under the same license, enabling independent developers to create additional derivative versions. Support was originally limited to the WRT54G series, but has since been expanded to include many other chipsets, manufacturers and device types, including Plug Computers and Openmoko mobile phones.

Using this code as a base and later as a reference, developers created a Linux distribution that offers many features not previously found in consumer-level routers. Some features formerly required proprietary software. Before the introduction of OpenWrt 8.09, using Linux 2.6.25 and the b43 kernel module, WLAN for many Broadcom-based routers was only available through the proprietary wl.o module that was also provided for Linux kernel version 2.4.x only.

The code names of OpenWrt branches are named after alcoholic beverages, usually including their recipes in the SSH login screen as well, cf. White RussianKamikazeBackfireAttitude AdjustmentBarrier Breaker.

The bleeding edge development trunk

 

was confusingly also called Kamikaze

 

until February 2011 but with r25514 it was renamed as "Attitude Adjustment" and is now being constantly renamed to the next stable name.

Releases[edit]

Legend: Old version Older version, still supported Current version Future release
Tagged Code Name Version Release date Linux kernel C standard library Binary packages Source packages Notes
(default) (available)
N/A pre Buildroot-NG 0.x N/A N/A uClibc   474 ≈ 310  
r6268 White Russian 0.9 2006-01 2.4.30 uClibc   ≈ 360 ≈ 140 NVRAM-based, nas,wl. Supported platform: brcm-2.4.
r7428 Kamikaze 7.06 2007-06 2.6.19 uClibc   ≈ 750 ≈ 450 Using opkg. Supported platforms: atheros-2.6au1000-2.6,brcm-2.4brcm47xx-2.6ixp4xx-2.6,imagicbox-2.6,rb532-2.6 and x86-2.6.
r7832 Kamikaze 7.07 2007-07 2.6.21 uClibc   ≈ 790 ≈ 475 New platform: amcc-2.6.
r8679 Kamikaze 7.09 2007-09 2.6.21 uClibc   ≈ 630 ≈ 500  
r14547 Kamikaze 8.09 2008-09 2.6.26 uClibc   ≈ 1,400 ≈ 875  
r16279 Kamikaze 8.09.1 2009-06 2.6.26 uClibc   ≈ 1,400 ≈ 875  
r18961 Kamikaze 8.09.2 2010-01-10[5] 2.6.26 uClibc   ≈ 1,400 ≈ 875  
r20742 Backfire 10.03 2010-04-07[6] 2.6.32 uClibc   ≈ 2,350 ≈ 1,050 Supported platforms:adm5120_mips,adm5120_mipsel,ar7ar71xx,atherosau1000,avr32brcm-2.4,brcm47xxbrcm63xx,cobaltep80579,ifxmipsixp4xx,kirkwoodocteon,orionppc40x,ppc44xrb532rdc,x86 and xburst.
r29594 Backfire 10.03.1 2011-12-21[7] 2.6.32 uClibc eglibc
glibc
≈ 2,950 ≈ 1,175  
r36088 Attitude Adjustment 12.09 2013-04-25[8] 3.3 uClibc eglibc ≈ 3,450 ≈ 1,150 CoDel backported from Linux 3.5 to 3.3. New platforms:ramipsbcm2708(Raspberry Pi) and others.
trunk Barrier Breaker development continuously 3.10.21[9] uClibc musl
eglibc
growing growing New platforms:i.MX23i.MX6[10]and mvebu.

Features[edit]

OpenWrt follows the bazaar-philosophy and is known for an abundance of options. Features include:

Web interface[edit]

Before release 8.09, OpenWrt had a minimal web interface. In OpenWrt releases 8.09 and newer, a more capable web interface is included.[16] This interface is based on LuCI, a MVC framework written in Lua programming language.[15]

The X-Wrt project provides an alternative web interface, named webif² in the package repositories, for the current and previous versions of OpenWrt.

The Gargoyle Router Management Utility[17] is a web interface for OpenWrt with a strong emphasis on usability. It was originally available as a set of packages for OpenWrt. As the author of Gargoyle started to make modifications to the base system layout of OpenWrt, the package system was dropped and the only currently available downloads are full firmware images. Gargoyle makes extensive use of JavaScript, to offload as much work as possible to the client computer, and is focused on ease of use, striving to reach a level comparable to the appliance feeling of commercial router firmwares.

  • LuCI

  • X-Wrt

  • Gargoyle

Hardware incompatibilities[edit]

With the Attitude Adjustment (12.09)

 

release of OpenWrt, all hardware devices with 16 MB or less RAM are no longer supported as they can run out of memory easily. Older Backfire (10.03)

 

is recommended instead for bcm47xx devices, as issues for those devices came from dropping support for the legacy Broadcom target brcm-2.4.[18][19]

Derivatives[edit]

Development[edit]

OpenWrt's development environment and build system are based on a heavily modified Buildroot system. It is a set of Makefiles and patches that automates the process of building a complete Linux-based OpenWrt system for an embedded device, by building and using an appropriate cross-compilation toolchain.[23][24]

Embedded devices usually use a different processor than the one found in host computers used for building their OpenWrt system images, requiring a cross-compilation toolchain. Such a compilation toolchain runs on a host system, but generates code for a targeted embedded device and its processor's instruction set architecture (ISA). For example, if a host system uses x86 and a target system uses MIPS32, the regular compilation toolchain of the host runs on x86 and generates code for x86 architecture, while the cross-compilation toolchain runs on x86 and generates code for the MIPS32 architecture. OpenWrt Buildrootautomates this whole process to work on the instruction set architectures of most embedded devices and host systems.[23][25]

OpenWrt Buildroot provides the following features:[23][25]

  • makes it easy to port software across architectures
  • uses kconfig (Linux kernel menuconfig) for the configuration of all options
  • provides an integrated cross-compiler toolchain (gcclduClibc etc.)
  • provides an abstraction for autotools (automakeautoconf), cmake and SCons
  • handles standard OpenWrt image build workflow: downloading, patching, configuration, compilation and packaging
  • provides a number of common fixes for known badly behaving packages.

Besides building system images, OpenWrt development environment also provides a mechanism for simplified cross-platform building of OpenWrt software packages. Source code for each software package is required to provide a Makefile-like set of building instructions, and an optional set of patches for bug fixes or footprint optimizations.[26]

See also[edit]

Linaro/Yocto/Openwrt的更多相关文章

  1. 自己编译的openwrt在开机时一直打印jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found...的错误提示

    具体的输入信息是这样的. uboot> http Link down: eth0 Ethernet mode (duplex/speed): / Mbps HTTP server is star ...

  2. 嵌入式文件系统构建工具 busybox / buildroot / openwrt

    1.busybox busybox最轻量 1) 修改Makefile CROSS_COMPILE ?= /usr/local/gcc-linaro-arm-linux-gnueabihf/bin/ar ...

  3. FIR300M刷openwrt

    淘宝看到一款FIR300M路由器,当时只要19.9元.图便宜就买了. Hardware Architecture: MIPS Vendor: MediaTek (Ralink) Bootloader: ...

  4. am335x system upgrade rootfs using yocto make rootfs(十二)

    1      Scope of Document This document describes how to make am335x arago rootfs using ycoto project ...

  5. openwrt sdk 添加软件包 Makefile 写法

    参考 https://openwrt.org/start?id=docs/guide-developer/packages ,英文稍好点的自己看吧,我写出来也就是方便,英文不好的人看. 软件包的来源, ...

  6. openwrt sdk 编译工具 及 hello world

    需要先在 make menuconfig 中打开 sdk make -j4在 bin\targets\ramips\mt7620生成一个openwrt-sdk-ramips-mt7620_gcc-7. ...

  7. OpenWrt中开启usb存储和samba服务

    在从官网安装的WNDR3800 15.05.1版本OpenWrt中, 不带usb存储支持以及samba, 需要另外安装 1. 启用usb支持 USB Basic Support https://wik ...

  8. (转)利用libcurl和国内著名的两个物联网云端通讯的例程, ubuntu和openwrt下调试成功(四)

    1. libcurl 的参考文档如下 CURLOPT_HEADERFUNCTION Pass a pointer to a function that matches the following pr ...

  9. (转)利用libcurl获取新浪股票接口, ubuntu和openwrt实验成功(三)

    1.  利用 CURLOPT_WRITEFUNCTION 设置回调函数, 利用 CURLOPT_WRITEDATA 获取数据指针 官网文档如下 CALLBACK OPTIONS CURLOPT_WRI ...

随机推荐

  1. 【bzoj2698】染色 期望

    题目描述 输入 输入一行四个整数,分别为N.M.S和T. 输出 输出一行为期望值,保留3位小数. 样例输入 5 1 2 3 样例输出 2.429 题解 期望 由于期望在任何时候都是可加的,因此只要算出 ...

  2. 【bzoj1002】[FJOI2007]轮状病毒 矩阵树定理+高精度

    题目描述 轮状病毒有很多变种,所有轮状病毒的变种都是从一个轮状基产生的.一个N轮状基由圆环上N个不同的基原子和圆心处一个核原子构成的,2个原子之间的边表示这2个原子之间的信息通道.如下图所示 N轮状病 ...

  3. 【Luogu】P3155叶子的染色(树形DP)

    题目链接 树形DP水题qwq. 设f[i][j]是以i为根的子树,染成j色,且满足内部需求的最少染色节点数. 设to是x的子节点,那么状态转移方程如此设计: 1.f[i][0] 这个状态表示i不染色, ...

  4. kb-07-RMQ线段树--07(动态规划)

    RMQ是一类解决区间最值查询的算法的通称:.一共有四类:在代码中有说明: 下面是ST算法,就是动态规划做法: 来看一下ST算法是怎么实现的(以最大值为例): 首先是预处理,用一个DP解决.设a是要求区 ...

  5. [图论训练]BZOJ 2118: 墨墨的等式 【最短路】

    Description 墨墨突然对等式很感兴趣,他正在研究a1x1+a2y2+…+anxn=B存在非负整数解的条件,他要求你编写一个程序,给定N.{an}.以及B的取值范围,求出有多少B可以使等式存在 ...

  6. hdu 1277 AC自动机

    全文检索 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submis ...

  7. POJ4007 Flood-it!

      Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 337   Accepted: 123 Description Flood ...

  8. Java程序员最常犯的错误盘点之Top 10

    1. 数组转ArrayList 为了实现把一个数组转换成一个ArrayList,很多Java程序员会使用如下的代码: Arrays.asList确实会返回一个ArrayList对象,但是该类是Arra ...

  9. hdu4183往返经过至多每个点一次/最大流

    题意:从s到t,每个点有f值,只能从f值小的到大的,到T后回来,只能从f值大的到 小的,求可行否. 往返,其实就是俩条路过去(每个点最多一次),所以想到流量为2,跑最大流,看是否满2,又要每个点最多一 ...

  10. ros pub sub ("~")

    base_velocity_smoother.cpp                        remap ("~")    订阅: "cmd_vel"   ...