Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Nucleus RTOS
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
==Major components== Nucleus RTOS components include: # [[Kernel (operating system)|Kernel]] # Services # Connectivity # [[File system]] # [[Computer network|Networking]] # IoT Framework # [[Wireless]] # Security # UI & graphics === Kernel === * Real-time kernel with priority based pre-emptive scheduling * Support for dynamic linking using loadable modules * Interfaces for [[C++]], ''Portable Operating System Interface'' ([[POSIX]]), and ''The Real-time Operating system Nucleus'' ([[TRON project|TRON]]) [[ITRON project|microITRON]] * SMP/AMP, supervised and unsupervised * SMP support and runtime control for bound computation domain and affinities to processor cores for tasks and interrupts * Support for 64-bit architectures * Scalable to fit memory constrained devices * Built-in power management framework * [[Source code]] for all components === Services === * Run-level initialization and registry * POSIX: kernel, networking, and file system * Shell and tracing * Debug agent * C++ * Power management services === Connectivity === Nucleus supports the ability to connect to other devices through various interfaces including: * [[USB]] 2.0 and 3.0 * USB Host, Function, and [[USB On-The-Go|On-The-Go]] (OTG) stacks * [[Bluetooth]] with many advanced profiles enabled ([[A2DP]], [[AVRCP]], [[Bluetooth profile#Hands-Free Profile .28HFP.29|HFP]], [[Bluetooth profile#Headset Profile .28HSP.29|HSP]], etc.) * [[Peripheral Component Interconnect]] (PCI), [[PCI-X]] and PCIe * [[Controller Area Network]] (CAN) and [[CANopen]] * [[Secure Digital]] (SDIO) * SPI, QSPI * Inter-Integrated Circuit ([[IΒ²C]]) === File system === Unlike Windows and Unix-like operating systems, Nucleus does not need a [[file system]] to work. However, for complex uses needing local storage, Nucleus supports several file systems including FAT, SAFE (fault tolerant), and LWEXT. ==== Multiple simultaneous file systems ==== * File Allocation Table ([[File Allocation Table|FAT]]) * SAFE (high reliability power fail safe) * LWEXT * Install-able third-party file systems ==== Multiple media support ==== * CD-ROM * Hard drive * RAM disk * NOR and NAND flash * USB drive * SD MMC Nucleus provides support for different file systems and storage media through a virtual file system [[application programming interface]] (API) that allows access to the supported file systems and storage devices using the same functions calls regardless of the underlying storage format. === Networking === The Nucleus networking stack is a dual IPv4 and IPv6 stack that supports over 60 networking protocols. Nucleus networking stack supports POSIX and provides an easy to use socket based application interface. A brief list of the supported protocols include: * [[Internet protocol suite]] (UDP, TCP/IP) * [[Internet Control Message Protocol]] (ICMP), [[Dynamic Host Configuration Protocol]] (DHCP), [[network address translation]] (NAT) * [[Point-to-Point Protocol]] (PPP) and [[Point-to-Point Protocol over Ethernet]] (PPPoE) * [[File Transfer Protocol]] (FTP), [[Telnet]], [[Secure Shell]] (SSH) * [[Simple Network Management Protocol]] (SNMP), [[Network Time Protocol]] (NTP) * [[Hypertext Transfer Protocol]] (HTTP) and [[HTTPS]] * [[JSON]]-[[XML]], [[WebSocket]]s === Security === Nucleus supports a wide variety of encryption options for secure communications to protect data at rest or in transit. Nucleus ships with OpenSSL and an OpenSSL-like package [[wolfSSL]] (formerly CyaSSL) that is far smaller than OpenSSL for designs needing encryption but limited in memory capacity.<ref>{{Cite web|url=https://www.wolfssl.com/docs/wolfssl-manual/ch5/|title=wolfSSL User Manual β Chapter 5: Portability β Documentation|language=en-US|access-date=2019-02-14}}</ref> Security protocols to protect data in transit include IPsec/IKE, SSH/SSL/TLS/DTLS. Encryption includes DES, 3DES, AES, SHA-256. [[Public-key cryptography]] algorithms include RSA. Support includes X.509, RADIUS, and 802.1X. === Wireless === Several [[Wi-Fi]] modules from different chip-makers like QCA, Broadcom, TI, and CSR are supported: * [[IEEE 802.11]] a/b/g/n * [[IEEE 802.15.4]] * Bluetooth, Bluetooth LE === UI graphics === Nucleus 3.x supports [[OpenGL]] and leading 3rd party UI libraries. Nucleus supports the [[Qt (software)|Qt]] UI framework which has been optimized for code size and integrated into CodeBench for debugging and tracing. Other UIs supported include [[Embedded Wizard]] and [[Socionext CGI Studio]]. === IoT === Recent releases of Nucleus include support for HTTPS, [[Constrained Application Protocol]] (CoAP), [[MQTT]] and [[6LoWPAN]]. Nucleus has also announced support for Microsoft Azure cloud computing framework. === Industrial === Nucleus has been integrated with 3rd party industrial stacks from industry leaders. Industrial stack support includes [[OPC Unified Architecture]] (OPC UA) host and client and [[EtherNet/IP]] from [https://industrial.softing.com/en/products/software.html Softing] {{Webarchive|url=https://web.archive.org/web/20170822133733/https://industrial.softing.com/en/products/software.html |date=2017-08-22 }} and [[EtherCAT]] from [https://koenig-pa.de/ KoenigPa]. === Multi-core === Nucleus supports [[asymmetric multiprocessing]] (AMP) mode and [[symmetric multiprocessing]] (SMP) mode for leading 32 and 64-bit heterogeneous multi-core SoCs. Nucleus is also capable of running as a GOS with Mentor Embedded Hypervisor. When operating in AMP mode, Nucleus RTOS can coexist with other instances of Nucleus, Linux, and/or [[bare machine]] (metal) programs distributed on the other processors. In this mode, each processor is running independently and behaves as a separate system within the SoC. Mentor Embedded Multicore Framework provides interprocess communication between operating systems on the various cores, and processor life cycle management. SMP operation entails having a instantiation of Nucleus RTOS manage multiple cores simultaneously. Nucleus can distribute its operations across all cores on a multi-core device, or any subset of cores. For this purpose Nucleus offers runtime API support for bound computation domain, and control tasks and interrupt affinities for core assignment. === Product packages === Nucleus RTOS is packaged as follows: * Nucleus ReadyStart Edition ReadyStart which includes the [[runtime system]], [[middleware]], BSP (all in source code) and the IDE, debugger, compiling tools, trace bundle in a single package. Nucleus Ready Start comes in versions packaged for ARM, MIPS and PPC. Nucleus ReadyStart adds specialized eclipse plugins to CodeBench to provide simplified build and configuration workflows and debugging enhancements including kernel awareness, loadable module support, tracing and profiling tools. * Nucleus Source Code Edition contains the runtime system and middleware packaged to support unique architectures and/or different tool chains === Safety certification=== Nucleus SafetyCert has been certified for the highest levels of safety for [[DO-178C]], [[IEC 61508]], [[IEC 62304]], and [[ISO 26262]].
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)