Ett operativsystem är den grundläggande programvaran som styr och koordinerar datorns hårdvara och resurser samt tillhandahåller en plattform för att köra applikationer. Det fungerar som ett gränssnitt mellan användaren, applikationerna och datorns hårdvara, och säkerställer att alla komponenter samarbetar effektivt och smidigt.
Operativsystemet hanterar hårdvaran genom små program kallade drivrutiner. Drivrutiner fungerar som länken mellan operativsystemet och en specifik maskinvarukomponent. När ny maskinvara installeras, som en skrivare eller grafikkort, måste en kompatibel drivrutin installeras för att maskinvaran ska kunna fungera korrekt. Utöver drivrutiner använder vi applikationer, som exempelvis Microsoft Word, för att utföra olika uppgifter. Men varken drivrutiner eller applikationer kan ensamma hantera datorns resurser på ett effektivt sätt; det är här operativsystemet spelar en avgörande roll. Det fördelar CPU-tid, minnesanvändning och tillgång till andra systemresurser mellan de olika programmen och hårdvarukomponenterna, vilket gör att datorn kan fungera på ett stabilt och optimerat sätt.
Operativsystemet ansvarar för viktiga funktioner som:
- Resurshantering: Hanterar datorns minne, processorer, lagringsutrymme och andra resurser.
- Filhantering: Organiserar och kontrollerar datafiler på datorns lagringsenheter.
- Enhetshantering: Styr och kommunicerar med externa enheter som skrivare, skannrar och andra anslutna enheter.
- Användargränssnitt: Ger användare ett sätt att interagera med datorn, antingen via kommandoradsgränssnitt (CLI) eller grafiskt användargränssnitt (GUI).
Exempel på populära operativsystem inkluderar Windows, macOS, Linux och Android.
Hardware Abstraction Layer – HAL
Operativsystemet har en central roll i att hantera kommunikationen mellan datorn och dess kringutrustning, som skrivare, bildskärmar och andra externa enheter. För att möjliggöra denna kommunikation använder operativsystemet drivrutiner, små program som fungerar som översättare mellan hårdvara och mjukvara. I moderna operativsystem är drivrutiner för många vanliga enheter ofta inbyggda. Vid anslutning av ny hårdvara kan operativsystemet automatiskt ladda ner och installera nödvändiga drivrutiner via internet, vilket underlättar installationen. Till exempel har Windows ett särskilt uppdateringssystem som automatiserar uppdateringar av både systemet och drivrutiner.
När mjukvara styr olika enheter enligt sina egna arbetsmetoder kan det ibland vara komplicerat att utföra specifika instruktioner för varje program och enhet. För att förenkla denna process använder operativsystemet en komponent som kallas Hardware Abstraction Layer (HAL). HAL fungerar som en mellanhand som abstraherar den fysiska hårdvaran, vilket innebär att applikationer kan kommunicera med hårdvaran utan att behöva känna till dess exakta tekniska detaljer. Detta gör det möjligt för mjukvaror att köras smidigt oavsett variationer i underliggande hårdvara.
Med andra ord fungerar HAL (Hardware Abstraction Layer) som ett virtuellt lager mellan datorns hårdvara och mjukvara, vilket möjliggör kompatibilitet mellan olika typer av enheter och program. Applikationer som körs i användarläge använder HAL för att få åtkomst till datorns hårdvara, som i sin tur hanteras i kärnläge. En av de största fördelarna med HAL är att operativsystemet inte behöver specifika drivrutiner för varje enskild hårdvaruenhet. Istället kan generiska drivrutiner användas, vilket gör att flera typer av liknande hårdvara kan hanteras med samma drivrutiner. Detta förenklar både utvecklingen och underhållet av operativsystemet samt förbättrar kompatibiliteten med en bred uppsättning enheter.