{"id":32158,"date":"2019-10-31T21:45:27","date_gmt":"2019-10-31T18:45:27","guid":{"rendered":"https:\/\/prohoster.info\/blog\/operating-systems-three-easy-pieces-part-4-vvedenie-v-planirovshhik-perevod\/"},"modified":"2019-10-31T21:45:27","modified_gmt":"2019-10-31T18:45:27","slug":"operating-systems-three-easy-pieces-part-4-vvedenie-v-planirovshhik-perevod","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/operating-systems-three-easy-pieces-part-4-vvedenie-v-planirovshhik-perevod","title":{"rendered":"Sistemet Operative: Tre Pjesa t\u00eb Lehta. Pjesa 4: Hyrje n\u00eb planifikuesin (p\u00ebrkthim)","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<h1>Hyrje n\u00eb sistemet operative<\/h1>\n<p>\nP\u00ebrsh\u00ebndetje, Habr! D\u00ebshiroj t'ju prezantoj nj\u00eb seri artikujsh-p\u00ebrkthime mbi nj\u00eb literatur\u00eb q\u00eb e konsideroj interesante \u2014 OSTEP. Ky material shqyrton n\u00eb m\u00ebnyr\u00eb t\u00eb thell\u00eb funksionimin e sistemeve operative t\u00eb ngjashme me Unix, sidomos \u2014 menaxhimin e proceseve, planifikuesit e ndrysh\u00ebm, memorjen dhe komponent\u00eb t\u00eb tjer\u00eb t\u00eb till\u00eb q\u00eb p\u00ebrb\u00ebjn\u00eb nj\u00eb sistem operativ modern. Origjinali i t\u00eb gjitha materialeve mund ta shihni k\u00ebtu <noindex><a rel=\"nofollow\" href=\"http:\/\/pages.cs.wisc.edu\/~remzi\/OSTEP\/\">k\u00ebtu<\/a><\/noindex>. Ju lutem, mbani n\u00eb mend se p\u00ebrkthimi \u00ebsht\u00eb b\u00ebr\u00eb n\u00eb m\u00ebnyr\u00eb jo profesionale (mjaft e lir\u00eb), por shpresoj se e kam ruajtur kuptimin e p\u00ebrgjithsh\u00ebm.<\/p>\n<p>Laborator\u00ebt p\u00ebr k\u00ebt\u00eb l\u00ebnd\u00eb mund t'i gjeni k\u00ebtu:<\/p>\n<ul>\n<li><noindex><a rel=\"nofollow\" href=\"http:\/\/pages.cs.wisc.edu\/~remzi\/OSTEP\/Homework\/homework.html\">origjinali<\/a><\/noindex><\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/remzi-arpacidusseau\/ostep-code\">origjinali<\/a><\/noindex><\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/bykvaadm\/OS\/tree\/master\/ostep\">adaptimi im personal<\/a><\/noindex><\/li>\n<\/ul>\n<p>\nPjes\u00eb t\u00eb tjera:<\/p>\n<ul>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/en\/post\/446340\/\">Pjesa 1: Intro<\/a><\/noindex><\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/en\/post\/446866\/\">Pjesa 2: Abstraksioni: procesi<\/a><\/noindex><\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/en\/post\/447182\/\">Pjesa 3: Hyrje n\u00eb API-t\u00eb e proceseve<\/a><\/noindex><\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/en\/post\/449026\/\">Pjesa 4: Hyrje n\u00eb planifikuesin<\/a><\/noindex><\/li>\n<\/ul>\n<p>\nPo ashtu mund t\u00eb d\u00ebshironi t\u00eb vizitoni kanalin tim n\u00eb <noindex><a rel=\"nofollow\" href=\"https:\/\/t.me\/bykvaadm\">telegram<\/a><\/noindex> =)<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h2>Hyrje n\u00eb planifikuesin<\/h2>\n<p>\n<u>Thelbi i problemit: Si t\u00eb zhvillohet nj\u00eb politik\u00eb planifikuesi<br \/>\nSi duhet t\u00eb zhvillohen kornizat themelore t\u00eb politikave t\u00eb planifikuesit? Cilat duhet t\u00eb jen\u00eb supozimet kryesore? Cilat metrika jan\u00eb t\u00eb r\u00ebnd\u00ebsishme? Cilat teknika themelore jan\u00eb p\u00ebrdorur n\u00eb sistemet kompjuterike t\u00eb hershme?<\/u><\/p>\n<h3>Supozimet e ngarkes\u00ebs s\u00eb pun\u00ebs<\/h3>\n<p>\n Para se t\u00eb diskutojm\u00eb politikat e mundshme, s\u00eb pari le t\u00eb b\u00ebjm\u00eb disa shk\u00ebputje thjeshtuese mbi proceset e ekzekutuara n\u00eb sistem, t\u00eb cilat s\u00eb bashku quhen <b>ngarkesa e pun\u00ebs<\/b>. Duke p\u00ebrcaktuar ngarkes\u00ebn e pun\u00ebs si nj\u00eb pjes\u00eb kritike t\u00eb nd\u00ebrtimit t\u00eb politikave dhe sa m\u00eb shum\u00eb t\u00eb dini p\u00ebr ngarkes\u00ebn, aq m\u00eb cil\u00ebsore do t\u00eb jet\u00eb politika q\u00eb do t\u00eb shkruani.<\/p>\n<p>Le t\u00eb b\u00ebjm\u00eb k\u00ebto supozime mbi proceset q\u00eb ekzekutohen n\u00eb sistem, ndonj\u00ebher\u00eb t\u00eb quajtura <b>pun\u00eb<\/b> (detyra). Praktikisht t\u00eb gjitha k\u00ebto supozime jan\u00eb jo realiste, por jan\u00eb t\u00eb nevojshme p\u00ebr zhvillimin e mendjes.<\/p>\n<ol>\n<li> \u00c7do detyr\u00eb ekzekutohet p\u00ebr t\u00eb nj\u00ebjt\u00ebn koh\u00eb,<\/li>\n<li> T\u00eb gjitha detyrat vendosen nj\u00ebkoh\u00ebsisht,<\/li>\n<li> Detyra e vendosur punon deri n\u00eb p\u00ebrfundim t\u00eb saj,<\/li>\n<li> T\u00eb gjitha detyrat p\u00ebrdorin vet\u00ebm CPU,<\/li>\n<li> Koha e pun\u00ebs s\u00eb \u00e7do detyre \u00ebsht\u00eb e njohur.<\/li>\n<\/ol>\n<h3>Metrikat e Planifikuesit<\/h3>\n<p>\n P\u00ebrve\u00e7 disa supozimeve mbi ngarkes\u00ebn, \u00ebsht\u00eb e nevojshme gjithashtu nj\u00eb mjet krahasimi i politikave t\u00eb ndryshme t\u00eb planifikimit: metrikat e planifikuesit. Metrika \u00ebsht\u00eb thjesht nj\u00eb mas\u00eb e di\u00e7kaje. Ekzistojn\u00eb disa metrika q\u00eb mund t\u00eb p\u00ebrdoren p\u00ebr t\u00eb krahasuar planifikuesit.<\/p>\n<p>Si shembull, do t\u00eb p\u00ebrdorim metrik\u00ebn q\u00eb quhet <b>koha e kthimit<\/b> (turnaround time). Koha e kthimit t\u00eb nj\u00eb detyre p\u00ebrcaktohet si diferenca midis koh\u00ebs s\u00eb p\u00ebrfundimit t\u00eb detyr\u00ebs dhe koh\u00ebs s\u00eb arritjes s\u00eb detyr\u00ebs n\u00eb sistem.<\/p>\n<p><u>Tturnaround=Tcompletion\u2212Tarrival<\/u><\/p>\n<p>Duke supozuar se t\u00eb gjitha detyrat mb\u00ebrrit\u00ebn n\u00eb t\u00eb nj\u00ebjt\u00ebn koh\u00eb, at\u00ebher\u00eb Ta=0 dhe k\u00ebshtu Tt=Tc. Ky vler\u00eb natyrsh\u00ebm do t\u00eb ndryshoj\u00eb kur t\u00eb ndryshojm\u00eb supozimet e lartp\u00ebrmendura.<\/p>\n<p>Metrika tjet\u00ebr \u00ebsht\u00eb <b>drejt\u00ebsia<\/b> (drejt\u00ebsi, ndershm\u00ebri). Performanca dhe ndershm\u00ebria shpesh jan\u00eb karakteristika q\u00eb e kund\u00ebrshtojn\u00eb nj\u00ebra-tjetr\u00ebn n\u00eb planifikim. P\u00ebr shembull, nj\u00eb planifikues mund t\u00eb optimizoj\u00eb performanc\u00ebn, por me \u00e7mimin e pritjes p\u00ebr fillimin e detyrave t\u00eb tjera, duke reduktuar k\u00ebshtu ndershm\u00ebrin\u00eb.<\/p>\n<h3>E PARA M\u00cb E PARA (FIFO)<\/h3>\n<p>\n Algoritmi m\u00eb i thjesht\u00eb q\u00eb mund t\u00eb implementojm\u00eb quhet FIFO ose <b>i pari q\u00eb vjen (brenda), i pari q\u00eb sh\u00ebrbehet (jasht\u00eb)<\/b>. Ky algorit\u00ebm ka disa avantazhe: \u00ebsht\u00eb shum\u00eb i thjesht\u00eb p\u00ebr t'u zbatuar dhe p\u00ebrgjigjet t\u00eb gjitha supozimeve tona, duke kryer pun\u00ebn mjaft mir\u00eb.<\/p>\n<p>Le t\u00eb shqyrtojm\u00eb nj\u00eb shembull t\u00eb thjesht\u00eb. Supozoni se 3 detyra jan\u00eb paraqitur n\u00eb t\u00eb nj\u00ebjt\u00ebn koh\u00eb. Por le t\u00eb supozojm\u00eb q\u00eb detyra A erdhi pak m\u00eb her\u00ebt se t\u00eb tjerat, k\u00ebshtu q\u00eb n\u00eb list\u00ebn e ekzekutimit do t\u00eb renditet m\u00eb par\u00eb se t\u00eb tjerat, ashtu si B p\u00ebrball\u00eb V. Le t\u00eb supozojm\u00eb se secila prej tyre do t\u00eb ekzekutohet p\u00ebr 10 sekonda. Cili do t\u00eb jet\u00eb mesatarja e koh\u00ebs s\u00eb ekzekutimit t\u00eb k\u00ebtyre detyrave?<\/p>\n<p><img decoding=\"async\" alt=\"Sistemet Operative: Tre Pjesa t\u00eb Lehta. Pjesa 4: Hyrje n\u00eb planifikuesin (p\u00ebrkthim)\" src=\"\/wp-content\/uploads\/2019\/04\/8c17c29e10ac8c2e15f5f9d865922e49.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nDuke llogaritur vlerat \u2014 10+20+30 dhe duke e ndar\u00eb me 3, do t\u00eb merrni mesataren e koh\u00ebs s\u00eb ekzekutimit t\u00eb programit q\u00eb \u00ebsht\u00eb e barabart\u00eb me 20 sekonda.<br \/>\n Tani le t\u00eb provojm\u00eb t\u00eb nd\u00ebrojm\u00eb supozimet tona. N\u00eb ve\u00e7anti, supozimi 1 dhe k\u00ebshtu nuk do t\u00eb supozojm\u00eb m\u00eb se \u00e7do detyr\u00eb zgjat nj\u00eb koh\u00eb t\u00eb nj\u00ebjt\u00eb. Si do t\u00eb tregoj\u00eb veten FIFO k\u00ebt\u00eb her\u00eb?<\/p>\n<p>Si\u00e7 duket, koh\u00ebt e ndryshme t\u00eb ekzekutimit t\u00eb detyrave ndikojn\u00eb shum\u00eb negativisht n\u00eb produktivitetin e algoritmit FIFO. Le t\u00eb supozojm\u00eb se detyra A do t\u00eb zgjas\u00eb 100 sekonda, nd\u00ebrsa B dhe V do t\u00eb mbeten me nga 10 secila.<\/p>\n<p><img decoding=\"async\" alt=\"Sistemet Operative: Tre Pjesa t\u00eb Lehta. Pjesa 4: Hyrje n\u00eb planifikuesin (p\u00ebrkthim)\" src=\"\/wp-content\/uploads\/2019\/04\/a375f3d1571f24df30f446b9bc7a9a9e.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n <br \/>\n Si\u00e7 shihet nga figura, koha mesatare p\u00ebr sistemin do t\u00eb jet\u00eb (100+110+120)\/3=110. Ky efekt quhet <b>efekti i konvojit<\/b>, kur disa p\u00ebrdorues t\u00eb shpejt\u00eb t\u00eb nj\u00eb resursi bien n\u00eb radh\u00eb pas nj\u00eb konsumatori t\u00eb r\u00ebnd\u00eb. Kjo \u00ebsht\u00eb si nj\u00eb radh\u00eb n\u00eb nj\u00eb dyqan ushqimor, kur p\u00ebrpara jush \u00ebsht\u00eb nj\u00eb bler\u00ebs me nj\u00eb karroc\u00eb t\u00eb mbushur. Zgjidhja m\u00eb e mir\u00eb e problemit \u00ebsht\u00eb t\u00eb provoni t\u00eb ndryshoni kas\u00ebn ose t\u00eb relaksoheni dhe t\u00eb fryni thell\u00eb.<\/p>\n<h3>Shortest Job First<\/h3>\n<p>\n A mund t\u00eb zgjidhet ndonj\u00ebher\u00eb nj\u00eb situat\u00eb e till\u00eb me procese t\u00eb r\u00ebnd\u00eb? Sigurisht. Nj\u00eb lloj tjet\u00ebr planifikimi quhet<b>Shortest Job First<\/b> (SJF). Algoritmi i tij \u00ebsht\u00eb gjithashtu mjaft primitiv \u2014 si\u00e7 e tregon emri, do t\u00eb ekzekutohen fillimisht detyrat m\u00eb t\u00eb shkurtra nj\u00ebra pas tjetr\u00ebs.<\/p>\n<p><img decoding=\"async\" alt=\"Sistemet Operative: Tre Pjesa t\u00eb Lehta. Pjesa 4: Hyrje n\u00eb planifikuesin (p\u00ebrkthim)\" src=\"\/wp-content\/uploads\/2019\/04\/d0723e313adc9ce7367da611216bf3ee.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nN\u00eb k\u00ebt\u00eb shembull, rezultati i ekzekutimit t\u00eb t\u00eb nj\u00ebjtave procese do t\u00eb jet\u00eb p\u00ebrmir\u00ebsimi i mesatares s\u00eb koh\u00ebs s\u00eb p\u00ebrfundimit t\u00eb programeve dhe ajo do t\u00eb jet\u00eb <b>50 n\u00eb vend t\u00eb 110<\/b>, q\u00eb \u00ebsht\u00eb pothuajse dyfish m\u00eb mir\u00eb.<\/p>\n<p>Prandaj, p\u00ebr supozimin e dh\u00ebn\u00eb q\u00eb t\u00eb gjitha detyrat mb\u00ebrrijn\u00eb n\u00eb t\u00eb nj\u00ebjt\u00ebn koh\u00eb, algoritmi SJF duket si algoritmi m\u00eb optimal. Megjithat\u00eb, supozimet tona ende nuk duken realiste. Tani do t\u00eb ndryshojm\u00eb supozimin 2 dhe k\u00ebt\u00eb her\u00eb do t\u00eb paraqesim se detyrat mund t\u00eb mb\u00ebrrijn\u00eb n\u00eb \u00e7do koh\u00eb, dhe jo t\u00eb gjitha nj\u00ebkoh\u00ebsisht. N\u00eb \u00e7far\u00eb problemesh mund t\u00eb \u00e7oj\u00eb kjo?<\/p>\n<p><img decoding=\"async\" alt=\"Sistemet Operative: Tre Pjesa t\u00eb Lehta. Pjesa 4: Hyrje n\u00eb planifikuesin (p\u00ebrkthim)\" src=\"\/wp-content\/uploads\/2019\/04\/2f0145551779f2733281d12bffad3a45.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nImagjinoni q\u00eb detyra A (100s) mb\u00ebrrin e para dhe fillon t\u00eb ekzekutohet. N\u00eb momentin t=10 mb\u00ebrrijn\u00eb detyrat B dhe C, secila nga t\u00eb cilat do t\u00eb z\u00eb 10 sekonda. Prandaj, koha mesatare e ekzekutimit \u00ebsht\u00eb (100+(110-10)+(120-10))3 = 103. \u00c7far\u00eb mund t\u00eb b\u00ebnte planifikuesi p\u00ebr t\u00eb p\u00ebrmir\u00ebsuar situat\u00ebn?<\/p>\n<h3>Shortest Time-to-Completion First (STCF)<\/h3>\n<p>\n P\u00ebr t\u00eb p\u00ebrmir\u00ebsuar situat\u00ebn, le t\u00eb heqim supozimin 3 q\u00eb programi \u00ebsht\u00eb ekzekutuar dhe punon deri n\u00eb p\u00ebrfundim. P\u00ebr m\u00eb tep\u00ebr, do t\u00eb na nevojitet mb\u00ebshtetja e pajisjeve dhe, si\u00e7 mund ta keni menduar, do t\u00eb p\u00ebrdorim <b>num\u00ebruesin<\/b> p\u00ebr t\u00eb nd\u00ebrprer\u00eb procesin e pun\u00ebs dhe <b>p\u00ebr t\u00eb ndezur kontekstet<\/b>. K\u00ebshtu, planifikuesi mund t\u00eb nd\u00ebrmarr\u00eb di\u00e7ka n\u00eb momentin e pranimit t\u00eb detyrave B dhe V \u2014 t\u00eb ndaloj\u00eb ekzekutimin e detyr\u00ebs A dhe t\u00eb vendos\u00eb p\u00ebr p\u00ebrpunim detyrat B dhe V, dhe pas p\u00ebrfundimit t\u00eb tyre t\u00eb vazhdoj\u00eb me procesin A. Ky lloj planifikuesi quhet <b>STCF<\/b>ose <b>Preemptive Job First<\/b>.<\/p>\n<p><img decoding=\"async\" alt=\"Sistemet Operative: Tre Pjesa t\u00eb Lehta. Pjesa 4: Hyrje n\u00eb planifikuesin (p\u00ebrkthim)\" src=\"\/wp-content\/uploads\/2019\/04\/81644f82b7b1489f239ebbdc5d78000b.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nRezultati i k\u00ebtij planifikuesi do t\u00eb jet\u00eb: ((120-0)+(20-10)+(30-10))\/3=50. Keshtu, ky planifikues b\u00ebhet edhe m\u00eb optimal p\u00ebr detyrat tona.<\/p>\n<h3>Metrika Koha e p\u00ebrgjigjes (Response Time)<\/h3>\n<p>\n K\u00ebshtu, n\u00ebse ne e dim\u00eb q\u00eb koha e pun\u00ebs s\u00eb detyrave dhe se k\u00ebto detyra p\u00ebrdorin vet\u00ebm CPU-n\u00eb, STCF do t\u00eb ishte zgjidhja m\u00eb e mir\u00eb. Dhe dikur n\u00eb koh\u00ebt e hershme, k\u00ebto algoritme punonin dhe mjaft mir\u00eb. Megjithat\u00eb tani, p\u00ebrdoruesi kalon shumic\u00ebn e koh\u00ebs para terminalit dhe pret nga ai nj\u00eb nd\u00ebrveprim t\u00ebrheq\u00ebs dhe efikas. K\u00ebshtu lindi metrika e re \u2014 <b>koh\u00eb p\u00ebrgjigjeje<\/b> (p\u00ebrgjigje).<\/p>\n<p>Koha e p\u00ebrgjigjes llogaritet si vijon:<\/p>\n<p><u>Tresponse=Tfirstrun\u2212Tarrival<\/u><\/p>\n<p>Prandaj, p\u00ebr shembullin e m\u00ebparsh\u00ebm, koha e p\u00ebrgjigjes do t\u00eb jet\u00eb k\u00ebshtu: A=0, B=0, C=10 (abg=3,33).<\/p>\n<p>Dhe rezulton se algoritmi STCF nuk \u00ebsht\u00eb aq i mir\u00eb n\u00eb situat\u00ebn kur 3 detyra mb\u00ebrrijn\u00eb nj\u00ebkoh\u00ebsisht \u2014 do t\u00eb duhet t\u00eb pres\u00eb derisa detyrat e vogla t\u00eb p\u00ebrfundojn\u00eb plot\u00ebsisht. Prandaj, algoritmi \u00ebsht\u00eb i mir\u00eb p\u00ebr metrik\u00ebn e koh\u00ebs s\u00eb kthes\u00ebs, por i keq p\u00ebr metrik\u00ebn e nd\u00ebrveprimit. Imagjinoni se duke qen\u00eb pas nj\u00eb terminali, n\u00eb p\u00ebrpjekje p\u00ebr t\u00eb shkruar simbole n\u00eb nj\u00eb editor, do t\u00eb keni p\u00ebr t\u00eb pritur m\u00eb shum\u00eb se 10 sekonda, sepse ndonj\u00eb detyr\u00eb tjet\u00ebr po z\u00eb procesorin. Kjo nuk \u00ebsht\u00eb shum\u00eb e k\u00ebndshme.<\/p>\n<p><img decoding=\"async\" alt=\"Sistemet Operative: Tre Pjesa t\u00eb Lehta. Pjesa 4: Hyrje n\u00eb planifikuesin (p\u00ebrkthim)\" src=\"\/wp-content\/uploads\/2019\/04\/f1412665826f845fdc685ec3c1a5bdad.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nPrandaj, p\u00ebrballohemi me nj\u00eb problem tjet\u00ebr \u2014 si mund t\u00eb nd\u00ebrtojm\u00eb nj\u00eb planifikues q\u00eb t\u00eb jet\u00eb i ndjesh\u00ebm ndaj koh\u00ebs s\u00eb p\u00ebrgjigjes?<\/p>\n<h3>Round Robin<\/h3>\n<p>\n P\u00ebr zgjidhjen e k\u00ebtij problemi \u00ebsht\u00eb zhvilluar nj\u00eb algorit\u00ebm <b>Round Robin<\/b> (RR). Ideja kryesore \u00ebsht\u00eb mjaft e thjesht\u00eb: n\u00eb vend q\u00eb t\u00eb fillojm\u00eb detyrat deri n\u00eb p\u00ebrfundim t\u00eb plot\u00eb, do t\u00eb nisim nj\u00eb detyr\u00eb p\u00ebr nj\u00eb interval t\u00eb caktuar kohe (t\u00eb quajtur kuant kohe) dhe pastaj do t\u00eb kalojm\u00eb n\u00eb nj\u00eb detyr\u00eb tjet\u00ebr nga radhitja. Algoritmi p\u00ebrs\u00ebrit pun\u00ebn e tij derisa t\u00eb gjitha detyrat t\u00eb p\u00ebrfundojn\u00eb. Gjat\u00ebsia e pun\u00ebs s\u00eb programit duhet t\u00eb jet\u00eb e pjestueshme me koh\u00ebn kur timer-i do t\u00eb nd\u00ebrpres\u00eb procesin. P\u00ebr shembull, n\u00ebse timer-i nd\u00ebrpret procesin \u00e7do x=10ms, at\u00ebher\u00eb madh\u00ebsia e dritares s\u00eb ekzekutimit t\u00eb procesit duhet t\u00eb jet\u00eb e pjestueshme me 10 dhe t\u00eb jet\u00eb 10, 20 ose x*10.<\/p>\n<p>Le t\u00eb shqyrtojm\u00eb nj\u00eb shembull: Detyrat A, B, C arrin nj\u00ebkoh\u00ebsisht n\u00eb sistem dhe secila prej tyre d\u00ebshiron t\u00eb punoj\u00eb p\u00ebr 5 sekonda. Algoritmi SJF do t\u00eb ekzekutoj\u00eb \u00e7do detyr\u00eb deri n\u00eb fund, p\u00ebrpara se t\u00eb nis\u00eb nj\u00eb tjet\u00ebr. N\u00eb kontrast, algoritmi RR me nj\u00eb dritare ekzekutimi=1s do t\u00eb kaloj\u00eb p\u00ebrmes detyrave si n\u00eb vijim (fig. 4.3):<\/p>\n<p><img decoding=\"async\" alt=\"Sistemet Operative: Tre Pjesa t\u00eb Lehta. Pjesa 4: Hyrje n\u00eb planifikuesin (p\u00ebrkthim)\" src=\"\/wp-content\/uploads\/2019\/04\/a7790cb63c880b286db2a2e3782d59b2.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n(SJF P\u00ebrs\u00ebri (Keq p\u00ebr Koha e P\u00ebrgjigjes)<\/p>\n<p><img decoding=\"async\" alt=\"Sistemet Operative: Tre Pjesa t\u00eb Lehta. Pjesa 4: Hyrje n\u00eb planifikuesin (p\u00ebrkthim)\" src=\"\/wp-content\/uploads\/2019\/04\/f7e82d68a6118828ea4561a4911744e2.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n(Round Robin (Mir\u00eb p\u00ebr Koha e P\u00ebrgjigjes)<\/p>\n<p>Koha mesatare e p\u00ebrgjigjes p\u00ebr algoritmin RR (0+1+2)\/3=1, nd\u00ebrsa p\u00ebr SJF (0+5+10)\/3=5.<\/p>\n<p>\u00cbsht\u00eb logjike t\u00eb supozohet se koha e dritares \u00ebsht\u00eb nj\u00eb parametr i r\u00ebnd\u00ebsish\u00ebm p\u00ebr RR, sa m\u00eb e vog\u00ebl t\u00eb jet\u00eb ajo, aq m\u00eb e lart\u00eb \u00ebsht\u00eb koha e p\u00ebrgjigjes. Megjithat\u00eb, nuk mund ta b\u00ebni at\u00eb shum\u00eb t\u00eb vog\u00ebl, pasi koha p\u00ebr t\u00eb kaluar mes konteksteve gjithashtu do t\u00eb luaj\u00eb rolin e vet n\u00eb performanc\u00ebn totale. Prandaj, zgjedhja e koh\u00ebs s\u00eb dritares s\u00eb ekzekutimit p\u00ebrcaktohet nga arkitekti i OS-s\u00eb dhe varet nga detyrat q\u00eb parashikohen t\u00eb ekzekutohen aty. Kalimi i konteksteve nuk \u00ebsht\u00eb operacioni i vet\u00ebm q\u00eb konsumon koh\u00eb \u2014 programi i ekzekutuar operon edhe me shum\u00eb gj\u00ebra t\u00eb tjera, p\u00ebr shembull me cache t\u00eb ndryshme dhe \u00e7do her\u00eb kur ndodh kalimi, \u00ebsht\u00eb e nevojshme t\u00eb ruhet dhe t\u00eb rikthehet kjo mjedis, gj\u00eb q\u00eb gjithashtu mund t\u00eb k\u00ebrkoj\u00eb shum\u00eb koh\u00eb.<\/p>\n<p>RR \u00ebsht\u00eb nj\u00eb planifikues i shk\u00eblqyer, n\u00ebse do flisnim vet\u00ebm p\u00ebr metriken e koh\u00ebs s\u00eb p\u00ebrgjigjes. Por si do t\u00eb sillet metrika e koh\u00ebs s\u00eb kthes\u00ebs s\u00eb detyr\u00ebs me k\u00ebt\u00eb algoritm? Le t\u00eb shqyrtojm\u00eb shembullin m\u00eb sip\u00ebr, ku koha e pun\u00ebs A, B, C = 5s dhe hyjn\u00eb n\u00eb t\u00eb nj\u00ebjt\u00ebn koh\u00eb. Detyra A do t\u00eb p\u00ebrfundoj\u00eb n\u00eb 13, B n\u00eb 14, C n\u00eb 15s, dhe koha e mesme e kthes\u00ebs do t\u00eb jet\u00eb 14s. Pra, RR \u00ebsht\u00eb algoritmi m\u00eb i dob\u00ebt p\u00ebr metrik\u00ebn e kthes\u00ebs.<\/p>\n<p>N\u00eb fjal\u00eb m\u00eb t\u00eb p\u00ebrgjithshme, \u00e7do algorit\u00ebm i tipit RR \u00ebsht\u00eb korrekt, ai ndan koh\u00ebn e p\u00ebrpunimit n\u00eb CPU n\u00eb m\u00ebnyr\u00eb t\u00eb barabart\u00eb midis t\u00eb gjith\u00eb proceseve. K\u00ebshtu, k\u00ebto metrika p\u00ebrplasen vazhdimisht me nj\u00ebra-tjetr\u00ebn.<\/p>\n<p>K\u00ebshtu, ne kemi disa algoritma n\u00eb kund\u00ebrshtim dhe gjithashtu mbeten disa supozime \u2014 lidhur me at\u00eb se koha e detyr\u00ebs \u00ebsht\u00eb e njohur dhe se detyra p\u00ebrdor vet\u00ebm CPU-n\u00eb.<\/p>\n<h3>P\u00ebrzierja me I\/O<\/h3>\n<p>\n S\u00eb pari, do t\u00eb heqim supozimin 4, q\u00eb procesi p\u00ebrdor vet\u00ebm CPU-n\u00eb; natyrisht, kjo nuk \u00ebsht\u00eb e v\u00ebrtet\u00eb dhe proceset mund t\u00eb aksesojn\u00eb edhe pajisje t\u00eb tjera.<\/p>\n<p>N\u00eb momentin kur nj\u00eb proces k\u00ebrkon nj\u00eb operacion I\/O, procesi kalon n\u00eb gjendjen e bllokuar, duke pritur p\u00ebr p\u00ebrfundimin e I\/O. N\u00ebse I\/O d\u00ebrgohet n\u00eb diskun e fort\u00eb, at\u00ebher\u00eb nj\u00eb operacion i till\u00eb mund t\u00eb zgjas\u00eb deri n\u00eb disa ms ose m\u00eb gjat\u00eb, dhe procesori p\u00ebr k\u00ebt\u00eb koh\u00eb do t\u00eb jet\u00eb i papun\u00eb. Gjat\u00eb k\u00ebsaj kohe, planifikuesi mund ta z\u00eb procesorin me ndonj\u00eb proces tjet\u00ebr. Zgjidhja tjet\u00ebr q\u00eb do t\u00eb duhet t\u00eb marr\u00eb planifikuesi \u00ebsht\u00eb \u2014 kur procesi do t\u00eb p\u00ebrfundoj\u00eb I\/O-n\u00eb e tij. Kur kjo ndodh, do t\u00eb ndodh\u00eb nj\u00eb nd\u00ebrprerje dhe OS do t\u00eb kaloj\u00eb procesin q\u00eb ka k\u00ebrkuar I\/O n\u00eb gjendjen e gatshme.<\/p>\n<p>T\u00eb shqyrtojm\u00eb nj\u00eb shembull nga disa detyra. \u00c7do nj\u00ebra prej tyre k\u00ebrkon 50ms koh\u00eb procesori. Megjithat\u00eb, e para do t\u00eb kontaktoj\u00eb me I\/O \u00e7do 10ms (i cili gjithashtu do t\u00eb ekzekutohet p\u00ebr 10ms). Nd\u00ebrsa procesi B thjesht p\u00ebrdor 50ms procesor pa I\/O.<\/p>\n<p><img decoding=\"async\" alt=\"Sistemet Operative: Tre Pjesa t\u00eb Lehta. Pjesa 4: Hyrje n\u00eb planifikuesin (p\u00ebrkthim)\" src=\"\/wp-content\/uploads\/2019\/04\/a32f5346eda86042c18d6424c19ad6b9.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nN\u00eb k\u00ebt\u00eb shembull do t\u00eb p\u00ebrdorim planifikuesin STCF. Si do t\u00eb sillet planifikuesi n\u00ebse aktivizojm\u00eb nj\u00eb proces si A? Ai do t\u00eb procedoj\u00eb si m\u00eb posht\u00eb \u2014 s\u00eb pari do t\u00eb p\u00ebrfundoj\u00eb plot\u00ebsisht procesin A, pastaj procesin B.<\/p>\n<p><img decoding=\"async\" alt=\"Sistemet Operative: Tre Pjesa t\u00eb Lehta. Pjesa 4: Hyrje n\u00eb planifikuesin (p\u00ebrkthim)\" src=\"\/wp-content\/uploads\/2019\/04\/9fb709a822b9fc35871b8a342ac38c7e.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nQasja tradicionale p\u00ebr zgjidhjen e k\u00ebsaj problemi \u00ebsht\u00eb t\u00eb interpretoj\u00eb \u00e7do n\u00ebn-detyr\u00eb 10ms t\u00eb procesit A si nj\u00eb detyr\u00eb t\u00eb ve\u00e7ant\u00eb. N\u00eb k\u00ebt\u00eb m\u00ebnyr\u00eb, kur fillojm\u00eb me algoritmin STJF, zgjedhja midis nj\u00eb detyre 50ms dhe nj\u00eb detyre 10ms \u00ebsht\u00eb e qart\u00eb. Pastaj, kur n\u00ebn-detyr\u00eb A p\u00ebrfundon, do t\u00eb nis\u00eb procesi B dhe I\/O. Pas p\u00ebrfundimit t\u00eb I\/O, do t\u00eb merret vendimi p\u00ebr t\u00eb nisur p\u00ebrs\u00ebri procesin 10ms A n\u00eb vend t\u00eb procesit B. K\u00ebshtu \u00ebsht\u00eb e mundur t\u00eb realizohet mbivendosja, kur CPU p\u00ebrdoret nga nj\u00eb proces tjet\u00ebr, nd\u00ebrsa i pari pret p\u00ebr I\/O. Dhe si rezultat, sistemi p\u00ebrdoret m\u00eb mir\u00eb \u2014 n\u00eb momentin kur proceset interaktive presin I\/O, mund t\u00eb ekzekutohen edhe procese t\u00eb tjera n\u00eb procesor.<\/p>\n<h3>Oracle nuk \u00ebsht\u00eb m\u00eb.<\/h3>\n<p>\n Tani do t\u00eb p\u00ebrpiqemi t\u00eb heqim dor\u00eb nga supozimi q\u00eb koha e ekzekutimit t\u00eb detyr\u00ebs \u00ebsht\u00eb e njohur. Kjo n\u00eb thelb \u00ebsht\u00eb supozimi m\u00eb i keq dhe m\u00eb i pabesuesh\u00ebm nga i gjith\u00eb lista. N\u00eb fakt, n\u00eb sistemet operative mesatare, vet\u00eb sistemi operacional zakonisht di shum\u00eb pak p\u00ebr koh\u00ebn e ekzekutimit t\u00eb detyrave, prandaj si mund t\u00eb nd\u00ebrtosh nj\u00eb planifikues pa e ditur se sa koh\u00eb do t\u00eb zgjas\u00eb nj\u00eb detyr\u00eb? Ndoshta mund t\u00eb p\u00ebrdorim disa parime t\u00eb RR p\u00ebr t\u00eb zgjidhur k\u00ebt\u00eb problem?<\/p>\n<h3>P\u00ebrfundimi<\/h3>\n<p>\n Ne shqyrtuam ide t\u00eb bazuara p\u00ebr planifikimin e detyrave dhe shqyrtuam dy familje planifikuesish. I pari nis detyr\u00ebn m\u00eb t\u00eb shkurt\u00ebr fillimisht dhe k\u00ebshtu rrit koh\u00ebn e p\u00ebrmbushjes, nd\u00ebrsa tjetri ndan koh\u00ebn e ekzekutimit n\u00eb m\u00ebnyr\u00eb t\u00eb barabart\u00eb mes t\u00eb gjitha detyrave, duke rritur koh\u00ebn e reagimit. T\u00eb dy algoritmet jan\u00eb t\u00eb k\u00ebqij atje ku algoritmet e nj\u00eb familjeje tjet\u00ebr jan\u00eb t\u00eb mira. Po ashtu shqyrtuam si p\u00ebrdorimi paralel i CPU dhe I\/O mund t\u00eb p\u00ebrmir\u00ebsoj\u00eb performanc\u00ebn, por nuk zgjidh\u00ebm problemin me vizionin e sistemit operativ. N\u00eb m\u00ebsimin e ardhsh\u00ebm, do t\u00eb shqyrtojm\u00eb nj\u00eb planifikues q\u00eb shikon n\u00eb t\u00eb kaluar\u00ebn e af\u00ebrt dhe p\u00ebrpiqet t\u00eb parashikoj\u00eb t\u00eb ardhmen. Ai quhet multi-level feedback queue.<br \/>\n<br \/>Burimi: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/449026\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0432 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u041f\u0440\u0438\u0432\u0435\u0442, \u0425\u0430\u0431\u0440! \u0425\u043e\u0447\u0443 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0432\u0430\u0448\u0435\u043c\u0443 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u044e \u0441\u0435\u0440\u0438\u044e \u0441\u0442\u0430\u0442\u0435\u0439-\u043f\u0435\u0440\u0435\u0432\u043e\u0434\u043e\u0432 \u043e\u0434\u043d\u043e\u0439 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e\u0439 \u043d\u0430 \u043c\u043e\u0439 \u0432\u0437\u0433\u043b\u044f\u0434 \u043b\u0438\u0442\u0435\u0440\u0430\u0442\u0443\u0440\u044b \u2014 OSTEP. \u0412 \u044d\u0442\u043e\u043c \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u0435 \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0433\u043b\u0443\u0431\u043e\u043a\u043e \u0440\u0430\u0431\u043e\u0442\u0430 unix-\u043f\u043e\u0434\u043e\u0431\u043d\u044b\u0445 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c, \u0430 \u0438\u043c\u0435\u043d\u043d\u043e \u2014 \u0440\u0430\u0431\u043e\u0442\u0430 \u0441 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430\u043c\u0438, \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u043c\u0438 \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a\u0430\u043c\u0438, \u043f\u0430\u043c\u044f\u0442\u044c\u044e \u0438 \u043f\u0440\u043e\u0447\u0438\u0438\u043c\u0438 \u043f\u043e\u0434\u043e\u0431\u043d\u044b\u043c\u0438 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430\u043c\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0442 \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e \u041e\u0421. \u041e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0432\u0441\u0435\u0445 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u043e\u0432 \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0432\u043e\u0442 \u0442\u0443\u0442. [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":23990,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-32158","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.0.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0432 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u041f\u0440\u0438\u0432\u0435\u0442, \u0425\u0430\u0431\u0440! \u0425\u043e\u0447\u0443 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0432\u0430\u0448\u0435\u043c\u0443 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u044e \u0441\u0435\u0440\u0438\u044e \u0441\u0442\u0430\u0442\u0435\u0439-\u043f\u0435\u0440\u0435\u0432\u043e\u0434\u043e\u0432 \u043e\u0434\u043d\u043e\u0439 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e\u0439 \u043d\u0430 \u043c\u043e\u0439 \u0432\u0437\u0433\u043b\u044f\u0434 \u043b\u0438\u0442\u0435\u0440\u0430\u0442\u0443\u0440\u044b \u2014 OSTEP. \u0412 \u044d\u0442\u043e\u043c \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u0435 \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0433\u043b\u0443\u0431\u043e\u043a\u043e \u0440\u0430\u0431\u043e\u0442\u0430 unix-\u043f\u043e\u0434\u043e\u0431\u043d\u044b\u0445 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c, \u0430 \u0438\u043c\u0435\u043d\u043d\u043e \u2014 \u0440\u0430\u0431\u043e\u0442\u0430 \u0441 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430\u043c\u0438, \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u043c\u0438 \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a\u0430\u043c\u0438, \u043f\u0430\u043c\u044f\u0442\u044c\u044e \u0438 \u043f\u0440\u043e\u0447\u0438\u0438\u043c\u0438 \u043f\u043e\u0434\u043e\u0431\u043d\u044b\u043c\u0438 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430\u043c\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0442 \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e \u041e\u0421. \u041e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0432\u0441\u0435\u0445 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u043e\u0432 \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0432\u043e\u0442 \u0442\u0443\u0442.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/operating-systems-three-easy-pieces-part-4-vvedenie-v-planirovshhik-perevod\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.0.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"sq_AL\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47Operating Systems: Three Easy Pieces. Part 4: \u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0432 \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a (\u043f\u0435\u0440\u0435\u0432\u043e\u0434) | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0432 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u041f\u0440\u0438\u0432\u0435\u0442, \u0425\u0430\u0431\u0440! \u0425\u043e\u0447\u0443 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0432\u0430\u0448\u0435\u043c\u0443 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u044e \u0441\u0435\u0440\u0438\u044e \u0441\u0442\u0430\u0442\u0435\u0439-\u043f\u0435\u0440\u0435\u0432\u043e\u0434\u043e\u0432 \u043e\u0434\u043d\u043e\u0439 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e\u0439 \u043d\u0430 \u043c\u043e\u0439 \u0432\u0437\u0433\u043b\u044f\u0434 \u043b\u0438\u0442\u0435\u0440\u0430\u0442\u0443\u0440\u044b \u2014 OSTEP. \u0412 \u044d\u0442\u043e\u043c \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u0435 \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0433\u043b\u0443\u0431\u043e\u043a\u043e \u0440\u0430\u0431\u043e\u0442\u0430 unix-\u043f\u043e\u0434\u043e\u0431\u043d\u044b\u0445 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c, \u0430 \u0438\u043c\u0435\u043d\u043d\u043e \u2014 \u0440\u0430\u0431\u043e\u0442\u0430 \u0441 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430\u043c\u0438, \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u043c\u0438 \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a\u0430\u043c\u0438, \u043f\u0430\u043c\u044f\u0442\u044c\u044e \u0438 \u043f\u0440\u043e\u0447\u0438\u0438\u043c\u0438 \u043f\u043e\u0434\u043e\u0431\u043d\u044b\u043c\u0438 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430\u043c\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0442 \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e \u041e\u0421. \u041e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0432\u0441\u0435\u0445 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u043e\u0432 \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0432\u043e\u0442 \u0442\u0443\u0442.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/operating-systems-three-easy-pieces-part-4-vvedenie-v-planirovshhik-perevod\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T18:45:27+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T18:45:27+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Sistemet Operative: Tre Pjes\u00eb t\u00eb Lehta. Pjesa 4: Hyrja n\u00eb planifikuesin (p\u00ebrkthim) | ProHoster","description":"Hyrje n\u00eb sistemet operative. P\u00ebrsh\u00ebndetje, Habr! Dua t\u00eb ju prezantoj me nj\u00eb seri artikujsh p\u00ebrkthimesh t\u00eb nj\u00eb let\u00ebrsie interesante sipas mendimit tim \u2014 OSTEP. N\u00eb k\u00ebt\u00eb material shqyrtohet thell\u00ebsisht funksionimi i sistemeve operative t\u00eb ngjashme me UNIX, ve\u00e7an\u00ebrisht m\u00ebnyra se si punojn\u00eb proceset, planifikuesit e ndrysh\u00ebm, memoria dhe komponent\u00ebt e tjera t\u00eb ngjashme q\u00eb formojn\u00eb nj\u00eb sistem operativ modern. Origjinali i t\u00eb gjith\u00eb materialeve mund t\u00eb shikohet k\u00ebtu.","canonical_url":"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/operating-systems-three-easy-pieces-part-4-vvedenie-v-planirovshhik-perevod","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sq_AL","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47Operating Systems: Three Easy Pieces. Part 4: \u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0432 \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a (\u043f\u0435\u0440\u0435\u0432\u043e\u0434) | ProHoster","og:description":"\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0432 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u041f\u0440\u0438\u0432\u0435\u0442, \u0425\u0430\u0431\u0440! \u0425\u043e\u0447\u0443 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0432\u0430\u0448\u0435\u043c\u0443 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u044e \u0441\u0435\u0440\u0438\u044e \u0441\u0442\u0430\u0442\u0435\u0439-\u043f\u0435\u0440\u0435\u0432\u043e\u0434\u043e\u0432 \u043e\u0434\u043d\u043e\u0439 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e\u0439 \u043d\u0430 \u043c\u043e\u0439 \u0432\u0437\u0433\u043b\u044f\u0434 \u043b\u0438\u0442\u0435\u0440\u0430\u0442\u0443\u0440\u044b \u2014 OSTEP. \u0412 \u044d\u0442\u043e\u043c \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u0435 \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0433\u043b\u0443\u0431\u043e\u043a\u043e \u0440\u0430\u0431\u043e\u0442\u0430 unix-\u043f\u043e\u0434\u043e\u0431\u043d\u044b\u0445 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c, \u0430 \u0438\u043c\u0435\u043d\u043d\u043e \u2014 \u0440\u0430\u0431\u043e\u0442\u0430 \u0441 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430\u043c\u0438, \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u043c\u0438 \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a\u0430\u043c\u0438, \u043f\u0430\u043c\u044f\u0442\u044c\u044e \u0438 \u043f\u0440\u043e\u0447\u0438\u0438\u043c\u0438 \u043f\u043e\u0434\u043e\u0431\u043d\u044b\u043c\u0438 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430\u043c\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0442 \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e \u041e\u0421. \u041e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0432\u0441\u0435\u0445 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u043e\u0432 \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0432\u043e\u0442 \u0442\u0443\u0442.","og:url":"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/operating-systems-three-easy-pieces-part-4-vvedenie-v-planirovshhik-perevod","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T18:45:27+00:00","article:modified_time":"2019-10-31T18:45:27+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"32158","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-21 09:34:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 03:03:25","updated":"2026-01-21 09:34:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts\/32158","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/comments?post=32158"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts\/32158\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/media\/23990"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/media?parent=32158"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/categories?post=32158"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/tags?post=32158"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}