Алгоритми за планирање процесора у оперативним системима

Преглед садржаја:

Anonim

Шта је ЦПУ планирање?

Заказивање ЦПУ- а је поступак одређивања којем ће процесу припадати ЦПУ за извршење док је други процес на чекању. Главни задатак планирања ЦПУ-а је осигурати да кад год ЦПУ остане неактиван, ОС барем изабере један од процеса доступних у реду спремности за извршење. Процес одабира извршиће ЦПУ планер. Одабире један од процеса у меморији који је спреман за извршење.

У овом упутству за планирање процесора научићете:

  • Шта је ЦПУ планирање?
  • Врсте заказивања ЦПУ-а
  • Важне терминологије за планирање процесора
  • Критеријуми за заказивање процесора
  • Интервални тајмер
  • Шта је Диспатцхер?
  • Врсте алгоритма за планирање процесора
  • Прво дођи прва послужи
  • Најкраће преостало време
  • Заказивање засновано на приоритету
  • Роунд-Робин заказивање
  • Најкраћи посао прво
  • Заказивање редова редова на више нивоа
  • Сврха алгоритма распоређивања

Врсте заказивања ЦПУ-а

Ево две врсте метода заказивања:

Превентивно заказивање

У превентивном планирању, задаци се углавном додељују са приоритетима. Понекад је важно покренути задатак са већим приоритетом пре другог задатка нижег приоритета, чак иако је задатак нижег приоритета и даље покренут. Задатак нижег приоритета задржава се неко време и наставља се када задатак већег приоритета заврши своје извршавање.

Непревентивно заказивање

У овој врсти методе распоређивања, ЦПУ је додељен одређеном процесу. Процес који ЦПУ заузима ослобађа ЦПУ било пребацивањем контекста или прекидом. То је једина метода која се може користити за разне хардверске платформе. То је зато што му није потребан посебан хардвер (на пример, тајмер) попут превентивног заказивања.

Када је заказивање превентивно или непревентивно?

Да бисте утврдили да ли је заказивање превентивно или непредметано, узмите у обзир ова четири параметра:

  1. Процес се пребацује из текућег у стање чекања.
  2. Одређени процес пребацује се из текућег стања у стање приправности.
  3. Одређени процес прелази из стања чекања у стање приправности.
  4. Процес је завршен и извршен.

Примењују се само услови 1 и 4, заказивање се назива превентивним.

Сва остала заказивања су превентивна.

Важне терминологије за планирање процесора

  • Рафално време / време извршења: Време је потребно процесу за довршење извршења. Такође се назива време рада.
  • Време доласка: када процес уђе у стање приправности
  • Време завршетка: када се процес заврши и изађе из система
  • Мултипрограмирање: Бројни програми који могу истовремено бити присутни у меморији.
  • Послови: То је врста програма без икакве интеракције са корисником.
  • Корисник: То је врста програма који има интеракцију са корисником.
  • Процес: То је референца која се користи и за посао и за корисника.
  • ЦПУ / ИО бурст циклус: Карактерише извршавање процеса, који се измјењује између ЦПУ и И / О активности. Процесорска времена су обично краћа од времена И / О.

Критеријуми за заказивање процесора

Алгоритам заказивања ЦПУ покушава максимизирати и минимизирати следеће:

Увећај:

Коришћење ЦПУ-а: Коришћење ЦПУ-а је главни задатак у којем оперативни систем треба да осигура да ЦПУ остане што је могуће заузетији. Може се кретати од 0 до 100 процената. Међутим, за РТОС то може бити у распону од 40 процената за ниски ниво и 90 процената за систем високог нивоа.

Пропусност: Број процеса који завршавају своје извршавање по јединици времена познат је Пропусност. Дакле, када је ЦПУ заузет извршавањем процеса, у то време се ради, а посао завршен по јединици времена назива се Пропусност.

Смањите:

Време чекања: Време чекања је количина коју одређени процес треба да чека у реду за спремање.

Време одговора: То је временски период у коме је захтев поднет до првог одговора.

Време обрта: Време обрта је количина времена за извршавање одређеног процеса. То је израчунавање укупног времена проведеног чекајући да уђе у меморију, чекајући у реду и извршавајући се на ЦПУ-у. Период између времена предаје процеса и времена завршетка је време обраде.

Интервални тајмер

Прекид тајмера је метода која је уско повезана са предузимањем. Када одређени процес добије алокацију ЦПУ-а, тајмер се може поставити на задати интервал. Прекид тајмера и спречавање спремања присиљавају процес на враћање ЦПУ-а пре него што се његов ЦПУ-ов низ заврши.

Већина мултипрограмираног оперативног система користи неки облик тајмера да спречи да процес заувек веже систем.

Шта је Диспатцхер?

То је модул који пружа контролу над процесором процеса. Диспечер би требао бити брз тако да може да се покреће на сваком преклопнику контекста. Кашњење слања је време које је потребно ЦПУ планеру да заустави један процес и покрене други.

Функције које обавља диспечер:

  • Пребацивање контекста
  • Пребацивање у кориснички режим
  • Премештање на тачно место у ново учитаном програму.

Врсте алгоритма за планирање процесора

Постоји углавном шест типова алгоритама за планирање процеса

  1. Прво дођи први сервирај (ФЦФС)
  2. Заказивање најкраћег радног места (СЈФ)
  3. Најкраће преостало време
  4. Приоритетно заказивање
  5. Роунд Робин заказивање
  6. Заказивање редова у више нивоа
Заказивање алгоритама

Прво дођи прва послужи

Фирст Цоме Фирст Серве је пуни облик ФЦФС-а. То је најлакши и најједноставнији алгоритам за планирање процесора. У овој врсти алгоритма, процес који захтева ЦПУ прво добија алокацију ЦПУ-а. Овим методом заказивања може се управљати помоћу ФИФО реда.

Како процес улази у ред спремности, његова ПЦБ (Блок за контролу процеса) је повезана са репом реда. Дакле, када ЦПУ постане слободан, он би требао бити додељен процесу на почетку реда.

Карактеристике ФЦФС методе:

  • Нуди алгоритам за унапред превентивно и превентивно распоређивање.
  • Послови се увек извршавају по принципу ко први дође
  • Лако је применити и користити.
  • Међутим, овај метод има лоше перформансе, а време чекања је прилично дуго.

Најкраће преостало време

Пуни облик СРТ је најкраће преостало време. Такође је познато и као превентивни распоред СЈФ. Овом методом процес ће бити додељен задатку, који је најближи његовом завршетку. Овај метод спречава новији процес спремности да задржи завршетак старијег процеса.

Карактеристике СРТ методе заказивања:

  • Ова метода се углавном примењује у групним окружењима где се тражи давање предности кратким пословима.
  • Ово није идеална метода за његову примену у заједничком систему где је потребно ЦПУ време непознато.
  • Повежите се са сваким процесом како дужина његовог следећег ЦПУ-а. Дакле, тај оперативни систем користи ове дужине, што помаже у планирању процеса са најкраћим могућим временом.

Заказивање засновано на приоритету

Приоритетно заказивање је метода заказивања процеса заснованих на приоритету. У овој методи, планер бира задатке за рад према приоритету.

Заказивање приоритета такође помаже ОС-у да укључи приоритетне доделе. Прво би требало изводити процесе са већим приоритетом, док се послови са једнаким приоритетима изводе на округлом терену или ФЦФС. О приоритету се може одлучити на основу меморије, времена, итд.

Роунд-Робин заказивање

Роунд робин је најстарији, најједноставнији алгоритам распоређивања. Име овог алгоритма потиче од принципа обилажења, где свака особа заузврат добија једнак удео у нечему. Углавном се користи за распоређивање алгоритама у мултитаскингу. Ова метода алгоритма помаже у извршавању процеса без гладовања.

Карактеристике заказивања заокруженим робином

  • Роунд робин је хибридни модел који се покреће сатом
  • Временски одсек треба да буде минималан, који се додељује за одређени задатак који треба да се обради. Међутим, може се разликовати за различите процесе.
  • То је систем у стварном времену који реагује на догађај у одређеном временском року.

Најкраћи посао прво

СЈФ је пуни облик (Прво најкраћи посао) алгоритма за распоређивање у којем би процес са најкраћим временом извршења требало да буде изабран за следеће извршавање. Ова метода заказивања може бити превентивна или непредвиђена. Значајно смањује просечно време чекања за остале процесе који чекају извршење.

Карактеристике СЈФ заказивања

  • Уз сваки посао повезан је као јединица времена коју треба обавити.
  • Код ове методе, када је ЦПУ доступан, прво ће се извршити следећи процес или посао са најкраћим временом завршетка.
  • Примењује се са превентивном политиком.
  • Ова метода алгоритма корисна је за пакетну обраду, где чекање да се послови заврше није критично.
  • Побољшава излазну понуду нудећи краће послове, које би прво требало извршити, а који углавном имају краће време израде.

Заказивање редова редова на више нивоа

Овај алгоритам раздваја спремни ред у различите засебне редове. У овој методи, процеси се додељују реду на основу одређеног својства процеса, попут приоритета процеса, величине меморије итд.

Међутим, ово није независни алгоритам за распоређивање ОС-а јер треба да користи друге типове алгоритама да би распоредио послове.

Карактеристика заказивања редова на више нивоа:

  • Треба држати више редова за процесе са неким карактеристикама.
  • Сваки ред може имати своје засебне алгоритме за распоређивање.
  • Приоритети су дати за сваки ред.

Сврха алгоритма распоређивања

Ево разлога за употребу алгоритма за распоређивање:

  • ЦПУ користи планирање како би побољшао своју ефикасност.
  • Помаже вам да алоцирате ресурсе међу конкурентним процесима.
  • Максимално искоришћење ЦПУ-а може се постићи мулти програмирањем.
  • Процеси који треба да се изврше су у спремном реду.

Резиме:

  • ЦПУ заказивање је поступак одређивања којем ће процесу припадати ЦПУ за извршење док је други процес на чекању.
  • У превентивном планирању, задаци се углавном додељују са приоритетима.
  • У методи не-превентивног заказивања, ЦПУ је додељен одређеном процесу.
  • Време пуцања је време потребно за завршетак процеса. Такође се назива време рада.
  • Коришћење ЦПУ-а је главни задатак у којем оперативни систем треба да осигура да ЦПУ остане што је могуће заузетији
  • Број процеса који завршавају своје извршавање у јединици времена познат је Пропусност.
  • Време чекања је количина коју одређени процес треба да сачека у реду спремности.
  • То је временски период у коме је захтев поднет до достављања првог одговора.
  • Време обрта је време за извршење одређеног процеса.
  • Прекид тајмера је метода која је уско повезана са предузимањем,
  • Диспечер је модул који пружа контролу над процесором процеса.
  • Шест врста алгоритама за планирање процеса су:
  • Први долази први сервис (ФЦФС), 2) Заказивање најкраћег посла (СЈФ) 3) Најкраће преостало време 4) Заказивање приоритета 5) Заказивање округлог робина 6) Заказивање редова у више нивоа
  • У методи Прво дођи први, процес који захтева ЦПУ прво добија доделу ЦПУ-а.
  • У најкраћем преосталом времену, процес ће бити додељен задатку, који је најближи његовом завршетку.
  • У, планирање приоритета, планер бира задатке који ће радити према приоритету.
  • У овом распореду Роунд Робин-а ради се у принципу, где свака особа заузврат добија једнак удео у нечему
  • У Најкраћем послу прво треба одабрати најкраће време извршења за следеће извршавање
  • У планирању на више нивоа, метод раздваја спремни ред у различите одвојене редове. У овој методи, процеси се додељују реду на основу одређеног својства
  • ЦПУ користи планирање како би побољшао своју ефикасност.