Az operációs rendszerek olyan programcsomagok, amelyek a számítógépek erőforrásainak optimális eloszlásáért, illetve a szoftverek futtatásáért felelősek. Az operációs rendszer az egyik legfontosabb része a számítógépek rendszereinek. A legtöbb szoftvernek, alkalmazásnak, programnak szüksége van egy operációs rendszerre a futáshoz. A számítógép különböző erőforrásai közé tartozik például a processzor, a memória, vagy a tárhely is. Az operációs rendszerek egyfajta közvetítőként működnek a szoftverek és ezen erőforrások között, igyekeznek az optimális elosztásra az éppen futó szoftverek között. Az operációs rendszerek minden egyes eszközön megtalálhatóak, amelyekben található valamilyen számítógép, így az asztali számítógépeken, mobiltelefonokon, játékkonzolokon, webszervereken és szuperszámítógépeken is.

Az operációs rendszereket könnyedén csoportosíthatjuk öt tulajdonság szerint.

  • Valós idejű operációs rendszerek

Ezeknek a rendszereknek a legfőbb célja, az alkalmazások valós idejű futtatása. Olyan algoritmusokat használnak, amelyekkel a leggyorsabban és a legkiszámíthatóbban reagálhatnak adott eseményekre. Általában eseményirányítású, vagy időbeosztó elv alapján készülnek el, de sokszor mind a kettő érvényesül a kialakításnál. Az eseményirányítású rendszer a feladatok prioritása, vagy valamilyen külső esemény hatására, míg az időbeosztó meghatározott időközönként osztja el az erőforrásokat. A valós idejű operációs rendszerekre jó példa a HDTV-k rendszere, hiszen bármilyen késés torzzá, pixelessé változtatná a képet, illetve zajossá a hangot.

  • Többfelhasználós operációs rendszerek

A többfelhasználós operációs rendszerek egyszerre több felhasználónak engednek hozzáférést a számítógéphez. Az időbeosztó rendszereket és a webszervereket is ide sorolhatjuk, hiszen az idő beosztásával több felhasználót engednek ugyanahhoz a számítógéphez. Az egyfelhasználós rendszerek csak egy felhasználót engednek, viszont többféle programot futtathatnak egy időben.

  • Multi-tasking, single-tasking

A multi-tasking operációs rendszerek az emberi érzékelés szintjén egyszerre több programot képesek futtatni. A single-tasking rendszer egyszerre csak egy programot futtat. A multi-tasking kétféle lehet, vagy preemptív vagy kooperatív. A preemptív multi-tasking rendszer a processzor működését apró időszeletekre bontja, és ezeket a szeleteket szétosztja a programok között. A kooperatív rendszereknél minden folyamat bizonyos időnként lemond a processzor használatáról, átengedve azt egy másiknak.

  • Elosztott rendszerek

Az elosztott operációs rendszerek több független számítógépet irányítanak úgy, hogy úgy tűnjenek, mintha egy számítógép lennének. A hálózatok fejlődése lehetővé tette, hogy a számítógépek egymással kommunikáljanak, össze legyenek kapcsolva, így jöhetett létre az elosztott rendszer. Ha a számítógépek egy folyamatban kooperálnak, akkor elosztott rendszert alkotnak.

  • Beágyazott rendszerek

A beágyazott rendszerek kompakt, takarékos, megbízható rendszerek. Olyan kis eszközök működtetésére hozták őket létre, mint például a PDA.

A mai számítógépek legelterjedtebb operációs rendszerei a következők: Android, iOS, Linux, OS X, Windows, Windows Phone. A Microsoft Windows kivételével mindegyik a multi-taskingot használó, több felhasználós UNIX operációs rendszeren alapul.