WikiSort.ru - Программирование

ПОИСК ПО САЙТУ | о проекте

uClibc
Тип системная библиотека
Написана на Си[1]
Операционная система Linux
Последняя версия 0.9.33.2[2] (15 мая 2012)
Лицензия GNU LGPL
Сайт uclibc.org
µClibc, Системный вызов (system calls) и Ядро Linux / μClinux.

uClibc — стандартная библиотека языка программирования C, предназначенная для встраиваемых систем на базе Linux. uClibc была разработана для поддержки uCLinux (специальная редакция ядра Linux, способная работать без блока управления памятью [MMU]) и таким образом подходящая для микроконтроллеров. (буква u есть адаптация греческой буквы µ, означающей «микро»).

Координатор проекта — Erik Andersen, другим активным участником является Manuel Novoa III.

uClibc — свободное программное обеспечение, распространяемое под GNU LGPL.

С 2014 года развитие библиотеки продолжается в форке uClibc-ng.

Возможности

uClibc может запускаться как на системах с MMU так и без него[3]. Библиотека поддерживает процессоры i386, x86-64, ARM (big/little endian), AVR32, Blackfin, h8300, m68k, MIPS (big/little endian), PowerPC, SuperH (big/little endian), SPARC и V850 (англ.).

Среди реализаций libc, uclibc-ng поддерживает наибольшее количество процессорных платформ[4]. Например, ведется работа по добавлению китайской c-sky[5] и nds32[6].

uClibc-ng

В 2014 году разработчики OpenWRT объявили о создании форка библиотеки, назвав его uClibc-ng[7][8][9]. Они решили запустить форк после того, как на протяжении более чем двух лет не могли связаться с майнтейнером.[10][11][12]. По состоянию на 2017 год этот форк продолжает выпускать релизы, используется в Buildroot[13], OpenADK, OpenWrt/Lede для архитектуры ARC, в системах NDS32, Xtensa, Blackfin. Ранее использовавший uclibc мини-дистрибутив Alpine Linux и OpenWrt/Lede переключились на musl; OpenEmbedded вместо uclibc позволяет использовать glibc или musl[4].

Между версиями нарушалась двоичная совместимость. Начиная с 1.0.18 версии все библиотеки были объединены в одну по аналогии с musl[4].

Недостатки

Библиотека не реализовывает некоторых разделов стандартных юникс libc, в частности функциональность libnsl и NSS. Также не поддерживает версионирование символов[4]

См. также

  • Contiki, ОС для встраиваемых систем
  • dietlibc, маленькая альтернативная реализация Стандартной библиотеки C
  • Newlib, стандартная библиотека языка программирования C для встраиваемых систем
  • Eglibc, вариант библиотеки glibc для встраиваемых систем.
  • musl

Примечания

  1. The uclibc Open Source Project on Open Hub: Languages Page — 2006.
  2. 15 May 2012, uClibc 0.9.33.2 Released. Архивировано 12 марта 2012 года.
  3. Choosing System C library, Khem Raj (Comcast) / Embedded Linux Conference Europe 2014 Düsseldorf Germany
  4. 1 2 3 4 uClibc today: Still makes sense / Embedded Linux Conference Europe 2017
  5. C-SKY(csky) Linux Kernel Port [LWN.net]
  6. https://www.lfasiallc.com/wp-content/uploads/2017/11/BoF_-How-to-Port-a-New-Arch-nds32-to-the-Linux-Mainline_Greentime-Hu.pdf
  7. uClibc-ng. uclibc-ng.org. Проверено 11 июля 2015.
  8. Embedded Linux system development / Bootlin, 2018 "uClibc-ng" (стр 71)
  9. Mastering Embedded Linux Programming - Chris Simmonds - Google Книги
  10. Brodkorb, Waldemar uClibc-ng. Список рассылки (20 July 2014).
  11. Petazzoni, Thomas uClibc-ng. Список рассылки (21 July 2014).
  12. Brodkorb, Waldemar uClibc-ng. Список рассылки (21 July 2014).
  13. https://buildroot.org/downloads/manual/manual.pdf

Ссылки

Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".

Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.

Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .




Текст в блоке "Читать" взят с сайта "Википедия" и доступен по лицензии Creative Commons Attribution-ShareAlike; в отдельных случаях могут действовать дополнительные условия.

Другой контент может иметь иную лицензию. Перед использованием материалов сайта WikiSort.ru внимательно изучите правила лицензирования конкретных элементов наполнения сайта.

2019-2024
WikiSort.ru - проект по пересортировке и дополнению контента Википедии