The OpenNET Project / Index page

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

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

08.02.2025 10:05

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

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

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

  • Добавлена поддержка архитектур LoongArch, OpenRISC и LatticMico32.
  • Предложена реализация заголовочного файла uchar.h, появившегося в стандарте C11.
  • Добавлена настройка nano-malloc-clear-freed для очистки памяти, высвобожденной после выполнения free() или realloc().
  • Реализована возможность использования clang multilib на системах ARM64.
  • Осуществлён переход на новый инструментарий picolibc-ci-tools для автоматической сборки в системах непрерывной интеграции.
  • Для архитектуры MIPS реализована поддержка технологии "semihosting", позволяющей коду, выполняемому в окружении отладчика или эмулятора, использовать механизмы ввода/вывода хост-системы.
  • Для процессоров Xtensa добавлена поддержка picocrt и semihost.
  • Добавлены настройки для использования с CoreBoot.
  • Добавлена функция memset_explicit(), появившаяся в стандарте C23.
  • Таблицы преобразования регистра символов обновлены до спецификации Unicode 15.1.0.
  • Из библиотеки newlib перенесены функции asnprintf() и vasnprintf().
  • Добавлена поддержка эмулятора FVP (Fixed Virtual Platforms), развиваемого ARM.
  • Добавлена поддержка старых версии компилятора GCC (старее 4.4).
  • Реализации iconv и locale заменены на более компактные варианты, в которых задействован общий код для работы с кодировками.


  1. Главная ссылка к новости (https://github.com/picolibc/pi...)
  2. OpenNews: Выпуск стандартной Си-библиотеки PicoLibc 1.8.6
  3. OpenNews: Опубликована стандартная Си-библиотека newlib 4.5.0
  4. OpenNews: Выпуск стандартной Си-библиотеки Musl 1.2.5
  5. OpenNews: Представлен порт systemd для систем на базе библиотеки Musl
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/62690-picolibc
Ключевые слова: picolibc
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (25) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 10:18, 08/02/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > Код также вычищен от неиспользуемых в сборке для встраиваемых устройств компонентов, поставляемых не под лицензией BSD.

    интересно, почему

     
     
  • 2.2, Аноним (2), 10:32, 08/02/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Потому что любители гпл считают, что код должен быть только их и никак иначе. И где тут свобода. Свобода это когда я могу дать код и не дать. А когда я обязан это уже не свобода.
     
     
  • 3.4, Аноним (4), 10:51, 08/02/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    GPL - это как раз таки настоящая свобода - получив её, никто уже не сможет её у вас отобрать! А вот BSD и прочие вроде как "свободные" лиценции дают свободу лишь "на время"! Блин, ну это всё равно что, например сказать чернокожим: мол, ок, поиграли в свободу и хватит, - с этого момента вы снова в рабстве! Что-то мне подсказывает, что они будут мягко говоря против такой вот "временной свободы":)
     
     
  • 4.6, Аноним (6), 11:01, 08/02/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Тоже не понимаю вот этого "свобода дать код и свобода не дать". Да емае, у самих же противников жпл код и своруют, и никому не скажут. В чем проблема делиться кодом? Страх что найдут куски из чужих проктов или что? Или такие супер оригинальные и секретные разработки?
     
     
  • 5.9, Аноним (9), 11:21, 08/02/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Ну и страх, что найдут закладки.
     
  • 5.21, Аноним (21), 19:54, 08/02/2025 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > Тоже не понимаю вот этого "свобода дать код и свобода не дать".

    То есть, ничего оригинального ты никогда не создавал. Иначе понимал бы, что когда всё, что у тебя есть ценного - это твой код, в котором реализованы твои оригинальтные идеи, то попадание его в чужие руки приведёт к тому, что большие ребята его возьмут бесплатно, а тебя просто спихнут на обочину.

     
     
  • 6.22, Ivan_83 (ok), 22:45, 08/02/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Так вам с вашим ГПЛ тоже никто денег не даст.
     
  • 6.23, anonymos (?), 02:52, 09/02/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Если у тебя действительно "оригинальный" код, в котором реализованы "оригинальные идеи", тогда переживать вообще не стоит. Большая корпорация "купит" тебя, вместе с кодом. Ибо "генераторы оригинальных идей" на дороге не валяются, и представляют для бизнеса "ценный актив".  
     
     
  • 7.24, Аноним (21), 13:00, 09/02/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Большая корпорация "купит" (за деньги) только если не сможет взять бесплатно. Если сможет - возьмёт, а заодно и автора постарается закопать. Пример - Амазон и Эластик.
     
  • 4.13, Аноним (13), 12:23, 08/02/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ответь для себя на один вопрос - если гипотетические инопланетяне с помощью некого устройства сделают людей неспособными к убийству - это будет свобода? =)
     
     
  • 5.20, Аноним (-), 16:08, 08/02/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ответь для себя на вопросы:
    Что такое люди-человеки?
    Кого они убивают?
    Зачем они убивают этого кого?
    Может быть они кушать хотят?

    Кто такие ети, пусть даже гипотетические инопланетяне?
    Что они кушают на обед?
    Зачем этим гипотетическим инопланетянам делать людей неспособными к убийству?
    Что это за некое устройство (хотя бы в разрезе того, сколько оно потребляет энергии в расчете на одного человека)?

    ...

    Короче, один дурак может задать столько вопросов, что и сто мудрецов не справятся! (Неволнуйся это я про себя. ;)

    Но на один вопрос ты все таки постарайся ответить, хотя бы для себя любимого.
    Если тебя, гипотетические инопланетяне (или кто то другой), огреют этим (или другим) неким устройством, и ты станешь неспособным к убийству, ты будешь счастлив (ты вообще сможешь выжить в этом мире)?

    С уважением,

    Один Дурак.

     
  • 4.17, Аноним (17), 15:10, 08/02/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    GPL - это как раз таки псевдо свобода.
     
  • 4.19, Аноним (-), 15:35, 08/02/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    GPL это свобода для кода. BSD - свобода для человека. Именно в непонимании этого кроется причина споров "что из них свобода".
     
  • 3.5, Аноним (-), 10:53, 08/02/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Перевираешь. Свобода это только копилефт.
     
  • 3.7, Аноним (6), 11:06, 08/02/2025 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Стоит напоминать, что ваш любимый линукс стал возможен благодаря как раз таки так нелюбимой вами GPL?
     
     
  • 4.14, Аноним (13), 12:25, 08/02/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Это брехня, повторяемая с 90 годов. Не раз развенчанная участниками процесса создания линукса.
     
  • 4.18, Смузихлеб забывший пароль (?), 15:14, 08/02/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > линукс стал возможен благодаря как раз таки так нелюбимой вами GPL

    Скорее, благодаря платиновым спонсорам, на которых торвальдс работает примерно как менеджер проекта и принимает под козырёк все их хотелки ибо его никто из них не спрашивает. С другой стороны, амдуре тредриппер и яблокомп сами изниоткуда не возьмутся. Ш.вабода - она такая, хочешь делай, не хочешь - делай или проваливай и лишайся бабла )

     
  • 3.8, Аноним (9), 11:19, 08/02/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ты можешь код под GPL не брать в свою проприетарь, никто не обязывает. Свобода.
     
     
  • 4.11, Аноним (11), 11:39, 08/02/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Это чё? Самому код что ли писать?!
     
  • 2.26, n00by (ok), 14:49, 09/02/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >> Код также вычищен от неиспользуемых в сборке для встраиваемых устройств компонентов, поставляемых не под лицензией BSD.
    > интересно, почему

    Потому что GPL не настоящий:

    GCC RUNTIME LIBRARY EXCEPTION

    ...

    This GCC Runtime Library Exception ("Exception") is an additional
    permission under section 7 of the GNU General Public License, version
    3 ("GPLv3"). It applies to a given file (the "Runtime Library") that
    bears a notice placed by the copyright holder of the file stating that
    the file is governed by GPLv3 along with this Exception.

    When you use GCC to compile a program, GCC may combine portions of
    certain GCC header files and runtime libraries with the compiled
    program. The purpose of this Exception is to allow compilation of
    non-GPL (including proprietary) programs to use, in this way, the
    header files and runtime libraries covered by this Exception.

     

  • 1.10, Аноним (9), 11:25, 08/02/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Keith Packard, лидер проекта X.Org : Мог бы и под традиционной MIT выпустить.
     
     
  • 2.28, 12yoexpert (ok), 21:23, 09/02/2025 [^] [^^] [^^^] [ответить]  
  • +/
    знаем ему пользоваться традиционной для корпорастов лицензией?
     
     
  • 3.29, Аноним (29), 01:12, 10/02/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Поэтому воспользовался не менее традиционной для корпорастов.
     

  • 1.15, dannyD (?), 12:34, 08/02/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >>Добавлена поддержка архитектур .... LatticMico32

    думал, что все кроме меня об этом уже давно зыбыли.

    кто и зачем это использует?

     
  • 1.16, Аноним (16), 13:03, 08/02/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    >Добавлена поддержка старых версии компилятора GCC (старее 4.4).

    Всё, популярность на опеннете обеспечена.

     

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



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

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