你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

[转载]实时操作系统NuttX 介绍

[复制链接]
末未本 发布时间:2015-1-10 23:13
本帖最后由 末未本 于 2015-1-10 23:13 编辑
! h3 L. E1 ~; ?; O$ l+ K1 F
% P- E2 B+ f4 l/ V3 O# o* iNuttX 介绍转载请注明出处:http://blog.csdn.net/zhumaill/article/details/24197637
+ ?  [9 h' o, x% y9 S4 D" l
, B  n" ?6 x6 N, E" t/ c1 N7 }% {1  NuttX 实时操作系统  R) _5 c5 A# Z( W; I
NuttX 是一个实时操作系统(RTOS),强调标准兼容和小型封装,具有从8位到32位微控制器环境的高度可扩展性。NuttX 主要遵循  Posix 和 ANSI 标准,对于在这些标准下不支持的功能,或者不适用于深度嵌入环境的功能(如 fork()),采用来自 Unix 和常见 RTOS (如 VxWorks)的额外的标准 API。
) X' a0 W! V( e  V) z2 B8 n# o& [9 S
NuttX 的第一个版本由 Gregory Nutt 于 2007 年在宽松的 BSD 许可证下发布。! O9 T' O: W8 r9 i) |4 l( f- U

' q8 [0 o+ T; X, |8 b; R2  关键特征
  • 标准兼容
  • 核心任务管理
  • 模块化设计
  • 完全可抢占
  • 天然可扩展
  • 高度可配置
  • 图形化配置工具
  • 容易扩展到新的处理器架构、 SoC 架构或板级架构
  • FIFO 和轮转调度
  • 实时的、确定性的、支持优先级继承
  • 类 POSIX/ANSI 的任务控制、命名消息队列、计数信号量、时钟/定时器、信号、pthread、环境变量、文件系统
  • 类VxWorks的任务管理和看门狗定时器
  • BSD 套接字接口
  • 优先级管理的扩展
  • 可选的具有地址环境的任务(进程)
  • 可继承的“控制终端”和 I/O 重定向
  • 请求式分页
  • 系统日志
  • 可以构建为开放的、平面的嵌入式 RTOS,或单独构建为具有系统调用接口的微内核
  • 内建每线程 CPU 负载测量
    8 C- ]! a7 U$ b. x: _
3  支持的平台3.1  Allwinner
  • A10 (Cortex-A8)' v% Z* }' Q2 ~0 X4 j
3.2  Atmel
  • AVR ATMega128 (8-bit AVR)
  • AVR AT90USB64x and AT90USB6128x (8-bit AVR)
  • 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). _, Q& e. G# |, e
3.3  Freescale
  • M68HCS12
  • Freescale i.MX1 (ARM920-T)
  • FreeScale KL25Z (ARM Cortex-M0+)
  • FreeScale Kinetis K40 (ARM Cortex-M4)
  • FreeScale Kinetis K60 (ARM Cortex-M4)5 M% M3 Y4 @( Q% T
3.4  基于主机 PC 的仿真
  • Linux/Cygwin 用户模式仿真6 {0 D3 J. f! i
3.5  Intel
  • Intel 80x52
  • Intel 80x863 _  ?7 ?! J" ~. |+ }* G( e$ p+ R) @
3.6  MicroChip
  • PIC32MX2xx Family (Modified MIPS32)
  • PIC32MX4xx Family (Modified MIPS32)
  • PIC32MX7xx Family (Modified MIPS32)* n4 ~  [) T9 T6 w, }7 I
3.7  nuvoTon
  • nuvoTon NUC120 (ARM Cortex-M0)
    4 O. R* W" c$ f/ Y2 ?. i
3.8  NXP
  • NXP LPC214x (ARM7TDMI)
  • NXP LPC2378 (ARM7TDMI)
  • NXP LPC3131 (ARM9E6JS)
  • NXP LPC315x (ARM9E6JS)
  • NXP LPC176x (ARM Cortex-M3)
  • NXP LPC178x (ARM Cortex-M3)
  • NXP LPC43xx (ARM Cortex-M4)3 o# q1 L! M9 T$ E' L$ }
3.9  Renesas/Hitachi:
1 |8 s) R: K: c$ L! S; w1 A' n
3.10  STMicroelectronics
  • STMicro STR71x (ARM7TDMI)
  • STMicro STM32L152 (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 STM32F107x (STM32 F1 "Connectivity Line" family, 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): q% q4 E: z) ~7 C6 W6 E1 C- r
3.11  Texas Instruments (some formerly Luminary)3.12  ZiLOG4  支持的板卡' ]' c& e! n, `
16z
7 O+ K  X  U7 ~; |% n& Y9 Pamber  l* _0 [& d; w
arduino-due
+ W: t, e) {' Y* ]5 ~# c" P$ Yavr32dev1. |: n- p7 j8 y6 a& \
c5471evm
0 W" x  d9 p/ L  z6 Kcloudctrl+ u% o7 v  Q- h% v) P
compal_e86
1 o; h( x$ q% D+ r) Fcompal_e88
; y  k7 K) }- V7 Qcompal_e996 g' T6 w3 z% U3 w
demo9s12ne640 Q- N% K9 C3 Q1 g6 f
ea3131
2 x8 t2 s# s4 B- vea3152
+ g( W3 c7 {! ^1 E  eeagle100
: U# k" B; L, Iekk-lm3s9b96
. P1 U$ a, ~' u+ u) g+ ~, b0 d0 sez80f910200kitg
+ D$ n* y+ _& v6 Aez80f910200zco
" Q2 l* _) d9 j1 @9 n* afire-stm32v21 C& k: W0 c+ [) v4 @
freedom-kl25z2 i  L) ]" J5 _( f  ?8 u2 M- ~
hymini-stm32v0 T& e. a/ R9 i9 Q. X2 a) z
kwikstik-k40
9 _* _7 [. k# A+ tlincoln608 o) T3 `& P) `
lm3s6432-s2e
) o; o" \+ m  C% L' k5 c, ulm3s6965-ek
lm3s8962-ek
! j5 J# b) o* S1 d- {lm4f120-launchpad* E+ e' Q) d5 B  j
lpc4330-xplorer
$ y$ O  V+ w8 [lpcxpresso-lpc1768
8 z3 l$ V* V2 O  v2 d; @3 Xmaple* p9 [1 B$ F* _4 N9 `, C- ^
mbed
/ b$ f. U% w) e' `  g" Bmcu123-lpc214x( B0 R0 d4 \; Z, @* Z1 K/ r, E
micropendous3! ]( B. ^) K; Y7 g5 ~3 D
mikroe-stm32f4
+ n' s3 Y4 z3 O# E% Qmirtoo
( K% J( Q: @1 L2 i( Z* ~6 [- Y: Lmx1ads
# {: a6 @: x( d1 I+ Z4 Zne64badge
" c5 ~: ~+ I& y1 s* Bntosd-dm320
; J# F" U% G8 J; @& ^. D( knucleus2g& E& g( n5 ]1 R8 B% p0 d
nutiny-nuc120
/ I( ^3 }8 p& polimex-lpc1766stk
6 h7 f" H6 v/ A" aolimex-lpc2378
4 e8 i$ N7 z; W1 \% h( |. u! Rolimex-lpc-h3131
( [  J8 C" C. E# u6 e" I6 polimex-stm32-p1077 g/ t& Y( i! ?; ^& G
olimex-stm32-p207! `+ S% m/ Y; s& m
olimex-strp711- _. O7 L/ Q, [1 ]  y5 {
open1788/ m2 d1 T" m" h) l
p112
pcblogic-pic32mx
5 I6 P' n# |+ opcduino-a10
9 o7 @* ?: Z9 E/ z' e+ I% Q" _pic32mx7mmb) V9 K) o7 j1 v) e$ p
pic32-starterkit) s4 g2 L8 Y; d4 s  u
pirelli_dpl10
- O! R! x+ f/ y  C2 S% T; G: d( xpjrc-8051
& E& q( R  U5 ?; h5 Hpx4fmu-v2_upstream
- b' }- K' n6 Z6 @% _+ \' jqemu-i486
/ t2 `: H+ d, O4 g5 Z- Jrgmp4 R3 }8 J1 g# F) s! r* f( z# h$ a
sam3u-ek# l5 |7 z1 _& L( g8 S
sam4e-ek8 ~% O. z# V% {/ M, _
sam4l-xplained+ [3 ~6 v# a. d( U0 [$ o
sam4s-xplained, H# A- ~+ O0 M0 p5 L8 y( B
sama5d3x-ek
0 D. U' O4 N4 k3 bsamd20-xplained
) b6 X; J3 |3 L+ f2 K神舟IV号
8 H* t9 \3 i& Q4 [. fsim
) [( e( E: ~- c( B2 T$ c0 \7 zskp16c26. Y* X9 n: q* L/ e
spark0 C3 E/ D7 G: h
stm3210e-eval
# L" q4 b% ~% Z+ ostm3220g-eval
& R8 `3 u! [; U3 C/ gstm3240g-eval
  y( ]1 s8 Y- l  g9 i5 Nstm32f100rc_generic
stm32f3discovery6 Z2 u; B" W5 Y! z5 a6 L! ^
stm32f429i-disco
0 x! v8 O- N, Ustm32f4discovery
& U: M2 A! {: o8 ]$ rstm32ldiscovery
2 J! {, H2 `7 t$ f1 |. W; ystm32_tiny
% }( x0 I' a1 N6 P; @stm32vldiscovery
% @1 K6 t5 R; u3 g+ m) a3 Psure-pic32mx; Y& S$ d5 r( ?6 J2 u& s
teensy
0 r% a+ X: t$ J) @tm4c123g-launchpad' t1 I" x! v( z) P( X( T. d* \
twr-k60n512
' b  K  X1 M: W2 p( N$ P5 A7 \ubw32
  I3 c) _" ]- C4 u0 f( h- eus7032evb12 x& j* M) ]2 D* {1 B6 L2 r3 i
viewtool-stm32f107# y7 t4 _! }1 m0 _
vsn; l- |0 |0 L) b0 `
xtrs
( H& y3 S2 w) |5 d% gz16f2800100zcog% r- ~% F$ A: {
z80sim
8 I: Z; Q' c$ p2 o( p# pz8encore000zco" O+ S9 t2 J* n8 U
z8f64200100kit5 N5 R( O' W0 J/ W! N: t
zkit-arm-17691 n; ?# i, T' n! ~
zp214xpa+ v" ^) W. s$ n  U5 U2 `+ C
: G3 J/ A1 j: V* l# ]+ [9 @5 m3 A

' H- ]# a) c8 F& f  R5  文件系统
  • 基于内存的微型根伪文件系统
  • 虚拟文件系统(VFS)
  • 可挂载的卷:绑定挂载点、文件系统和块设备驱动器。
  • 通用系统日志(SYSLOG)支持
  • FAT12/16/32文件系统支持
  • NFS客户端:客户端侧支持网络文件系统(NFS,版本3,UDP)
  • NXFFS:微型 NuttX 损耗平衡 FLASH 文件系统
  • SMART:Ken Pettit提供的 FLASH文件系统。
  • procfs/ 文件系统
  • 基于 SPI 的 MMC/SD/SDH 卡的通用驱动
  • ROMFS文件系统支持
  • 二进制加载器支持下列格式:  O3 D& ?$ f  x: P$ P
    • 脱离链接的 ELF 模块
    • 脱离链接的 NXFLAT 模块。NXFLAT 是可以从文件系统芯片内执行的二进制格式。/ F8 v% y5 o8 X0 m; I. M
  • PATH 变量支持
  • 通过 TFTP 和 FTP、HTML (wget)、 Zmodem (sz 和 rz) 传输文件(接收和发送)。. _( R% p# N5 k
6  设备驱动
  • VFS 支持字符和块驱动
  • 网络、 USB (主机)、 USB (设备)、 串口、 I2C、 I2S、 NAND、 CAN、 ADC、 DAC、 PWM、 正交编码器和看门狗定时器驱动架构。
  • RAMDISK、 管道、 FIFO、 /dev/null、 /dev/zero 驱动
  • 基于 SPI 或 SDIO 的 MMC/SD/SDH 卡的通用驱动
  • 电源管理子系统
  • 内建 FreeModBus 1.5.0 版提供的 ModBus 支持
  • 图形设备:帧缓冲驱动、图形和段式 LCD 驱动
  • 音频子系统:编解码器、音频输入和输出驱动。命令行和图形界面媒体播放器应用程序
  • 输入设备:触摸屏、USB 键盘、USB鼠标、基于 GPIO 的按钮和键盘
  • 模拟设备:支持模拟到数字转换(ADC)、数字到模拟转换(DAC)、多路复用器和放大器6 }" Z6 C- }$ |9 \
7  C/C++ 库
  • 完全集成在 OS 内的标准 C 库
  • 通过一个标准数学库提供浮点支持
  • 插件 uClibc++ 模块提供标准 C++ 库,支持 io 流、 字符串、 STL、 RTTI、异常等(LGPL)
    * {4 J$ W* s$ Y4 j# {2 o" O1 E
8  网络
  • TCP/IP、 UDP、 ICMP、 IGMPv2(客户端)栈
  • SLIP
  • 一个 cJSON 移植
  • 小型封装(基于 uIP)
  • BSD兼容的套接字层
  • 网络实用程序(DHCP 服务器和客户端、SMTP 客户端、 TELNET 客户端、FTP 服务器和客户端、TFTP 客户端、HTTP 服务器和客户端、NTP 客户端)。可继承的 TELNET 会话(如“控制终端”)。
  • NFS 客户端:客户端侧支持网络文件系统(NFS,版本3,UDP)
  • 一个 Jeff Poskanzer 的 THTTPD HTTP 服务器的 NuttX 移植,集成于 NXFLAT,提供嵌入式 CGI。
  • UDP 网络发现, XML RPC 服务器
  • 支持网络模块(如 TI CC3000 WLAN 模块)  N, w5 A* W3 s5 h% I2 D; F
9  Flash 支持
  • 灵感来自 MTD 的存储技术设备接口
  • NAND 支持
  • FTL:简单的 Flash 转换层,支持 FLASH 上的文件系统
  • NXFFS: NuttX 损耗平衡 FLASH 文件系统
  • 支持基于 SPI 的 FLASH 设备7 G2 @8 y" |5 l6 M* Q, F
10  USB 支持10.1  USB 主机支持
  • USB 主机控制器驱动和设备依赖的 USB 类驱动的 USB 主机架构
  • 可用于 NXP LPC17xx 的 USB 主机控制器驱动
  • 可用于 USB 大容量存储设备和 HID 键盘的设备依赖的 USB 类驱动0 e# I7 f( I- d+ n+ k* e. `
10.2  USB 设备支持
  • USB 设备控制器驱动和设备依赖的 USB 类驱动的类 Gadget 架构
  • 可用于 PIC32、 NXP LPC17xx、 LPC214x、 LPC313x、 LPC43xx、 STMicro STM32F1x、 STM32F2x、 STM32F4x 和 TI DM320 的 USB 设备控制器驱动
  • 可用于 USB 串口和 USB 大容量存储设备的设备依赖的 USB 类驱动
  • 内建用于 USB 调试的 USB 追踪功能' T+ T  I1 L& n
11  图形支持
  • 帧缓冲驱动
  • 并行端口和 SPI 端口的 LCD 和OLED 的图形 LCD 驱动
  • 段式 LCD 驱动
  • NX Graphics 子系统:一个图形库、窗口化系统和字体支持,工作于帧缓冲或 LCD 驱动
  • NuttX Widgets:用保守的 C++ 编写的图形用户界面,集成于 NX Graphics
  • NuttX 窗口管理器:一个微型窗口管理器,基于 NX Graphics 子系统和 NuttX Widgets
    $ r; [& O5 r( q  @: K$ P
12  插件12.1  NuttShell
  • 一个用于 NuttX 的、小型的、可扩展的、类 bash 的 shell,具有丰富的特征集和小型封装。  e4 C$ R4 j( H" O
12.2  Pascal 运行时
3 L! {( \2 j8 B3 m. l% ~2 ~8 [

0 M7 `  w5 j4 N- l官方网站:http://www.nuttx.org
7 O3 w/ r* b) W# ZWiki:http://www.nuttx.org/doku.php?id=wiki7 [) j. Q4 l" Q& b
下载:http://sourceforge.net/projects/nuttx# U, {' G% r! B9 u

nuttx-git.part01.rar

下载

9 MB, 下载次数: 244

nuttx-git.part02.rar

下载

9 MB, 下载次数: 177

nuttx-git.part03.rar

下载

9 MB, 下载次数: 182

nuttx-git.part04.rar

下载

9 MB, 下载次数: 169

nuttx-git.part05.rar

下载

9 MB, 下载次数: 173

nuttx-git.part06.rar

下载

9 MB, 下载次数: 173

nuttx-git.part07.rar

下载

9 MB, 下载次数: 181

nuttx-git.part08.rar

下载

9 MB, 下载次数: 152

nuttx-git.part09.rar

下载

3.54 MB, 下载次数: 169

收藏 3 评论16 发布时间:2015-1-10 23:13

举报

16个回答
lllzf 回答时间:2017-4-17 15:08:13
chenming5828 发表于 2015-4-25 14:58
% e; @8 ~3 V# `2 Q7 J& f. Y已经成功用过nuttx开发了

7 v5 c# J2 h+ @. q8 Y  z+ X; s您好,由于公司打算基于PIXHAWK开发自己的飞控,所以要用到NUTTX操作系统,可是这个操作系统国内的资料很少啊,您是我第一个见多用过的人,希望能给个指导,求加微信号leazfly,指导一下啊
kylongmu 回答时间:2018-1-12 17:51:59
感觉nuttx还是很费劲,除非是针对MCU做好了BSP包,否则自己每个模块去移植调试花费的精力不划算。功能复杂些的工程还不如用嵌入式linux。FreeRTOS可以无障碍就在STM32上跑起来了,除非ST官方支持nuttx。
末未本 回答时间:2015-1-11 09:44:42
qrsgcslqg 发表于 2015-1-11 09:07/ b# ?  c; |- R* l6 y2 F
顶一个,有空学习一下
) N( E! [: g$ K
现在NUTTX相关的资料很少
qrsgcslqg 回答时间:2015-1-11 09:07:45
顶一个,有空学习一下
qrsgcslqg 回答时间:2015-1-11 10:19:51
先大概了解下,短时间还用不了
_ilikerome_ 回答时间:2015-2-6 08:06:38
都没听过,有点小众啊,不知道相对其他的优势是什么,LZ介绍下啊。
chenming5828 回答时间:2015-4-25 14:58:25
已经成功用过nuttx开发了
cxtarm 回答时间:2015-4-26 09:27:06
新系统吗
stary666 回答时间:2015-4-26 11:56:32
有机会学习一下
hbzjt2012 回答时间:2015-4-29 07:23:57
可选择的太多了,大家还是比较热衷三大主流,有空可以学习一下
天天晓宇 回答时间:2015-4-29 08:38:19
有移植手册么
wu1169668869 回答时间:2015-4-29 10:29:25
收藏一下,看起来很强大 8.gif
stary666 回答时间:2015-5-1 17:26:49
有时间看看
yzj7604 回答时间:2018-3-3 23:52:36
学习了.谢谢共享.
12下一页

所属标签

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版