Porting GNU Radio to Multicore DSP+ARM System-On-Chip – a Purely Open-Source Approach

Total Page:16

File Type:pdf, Size:1020Kb

Porting GNU Radio to Multicore DSP+ARM System-On-Chip – a Purely Open-Source Approach 8th Karlsruhe Workshop on Software Radios Porting GNU Radio to Multicore DSP+ARM System-on-Chip – A Purely Open-Source Approach Shenghou Ma∗, Vuk Marojevic∗, Philip Balister†, and Jeffrey H. Reed∗ ∗Bradley Dept. of Electrical and Computer Engineering Virginia Polytechnic Institute and State University Blacksburg, Virginia, USA minux,maroje,reedjh @vt.edu { } †Open SDR PO Box 11789 Blacksburg, Virginia, USA [email protected] Abstract—GNU Radio is a versatile fast-prototyping for HMP-SoCs is a much more tedious task than for platform for Software-Defined Radio (SDR). This paper GPPs. The designer needs to deal with heterogeneous describes our mission of porting GNU Radio to Texas devices and manage the data flows among them as Instruments’ KeyStone II Multicore DSP+ARM System- sophisticated development tools and schedulers are not on-Chip (SoC). We describe our long term vision providing commonly available. Several vendors are developing unified scheduling over the heterogeneous multiprocessor SoC and initial results on this revolutionary path. powerful HMP-SoC with the goal of deploying cheap Index Terms—GNU Radio, System-on-Chip, Open- and versatile LTE transceivers. Source. Our goal is to provide a fully open-source approach for SDR education and professional development on a modern SoC. This paper describes our vision for I. INTRODUCTION the Keystone II Multicore DSP+ARM SoC from Texas OFTWARE-defined radio (SDR) is becoming om- Instruments to be used in SDR education, research and S nipresent both in academia and industry. Vanu, for development. Porting GNU Radio to the ARM allows instance, is deploying SDR base stations for a decade directly interfacing with radio frequency (RF) front ends. already. Amarisoft has recently implemented an LTE This provides the excitement of over-the-air transmis- base station, or eNode-B, purely in software that runs sions for students and researchers. Having GNU Radio on powerful general-purpose processor (GPP). GNU running on the ARMs can be useful for DSP developers Radio is gaining momentum in education and research. as well if their algorithms, running on a DSP core, can It has a growing user community, which provides sup- be integrated into a GNU Radio flow graph. We will port through their mailing list, and organizes regular evaluate the different approaches and justify a purely phone conferences and meetings at diverse conferences open-source approach. and events. GNU Radio is open-source and provides a framework for rapid waveform development and testing, II. CONTEXT supporting a variety of popular radio front ends. It is GNU Radio provides an open-source framework for GPP-centric and is only recently being ported to other rapid waveform design and prototyping. It provides a devices, such as graphics-processing units (GPUs) [1]. number of readily available signal processing blocks and Systems-on-chip (SoCs) provide important advantages also easily integrates third-party blocks. The waveform over GPPs for building wireless communication sys- designer can glue together these blocks to create an tems: processing capacity, system integrity and power intended data flow graph. efficiency, to name a few. Heterogeneous Multiprocessor- Aided by the availability of compatible RF front- SoCs (HMP-SoC) are being deployed not only in ra- end hardware, such as the Ettus Research’s Universal dio access network element, but also in mobile de- Software Radio Peripheral (USRP) series. GNU Radio is vices [2]. However, developing applications (waveforms) ideal for education and research. However, GNU Radio 21 8th Karlsruhe Workshop on Software Radios is not without its limitations: Designed for PCs, GNU radio is not easily portable to non-GPP-based processing platforms. The trend in computing is towards heterogeneous mul- tiprocessing, where different instruction set architectures (ISAs) and micro-architectures are integrated in a single system. This trend is observable by looking at the current top5001 supercomputer list. The fastest supercomputer in the world in January 2014 is the Tianhe-2 (MilkyWay-2)2 in the National Super Computer Center in Guangzhou, China. It uses both the Intel Xeon E5-2692 12-Core gen- eral purpose processor and Intel Xeon Phi 31S1P many- core processor and has a total of 3120000 computing cores and 1 PB memory. Using 17.808 MW electricity, it can provide a theoretical peak computation throughput of Fig. 1. The Target EVMK2HX Keystone-II Evaluation Board [4] 54.902 Peta-Flops per second. The second ranked is the Titan, which is a Cray XK7. It uses AMD Opteron 6274 A. The Open-Source Aspect 16-Core processors and Nvidia K20x GPUs to provide a theoretical peak computation throughput of 27.112 Peta- GNU Radio is an open-source project distributed Flops per second. Such heterogeneous multiprocessing under the General Public License. This calls for open- architectures provide a higher processing integration and source SDR tools for integrating GNU Radio flow graphs power efficiency than equivalent GPP-based solutions. with processing block running on the DSP cores of the Keystone II or similar HMP-SoCs. The reasons for this SDR requires a huge amount of computational re- are manifold. sources, because of the high date rate and sophisticated Firstly, open-source software is generally more ac- signal processing algorithms. In this aspect, it looks very cessible, so relying on open-source technology makes much like a supercomputer at a smaller scale. But, you the result easily repeatable. Secondly, having the source cannot afford to carry around a mega-watt smartphone. code available means that one does not need to rely To be practical, SDR platforms also need the virtue of on vendor for any bug fixes and feature enhancements, power efficiency. This is where GPPs fail to deliver their and this also provides long-term stability against vendor promises. Nowadays, almost all smartphones are using dropping support for the software. This is especially a the ARM processor precisely because it can deliver the problem in the SoC market where the fast proliferation ever-increasing requirement of computation at affordable of new devices lead to limited-time support for older power levels. However, using ARM processors alone generations. Last but not the least, open-source means cannot provide the necessary processing power. Digi- one can modify the software to fit his or her own needs, tal signal processors (DSP), which are optimized for and more importantly, to share freely the modification. multiply-accumulate (MAC) operations close this gap. Although some proprietary software comes with source A DSP is the choice for implementing typical digital code, the license agreement generally forbid the user signal processing algorithms in software, but it has the from distributing modified copies. This limits the ability disadvantage of not being very easy to program (partly of sharing among the research and education communi- because of the lack of smart compilers that do not need ties. manual hints in order to utilize the full potential of the chip). ARMs and DSPs are therefore combined to B. Hardware Platform take advantage of both processor types, the processing Fig. 1 shows the EVMK2HX evaluation board, pro- power of the DSP and the flexibility of the ARM. duced by ADVANTECH [3], used in this paper. Under Texas Instrument’s has recently released their Keystone the fan and heat sink lies the main multi-core DSP+ARM II multicore DSP+ARM SoC. SoC TCI6638K2K from Texas Instruments. Fig. 2 depicts the functional block diagram of the 1http://www.top500.org/lists/ TCI6638K2K chip. The chip contains a number of 2http://www.top500.org/system/177999 processing cores, accelerators and peripherals [5]. 22 TCI6638K2K Multicore DSP+ARM KeyStone II System-on-Chip (SoC) SPRS836D—October 2013 8th Karlsruhe Workshop on Software Radios 1.6 Functional Block Diagram Figure 1-1 shows the functional block diagram of the device. Figure 1-1 Functional Block Diagram TCI6638K2K Coprocessors RSARSA RSA RSA Memory Subsystem RSARSA RSA RSA SRAM shared by all 12 cores. It also has memory RSARSA RSA RSA RSARSA RSA RSA 72-Bit 6MB C66x™C66x™ RAC 4´ DDR3 EMIF MSM C66x™C66x™C66x™ SRAM C66x™C66x™C66x™CorePac protection capability so that we can limit each core’s CorePacCorePacCorePacCorePac 72-Bit MSMC CorePacCorePacCorePac DDR3 EMIF 32KB32KB L1L132KB32KB L1L1 32KB32KB L1L132KB32KB L1L1 TAC access privilege to this memory for safety and isolation. 32KB32KBP-CacheP-Cache L1L132KB32KBD-CacheD-Cache L1L1 32KB32KBP-CacheP-Cache L1L132KB32KBD-CacheD-Cache L1L1 P-CacheP-CacheD-CacheD-Cache P-CacheP-Cache1024KB1024KBD-CacheD-Cache L2L2 CacheCache Debug & Trace 1024KB1024KB L2L2 CacheCache 1024KB1024KB L2L2 CacheCache VCP2 8´ 1024KB1024KB L2L2 CacheCache The SoC also has a lot of hardware coprocessors sup- Boot ROM 8´ 32KB L1 32KB L1 32KB L1 32KB L1 P-Cache D-Cache P-Cache D-Cache porting typical digital signal processing functionalities of Semaphore ARM ARM TCP3d ´ Power A15 A15 4 modern base stations [3]. Management 4MB L2 Cache Since the SoC contains 12 heterogeneous cores, com- PLL ARM ARM FFTC ´ A15 A15 5 32KB L1 32KB L1 32KB L1 32KB L1 ´ munication and debugging of multi-core application EDMA P-Cache D-Cache P-Cache D-Cache 6 BCP 5´ 8 C66x DSP Cores @ up to 1.2 GHz poses a bigger challenge than for traditional SoCs or 4 ARM Cores @ up to 1.4 GHz 2´ HyperLink TeraNet GPPs with a smaller core count. In order to facilitate Multicore Navigator inter-core communication and synchronization, the SoC Queue Packet Manager DMA also provides a Multicore Navigator. 3-Port 5-Port Security Ethernet Ethernet Accelerator C. Related Work Switch Switch ´ ´ ´ ´ 2 Packet IC SPI Accelerator UART In [1] and [6], the authors managed to use GPGPU ´ ´ USIM 3 3 ´ EMIF16 USB 3.0 AIF2 6 PCIe 2 SRIO 4 2 GPIO 32 10GBE 1GBE 1GBE 1GBE 1GBE (more specifically, NVidia GPGPU with CUDA) to ac- 10GBE 10GBE Network Coprocessor celerate certain GNU Radio blocks.
Recommended publications
  • Linux and Electronics
    Linux and Electronics Urs Lindegger Linux and Electronics Urs Lindegger Copyright © 2019-11-25 Urs Lindegger Table of Contents 1. Introduction .......................................................................................................... 1 Note ................................................................................................................ 1 2. Printed Circuits ...................................................................................................... 2 Printed Circuit Board design ................................................................................ 2 Kicad ....................................................................................................... 2 Eagle ..................................................................................................... 13 Simulation ...................................................................................................... 13 Spice ..................................................................................................... 13 Digital simulation .................................................................................... 18 Wings 3D ....................................................................................................... 18 User interface .......................................................................................... 19 Modeling ................................................................................................ 19 Making holes in Wings 3D .......................................................................
    [Show full text]
  • Inventors, Technologists and Entrepreneurs
    19 November 2013 We, the undersigned, are a group of inventors, technologists and entrepreneurs. Many of us have founded technology businesses; we have invented many of the protocols, systems and devices that make the Internet work, and we are collectively listed as the inventors on over 150 patents. We write to you today about the U.S. patent system. That system is broken. Based on our experiences building and deploying new digital technologies, we believe that software patents are doing more harm than good. Perhaps it is time to reexamine the idea, dating from the 1980s, that government-issued monopolies on algorithms, protocols and data structures are the best way to promote the advancement of computer science. But that will be a complex task, and one we don't expect to happen quickly. Unfortunately, aspects of the problem have become so acute they must be addressed immediately. Broad, vague patents covering software-type inventions—some of which we ourselves are listed as inventors on—are a malfunctioning component of America's inventive machinery. This is particularly the case when those patents end up in the hands of non-practicing patent trolls. These non-practicing entities do not make or sell anything. Their exploitation of patents as a tool for extortion is undermining America’s technological progress; patent trolls are collecting taxes on innovation by extracting billions of dollars in dubious licensing fees, and wasting the time and management resources of creative businesses. Many of us would have achieved much less in our careers if the trolling problem had been as dire in past decades as it is now.
    [Show full text]
  • A Software Defined Radio Testbed for Research in Dynamic Spectrum Access
    A SOFTWARE DEFINED RADIO TESTBED FOR RESEARCH IN DYNAMIC SPECTRUM ACCESS A Thesis Submitted to the Faculty of Purdue University by David A. Clendenen In Partial Fulfillment of the Requirements for the Degree of Master of Science in Engineering May 2012 Purdue University Fort Wayne, Indiana ii For my uncle, Jeffrey Davis, who instilled in me from a young age the desire to learn how things work and inspired me to become an electrical engineer. iii ACKNOWLEDGMENTS I first thank Dr. Todor Cooklev for providing me with the opportunity to expand my engineering background to the world of wireless communications and software defined radio. I appreciate his patience and flexibility in working with me as I balanced my career, graduate courses and this research. Next, I thank my graduate committee; Dr. Chao Chen and Dr. Yanfei Liu and my thesis format advisor, Barbara Lloyd for their support and direction in my thesis writing. I also thank Dr. Elizabeth Thompson for first informing me of the National Science Foundation grant and Dr. Donald Mueller and Dr. Carlos Raez for selecting me as a recipient for the grant. I would also like to thank my colleagues at Regal Beloit and my manager, Dr. Roger Becerra, whose support and flexibility allowed me to accomplish my professional and educational goals. I thank my parents for always encouraging me and instilling in me the value of hard work. Most importantly I thank my wife, Tish, for her encouragement and understanding throughout my graduate studies. Above all else, without her support none of this would have been possible.
    [Show full text]
  • Software Libre Para Una Sociedad Libre
    Software libre para una sociedad libre Richard M. Stallman Software libre para una sociedad libre Richard M. Stallman Introducción de Lawrence Lessig Diciembre 2004 Versión 1.0 Software libre para una sociedad libre Richard M. Stallman Título original: Free Software, Free Society: Selected Essays of Richard M. Stallman (GNU Press, 2002) Primera edición en castellano (en papel): Noviembre 2004 Traducción principal: Jaron Rowan, Diego Sanz Paratcha y Laura Trinidad Edición: Traficantes de Sueños c/ Hortaleza 19, 1o Dcha. 28004 Madrid. Tlfno: +34 1 5320928 http://traficantes.net c Copyright 2004 de los artículos de este libro, Richard M. Stallman c Copyright 2004 de la Introducción, Lawrence Lessig c Copyright 2004 de la Edición, Traficantes de Sueños Se permite la copia, ya sea de uno o más artículos completos de esta obra o del conjunto de la edición, en cualquier formato, mecánico o digital, siempre y cuando no se modifique el contenido de los textos, se respete su autoría y esta nota se mantenga. ISBN: 84-933555-1-8 Depósito Legal: M-44298-2004 Edición digital a cargo de: Miquel Vidal <[email protected]>. Esta edición electrónica se ha realizado íntegramente con software libre, mediante el procesador LATEX 2ε, GNU Emacs y AUCTEX. 3 Traficantes de Sueños Traficantes de Sueños no es una casa editorial, ni siquiera una editorial independiente que contempla la publicación de una colección variable de textos críticos. Es, por el contrario, un proyecto, en el sentido estricto de «apuesta», que se dirige a cartografíar las líneas constituyentes de otros órdenes de vida. La construcción teórica y práctica de la caja de herramientas que, con palabras propias, puede componer el ciclo de luchas de las próximas décadas.
    [Show full text]
  • Porting and Using Newlib in Embedded Systems William Gatliff Table of Contents Copyright
    Porting and Using Newlib in Embedded Systems William Gatliff Table of Contents Copyright................................................................................................................................3 Newlib.....................................................................................................................................3 Newlib Licenses....................................................................................................................3 Newlib Features ....................................................................................................................3 Building Newlib ...................................................................................................................7 Tweaks ....................................................................................................................................8 Porting Newlib......................................................................................................................9 Onward! ................................................................................................................................19 Resources..............................................................................................................................19 About the Author................................................................................................................19 $Revision: 1.5 $ Although technically not a GNU product, the C runtime library newlib is the best choice for many GNU-based
    [Show full text]
  • Internet of Things Spectrum Monitoring and Localization
    MQP 2A18 Internet of Things Spectrum Monitoring and Localization A Major Qualifying Project Submitted to the Faculty of WORCESTER POLYTECHNIC INSTITUTE In partial fulfillment of the requirements for the Degree of Bachelor of Science By: _________________________________ Lauren Getz _________________________________ William Schwartz _________________________________ Katherine Smith Project Advisors: ____________________________________________ Professor Stephen J. Bitar, Electrical & Computer Engineering- Advisor-of-Record ____________________________________________ Professor Michael J. Ciaraldi, Computer Science -Co-Advisor ____________________________________________ Professor Alexander M. Wyglinski, Electrical & Computer Engineering- Co-Advisor Abstract A system which localizes indoor sub-1GHz transmission signals provides a low cost and effective alternative to traditional signal sensing and localization. The system uses a pre-existing WiFi network, PlutoSDRs, and a web server to visualize the estimated location of the transmitted signals. The system achieved 2.5-meter accuracy under ideal conditions satisfying the goal of 3- meter accuracy set forth by the team. i Acknowledgements We would like to thank our advisors, Stephen Bitar, Michael Ciaraldi, and Alex Wyglinski for their mentorship throughout the duration of this project. ii Executive Summary Implementing localization with SDR devices is more cost effective and more accurate than other spectrum sensing products currently on the market. With the development of Internet of Things (IoT), many smart devices are increasingly using wireless communication, making localization of these devices an important security measure. Using the PlutoSDR, signals were effectively localized within 3-meter accuracy on the 900MHz band. Problem Statement IoT devices can pose a threat to a secure network. Since there are a lot of known IoT vulnerabilities [1], many malicious actors will target them in order to gain access to an otherwise secure network.
    [Show full text]
  • Anatomy of Cross-Compilation Toolchains
    Embedded Linux Conference Europe 2016 Anatomy of cross-compilation toolchains Thomas Petazzoni free electrons [email protected] Artwork and Photography by Jason Freeny free electrons - Embedded Linux, kernel, drivers - Development, consulting, training and support. http://free-electrons.com 1/1 Thomas Petazzoni I CTO and Embedded Linux engineer at Free Electrons I Embedded Linux specialists. I Development, consulting and training. I http://free-electrons.com I Contributions I Kernel support for the Marvell Armada ARM SoCs from Marvell I Major contributor to Buildroot, an open-source, simple and fast embedded Linux build system I Living in Toulouse, south west of France Drawing from Frank Tizzoni, at Kernel Recipes 2016 free electrons - Embedded Linux, kernel, drivers - Development, consulting, training and support. http://free-electrons.com 2/1 Disclaimer I I am not a toolchain developer. Not pretending to know everything about toolchains. I Experience gained from building simple toolchains in the context of Buildroot I Purpose of the talk is to give an introduction, not in-depth information. I Focused on simple gcc-based toolchains, and for a number of examples, on ARM specific details. I Will not cover advanced use cases, such as LTO, GRAPHITE optimizations, etc. I Will not cover LLVM free electrons - Embedded Linux, kernel, drivers - Development, consulting, training and support. http://free-electrons.com 3/1 What is a cross-compiling toolchain? I A set of tools that allows to build source code into binary code for
    [Show full text]
  • Design and Implementation of Embedded Linux System for Networking Devices
    Design and Implementation of Embedded Linux System for Networking Devices Hyun-Joon Cha Distributed Processing and Network Management Laboratory Division of Electrical and Computer Engineering (Computer Science and Engineering) [email protected] POSTECH Design and Implementation of Embedded Linux System (1/24) DP&NM Lab. for Networking Devices Contents • Introduction • Current Embedded Operating Systems • Requirements • Design of Embedded Linux System • Implementation • Conclusions • Future work POSTECH Design and Implementation of Embedded Linux System (2/24) DP&NM Lab. for Networking Devices Introduction • Networking Devices – Devices which has networking capability – Infrastructure of emerging information society • e.g.) Router, Switch, Gateway, Cache engine, Cellular phone, PDA, etc. – Network-capable devices will substitute current dummy and not- connected devices all around – Need more resources, processing power and OSs to coordinate it – Most networking devices use commercial Real-time OSs POSTECH Design and Implementation of Embedded Linux System (3/24) DP&NM Lab. for Networking Devices Introduction – cont’d • Embedded OSs for Networking Devices – Commercial: VxWorks, pSOS, QNX, Nucleus, LynxOS, VRTX, etc. – Free or Almost Free: Xinu, uC/OS, etc. • Frequently Raised Problems from Industry and Academy – No OS approach or using educational OS is harmful – High purchase price and royalty -> affect development cost and device price – Limited target and development platform – OS specific architecture and interface – Technology
    [Show full text]
  • 4. Nios II Software Build Tools
    4. Nios II Software Build Tools May 2011 NII52015-11.0.0 NII52015-11.0.0 This chapter describes the Nios® II Software Build Tools (SBT), a set of utilities and scripts that creates and builds embedded C/C++ application projects, user library projects, and board support packages (BSPs). The Nios II SBT supports a repeatable, scriptable, and archivable process for creating your software product. You can invoke the Nios II SBT through either of the following user interfaces: ■ The Eclipse™ GUI ■ The Nios II Command Shell The purpose of this chapter is to make you familiar with the internal functionality of the Nios II SBT, independent of the user interface employed. 1 Before reading this chapter, consider getting an introduction to the Nios II SBT by first reading one of the following chapters: ■ Getting Started with the Graphical User Interface chapter of the Nios II Software Developer’s Handbook ■ Getting Started from the Command Line chapter of the Nios II Software Developer’s Handbook This chapter contains the following sections: ■ “Road Map for the SBT” ■ “Makefiles” on page 4–3 ■ “Nios II Embedded Software Projects” on page 4–5 ■ “Common BSP Tasks” on page 4–8 ■ “Details of BSP Creation” on page 4–20 ■ “Tcl Scripts for BSP Settings” on page 4–27 ■ “Revising Your BSP” on page 4–30 ■ “Specifying BSP Defaults” on page 4–35 ■ “Device Drivers and Software Packages” on page 4–39 ■ “Boot Configurations for Altera Embedded Software” on page 4–40 ■ “Altera-Provided Embedded Development Tools” on page 4–42 ■ “Restrictions” on page 4–48 © 2011 Altera Corporation.
    [Show full text]
  • Wind River® Vxworks® 7 Third Party License Notices
    Wind River® VxWorks® 7 Third Party License Notices This document contains third party intellectual property (IP) notices for the BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY Wind River® VxWorks® 7 distribution. Certain licenses and license notices THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, may appear in other parts of the product distribution in accordance with the OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN license requirements. ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. Trademarks All company, product and service names used in this software are for ACPICA identification purposes only. Version: 20170303 Component(s): Runtime Wind River and VxWorks are registered trademarks of Wind River Systems. Description: Provides code to implement ACPI specification in VxWorks. UNIX is a registered trademark of The Open Group. IBM and Bluemix are registered trademarks of the IBM Corporation. NOTICES: All other third-party trademarks are the property of their respective owners. 1. Copyright Notice Some or all of this work - Copyright (c) 1999 - 2016, Intel Corp. All rights reserved. Third Party Notices 2. License 2.1. This is your license from Intel Corp. under its intellectual property rights. You may have additional license terms from the party that provided you this software, covering your right to use that party's intellectual property rights. 64-Bit Dynamic Linker Version: 2.2. Intel grants, free of charge, to any person ("Licensee") obtaining a copy Component(s): Runtime of the source code appearing in this file ("Covered Code") an irrevocable, Description: The dynamic linker is used to load shared libraries.
    [Show full text]
  • Choosing System C Library
    Choosing System C library Khem Raj Comcast Embedded Linux Conference Europe 2014 Düsseldorf Germany Introduction “God defined C standard library everything else is creation of man” Introduction • Standard library for C language • Provides primitives for OS service • Hosted/freestanding • String manipulations • Types • I/O • Memory • APIs Linux Implementations • GNU C library (glibc) • uClibc • eglibc – Now merged into glibc • Dietlibc • Klibc • Musl • bionic Multiple C library FAQs • Can I have multiple C libraries side by side ? • Can programs compiled with glibc run on uclibc or vice versa ? • Are they functional compatible ? • Do I need to choose one over other if I am doing real time Linux? • I have a baremetal application what libc options do I have ? Posix Compliance • Posix specifies more than ISO C • Varying degree of compliance What matters to you ? • Code Size • Functionality • Interoperability • Licensing • Backward Compatibility • Variety of architecture support • Dynamic Linking • Build system Codesize • Dietlibc/klibc – Used in really small setup e.g. initramfs • Bionic – Small linked into every process • uClibc – Configurable • Size can be really small at the expense of functionality • Eglibc – Has option groups can be ( < 1M ) License • Bionic – BSD/Apache-2.0 • Musl - MIT • Uclibc – LGPL-2.1 • Eglibc/Glibc – LGPL-2.1 Assigned to FSF • Dietlibc – GPLv2 • Klibc – GPLv2 • Newlib – some parts are GPLv3 Compliance • Musl strives for ISO/C and POSIX compliance No-mmu • uClibc supported No-mmu Distributions • Glibc is used in
    [Show full text]
  • The Red Hat Newlib C Library Full Configuration
    The Red Hat newlib C Library Full Configuration libc 1.18.0 December 2008 Steve Chamberlain Roland Pesch Red Hat Support Jeff Johnston [email protected], [email protected], [email protected] The Red Hat newlib C Library Copyright c 1992, 1993, 1994-2004 Red Hat Inc. `libc' includes software developed by the University of California, Berkeley and its contrib- utors. `libc' includes software developed by Martin Jackson, Graham Haley and Steve Chamber- lain of Tadpole Technology and released to Cygnus. `libc' uses floating-point conversion software developed at AT&T, which includes this copy- right information: The author of this software is David M. Gay. ¨ Copyright (c) 1991 by AT&T. Permission to use, copy, modify, and distribute this software for any purpose without fee is hereby granted, provided that this entire notice is included in all copies of any software which is or includes a copy or modification of this software and in all copies of the supporting documentation for such software. THIS SOFTWARE IS BEING PROVIDED "AS IS", WITHOUT ANY EXPRESS OR IMPLIED WARRANTY. IN PARTICULAR, NEITHER THE AUTHOR NOR AT&T MAKES ANY REPRESENTATION OR WARRANTY OF ANY KIND CONCERNING THE MERCHANTABILITY OF THIS SOFTWARE OR ITS FITNESS FOR ANY PAR- TICULAR PURPOSE. Permission is granted to make and distribute verbatim copies of this manual provided the © copyright notice and this permission notice are preserved on all copies. Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, subject to the terms of the GNU General Public License, which includes the provision that the entire resulting derived work is distributed under the terms of a permission notice identical to this one.
    [Show full text]