Et operativsystem (OS) er programvare som administrerer og håndterer maskinvare- og programvareressursene til et datasystem. Det gir interaksjon mellom brukere av datamaskiner og maskinvare. Et operativsystem er ansvarlig for å administrere og kontrollere alle aktiviteter og deling av dataressurser. Et operativsystem er en programvare på lavt nivå som inkluderer alle grunnleggende funksjoner som prosessoradministrasjon, minneadministrasjon, feildeteksjon, etc.
Denne opplæringen i operativsystemet vil dekke alt det grunnleggende for å fremme operativsystemkonsepter som systemstruktur, CPU-planlegging, dødlås, fil- og diskadministrasjon og mange flere.
Nylige artikler om operativsystemer
- Grunnleggende
- Systemstruktur
- CPU-planlegging
- Prosesssynkronisering
- Dødlås
- Prosesser og tråder
- Minnehåndtering
- Fil- og diskbehandling
- Diverse
Grunnleggende:
- Introduksjon av operativsystem
- Typer operativsystemer
- Operativsystemets funksjoner
- Sanntidssystemer
- Oppgaver i sanntidssystemer
- Forskjellen mellom multitasking, multithreading og multiprosessering
- Typer datamaskinminne (RAM og ROM)
- Forskjellen mellom 32-biters og 64-biters operativsystemer
- Hva skjer når vi slår på datamaskinen?
- Boot Block
- UEFI (Unified Extensible Firmware Interface) og hvordan er det forskjellig fra BIOS
Systemstruktur:
- Mikrokjerne
- Kjerne I/O-delsystem (I/O-system)
- Monolitisk kjerne og viktige forskjeller fra mikrokjerne
- Introduksjon av System Call
- Hent/sett prosessressursgrenser i C
- Dual Mode-operasjoner i OS
- Privilegerte og ikke-privilegerte instruksjoner
CPU-planlegging:
- Prosess | (Innledning og forskjellige tilstander)
- Status i en prosess
- Prosesstabell og prosesskontrollblokk (PCB)
- Prosessplanlegger
- CPU-planlegging
- Forebyggende og ikke-forebyggende planlegging
- Måle tiden brukt i kontekstbytte?
- Forskjellen mellom dispatcher og planlegger
- FCFS-planlegging | Sett 1
- FCFS-planlegging | Sett 2
- Konvoieffekt i operativsystemer
- Beladys anomali
- Shortest Job First (eller SJF) planlegging | Sett 1 (Ikke-forebyggende)
- Program for Shortest Job First (SJF) planlegging | Sett 2 (forebyggende)
- Korteste jobb Første planlegging med antatt serietid
- Lengst gjenværende tid først (LRTF)-program
- Lengste gjenværende tid først (LRTF) algoritme
- Round Robin-planlegging
- Egoistisk Round Robin-planlegging
- Round Robin-planlegging med forskjellige ankomsttider
- Prioritetsplanlegging
- Program for Preemptive Priority CPU Scheduling
- Prioritetsplanlegging med annen ankomsttid – sett 2
- Sult og aldring i operativsystemer
- Planlegging for høyeste responsratio neste (HRRN).
- Køplanlegging på flere nivåer
- Planlegging av tilbakemeldingskø på flere nivåer
- Planlegging av lotteriprosess
- Planlegging med flere prosessorer
>> Quiz om CPU-planlegging
hvordan konvertere streng til char
Prosesssynkronisering:
- Prosesssynkronisering | Introduksjon
- Prosesssynkronisering | Sett 2
- Kritisk seksjon
- Interprosesskommunikasjon
- Interprosesskommunikasjon: Metoder
- IPC gjennom delt minne
- IPC ved hjelp av meldingskøer
- Meldingsbasert kommunikasjon i IPC (interprosesskommunikasjon)
- Kommunikasjon mellom to prosesser ved hjelp av signaler i C
- Semaforer i operativsystemet
- Mutex vs. Semafor
- Prosesssynkronisering | Skjermer
- Petersons algoritme for gjensidig ekskludering | Sett 1 (Grunnleggende C-implementering)
- Petersons algoritme for gjensidig ekskludering | Sett 2 (CPU-sykluser og minnegjerde)
- Petersons algoritme (bruke prosesser og delt minne)
- Dekker’s algorithm
- Bakeri algoritme
- Produsent Forbrukerproblem ved bruk av semaforer | Sett 1
- Spisefilosofproblem ved bruk av semaforer
- Dining-philosophers løsning ved hjelp av skjermer
- Leser-skribent-problem | Sett 1 (introduksjon og leserpreferanseløsning)
- Reader-Writers-løsning med skjermer
- Sovende Barber problem
- Lås variabel synkroniseringsmekanisme
- Mutex-lås for Linux-trådsynkronisering
- Prioritetsinversjon: Hva i helvete!
- Hva er forskjellen mellom prioritert inversjon og prioritert arv?
- Prosesssynkronisering
- Interprosesskommunikasjon: Metoder
>> Quiz om prosesshåndtering i OS
dødlås:
- Deadlock Introduksjon
- Deteksjon og gjenoppretting av dødlås
- Deadlock, Starvation og Livelock
- Deadlock forebygging og unngåelse
- Bankers algoritme
- Ressursallokeringsgraf (RAG)
- Metoder for ressursallokering til prosesser etter operativsystem
- Program for Bankers Algorithm
- Bankers algoritme: Skriv ut alle sikre tilstander (eller sikre sekvenser)
- Algoritme for deteksjon av dødlås
- Program for deadlock-fri tilstand i operativsystemet
- Deadlock-deteksjon i distribuerte systemer
- Teknikker som brukes i sentralisert tilnærming til deteksjon av dødlås i distribuerte systemer
>> Quiz om dødlås
Prosesser og tråder:
- Operativsystem | Tråd
- Tråder og dens typer
- Operativsystem | Tråd på brukernivå kontra kjernenivåtråd
- Prosessbasert og trådbasert multitasking
- Modeller med flere gjenger
- Fordeler med multithreading
- Zombieprosesser og deres forebygging
- Maksimalt antall zombieprosesser et system kan håndtere
- Operativsystem | Remote Procedure Call (RPC)
Minnehåndtering :
- Minnehierarkidesign og dets egenskaper
- Introduksjon til minne og minneenheter
- Ulike typer RAM (Random Access Memory)
- Buddy System: Minnetildelingsteknikk
- Minnehåndtering | Partisjonstildelingsmetode
- Fast (eller statisk) partisjonering i operativsystemet
- Variabel (eller dynamisk) partisjonering i operativsystem
- Ikke-sammenhengende tildeling i operativsystem
- Logisk vs fysisk adresse i operativsystemet
- Personsøking
- Krav til minnestyringssystem
- Minnehåndtering – kartlegge virtuell adresse til fysiske adresser
- Sidetabelloppføringer
- Virtuell hukommelse
- Memory Interleaving
- Spørsmål om virtuelt minne
- Operativsystembasert virtualisering
- Invertert sidetabell
- Bytt plass
- Håndtering av sidefeil
- Fast (eller statisk) partisjonering i operativsystemet
- Segmentering
- Minnesegmentering i 8086 mikroprosessor
- Program for Next Fit-algoritmen i minneadministrasjon
- Overlegg i minnebehandling
- Algoritmer for sideerstatning
- Program for sideerstatningsalgoritmer | Sett 1 (LRU)
- Program for optimal sideerstatningsalgoritme
- LFU (Last Frequently Used) Cache-implementering
- Retningslinjer for erstatning av en ny sjanse (eller klokke).
- Teknikker for å håndtere thrashing
- Tildeling av kjerneminne (kompissystem og platesystem)
- Program for venneminnetildelingsskjema i operativsystemer | Sett 1 (tildeling)
- Program for venneminnetildelingsskjema i operativsystemer | Sett 2 (deallokering)
- Statiske og dynamiske biblioteker | Sett 1
- Arbeide med delte biblioteker | Sett 1
- Arbeide med delte biblioteker | Sett 2
- Navngitt Pipe eller FIFO med eksempel C-program
- Spore minnebruk i Linux
>> Quiz om minnehåndtering
Diskbehandling:
- Filsystemer
- Unix filsystem
- Implementere Directory Management ved hjelp av Shell Script
- Filkatalog | Banenavn
- Strukturer i katalogen
- Filallokeringsmetoder
- Filtilgangsmetoder
- Sekundært minne
- Sekundært minne – Harddisk
- Diskplanleggingsalgoritmer
- Program for SSTF diskplanleggingsalgoritme
- Hva er egentlig Spooling handler om?
- Forskjellen mellom spooling og buffering
- Ledelse av ledig plass
>> Quiz om Input Output Systems
Diverse
- Introduksjon til UNIX-systemet
- Viktige Linux-kommandoer (leave, diff, cal, ncal, locate og ln)
- Prosesstilstander og overganger i en UNIX-prosess
- Introduksjon til Linux Shell og Shell Scripting
- 'crontab' i Linux med eksempler
- indepth og maxdepth i Linux find()-kommandoen for å begrense søket til en bestemt katalog.
Typer operativsystem
- Batch OS (f.eks. transaksjonsprosess, lønnssystem osv.)
- Multiprogrammert OS (f.eks. Windows, UNIX, macOS, etc.)
- Tidsdeling OS (f.eks. Multics, Linux, etc.)
- Sanntids OS (f.eks. PSOS, VRTX, etc.)
- Distribuert OS (f.eks. LOCUS, Solaris, osv.)
Operativsystemfunksjoner
- Minne- og prosessorstyring
- Nettverksadministrasjon
- Sikkerhetsstyring
- Filbehandling
- Feilgjenkjenning
- Jobbregnskap
Vanlige spørsmål om operativsystem
Q.1 Hvorfor lære operativsystemer?
Svar :
OS er den viktigste delen av en datamaskin. Gjennom OS kan brukere samhandle med dataprogramvare. Det gir et grensesnitt mellom maskinvare og CPU. Det gir også en plattform for programmet å kjøre på det og tjenester til brukere. Den utfører alle de grunnleggende oppgavene som kreves i en applikasjon.
Q.2 Skriv de 10 beste operativsystemeksemplene?
Svar :
java samling
Noen mest populære OS-eksempler er gitt nedenfor:
- Windows
- Linux
- Mac os
- Ios
- Android
- Ubuntu
- CentOS
- Solaris
- Chrome OS
- Fedora
Q.3 Hva er fordelene med et multiprosessorsystem?
Svar :
Et multiprosessorsystem innebærer behandling av to eller flere dataprogrammer samtidig som deler samme minneområde. Det øker påliteligheten.
Q.4 Hva er en tråd i OS?
Svar :
java hashsett
En tråd er en lett prosess eller underprogram som er en del av prosessen eller et program. En tråd har sine egne Register-, Stack-, State- og Programtellere.
Hurtigkoblinger :
- Last Minute Notes (LMNs) | Operativsystemer
- Vanlige spørsmål om operativsystemintervjuer
- 'Øvningsproblemer' på operativsystemer!