SlideShare a Scribd company logo
Linux For Embedded Systems
ForArabs
Ahmed ElArabawy
Course 101:
Introduction to Embedded Linux
Lecture 4:
A Tour in RTOS Land
PROPRIETARY RTOS’S
Windows CE
• Developed by Microsoft
• Has recently been replaced by Windows Embedded Compact
• Has the mix of the windows desktop and embedded devices
requirements
• Suitable for embedded devices that require also a good user
interface
• Medium to Large HW requirements:
• Footprint of OS around 200-350KB
• May run in under a 1MB of memory
• True RTOS, has a deterministic behavior
• Cost is around $3 per device license + Initial Cost for tools
Application Examples
Nucleus
• Developed by Mentor Graphics
• Portable to different devices (Microcontrollers and Micro -
Processors)
• Foot print as small as 2KB
• Support unique power management features
• Power/clock gating
• Deep sleep modes
• Cost is about
• $13K for the OS license per implementation
• $3K per seat for the tools
• Royalty free
Application Examples
• Very widely used
Threadx
• Developed by Express Logic, Inc. by the same the author of
Nucleus
• Small footprint ( can go as low as 2KB on Microcontrollers)
• True RTOS, Fast and deterministic behavior
• Fast boot time (This is very important for devices that can't
afford a long boot time)
• Flexible licensing models + Royalty free
Application Example
Hewlett-Packard use ThreadX in all of their printers,
• Inkjets
• LaserJets
• All-in-One
Application Example
Broadcom use ThreadX in a lot of its Chips for cell phones in
their communication processors
VxWorks
• Developed by Wind River Systems, 1987
• Legacy RTOS. Used to be the top OS for Embedded Platforms
• Not used recently for small system, but still considered by
heavy Institutions (such as Aerospace and Defense)
• Expensive licensing cost + Royalty cost
• Other OS’s with their latest development are catching up
Application Example
Application Example
FREE-OPEN SOURCE OS’S
Is Free Really Free ??
• Free for freedom and not for free drink
• Free means freedom to run, study, copy, modify, distribute
both the original code and the modified versions
• Free/Open source OS’s include:
• The OS itself (the kernel)
• Development tools: Compilers, Debuggers, toolchains, …
• Support libraries: C library, XML parsers, Security, command line
utilities
• Keep in mind the licensing risks (GPL, LGPL, … )
• Licensing terms
• Might mean you can not have a proprietary system
• Might mean you need to give up your source code
Advantages of Open Source OS
• Cost perspective
• Kernel, development tools, associated libraries and support tools,
applications, …
• Big community help and support
• Ability to understand and control details of operation
• Availability of online resources and documents
• Fast release cycles
• Ability to influence the future of the OS
Linux (www.kernel.org )
• Most popular Open Source OS
• Big Community Support
• Distributions
• Build your own distribution
• Redhat
• Suse
• Ubuntu
• And many others
• GPL v2.0 License
• Require 32bit processors with MMU
• Highly configurable, RAM and Storage requirements according to
configurations
• Not a real RTOS
• Sometimes used with patches to support hard real time embedded
applications (such as RTLinux)
uClinux (www.uclinux.org )
• Started as a port of Linux for systems with,
• Micro-controllers
• Processors without MMU
• Used for simple Embedded devices
• Now highly integrated with the Linux mainstream as a patch
• Used in several devices such as,
• DVD players
• Security cameras
• VoIP phones
• Scanners
eCos (http://ecos.sourceware.org )
• Suitable for smaller embedded systems
• Small footprint, with low requirement on resources
• Modified GPL License to give developer more rights to use it
without need to GPL his code
• One of the most popular open source RTOS in the world today
• Highly configurable (eCos stands for the "Embedded
Configurable Operating System")
• Support multi-tasking with priority-based real-time scheduler
• standards based APIs
• True RTOS, Highly deterministic behavior
• Highly portable to most of 32 bits processors
Application Example
Sony, Playstation 3 Gaming Console for WiFi support
Application Example
Samsung, latest LCD HDTVs (32-70 inch) to support multi-media
playback via USB2 from cameras, mp3 players and flash drives
Application Example
Eye-Fi Wireless SD Cards that use WiFi to transfer images
between camera and computer
Nuttx
• First released by Gregory Nutt in 2007 with BSD license
• True RTOS (deterministic)
• Small footprint
• Supports from simple 8 bit processors (such as Zilog Z80) to 32
bit processors (such as ARM-9, x86)
• Supports C & C++ development
• TCP/IP Stack and USB support
• Support multitasking with FIFO and round-robin scheduling
• Support pre-emption
• Highly configurable
• Supports Standard APIs such as ANSI and POSIX
• Used in MP-3 players, Auto-pilot, …
Application Example
http://Linux4EmbeddedSystems.com

More Related Content

PDF
Course 102: Lecture 20: Networking In Linux (Basic Concepts)
PDF
Course 101: Lecture 2: Introduction to Operating Systems
PDF
Course 101: Lecture 1: Introduction to Embedded Systems
PDF
Course 101: Lecture 5: Linux & GNU
PDF
Course 102: Lecture 26: FileSystems in Linux (Part 1)
PPTX
Unix Operating System
PDF
Course 102: Lecture 14: Users and Permissions
PPT
Windows V/S Linux OS - Comparison
Course 102: Lecture 20: Networking In Linux (Basic Concepts)
Course 101: Lecture 2: Introduction to Operating Systems
Course 101: Lecture 1: Introduction to Embedded Systems
Course 101: Lecture 5: Linux & GNU
Course 102: Lecture 26: FileSystems in Linux (Part 1)
Unix Operating System
Course 102: Lecture 14: Users and Permissions
Windows V/S Linux OS - Comparison

What's hot (20)

PPTX
Linux vs windows
ODP
What is Ubuntu - presentation
PPTX
UNIX Operating System
PPTX
Linux basic commands
PPTX
Linux
PPTX
Unix ppt
PPTX
Filepermissions in linux
PDF
Linux for embedded_systems
PPT
Basic Linux Internals
PPT
History of Linux
PDF
Course 102: Lecture 5: File Handling Internals
PDF
Advance linux presentation_0702011
PDF
U-Boot - An universal bootloader
PDF
Course 102: Lecture 4: Using Wild Cards
PDF
Linux Training For Beginners | Linux Administration Tutorial | Introduction T...
PPTX
Bootloaders (U-Boot)
PDF
Course 102: Lecture 10: Learning About the Shell
PPTX
LINUX DISTRIBUTIONS.pptx
PPTX
Linux file system
Linux vs windows
What is Ubuntu - presentation
UNIX Operating System
Linux basic commands
Linux
Unix ppt
Filepermissions in linux
Linux for embedded_systems
Basic Linux Internals
History of Linux
Course 102: Lecture 5: File Handling Internals
Advance linux presentation_0702011
U-Boot - An universal bootloader
Course 102: Lecture 4: Using Wild Cards
Linux Training For Beginners | Linux Administration Tutorial | Introduction T...
Bootloaders (U-Boot)
Course 102: Lecture 10: Learning About the Shell
LINUX DISTRIBUTIONS.pptx
Linux file system
Ad

Viewers also liked (20)

PDF
Course 102: Lecture 7: Simple Utilities
PDF
Course 101: Lecture 6: Installing Ubuntu
PDF
Course 102: Lecture 3: Basic Concepts And Commands
PDF
Course 102: Lecture 6: Seeking Help
PDF
Course 102: Lecture 2: Unwrapping Linux
PDF
Course 102: Lecture 1: Course Overview
PDF
Course 102: Lecture 9: Input Output Internals
PDF
Course 102: Lecture 8: Composite Commands
PDF
Course 102: Lecture 12: Basic Text Handling
PDF
Course 102: Lecture 11: Environment Variables
PDF
Course 102: Lecture 13: Regular Expressions
PDF
Embedded Systems: Lecture 6: Linux & GNU
PDF
Embedded Systems: Lecture 8: The Raspberry Pi as a Linux Box
PDF
Embedded Systems: Lecture 5: A Tour in RTOS Land
PDF
Embedded Systems: Lecture 8: Lab 1: Building a Raspberry Pi Based WiFi AP
PDF
Embedded Systems: Lecture 4: Selecting the Proper RTOS
PDF
Embedded Systems: Lecture 10: Introduction to Git & GitHub (Part 1)
PDF
Embedded Systems: Lecture 12: Introduction to Git & GitHub (Part 3)
PDF
Embedded Systems: Lecture 7: Lab 1: Preparing the Raspberry Pi
PDF
Embedded Systems: Lecture 2: Introduction to Embedded Systems
Course 102: Lecture 7: Simple Utilities
Course 101: Lecture 6: Installing Ubuntu
Course 102: Lecture 3: Basic Concepts And Commands
Course 102: Lecture 6: Seeking Help
Course 102: Lecture 2: Unwrapping Linux
Course 102: Lecture 1: Course Overview
Course 102: Lecture 9: Input Output Internals
Course 102: Lecture 8: Composite Commands
Course 102: Lecture 12: Basic Text Handling
Course 102: Lecture 11: Environment Variables
Course 102: Lecture 13: Regular Expressions
Embedded Systems: Lecture 6: Linux & GNU
Embedded Systems: Lecture 8: The Raspberry Pi as a Linux Box
Embedded Systems: Lecture 5: A Tour in RTOS Land
Embedded Systems: Lecture 8: Lab 1: Building a Raspberry Pi Based WiFi AP
Embedded Systems: Lecture 4: Selecting the Proper RTOS
Embedded Systems: Lecture 10: Introduction to Git & GitHub (Part 1)
Embedded Systems: Lecture 12: Introduction to Git & GitHub (Part 3)
Embedded Systems: Lecture 7: Lab 1: Preparing the Raspberry Pi
Embedded Systems: Lecture 2: Introduction to Embedded Systems
Ad

Similar to Course 101: Lecture 4: A Tour in RTOS Land (20)

PDF
Introduction to FreeRTOS
 
PPT
PPT
Embedded Linux Talk Uni Forum
ODP
ERTS 2008 - Using Linux for industrial projects
PDF
Linux-Internals-and-Networking
PDF
Embedded Os [Linux & Co.]
PDF
From Silicon to Software - IIT Madras
PPT
UNIT V PPT.ppt
PDF
Using open source software to build an industrial grade embedded linux platfo...
ODP
Advancement on embedded linux-v2
PDF
Embedded Operating Systems lecture notes
PDF
Dedicated embedded linux af Esben Haabendal, Prevas A/S
PDF
Is Android the New King of Embedded OSes at Embedded World 2014
PDF
Tracing the evolution - Open source & Embedded systems
PDF
embedded-linux-120203.pdf
PPT
OSOS SEM 4 Chapter 2 part 1
PDF
Android Hacks, Variants, Tricks and Resources ESC SV 2012
PDF
Embedded Operating System - Linux
PDF
linux_internals_2.3 (1).pdf àaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
Introduction to FreeRTOS
 
Embedded Linux Talk Uni Forum
ERTS 2008 - Using Linux for industrial projects
Linux-Internals-and-Networking
Embedded Os [Linux & Co.]
From Silicon to Software - IIT Madras
UNIT V PPT.ppt
Using open source software to build an industrial grade embedded linux platfo...
Advancement on embedded linux-v2
Embedded Operating Systems lecture notes
Dedicated embedded linux af Esben Haabendal, Prevas A/S
Is Android the New King of Embedded OSes at Embedded World 2014
Tracing the evolution - Open source & Embedded systems
embedded-linux-120203.pdf
OSOS SEM 4 Chapter 2 part 1
Android Hacks, Variants, Tricks and Resources ESC SV 2012
Embedded Operating System - Linux
linux_internals_2.3 (1).pdf àaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

More from Ahmed El-Arabawy (10)

PDF
C 102 lec_29_what_s_next
PDF
Course 102: Lecture 28: Virtual FileSystems
PDF
Course 102: Lecture 27: FileSystems in Linux (Part 2)
PDF
Course 102: Lecture 25: Devices and Device Drivers
PDF
Course 102: Lecture 24: Archiving and Compression of Files
PDF
Course 102: Lecture 22: Package Management
PDF
Course 102: Lecture 19: Using Signals
PDF
Course 102: Lecture 18: Process Life Cycle
PDF
Course 102: Lecture 17: Process Monitoring
PDF
Course 102: Lecture 16: Process Management (Part 2)
C 102 lec_29_what_s_next
Course 102: Lecture 28: Virtual FileSystems
Course 102: Lecture 27: FileSystems in Linux (Part 2)
Course 102: Lecture 25: Devices and Device Drivers
Course 102: Lecture 24: Archiving and Compression of Files
Course 102: Lecture 22: Package Management
Course 102: Lecture 19: Using Signals
Course 102: Lecture 18: Process Life Cycle
Course 102: Lecture 17: Process Monitoring
Course 102: Lecture 16: Process Management (Part 2)

Recently uploaded (20)

PDF
Machine learning based COVID-19 study performance prediction
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
Electronic commerce courselecture one. Pdf
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PPTX
A Presentation on Artificial Intelligence
PDF
Modernizing your data center with Dell and AMD
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Machine learning based COVID-19 study performance prediction
The AUB Centre for AI in Media Proposal.docx
Electronic commerce courselecture one. Pdf
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Network Security Unit 5.pdf for BCA BBA.
Mobile App Security Testing_ A Comprehensive Guide.pdf
20250228 LYD VKU AI Blended-Learning.pptx
A Presentation on Artificial Intelligence
Modernizing your data center with Dell and AMD
MYSQL Presentation for SQL database connectivity
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
CIFDAQ's Market Insight: SEC Turns Pro Crypto
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Unlocking AI with Model Context Protocol (MCP)
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
“AI and Expert System Decision Support & Business Intelligence Systems”
Spectral efficient network and resource selection model in 5G networks
Reach Out and Touch Someone: Haptics and Empathic Computing
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy

Course 101: Lecture 4: A Tour in RTOS Land

  • 1. Linux For Embedded Systems ForArabs Ahmed ElArabawy Course 101: Introduction to Embedded Linux
  • 2. Lecture 4: A Tour in RTOS Land
  • 4. Windows CE • Developed by Microsoft • Has recently been replaced by Windows Embedded Compact • Has the mix of the windows desktop and embedded devices requirements • Suitable for embedded devices that require also a good user interface • Medium to Large HW requirements: • Footprint of OS around 200-350KB • May run in under a 1MB of memory • True RTOS, has a deterministic behavior • Cost is around $3 per device license + Initial Cost for tools
  • 6. Nucleus • Developed by Mentor Graphics • Portable to different devices (Microcontrollers and Micro - Processors) • Foot print as small as 2KB • Support unique power management features • Power/clock gating • Deep sleep modes • Cost is about • $13K for the OS license per implementation • $3K per seat for the tools • Royalty free
  • 8. Threadx • Developed by Express Logic, Inc. by the same the author of Nucleus • Small footprint ( can go as low as 2KB on Microcontrollers) • True RTOS, Fast and deterministic behavior • Fast boot time (This is very important for devices that can't afford a long boot time) • Flexible licensing models + Royalty free
  • 9. Application Example Hewlett-Packard use ThreadX in all of their printers, • Inkjets • LaserJets • All-in-One
  • 10. Application Example Broadcom use ThreadX in a lot of its Chips for cell phones in their communication processors
  • 11. VxWorks • Developed by Wind River Systems, 1987 • Legacy RTOS. Used to be the top OS for Embedded Platforms • Not used recently for small system, but still considered by heavy Institutions (such as Aerospace and Defense) • Expensive licensing cost + Royalty cost • Other OS’s with their latest development are catching up
  • 15. Is Free Really Free ?? • Free for freedom and not for free drink • Free means freedom to run, study, copy, modify, distribute both the original code and the modified versions • Free/Open source OS’s include: • The OS itself (the kernel) • Development tools: Compilers, Debuggers, toolchains, … • Support libraries: C library, XML parsers, Security, command line utilities • Keep in mind the licensing risks (GPL, LGPL, … ) • Licensing terms • Might mean you can not have a proprietary system • Might mean you need to give up your source code
  • 16. Advantages of Open Source OS • Cost perspective • Kernel, development tools, associated libraries and support tools, applications, … • Big community help and support • Ability to understand and control details of operation • Availability of online resources and documents • Fast release cycles • Ability to influence the future of the OS
  • 17. Linux (www.kernel.org ) • Most popular Open Source OS • Big Community Support • Distributions • Build your own distribution • Redhat • Suse • Ubuntu • And many others • GPL v2.0 License • Require 32bit processors with MMU • Highly configurable, RAM and Storage requirements according to configurations • Not a real RTOS • Sometimes used with patches to support hard real time embedded applications (such as RTLinux)
  • 18. uClinux (www.uclinux.org ) • Started as a port of Linux for systems with, • Micro-controllers • Processors without MMU • Used for simple Embedded devices • Now highly integrated with the Linux mainstream as a patch • Used in several devices such as, • DVD players • Security cameras • VoIP phones • Scanners
  • 19. eCos (http://ecos.sourceware.org ) • Suitable for smaller embedded systems • Small footprint, with low requirement on resources • Modified GPL License to give developer more rights to use it without need to GPL his code • One of the most popular open source RTOS in the world today • Highly configurable (eCos stands for the "Embedded Configurable Operating System") • Support multi-tasking with priority-based real-time scheduler • standards based APIs • True RTOS, Highly deterministic behavior • Highly portable to most of 32 bits processors
  • 20. Application Example Sony, Playstation 3 Gaming Console for WiFi support
  • 21. Application Example Samsung, latest LCD HDTVs (32-70 inch) to support multi-media playback via USB2 from cameras, mp3 players and flash drives
  • 22. Application Example Eye-Fi Wireless SD Cards that use WiFi to transfer images between camera and computer
  • 23. Nuttx • First released by Gregory Nutt in 2007 with BSD license • True RTOS (deterministic) • Small footprint • Supports from simple 8 bit processors (such as Zilog Z80) to 32 bit processors (such as ARM-9, x86) • Supports C & C++ development • TCP/IP Stack and USB support • Support multitasking with FIFO and round-robin scheduling • Support pre-emption • Highly configurable • Supports Standard APIs such as ANSI and POSIX • Used in MP-3 players, Auto-pilot, …