Introduction to NuttX

Source: Internet
Author: User
Tags xml rpc server

(Embedded real-time operating system rtos nuttx 7.1) description 1. The real-time operating system of NuttX is a real-time operating system (RTOS), which emphasizes standard compatibility and small encapsulation, highly scalable from 8-bit to 32-Bit Microcontroller environments. NuttX follows Posix and ANSI standards. For features not supported under these standards, or features not applicable to deep-embedded environments (such as fork ()), use additional standard APIs from Unix and common RTOS (such as VxWorks.

The first version of NuttX was published by Gregory Nutt under the loose BSD license in 2007. 2 key feature standards compatible with core task management modular design completely scalable, natural, highly configurable graphical configuration tools easy to extend to new processor architecture, SoC architecture or board-level architecture FIFO and rotation scheduling real-time and deterministic tasks that support priority inheritance class POSIX/ANSI, naming message queues, counting semaphores, clock/Timer, signal, pthread, environment variables, file system class VxWorks management and watchdog timer BSD socket interface priority Management Extensions Optional tasks with address environment (processes) the inherited "control terminal" and I/O redirection request-type paging system logs can be constructed as open, flat embedded RTOS, or independently built as a microkernel with system call interface built-in per-thread CPU load measurement good documentation support 3 supported platforms 3.1 AllwinnerA10 (Cortex-A8) 3.2 AtmelAVR ATMega128 (8-bit AVR) AVR AT90USB64x and AT90USB6128x (8-bit AVR32 AT32UC3BXXX (32-bit AVR32) Atmel SAMD20 (ARM Cortex-M0 +) Atmel SAM3U (ARM Cortex-M3) Atmel SAM3X (ARM Cortex-M3) Atmel SAM4L (ARM Cortex-M4) atmel SAM4S (ARM Cortex-M4) Atmel SAM4E (ARM Cortex-M4) Atmel SAMA5D3 (ARM Cortex-A5) 3.3 FreescaleM68HCS12Freescale I. MX1 (ARM920-T) FreeScale KL25Z (ARM Cortex-M0 +) FreeScale Kinetis K40 (ARM Cortex-M4) FreeScale Kinetis K60 (ARM Cortex-M4) 3.4 Simulation Based on host PC Li Nux/Cygwin user mode simulation 3.5 IntelIntel 80x52Intel 80x863.6 animated Family (Modified MIPS32) PIC32MX4xx Family (Modified MIPS32) PIC32MX7xx Family (Modified MIPS32) 3.7 animated NUC120 (ARM Cortex-M0) 3.8 running LPC214x (ARM7TDMI) NXP hybrid (ARM7TDMI) NXP LPC3131 (small) NXP LPC315x (small) NXP LPC176x (ARM Cortex-M3) NXP LPC178x (ARM Cortex-M3) NXP LPC43xx (ARM Cortex-M4) 3.9 Renesas/Hitac Hi: Renesas/Hitachi SuperHRenesas M16C/263.10 STMicroelectronicsSTMicro STR71x (ARM7TDMI) STMicro rjl152 (STM32 L "EnergyLite" Line, ARM Cortex-M3) STMicro STM32F100x (STM32 F1 "Value Line" Family, ARM Cortex-M3) STMicro STM32F103C4/C8 (STM32 F1 "Low-and Medium-Density Line" Family, ARM Cortex-M3) STMicro STM32F103x (STM32 F1 Family, ARM Cortex-M3) STMicro stm32f%x (STM32 F1 "Connectivity Line" fam Ily, ARM Cortex-M3) STMicro STM32F207x (STM32 F2 family, ARM Cortex-M3) STMicro STM32F303x (STM32 F3 family, ARM Cortex-M4 ). STMicro STM32F407x (STM32 F4 family, ARM Cortex-M4) STMicro STM32 F427/437 (STM32 F4 family, ARM Cortex-M4) STMicro STM32 F429 (STM32 F4 family, ARM Cortex-M4) 3.11 Texas Instruments (some formerly Luminary) TI TMS320-C5471 (ARM7TDMI) TI Calypso (ARM7TDMI) TI TMS320-DM320 (ARM9E6JS) T I/Stellaris serial (ARM Cortex-M3) TI/Stellaris serial (ARM Cortex-M3) TI/Stellaris LM3S6918 (ARM Cortex-M3) TI/Stellaris LM3S6965 (ARM Cortex-M3) TI/Stellaris LM3S8962 (ARM Cortex-M3) TI/Stellaris LM3S9B96 (ARM Cortex-M3) TI/Stellaris LM4F120x (ARM Cortex-M4) TI/Tiva TM4C123G (ARM Cortex-M4) 3.12 ZiLOGZiLOG ZNEO Z16FZiLOG eZ80 Acclaim! ZiLOG Z8Encore! Board supported by ZiLOG Z180ZiLOG Z804

16z
Amber
Arduino-due
Avr32dev1
C5471evm
Cloudctrl
Compal_e86
Compal_e88
Compal_e99
Demo9s12ne64
Ea3131
Ea3152
Eagle100
Ekk-lm3s9b96
Ez80f910200kitg
Ez80f910200zco
Fire-stm32v2
Freedom-kl25z
Hymini-stm32v
Kwikstik-k40
Lincoln60
Lm3s6432-s2e
Lm3s6965-ek
Lm3s8962-ek
Lm4f120-launchpad
Lpc4330-xplorer
Lpcxpresso-lpc1768
Maple
Mbed
Mcu123-lpc214x
Micropendous3
Mikroe-stm32f4
Mirtoo
Mx1ads
Ne64badge
Ntosd-dm320
Nucleus 2 GB
Nutiny-nuc120
Olimex-lpc1766stk
Olimex-lpc2378
Olimex-lpc-h3131
Olimex-stm32-p107
Olimex-stm32-p207
Olimex-strp711
Open1788
P112
Pcblogic-pic32mx
Pcduino-a10
Pic32mx7mmb
Pic32-starterkit
Pirelli_dpl10
Pjrc-8051
Px4fmu-v2_upstream
Qemu-i486
Rgmp
Sam3u-ek
Sam4e-ek
Sam4l-xplained
Sam4s-xplained
Sama5d3x-ek
Samd20-xplained
Shenzhou IV
Sim
Skp16c26
Spark
Stm3210e-eval
Stm3220g-eval
Stm3240g-eval
Stm32f100rc_generic
Stm32f3discovery
Stm32f429i-disco
Stm32f4discovery
Stm32ldiscovery
Pai_tiny
Stm32vldiscovery
Sure-pic32mx
Teensy
Tm4c123g-launchpad
Twr-k60n512
Ubw32
Us7032evb1
Viewtool-stm32f107
Vsn
Xtrs
Z16f2800100zcog
Z80sim
Z8encore000zco
Z8f64200100kit
Zkit-arm-1769
Zp214xpa
 
5. Memory-based micro-root pseudo-File System Virtual File System (VFS) Mount volumes: bind mount points, file systems, and block device drives. General system logs (SYSLOG) Support FAT12/16/32 file systems support NFS clients: the client side supports Network File Systems (NFS, version 3, UDP) NXFFS: miniature NuttX loss balancing FLASH file system SMART: FLASH file system provided by Ken Pettit. The general driver of procfs/File System Based on spi mmc/SD/SDH card ROMFS file system supports binary loaders in the following formats: the ELF module is separated from the NXFLAT module. NXFLAT is a binary format that can be executed from a file system chip. The PATH variable supports transferring (receiving and sending) files through TFTP and FTP, HTML (wget), and Zmodem (sz and rz ). 6 device-driven VFS supports character and block-driven networks, USB (host), USB (device) serial Port, I2C, I2S, NAND, CAN, ADC, DAC, PWM, orthogonal encoder and watchdog timer driver architecture. RAMDISK, MPs queue, FIFO,/dev/null,/dev/zero DRIVER: built-in ModBus for the SPI or SDIO-based MMC/SD/SDH card universal driver power management subsystem provided by FreeModBus 1.5.0 supported graphics devices: frame Buffer drive, graphics and LCD Drive Audio Subsystem: codecs, audio input and output drivers. Command Line and graphics media layer application input devices: touch screen, USB keyboard, USB mouse, GPIO-based buttons and keyboard Analog Devices: analog to digital conversion (ADC) supported), numeric to analog conversion (DAC), multiplexing and amplifier 7 C/C ++ libraries fully integrated into the OS Standard C Library provides floating point support plug-in through a standard mathematical library uClibc ++ module provides the Standard C ++ Library, supports io streams, strings, STL, RTTI, exceptions, etc. (LGPL) 8 network TCP/IP, UDP, ICMP, IGMPv2 (client) stack SLIP a cJSON port small encapsulation (based on uIP) BSD-compatible socket layer network utilities (DHCP server and client, SMTP client, TELNET client, FTP server and client, TFTP client, HTTP server and client, NTP client ). The TELNET session that can be inherited (for example, "control terminal "). NFS client: the client side supports the Network File System (NFS, version 3, UDP). It is integrated with NXFLAT and provides embedded CGI. UDP network discovery, xml rpc server support network module (such as TI CC3000 WLAN module) 9 Flash support inspired by MTD storage technology device interface NAND support FTL: simple Flash transfer layer, supports the file system NXFFS on FLASH: nuttX loss balancing FLASH file system support SPI-based FLASH device 10 USB support 10.1 USB Host Support USB host controller driver and USB-type driver on which the device depends USB Host Architecture can be used for NXP LPC17xx USB the host controller driver can be used for USB large-capacity storage devices and HID keyboards devices. the USB class driver 10.2 USB device supports USB device controller drivers and the USB class drivers the device depends on. The class Gadget architecture can be used PIC32, NXP LPC17xx, LPC214x, LPC313x, LPC43xx, and STMicro ipvf 1x, STM32F2x, STM32F4x, and ti DM320 USB device controller drivers can be used for USB serial ports and USB large-capacity storage devices. The USB driver depends on the built-in USB tracing function for USB debugging. 11 graphic support frame Buffer driver parallel port and SPI port LCD and OLED Graphics LCD Drive segment LCD Drive NX Graphics subsystem: A graphics library, window system, and font support, working on frame buffering or LCD-driven NuttX Widgets: a graphical user interface written in a conservative C ++, integrated in NX GraphicsNuttX Window Manager: A micro-Window Manager is based on the NX Graphics subsystem and the NuttX Widgets12 Plug-In 12.1. The NuttShell is a small, scalable, bash-like shell used for NuttX and has rich feature sets and small packages. 12.2 When Pascal is running, the Pascal plug-in can be downloaded from the SourceForge website. 13 Development Environment Linux + GNU make + GCC/binutils for LinuxLinux + GNU make + SDCC for LinuxWindows with Cygwin + GNU make + GCC/binutils (custom build under Cygwin) windows with Cygwin + GNU make + SDCC (custom build in Cygwin) Windows with Cygwin + GNU make + Windows Local tool chain Windows Local (CMD.exe) + GNUWin32 (including GNU make) + MinGW host GCC compiler + Windows Local tool chain Wine + GNU make + Windows Local tool chain

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.