This document provides an introduction to real-time operating systems (RTOS). It defines an RTOS as an operating system designed to operate in constrained environments with limited memory and processing power, and often needs to provide services within a defined time period. The key components of an RTOS include its kernel, board support package (BSP), tasks, task control blocks, memory management, timers, and inter-process communication (IPC). RTOS kernels are either monolithic or microkernel in structure. BSPs make RTOSs specific to a target processor. Tasks are the basic units of execution and are scheduled deterministically.