Сравнивайте с английским: нажмите на абзац — оригинал откроется в окне. Кнопка EN под абзацем показывает его прямо в тексте.
Содержание
Введение
Реализация стандартной библиотеки C для встраиваемых систем
Implementation of the C standard library for embedded systems
Newlib – это реализация стандартной библиотеки C, предназначенная для использования во встраиваемых системах. Она представляет собой совокупность различных библиотечных компонентов, распространяемых под лицензиями свободного программного обеспечения, что обеспечивает их удобство использования во встраиваемых продуктах. Newlib была разработана компанией Cygnus Support в процессе создания первых кросс-компиляционных цепочек инструментов GNU. В настоящее время её поддерживают разработчики Red Hat Джефф Джонстон и Коринна Виншен, и она используется в большинстве коммерческих и некоммерческих портов GCC для встраиваемых систем, отличных от Linux.
Newlib is a C standard library implementation intended for use on embedded systems. It is a conglomeration of several library parts, all under free software licenses that make them easily usable on embedded products. It was created by Cygnus Support as part of building the first GNU cross development toolchains. It is now maintained by Red Hat developers Jeff Johnston and Corinna Vinschen, and is used in most commercial and non commercial GCC ports for non Linux embedded systems.
Системные вызовы
В разделе "Системные вызовы" документации Newlib описывается, как его можно использовать со многими операционными системами. Основное его применение – во встраиваемых системах, не имеющих операционной системы; в этом случае он обращается к пакету поддержки аппаратной платформы, который может выполнять такие задачи, как запись байта в последовательный порт или чтение сектора с диска или другого запоминающего устройства.
The section System Calls of the Newlib documentation describes how it can be used with many operating systems. Its primary use is on embedded systems that lack any kind of operating system; in that case it calls a board support package that can do things like write a byte of output on a serial port, or read a sector from a disk or other memory device.
Включение
Newlib включен в коммерческие дистрибутивы GCC от Atollic, CodeSourcery, Code Red, KPIT, Red Hat и других, и поддерживается крупными производителями архитектур встраиваемых процессоров, такими как ARM и Renesas. Он используется в качестве стандартной библиотеки C в Cygwin, а также является одной из стандартных библиотек C для AmigaOS 4.
Newlib is included in commercial GCC distributions by Atollic, CodeSourcery, Code Red, KPIT, Red Hat and others, and receives support from major embedded processor architecture vendors such as ARM and Renesas. It is used as the standard C library in Cygwin, as well as being one standard C library among several for AmigaOS 4.
Начиная с 2004 года, KallistiOS, независимый SDK для Sega Dreamcast, использует Newlib в качестве стандартной библиотеки C, поставляя её вместе со многими коммерческими играми для этой платформы. С 2007 года devkitARM и devkitPPC, наборы инструментов для разработки любительских игр для коммерческих игровых систем, включают Newlib в качестве своей библиотеки C. Open R SDK для Sony AIBO также основан на Newlib поверх Aperios, не являющейся Unix-системой. С 2013 года Google Native Client SDK (NaCl) включает Newlib в качестве библиотеки C по умолчанию, предпочтительно перед glibc. В 2019 году Кит Паккард выпустил Picolibc, библиотеку, предоставляющую стандартные API библиотеки C, предназначенную для небольших встраиваемых систем с ограниченным объемом оперативной памяти, и основанную на коде из Newlib и AVR Libc.
as of 2004, KallistiOS, an independent SDK targeting the Sega Dreamcast, has used Newlib as its standard C library, shipping it with many commercial titles on the platform. as of 2007, devkitARM and devkitPPC, toolchains targeted at homebrew development for commercial game systems, include Newlib as their C library. The Open R SDK for Sony AIBO is also based on Newlib on top of the non Unix Aperios. as of 2013, Google Native Client SDK (NaCl) includes Newlib as the default C library over glibc. In 2019, Keith Packard released Picolibc, a library offering standard C library APIs that targets small embedded systems with limited RAM, based on blending code from Newlib and AVR Libc.