logo

Handledning för operativsystem

Ett operativsystem (OS) är programvara som hanterar och hanterar hård- och mjukvaruresurserna i ett datorsystem. Det ger interaktion mellan användare av datorer och datorhårdvara. Ett operativsystem ansvarar för att hantera och kontrollera alla aktiviteter och delning av datorresurser. Ett operativsystem är en lågnivåprogramvara som innehåller alla grundläggande funktioner som processorhantering, minneshantering, feldetektering, etc.

Denna handledning för operativsystem kommer att täcka alla grundläggande för att avancera operativsystemkoncept som systemstruktur, CPU-schemaläggning, dödläge, fil- och diskhantering och många fler.

Senaste artiklar om operativsystem

  • Grunderna
  • Systemstruktur
  • CPU-schemaläggning
  • Processsynkronisering
  • Dödläge
  • Processer & trådar
  • Minneshantering
  • Fil- och diskhantering
  • Övrigt

Grunderna:

  1. Introduktion av operativsystem
  2. Typer av operativsystem
  3. Operativsystemets funktioner
  4. Realtidssystem
  5. Uppgifter i realtidssystem
  6. Skillnaden mellan multitasking, multithreading och multiprocessing
  7. Typer av datorminne (RAM och ROM)
  8. Skillnaden mellan 32-bitars och 64-bitars operativsystem
  9. Vad händer när vi sätter på datorn?
  10. Boot Block
  11. UEFI (Unified Extensible Firmware Interface) och hur skiljer det sig från BIOS

Systemstruktur:

  1. Mikrokärna
  2. Kernel I/O Subsystem (I/O System)
  3. Monolitisk kärna och viktiga skillnader från Microkernel
  4. Introduktion av systemanrop
  5. Hämta/ställ in processresursgränser i C
  6. Dual Mode-operationer i OS
  7. Privilegerade och icke-privilegierade instruktioner

CPU-schemaläggning:

  1. Process | (Introduktion och olika tillstånd)
  2. Tillstånd i en process
  3. Processtabell och processkontrollblock (PCB)
  4. Processschemaläggare
  5. CPU-schemaläggning
  6. Förebyggande och icke-förebyggande schemaläggning
  7. Mäta tiden som spenderas i kontextväxling?
  8. Skillnad mellan dispatcher och schemaläggare
  9. FCFS-schemaläggning | Set 1
  10. FCFS-schemaläggning | Set 2
  11. Konvojeffekt i operativsystem
  12. Beladys anomali
  13. Kortaste jobb först (eller SJF) schemaläggning | Uppsättning 1 (ej förebyggande)
  14. Program för kortaste jobb först (SJF) schemaläggning | Set 2 (förebyggande)
  15. Kortaste jobb Första schemaläggning med förutspådd serietid
  16. Program för längsta återstående tid först (LRTF).
  17. Längsta återstående tid först (LRTF) algoritm
  18. Round Robin schemaläggning
  19. Självisk Round Robin-schemaläggning
  20. Round Robin Schemaläggning med olika ankomsttider
  21. Prioritetsschemaläggning
  22. Program för Preemptive Priority CPU Scheduling
  23. Prioritetsschemaläggning med annan ankomsttid – Set 2
  24. Svält och åldrande i operativsystem
  25. Schemaläggning för högsta svarskvot nästa (HRRN).
  26. Schemaläggning av köer på flera nivåer
  27. Schemaläggning av feedbackkö på flera nivåer
  28. Schemaläggning av lotteriprocess
  29. Schemaläggning för flera processorer

>> Frågesport om CPU-schemaläggning



giltiga identifierare i java

Processsynkronisering:

  1. Processsynkronisering | Introduktion
  2. Processsynkronisering | Set 2
  3. Kritisk sektion
  4. Kommunikation mellan processer
  5. Interprocesskommunikation: Metoder
  6. IPC genom delat minne
  7. IPC med meddelandeköer
  8. Meddelandebaserad kommunikation i IPC (inter process communication)
  9. Kommunikation mellan två processer med hjälp av signaler i C
  10. Semaforer i operativsystemet
  11. Mutex vs. Semafor
  12. Processsynkronisering | Övervakar
  13. Petersons algoritm för ömsesidig uteslutning | Set 1 (Grundläggande C-implementering)
  14. Petersons algoritm för ömsesidig uteslutning | Set 2 (CPU-cykler och minnesstängsel)
  15. Petersons algoritm (Användning av processer och delat minne)
  16. Dekkers algoritm
  17. Bageri algoritm
  18. Producent Konsument Problem med att använda semaforer | Set 1
  19. Dining Philosopher problem med att använda semaforer
  20. Dining-Filosofers lösning med bildskärmar
  21. Läsare-skrivare problem | Set 1 (introduktion och lösning för läsarepreferenser)
  22. Reader-Writers lösning med bildskärmar
  23. Problem med sovande frisör
  24. Lås variabel synkroniseringsmekanism
  25. Mutex-lås för Linux-trådsynkronisering
  26. Priority Inversion: Vad fan!
  27. Vad är skillnaden mellan Priority Inversion och Priority Arv?
  28. Processsynkronisering
  29. Interprocesskommunikation: Metoder

>> Frågesport om processhantering i OS

dödläge:

  1. Deadlock Introduktion
  2. Deadlock upptäckt och återställning
  3. Deadlock, Starvation och Livelock
  4. Förebyggande och undvikande av dödläge
  5. Bankers algoritm
  6. Resursallokeringsdiagram (RAG)
  7. Metoder för resursallokering till processer per operativsystem
  8. Program för Bankers Algorithm
  9. Bankers algoritm: Skriv ut alla säkra tillstånd (eller säkra sekvenser)
  10. Algoritm för detektering av dödläge
  11. Program för dödlägesfritt tillstånd i operativsystemet
  12. Detektering av dödläge i distribuerade system
  13. Tekniker som används i centraliserad strategi för detektering av dödläge i distribuerade system

>> Frågesport om dödläge

Processer och trådar:

  1. Operativsystem | Tråd
  2. Trådar och dess typer
  3. Operativsystem | Tråd på användarnivå kontra kärnnivåtråd
  4. Processbaserad och trådbaserad multitasking
  5. Flergängade modeller
  6. Fördelar med Multithreading
  7. Zombieprocesser och deras förebyggande
  8. Maximalt antal zombieprocesser som ett system kan hantera
  9. Operativsystem | Remote Procedure Call (RPC)

Minneshantering :

  1. Minneshierarkidesign och dess egenskaper
  2. Introduktion till minne och minnesenheter
  3. Olika typer av RAM (Random Access Memory)
  4. Buddy System: Minnestilldelningsteknik
  5. Minneshantering | Partitionstilldelningsmetod
  6. Fast (eller statisk) partitionering i operativsystem
  7. Variabel (eller dynamisk) partitionering i operativsystem
  8. Icke-sammanhängande allokering i operativsystem
  9. Logisk vs fysisk adress i operativsystem
  10. Personsökning
  11. Krav på minneshanteringssystem
  12. Minneshantering – kartläggning av virtuell adress till fysiska adresser
  13. Sidtabellposter
  14. Virtuellt minne
  15. Minnesinterfoliering
  16. Frågor om virtuellt minne
  17. Operativsystembaserad virtualisering
  18. Inverterad sidtabell
  19. Byt utrymme
  20. Sidfelshantering
  21. Fast (eller statisk) partitionering i operativsystem
  22. Segmentering
  23. Minnessegmentering i 8086 mikroprocessor
  24. Program för Next Fit-algoritmen i minneshantering
  25. Överlagringar i minneshantering
  26. Sidersättningsalgoritmer
  27. Program för Sidersättningsalgoritmer | Set 1 (LRU)
  28. Program för Optimal Sidersättningsalgoritm
  29. LFU (Minst Frequently Used) Cache-implementering
  30. Policy för ersättning av andra chans (eller klocksida).
  31. Tekniker för att hantera thrashing
  32. Allokera kärnminne (kompissystem och skivsystem)
  33. Program för kompisminnestilldelning i operativsystem | Uppsättning 1 (tilldelning)
  34. Program för kompisminnestilldelning i operativsystem | Uppsättning 2 (deallokering)
  35. Statiska och dynamiska bibliotek | Set 1
  36. Arbeta med delade bibliotek | Set 1
  37. Arbeta med delade bibliotek | Set 2
  38. Namngiven Pipe eller FIFO med exempel C-program
  39. Spåra minnesanvändning i Linux

>> Frågesport om minneshantering

Diskhantering:

  1. Filsystem
  2. Unix filsystem
  3. Implementera kataloghantering med Shell Script
  4. Filkatalog | Namn på sökväg
  5. Katalogstrukturer
  6. Filallokeringsmetoder
  7. Filåtkomstmetoder
  8. Sekundärt minne
  9. Sekundärt minne – Hårddisk
  10. Diskschemaläggningsalgoritmer
  11. Program för SSTF disk schemaläggningsalgoritm
  12. Vad exakt handlar spooling om?
  13. Skillnaden mellan spooling och buffring
  14. Hantering av ledigt utrymme

>> Frågesport om Input Output Systems

xdxd betydelse

Övrigt

  1. Introduktion till UNIX-systemet
  2. Viktiga Linux-kommandon (leave, diff, cal, ncal, locate och ln)
  3. Processtillstånd och övergångar i en UNIX-process
  4. Introduktion till Linux Shell och Shell Scripting
  5. 'crontab' i Linux med exempel
  6. indepth och maxdepth i Linux find()-kommandot för att begränsa sökningen till en specifik katalog.

Typer av operativsystem

  • Batch OS (t.ex. Transaktionsprocess, Lönesystem, etc.)
  • Flerprogrammerat operativsystem (t.ex. Windows, UNIX, macOS, etc.)
  • OS för tidsdelning (t.ex. Multics, Linux, etc.)
  • Realtidsoperativsystem (t.ex. PSOS, VRTX, etc.)
  • Distribuerat operativsystem (t.ex. LOCUS, Solaris, etc.)

Operativsystemsfunktioner

  • Minnes- och processorhantering
  • Nätverkshantering
  • Säkerhetshantering
  • Filhantering
  • Felupptäckt
  • Jobbredovisning

Vanliga frågor om operativsystem

F.1 Varför lära sig operativsystem?

Svar :

OS är den viktigaste delen av en dator. Via OS kan användare interagera med datorprogramvara. Det ger ett gränssnitt mellan hårdvara och CPU. Det tillhandahåller också en plattform för programmet att köra på det och tjänster till användare. Den utför alla grundläggande uppgifter som krävs i en applikation.

F.2 Skriv de 10 bästa exemplen på operativsystem?

Svar :

Några mest populära OS-exempel ges nedan:

  • Windows
  • Linux
  • Mac OS
  • Ios
  • Android
  • Ubuntu
  • CentOS
  • Solaris
  • Chrome OS
  • Fedora

F.3 Vilka är fördelarna med ett multiprocessorsystem?

Svar :

Ett multiprocessorsystem innebär behandling av två eller flera datorprogram samtidigt som delar samma minnesområde. Det ökar tillförlitligheten.

F.4 Vad är en tråd i OS?

Svar :

En tråd är en lätt process eller underprogram som är en del av processen eller ett program. En tråd har sin egen register-, stack-, tillstånds- och programräknare.

sortera arraylistan i java

Snabblänkar :

  • Sista minuten-anteckningar (LMN) | Operativsystem
  • Vanligt ställda intervjufrågor om operativsystem
  • 'Övningsproblem' på operativsystem!