Skip to main content

RTOS-Operating System for Embedded Devices

 

If hardware is the body...

Then software is the brain controlling the tasks and operations behind the scenes. It provides memory management, task allotment, priority scheduling etc. Operating system or OS is mainly divided into two main categories Real Time Operating Systems (RTOS) or General-Purpose Operating Systems (GPOS). The classification is based on how they allocate resources

The difference

GPOS is used in desktop, laptops, tablets or smart phones where the processor performs several tasks at once. Here deadline for a given process is not important, and small delays are overstepped.

RTOS is used in embedded systems such as medical equipment, flight avionics etc where one task is processed at any given time. Here deadline needs to be met without compromise, and data inputs are computed in real time.

GPOS are usually used in microprocessors which have high computation power and voltage requirements. Examples include Intel x86/64 and AMD Ryzen chips

RTOS are used in microcontrollers which are reverse of the same, with low computational power and lower voltage requirements. Examples are ESP32, Atmel chipsets

In depth

RTOS has several features which are detailed below.

  • Priority based execution is the hallmark of this system. Each task is processed based on the importance assigned. When two tasks compete for execution, the higher priority is given preference, and lower one is kept on hold. The priority level can be changed by developer input.
  • Interrupts when a task needs to be processed, it raises an interrupt. The processor then checks the request, and services it. This is known as an interrupt service routine. Again, higher priority is processed first, followed by the lesser one 
  • Memory is stored in the form of stacks and heaps. Stacks are used to store local variable and functions. They are constantly monitored to prevent overflows. Heaps are used to store variables or objects, during runtime.
  • Scheduler is used to assign priorities to various tasks, provide time limit on when to start and stop an operation. Preemptive scheduling is a process by which a high priority task is allowed to continue till completion, unobstructed.
  • Symmetric multiprocessing is used when multiple processors are given access to the same resources, typically memory. This helps to split task between them, allowing for load balancing and reduced latency
  • Fast dispatch latency is the rate at which a processor can switch between tasks. Higher this ratio, better the processing power and reduced delay.

Types
  • Hard RTOS here deadlines need to met by precision, and any delay could result in an error generation. Examples include avionic systems, radar control.
  • Firm RTOS here also deadlines are crucial, but occasional miss is allowed. Examples include factory equipment, robotics.
  • Soft RTOS delays are completely overlooked, and more focus is given to accuracy and user interaction. Examples include smart phones, tablets 
 Additional Information

Comments

Popular posts from this blog

X86 vs ARM - The PC War

X86 Vs ARM A Hype?  Recently laptops powered by ARM processors have taken industry by storm. Touted as being highly power efficient, providing 18 hours backup, on as single charge. That too while running multiple program instances. Would this spell an end to the x86 architecture, where Intel and AMD rule. Or will the tables turn around? What's the Difference? Let's start with an x86 based CPU. They feature a single processing unit which can be integrated to other external peripherals like Memory, GPU etc. Here each peripheral has a separate controller, knitted together by address and data BUS. When we look at ARM all the above components (Memory, GPU) are integrated within the main chip. Known commonly as SOC (System on a Chip) . This helps in reduced footprint. But they do come with a drawback. Cannot expand by adding extra peripherals. Coming to complexity, x86 provides a simpler set up, at least for a developer. Here most of the core tasks such as Memory Read/Write, Arithmet...

The Brain within an Embedded System-Difference between Microprocessors and Microcontrollers

To understand the working of an Integrated Circuit, we need to first understand what an Embedded System is.  It is basically a conjunction of Hardware and Software parts. Embedded System is a stripped-down version of a mainstream computer, specializing in a single task. They are connected either as a standalone device, or as part of a larger electrical or mechanical system. Mainly in consumer electronics like fridges or microwaves, they have low power rating and, is economical to build. Embedded system performs complex mathematical calculations at any specific time. This is done thru a Central Processing Unit (CPU) , mostly a Microcontroller or at times, a Microprocessor. A Sensor is used to collect data from the external environment Eg: Temperature, atmospheric pressure etc. This is then fed into an Analog to Digital (ADC) converter. The digital signal thus obtained is stored in memory and, decoded by the CPU.  The output of the operation is then fed to a Digital to Analog...

Virtual Private Network (VPN) - Browsing Anonymous

  Privacy is a major concern when browsing the internet. Your data could be eavesdropped by hackers, companies targeting ads or even rogue state actors. What gets revealed would be personal browsing history, location monitoring, IP addresses to name a few. Enter the tech... Virtual Private Network or simply known as VPN is a technology used to prevent unauthorized access of your private data. Even if a hacker penetrates the network and get hold of data packets, all that is revealed is gibberish.  This is because all the information that passes through your device is encrypted and can be only revealed through a personal key.  Internet Service Provider Before going further, a knowledge of Internet Service Provider (ISP) is needed. They are the backbone of the World Wide Web. ISP provides each device with a unique IP (Internet Protocol) address, bandwidth allocation and network security. When a website is searched, first it goes from your device to the Router or Modem which...