Procesplanning in besturingssysteem: planner voor lange, middellange en korte termijn

โšก Slimme samenvatting

Procesplanning is een taak van het besturingssysteem die processen beheert in de statussen gereed, wachtend en actief. Het wijst CPU-tijd toe aan elk proces, houdt de CPU bezig en verkort de reactietijd met behulp van planningssystemen voor de lange, middellange en korte termijn.

  • ๐Ÿ—“๏ธ Definitie: Procesplanning beheert processen in de statussen gereed, wachtend en actief om de CPU optimaal te benutten.
  • ๐Ÿ“ฅ Wachtrijen: De taak-, gereed- en apparaatwachtrijen organiseren processen op basis van hun uitvoeringsstatus.
  • ๐Ÿ”€ Tweestatenmodel: Heel simpel gezegd, een proces is ofwel actief ofwel niet actief.
  • โ€‹ Drie planners: Langetermijn-, middellangetermijn- en kortetermijnplanners bepalen welke processen wanneer worden uitgevoerd.
  • โšก Korte termijn: De CPU-scheduler is het snelst en selecteert een gereed proces voor onmiddellijke uitvoering.
  • ๐Ÿ” Contextwisseling: Het opslaan en herstellen van de CPU-status op de printplaat maakt multitasking mogelijk.

Procesplanning in het besturingssysteem

Wat is procesplanning?

Procesplanning Dit is een besturingssysteemtaak die processen in verschillende staten, zoals gereed, wachtend en actief, inplant.

Procesplanning stelt het besturingssysteem in staat om aan elk proces een tijdsinterval voor CPU-uitvoering toe te wijzen. Een andere belangrijke reden voor het gebruik van een procesplanningssysteem is dat de CPU constant bezig blijft. Hierdoor wordt de reactietijd van programma's geminimaliseerd.

Wachtrijen voor procesplanning

Met procesplanningswachtrijen kunt u voor elke processtatus en PCB een aparte wachtrij beheren. Alle processen met dezelfde uitvoeringsstatus worden in dezelfde wachtrij geplaatst. Wanneer de status van een proces wordt gewijzigd, moet de bijbehorende PCB daarom worden losgekoppeld van de bestaande wachtrij en teruggeplaatst in de wachtrij voor de nieuwe status.

Er zijn drie soorten wachtrijen voor besturingssystemen:

  1. Taak wachtrij โ€“ Het helpt u om alle processen in het systeem op te slaan.
  2. Klaar wachtrij โ€“ Met dit type wachtrij kunt u elk proces in het hoofdgeheugen instellen, dat gereed is om te worden uitgevoerd.
  3. Apparaatwachtrijen โ€“ Het is een proces dat wordt geblokkeerd vanwege de afwezigheid van een I/O-apparaat.
Wachtrijen voor procesplanning
Wachtrijen voor procesplanning

In het bovenstaande diagram:

  • Een rechthoek stelt een wachtrij voor.
  • Een cirkel geeft de hulpbron aan.
  • Een pijl geeft de procesrichting aan.
  1. Elk nieuw proces wordt eerst in de wachtrij 'Gereed' geplaatst. Het wacht in de wachtrij totdat het uiteindelijk wordt verwerkt voor uitvoering. Hier wordt het nieuwe proces in de wachtrij geplaatst en wacht het totdat het wordt geselecteerd voor uitvoering, ofwel totdat het wordt verzonden.
  2. Een van de processen heeft de CPU toegewezen gekregen en wordt uitgevoerd.
  3. Het proces moet een I/O-verzoek versturen.
  4. Vervolgens moet het in de I/O-wachtrij worden geplaatst.
  5. Het proces moet een nieuw subprocess aanmaken.
  6. Het proces moet wachten tot het wordt beรซindigd.
  7. Het moet, als gevolg van een interrupt, geforceerd uit de CPU worden verwijderd. Zodra de interrupt is voltooid, moet het terug in de gereedstaande wachtrij worden geplaatst.

Tweestatenprocesmodel

Tweestatenprocesmodellen zijn:

  • Lopende staat
  • Staat niet actief

Hardlopen

In de Operating systeemTelkens wanneer een nieuw proces wordt gebouwd, wordt het in het systeem ingevoerd, dat zou moeten worden uitgevoerd.

Niet rennen

De processen die niet actief zijn, worden in een wachtrij geplaatst en wachten op hun beurt om uitgevoerd te worden. Elk item in de wachtrij verwijst naar een specifiek proces.

Doelstellingen plannen

Hieronder volgen de belangrijkste doelstellingen van procesplanning:

  • Maximaliseer het aantal interactieve gebruikers binnen aanvaardbare responstijden.
  • Zorg voor een evenwicht tussen respons en gebruik.
  • Voorkom uitstel voor onbepaalde tijd en dwing prioriteiten af.
  • Het moet ook verwijzen naar de processen die de belangrijkste hulpbronnen bevatten.

Type procesplanners

Een planner is een soort systeemsoftware waarmee u procesplanning kunt afhandelen.

Er zijn hoofdzakelijk drie soorten procesplanners:

  1. Planner voor de lange termijn
  2. Planner voor de korte termijn
  3. Planner voor de middellange termijn

Planner voor de lange termijn

De langetermijnplanner wordt ook wel eens genoemd taakplannerDeze scheduler regelt het programma, selecteert processen uit de wachtrij en laadt ze in het geheugen voor uitvoering. Hij regelt tevens de mate van multiprogrammering.

Het voornaamste doel van dit type scheduler is echter het bieden van een evenwichtige mix van taken, zoals processor- en I/O-taken, waardoor multiprogrammering mogelijk wordt.

Planner voor de middellange termijn

Planning op de middellange termijn is een belangrijk onderdeel hiervan ruilenpingHet stelt je in staat om processen die naar de swapruimte zijn verplaatst af te handelen. In deze scheduler kan een actief proces worden opgeschort, wat een I/O-verzoek genereert.

Een actief proces kan worden opgeschort als het een I/O-verzoek indient. Een opgeschort proces kan geen voortgang boeken richting voltooiing. Om het proces uit het geheugen te verwijderen en ruimte te maken voor andere processen, moet het opgeschorte proces naar het secundaire geheugen worden verplaatst.

Planner voor de korte termijn

Planning op korte termijn staat ook bekend als de CPU-plannerHet hoofddoel van deze scheduler is het verbeteren van de systeemprestaties volgens vastgestelde criteria. Hiermee kunt u een proces selecteren uit een groep processen die klaar zijn om te worden uitgevoerd en de CPU aan een van deze processen toewijzen. De dispatcher geeft de controle over de CPU aan het proces dat door de kortetermijnscheduler is geselecteerd.

Verschil tussen planners

Lange termijn versus korte termijn versus middellange termijn:

Langetermijn Korte termijn Middellange termijn
Een lange-termijnplanner wordt ook wel een taakplanner genoemd. De korte termijn wordt ook wel CPU-scheduler genoemd. Middellange termijn wordt ook wel swap genoemd.ping planner.
Het is afwezig of minimaal in een timesharingsysteem. Het is van geen betekenis in de time-sharing-volgorde. Deze planner is een onderdeel van Time-sharing-systemen.
De snelheid is minder vergeleken met de kortetermijnplanner. Snelheid is het snelst vergeleken met de planner voor de korte en middellange termijn. Het biedt gemiddelde snelheid.
Hiermee kunt u processen selecteren uit de laadpool en deze terug in het geheugen plaatsen. Het selecteert alleen processen die klaar zijn voor uitvoering. Het helpt je om processen terug naar het geheugen te sturen.
Biedt volledige controle. Biedt minder controle. Vermindert de mate van multiprogrammering.

Wat is contextschakelaar?

Het is een methode om de status van een CPU op te slaan/herstellen in de PCB, zodat de uitvoering van een proces later vanaf hetzelfde punt kan worden hervat. De contextwisselmethode is belangrijk voor een multitasking-besturingssysteem.

Veelgestelde vragen

Een scheduler bepaalt op basis van een beleid welk proces als volgende moet worden uitgevoerd. Een dispatcher is de module die het gekozen proces daadwerkelijk de controle over de CPU geeft, de contextwissel uitvoert en de sprong naar een ander proces maakt.ping naar de juiste locatie in het programma.

De mate van multiprogrammering geeft het aantal processen aan dat tegelijkertijd in het hoofdgeheugen wordt uitgevoerd. De langetermijnplanner regelt dit door te bepalen hoeveel processen worden toegelaten, waarbij het CPU- en I/O-gebruik in balans wordt gehouden voor efficiรซnte systeemprestaties.

Een procescontroleblok (PCB) is een datastructuur die het besturingssysteem gebruikt om alle informatie over een proces op te slaan, zoals de status, programmateller, registers en geheugenlimieten. Het is essentieel voor het opslaan en herstellen van processen tijdens een contextwissel.

AI kan werkbelastingspatronen leren om te bepalen welke processen moeten worden uitgevoerd en hoe de CPU-tijd moet worden verdeeld. In plaats van vaste regels past het de planning in realtime aan, waardoor de doorvoer, de reactietijd en de energie-efficiรซntie verbeteren, met name in cloud- en multi-core-systemen.

Ja. Door eerdere CPU-pieken en I/O-patronen te analyseren, kunnen AI-modellen inschatten hoe lang een proces zal duren en of het CPU- of I/O-gebonden is. Deze voorspellingen helpen de scheduler processen te prioriteren en de wachttijd te verkorten.

Vat dit bericht samen met: