Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky

Domáce Hardware Siete Programovanie Softvér Otázka Systémy

Aké politiky a algoritmy plánovania diskov boli použité?

V priebehu rokov bolo vyvinutých veľa politík a algoritmov plánovania diskov, z ktorých každá má vlastné silné a slabé stránky. Najlepšia voľba do značnej miery závisí od konkrétneho pracovného zaťaženia a systémových požiadaviek. Tu sú niektoré z najbežnejších:

NEPREMPTIVE (Žiadosti sú doručené tak, aby dorazili):

* prvé, prvé, prvé (FCFS): Najjednoduchší prístup; Žiadosti sa podávajú v poradí, v akom dorazia. Veľmi jednoduchá implementácia, ale môže viesť k významnému hľadaniu času a zhoršovania výkonu, najmä pri široko rozptýlených požiadavkách. Je náchylné na vytváranie dlhých konvojov žiadostí.

* najkratší čas hľadajte ako prvý (SSTF): Vyberie požiadavku, ktorá minimalizuje čas hľadania z aktuálnej polohy hlavy. Vo všeobecnosti zlepšuje výkon oproti FCFS, ale môže viesť k hladovaniu žiadostí ďaleko od súčasnej polohy hlavy („efekt výťahu“).

Preventívne (požiadavky je možné prerušiť a upraviť):

* sken (algoritmus výťahu): Hlava diskov sa pohybuje jedným smerom a na ceste sa poskytuje požiadavky. Akonáhle dosiahne koniec, zvráti smer a pokračuje v požiadavkách na obsluhu v opačnom smere. Spravodlivejšie ako SSTF, pretože sa vyhýba hladovaniu.

* c-sken (kruhové skenovanie): Podobne ako v prípade skenovania, ale keď hlava dosiahne koniec, skočí späť na začiatok bez obsluhy žiadostí na spiatočnej ceste. Toto poskytuje rovnomernejšie rozdelenie služby a menšie rozptyly v časoch odozvy ako skenovanie.

* vzhľad a c-výhľad: Toto sú variácie skenovania a C-sken. Rozdiel je v tom, že namiesto toho, aby sa pohybovali až do konca disku, idú až do najďalej v aktuálnom smere. To znižuje zbytočný pohyb hlavy.

* fscan: Variácia, ktorá kombinuje FCF a skenuje. Požiadavky na IT služby v objednávke FCFS v každom cykle skenovania.

* Plánovanie viacúrovňového frontu: Uprednostňuje požiadavky na základe ich typu (napr. Systémové požiadavky verzus žiadosti o používateľa). Pre každý front je možné použiť rôzne algoritmy plánovania.

* váhové algoritmy: Priraďujte závažia žiadostiam na základe dôležitosti alebo priority. Uprednostňujú sa žiadosti s vyššou váhou.

Ostatné algoritmy a úvahy:

* Plánovanie termínu: Uprednostňuje žiadosti na základe ich termínov. Najprv sa podávajú kritické požiadavky, aby sa predišlo chýbajúcim termínom.

* Adaptívne algoritmy: Dynamicky upravte svoju stratégiu plánovania na základe pozorovaných správania systému a charakteristík pracovnej záťaže.

* Úplne spravodlivé fronty (CFQ): Plánovač linuxového jadra, ktorého cieľom je poskytnúť pridelenie šírky pásma medzi procesmi. Nie je to striktne algoritmus plánovania disku, ale výrazne ovplyvňuje výkon I/O disku.

* Očakávanie: Niektoré pokročilé algoritmy sa snažia predpovedať budúce požiadavky na základe minulých vzorcov a podľa toho optimalizovať pohyb hlavy.

V praxi moderné operačné systémy často využívajú kombináciu týchto algoritmov a iných sofistikovaných techník na optimalizáciu výkonu I/O disku. Použité konkrétne použité algoritmy nemusia byť vždy verejne zdokumentované alebo ľahko určené. Najlepší algoritmus závisí od mnohých faktorov vrátane charakteristík disku, I/O vzoru a výkonnostných cieľov.

Najnovšie články

Copyright © počítačové znalosti Všetky práva vyhradené