4.2. Az operációs rendszer fő feladatai
Az operációs rendszer egyik alapvető feladata a felhasználóval való kapcsolattartás. Az első, amivel a felhasználó találkozik, az operációs rendszer felhasználói felülete. Ez teszi lehetővé a felhasználó számára, hogy programokat indítson, illetve a programok optimális működéséhez különböző beállításokat tegyen. Ugyanaz az operációs rendszer több különböző architektúrájú gépen is futhat, sőt a különböző felhasználóknak különböző igényeik vannak. Van, aki játékok futtatására teszi alkalmassá a gépét, mások vektorgrafikus rajzoló, illetve tervezőprogramokat használnak.
A felhasználói felület tehát elfedi a felhasználó elől a hardver különbözőségét, és alkalmassá teszi a rendszert a felhasználói beavatkozásra. Erre az interaktív beavatkozásra nagy szükség van az optimális működés érdekében.
Az operációs rendszerek további feladatai (a teljesség igénye nélkül)
- Taszkok (futó alkalmazások) ütemezése, összehangolása
A folyamatok (processzek vagy taszkok) versengenek az erőforrások használatáért. Az operációs rendszer ütemezi és adminisztrálja az egyes erőforrásokat és a versengő folyamatokat. A teljes körű ellenőrzés az operációs rendszer kezében van: azt lehet, amit megenged (várakozás + sorbaállás + adminisztrálás = ütemezés).
- Erőforrások kezelése
A processzor és a memória optimális kihasználása.
- I/O műveletek megszervezése
Az input és output műveleteket csak az operációs rendszer hajthatja végre. Az alkalmazói programok kérelmet küldenek a processzor felé.
- Hibakezelés
- A helyes és optimális működés biztosítása
- Program- és adatvédelem biztosítása
Csak akkor lehet megvalósítani, ha van a CPU-nak normál és privilegizált (kizárólag az operációs rendszer feladatait hajtja végre) üzemmódja is. Célja: megakadályozni az illetéktelen hozzáféréseket (utasítások, memóriaterület kezelése), hibás programműködés kiszűrése (regiszterkezelés, megszakításkérelem stb.). Tehát fent említett hibák bekövetkezése ellen védeni kell a CPU-t, az operatív tárat, az I/O műveleteket és a megszakításokat.
- Megszakításkezelés
Bizonyos tevékenységeket csak az operációs rendszer végezhet el, alkalmazói program nem (be- és kiviteli műveletek lebonyolítása, hardvereszköz állapotváltozása, hibák kiszűrése, rendszeradminisztráció lebonyolítása, ütemezése, szinkronizálások, rendszerhívás).
- Monitoring
Felügyelő funkciók.
- Kapcsolattartás a felhasználókkal
Ez utóbbi a felhasználói felületen keresztül megy végbe, a következő feladatok elvégzésével:
o programindítás, kapcsolattartás a folyamatokkal;
o a rendszermag szolgáltatásainak közvetlen elérése;
o a rendszermag programozói felülete;
o alapvető segédprogramok biztosítása.