The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Выпуск стандартной Си-библиотеки PicoLibc 1.4.7

26.10.2020 09:34

Кит Паккард (Keith Packard), активный разработчик Debian, лидер проекта X.Org и создатель множества X-расширений, включая XRender, XComposite и XRandR, опубликовал выпуск стандартной Си-библиотеки PicoLibc 1.4.7, развиваемой для применения на встраиваемых устройствах с ограниченным размером постоянного хранилища и оперативной памяти. При разработке часть кода заимствована из библиотеки newlib от проекта Сygwin и AVR Libc, развивавшейся для микроконтроллеров Atmel AVR. Код PicoLibc распространяется под лицензией BSD. Поддерживается сборка библиотеки для архитектур ARM (32-bit), i386, RISC-V, x86_64 и PowerPC.

Изначально проект развивался под именем "newlib-nano" и был нацелен на переработку некоторых ресурсоёмких функций Newlib, которые было проблематично использовать на встраиваемых устройствах с небольшим ОЗУ. Например, функции stdio были заменены на компактный вариант из библиотеки avrlibc. Код также был вычищен от не используемых в сборке для встраиваемых устройств компонентов, поставляемых не под лицензией BSD. Добавлен упрощённый вариант кода инициализации (crt0), а реализация локальных потоков переведена с 'struct _reent' на механизм TLS (thread-local storage). Для сборки задействован инструментарий Meson.

В новом выпуске:

  • Добавлена возможность сборки с использованием математически верифицированного компилятора CompCert.
  • Добавлена поддержка компилятора Clang.
  • Поведение функции 'gamma' приведено в соответствие с поведением Glibc.
  • В реализации nano-malloc обеспечена обязательная очистка возвращаемой памяти.
  • Повышена производительность nano-realloc, особенно при выполнении операций слияния свободных блоков и раcширения размера кучи.
  • Добавлен набор тестов для проверки корректности работы malloc.
  • Улучшена поддержка платформы Windows и добавлена возможность сборки с использованием инструментария mingw.
  • На системах ARM при наличии задействован аппаратный регистр TLS (Thread-Local Storage).


  1. Главная ссылка к новости (https://github.com/picolibc/pi...)
  2. OpenNews: Доступна стандартная Си-библиотека PicoLibc 1.1
  3. OpenNews: Доступен Snek 1.5, Python-подобный язык программирования для встраиваемых систем
  4. OpenNews: Представлена стандартная Си-библиотека Musl 1.0.0, развиваемая в качестве альтернативы Glibc
  5. OpenNews: Разработчики из Google предложили разработать свою libc для LLVM
  6. OpenNews: Выпуск системной библиотеки Glibc 2.32
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/53962-picolibc
Ключевые слова: picolibc, libc
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (15) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, онанимуз (?), 09:42, 26/10/2020 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • –1 +/
     

     ....ответы скрыты (2)

  • 1.2, Аноним (2), 09:49, 26/10/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    А чем лучше musl? Он же тоже для ембедета
     
     
  • 2.4, ИмяХ (?), 09:56, 26/10/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Масло уже давно очень жирным стало.
     
     
  • 3.6, Аноним (6), 10:21, 26/10/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    со сmuslом
     
  • 2.8, YetAnotherOnanym (ok), 11:38, 26/10/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Подозреваю, в мусле стало мало подводных камней, ломающих совместимость софта, написанного под glibc.
     
  • 2.15, Stax (ok), 23:51, 26/10/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    musl жестко зависит от линукса. Без kernel-headers не соберется, без линуксового ядра не заработает. Про picolibc не смотрел, но newlib, который взяли за основу, работал под самыми разными ОС, от амиги до консолей типа PSP, Wii и тп
     

  • 1.9, Аноним (9), 12:26, 26/10/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >Код PicoLibc распространяется под лицензией BSD.
    >При разработке часть кода заимствована из библиотеки newlib

    Newlib - GPLv2, нарушает?

     
     
  • 2.13, анонн (ok), 18:28, 26/10/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    https://github.com/picolibc/picolibc/commit/2384b382b9841910131ef385ab2e1cb2cb
    > Merge remote-tracking branch 'newlib/master' into main




    +Copyright (c) 2020  C-SKY Microsystems All rights reserved.

    +This copyrighted material is made available to anyone wishing to use,
    modify, copy, or redistribute it subject to the terms and conditions
    of the FreeBSD License.



     

  • 1.10, Аноним (10), 16:03, 26/10/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    >Код также был вычищен от не используемых в сборке для встраиваемых устройств компонентов, поставляемых не под лицензией BSD.

    Ну хоть кто-то адекватный и очищает либк от гнутой вирусни.

     
     
  • 2.11, Аноним (11), 16:17, 26/10/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    В негнутую вирусню уже завезли simd?
     
     
  • 3.12, alex312 (?), 16:46, 26/10/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    simd не завезли в AVR, да и в cortex-M c этим simd не очень
     
  • 2.14, Аноним (-), 20:03, 26/10/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Бздишники, это ваш поциент убёг ?
     

  • 1.16, Аноним (16), 05:45, 27/10/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Поганая лицензия
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру