PicoLibc 1.4.7 標準 C 庫發布

Keith Packard,活躍的 Debian 開發人員、X.Org 專案的領導者以及許多 X 擴充的創建者,包括 XRender、XComposite 和 XRandR, опубликовал 標準C函式庫的發布 PicoLibc 1.4.7,開發用於永久儲存和 RAM 有限的嵌入式設備。 開發時從庫借用了部分程式碼 新庫 來自 Cygwin 專案和 AVR 庫,專為 Atmel AVR 微控制器開發。 PicoLibc代碼 分發者 在 BSD 許可下。 ARM(32 位元)、i386、RISC-V、x86_64 和 PowerPC 架構支援庫彙編。

最初,該專案以「newlib-nano」的名稱開發,旨在重新設計 Newlib 的一些資源密集型功能,這些功能在 RAM 較小的嵌入式裝置上使用時存在問題。 例如,stdio 函數已替換為 avrlibc 庫中的緊湊版本。 該程式碼還清除了嵌入式建置中未使用的非 BSD 授權元件。 新增了初始化程式碼(crt0)的簡化版本,並且本機執行緒的實作已從“struct _reent”移至TLS機制(線程本地存儲)。 Meson 工具包用於組裝。

在新版本中:

  • 新增了使用建置的能力 經過數學驗證 編譯器 電腦證書.
  • 新增了對 Clang 編譯器的支援。
  • 「gamma」函數的行為已與 Glibc 的行為一致。
  • 奈米 malloc 實作確保返回的記憶體被清除。
  • 改進了奈米重新分配的性能,特別是在合併空閒塊和擴展堆大小時。
  • 新增了一組測試來檢查 malloc 的正確操作。
  • 改進了對 Windows 平台的支持,並添加了使用 mingw 工具包進行建置的功能。
  • 在 ARM 系統上,如果可用,則會啟用 TLS(執行緒本機儲存)硬體暫存器。

來源: opennet.ru