SlideShare a Scribd company logo
1 of 37
Хичээл №7
   Хоорондоо харилцаж буй буюу нөөцийн төлөө
    хоорондоо өрсөлдөж буй процессууд цаашид
    ажиллах боломжгүй болох үзэгдлийг түгжрэл гэж
    нэрлэдэг.
   Зайлсхийх, шийдэх төгс арга байдаггүй
   Хоѐр буюу түүнээс дээш тооны процессод
    тохиолдно.
a)    Òүãæðýë   үүñýõ   á) Òүãæðýë үүññýí
ìàãàäëàëòàé


     Çóðàã 6.1 Òүãæðýëèéí æèøýý
À Ïðîöåññ                 Á Ïðîöåññ
...                       ...
80Êá ñàíàõ îé õүñýõ      70Êá ñàíàõ îé õүñýõ
 ...                      ...

60Êá ñàíàõ îé õүñýõ      80Êá ñàíàõ îé õүñýõ



  Àëãîðèòì 6.1 Òүãæðýë үүñ÷ áîëîõ ïðîöåññóóä
   Солбицол (mutual exclusion)
    ◦ Нөөцөд зөвхөн нэг зэрэг зөвхөн нэг л процесс хандаж,
      ашиглаж байж болно.
   Эзэмшээд хүлээх (Hold and Wait)
    ◦ Ямар нэгэн процесс нөөцийг эзэмшээд бусад процессод
      нөөц хуваарилахыг хүлээж байж болно.
   Хүчээр суллахгүй байх (No Preemption)
    ◦ Процессын эзэмшиж буй нөөцийг нь хүчээр чөлөөлж
      болохгүй.
    ◦ Эдгээр 3 нөхцөл нь түгжрэл үүсгэх магадлалтай ч ямагт
      түгжрэл үүсгэнэ гэж үзэж болохгүй. Харин дөрөв дэх
      нөхцөл үүссэнээр системд түгжрэл үүсдэг.
   Тойрон хүлээх (Circular wait)
    ◦ Бусад процессод шаардлагатай байгаа нөөцийг эзэмшсэн
      процессуудын битүү гинжин хэлхээ олдож байгаа үед
      тойрон хүлээлт үүссэн байна гэж үздэг. Энгийнээр
      тайлбарлавал А процссод шаардлагатай нөөцийг Б
      процесс эзэмшсэн, Б процессод шаардлагатай нөөцийг А
      процесс эзэмшсэн байхад тойрон хүлээлт үүсдэг
   Тойрон хүлээх (Circular wait)
   Солбицол (mutual exclusion)
   Эзэмшээд хүлээх (Hold and Wait)
   Хүчээр суллахгүй байх (No Preemption)
   Солбицол (mutual exclusion)
   Эзэмшээд хүлээх (Hold and Wait)
   Хүчээр суллахгүй байх (No Preemption)
   Тойрон хүлээх (Circular wait)
   Солбицол
    ◦ Солбицлын асуудлыг бүрэн арилгах боломжгүй. Зарим
      тохиолдолд солбицлыг арилгаж болдог ч ерөнхий
      тохиолдолд энэ нь боломжгүй. Иймээс ч солбицлын
      асуудлыг хэрхэн үүсгэхгүй байхыг бус харин энэ асуудлыг
      оновчтойгоор шийдэх арга хайх тал дээр судлаачид
      ажилладаг.
   Эзэмшээд хүлээх
    ◦ Энэ асуудлыг процесс өөртөө шаардлагатай бүх нөөцийг
      нэг дор шаарддаг байхаар зохион байгуулснаар шийдэж
      болно.
   Хүчээр суллахгүй байх
    ◦ Процессын эзэмшиж буй нөөцийг төлөвлөлтийн ямар
      нэгэн шалгуур ашиглан үйлдлийн систем суллах
      боломжтой байснаар энэ нөхцөл байдлыг арилгаж болно
   Тойрон хүлээх
    ◦ Нөөцийг хүсэх шугаман дараалал тогтоосноор тойрон
      хүлээх асуудлыг шийдэж болно.
   Процессыг үүсгэснээр түгжрэлд орох магадлалтай
    эсэхийг ҮСистемийн үйл ажиллагааны явцад
    динамикаар шалгана
   Процессын нөөцийн хүсэлтийг урьдчилан мэдэж
    байх хэрэгтэй
   Процесс үүссэнээр систем түгжрэлд орох
    магадлалтай бол процессыг үүсгэх хүсэлтийг
    няцаах
   Нөөц хуваарилах хүсэлтийг биелүүлснээр систем
    түгжрэлд орох магадлалтай бол нөөцийг
    хуваарилахгүй байх
   Банкирын алгоритм гэж нэрлэдэг
   Системийн төлөв – системл тухайн мөчид нөөц
    хуваарилсан байдал
   Аюулгүй төлөв - Түгжрэлд оролгүйгээр бүх
    процессууд ажиллаж дуусах ядаж нэг боломж байх
    төлвийг аюулгүй төлөв гэе.
   Аюултай төлөв - Аюулгүй биш төлөв
   R вектор - Системд нөөцийн төрөл бүр нийт
    ямар хэмжээтэй байгааг (байсныг) заана
   V вектор - Системд нөөцийн төрөл бүр яг одоо
    ямар хэмжээтэй байгааг заана.
   С матриц - Процесс бүр ямар хэмжээний нөөц
    хүссэнийг илэрхийлнэ.
   А матриц - Процесс бүр яг одоо ямар хэмжээний
    нөөц эзэмшиж байгааг илэрхийлнэ.
Ñ ìàòðèö              À ìàòðèö             Ñ-À



           R âåêòîð         V âåêòîð


  Çóðàã 6.3à Íөөö õóâààðèëñàí áàéäàë (àíõíû òөëөâ)
Ñ ìàòðèö              À ìàòðèö                 Ñ-À




           R âåêòîð           V âåêòîð
                  Ð2 ïðîöåññ àæèëëàæ äóóññàí

  Çóðàã 6.3á Ð2 ïðîöåññ àæèëëàæ äóóññàí áàéíà
Ñ ìàòðèö              À ìàòðèö                Ñ-À



           R âåêòîð           V âåêòîð
                 Ð1 ïðîöåññ àæèëëàæ äóóññàí

 Çóðàã 6.3â Ð1 ïðîöåññ àæèëëàæ äóóññàí áàéíà
Ñ ìàòðèö               À ìàòðèö            Ñ-À



           R âåêòîð            V âåêòîð
              Ð3 ïðîöåññ àæèëëàæ äóóññàí


 Çóðàã 6.3ã Ð3 ïðîöåññ àæèëëàæ äóóññàí áàéíà
   Р2, Р1, Р3 процессууд ажиллаж дууссаны дараа Р4
    процесс ажиллаж дуусна.
   Зураг 6.3а –д байгаа төлөв аюулгүй төлөв юм.
Ñ ìàòðèö              À ìàòðèö              Ñ-À



           R âåêòîð         V âåêòîð
                àíõíû òөëөâ
Çóðàã 6.4à Íөөö õóâààðèëñàí áàéäàë (àíõíû òөëөâ)
Ñ ìàòðèö               À ìàòðèö            Ñ-À



             R âåêòîð             V âåêòîð
              Ð1 ïðîöåññûí õүñýëòèéã
              áèåëүүëñýí áàéíà
Çóðàã 6.4á Ð1 ïðîöåññûí õүñýëòèéã áèåëүүëñýí áàéíà
àþóëòàé
           òөëөâ
àþóëãүé
 òөëөâ
          òүãæðýëè
          éí òөëөâ
   Процесс өөрийн эзэмших шаардлагатай нөөцийг
    байнга урьдчилан мэдэгдэж чадахгүй. Жишээ :
    Санах ойг динамикаар хүсэх тохиолдол байнга
    гардаг.
   Хугацааны тодорхой интервалд л ажилладаг буюу
    өндөр хурд шаарддаг (жишээ : бодит хугацааны
    үйлдлийн систем) үйлдлийн системд банкирын
    алгоритмыг ажиллуулах боломжгүй.
R âåêòîð



    Q ìàòðèö               À ìàòðèö
                                             V âåêòîð


Çóðàã 6.6 Òүãæðýëèéã èëðүүëýõ àëãîðèòìàä àøèãëàõ өãөãäëèéí
                          áүòöүүä
   1. А матрицад, харгалзах мөр нь хоосон байх
    процессуудыг тэмдэглэ.
   2. V вектортой анхны утга нь тэнцүү байх түр зуурын W
    вектор авна.
   3. Өмнө нь тэмдэглэгдээгүй i дугаартай процессыг олж Q
    матрицад түүнд харгалзах i-р мөр нь QikWk (k=1,m) байх
    i-р мөрийг олно. Хэрэв шаардлага хангах мөр олдохгүй бол
    алгоритмыг төгсгөнө.
   4. Хэрэв шаардлага хангах мөр 3-р алхамд олдсон бол i-р
    процессыг тэмдэглээд уг процессод оноосон нөөцийг
    сулласан гэж үз. (Wk=Wk+Aik, i=1,k). 3-р алхам руу шилж.
   Алгоритм ажиллаж дуусахад тэмдэглэгдээгүй
    процессууд нь түгжрэлд орсон процесс юм.
   Алгоритм нь нөөц хуваарилаагүй процесс
    түгжрэлд ороогүй гэж үзнэ.
   Ямар нэг дарааллаар процессуудын нөөц хүсэх
    хүсэлтийг биелүүлсэн гэж үзээд, эцэст нь
    түгжрэлд орсон процессуудыг гарган ирдэг.
   1.    Р4 процессыг тэмдэглэ (Р4 процесс нь ямар ч
    нөөц эзэмшээгүй байна).
   2. W=(0, 0, 0, 0, 1) утгатайгаар авна.
   3. Р3 процесс нь QW шаардлагыг хангаж байгаа
    тул W=W+(0, 0, 0, 1, 0)=(0, 0, 0, 1, 1) болох ба Р3
    процессыг тэмдэглэнэ.
   4. Алгоритмыг төгсгө.
   Бүх түгжрэлд орсон процессуудыг таслах
   Процессуудын үйл ажиллагааг хугацааны тодорхой
    давтамжтайгаар сануулж явах хэрэгтэй
    (сануулахад байсан төлвийг буцалтын цэг гэж
    нэрлэе) ба түгжрэлд орсон процессуудыг буцалтын
    цэгээс нь эхлэн ажиллуулах
   Түгжрэлд орсон процессуудыг ээлж дараалан,
    түгжрэлгүй болтол нь таслах. Энэ үед яг аль
    процессыг таслах нь сонголтын асуудалтай юм.
    Процессыг таслах болгонд түгжрэлийг илрүүлэх
    алгоритмыг ажиллуулж байх хэрэгтэй.
   Нөөцүүдийг ээлж дараалан, түгжрэлгүй болтол нь
    суллах.
   3 –р аргад аль процессыг таслахыг шийдэх аргууд
    ◦   Процессорыг хамгийн бага хугацааанд эзэмшсэн
    ◦   Гаралтын мэдээллийг хамгийн бага гаргасан
    ◦   Ажиллаж дуусахад хамгийн их хугацаа үлдсэн
    ◦   Хамгийн бага нөөц эзэмшиж байгаа
    ◦   Хамгийн бага зэрэглэлтэй
   Орчин үеийн үйлдлийн системд түгжрэл үүсэх
    магадлал улам бүр багассаар л байна.
   Тэмээн хяруулын алгоритм (ostrich algorithm)
    ◦ Түгжрэл үүсэх асуудлыг үл анхаарах
    ◦ Энд тэмээн хяруул нь элсэнд толгойгоо нуудагтай
      адилаар түгжрэлийн асуудал үүсээгүй буюу огт ийм
      асуудал байхгүй мэтээр үйлдлийн системээ зохион
      бүтээдэг.
   5 философич хамт амьдардаг. Тэд амьдралынхаа
    турш бодох, идэх ажлыг л хийдэг ба хоолны ширээ
    нь тойрог хэлбэртэй. Ширээний голд том саванд
    гоймон (философичдод хамгийн тохирсон хоол гэж
    үзсэн) хийсэн ба 5 савхыг (хос савх бус нэг л ширхэг
    савх) ширээ тойруулан тавьсан
   Философич өлсвөл ширээ тойруулан тавьсан 5
    суудлын нэгэнд суун (мэдээж уг суудал дээр өөр хүн
    сууж байгаа бол давхарлан сууж болохгүй) өөрийн
    баруун ба зүүн талд байгаа савхыг эхлээд зүүн
    талд байгаа савхаа дараа нь баруун талд байгаа
    савхаа аван (нэг зэрэг хоѐр савх авч болохгүй)
    ширээний голд байгаа гоймонгоос иддэг.
    Хэрэв өөрийнх нь авах ѐстой савхыг өөр хэн нэгэн
    авсан бол тэр савх сулрахыг хүлээнэ. Аль ч
    философич хоѐр савхтай байж л хоол идэх
    боломжтой болдог. Бодлогын нөхцөлд өгсөн
    шаардлагыг хангахуйцаар философичид хоол идэх
    боломжийг хангах алгоритм зохио
Çóðàã 6.7 Õîîëëîæ áóé ôèëîñîôè÷äèéí
               áîäëîãî

More Related Content

Viewers also liked

М.Даариймаа - Ажлын гүйцэтгэлийн удирдлага
М.Даариймаа - Ажлын гүйцэтгэлийн удирдлагаМ.Даариймаа - Ажлын гүйцэтгэлийн удирдлага
М.Даариймаа - Ажлын гүйцэтгэлийн удирдлагаbatnasanb
 
CPU, MEMORIA, REGISTROS, UNIDAD ARITMETICO-LOGICA
CPU, MEMORIA, REGISTROS, UNIDAD ARITMETICO-LOGICACPU, MEMORIA, REGISTROS, UNIDAD ARITMETICO-LOGICA
CPU, MEMORIA, REGISTROS, UNIDAD ARITMETICO-LOGICAobhyguan
 

Viewers also liked (12)

Lecture 13 os
Lecture 13 osLecture 13 os
Lecture 13 os
 
Lecture 15 os
Lecture 15 osLecture 15 os
Lecture 15 os
 
Lecture 8 os
Lecture 8 osLecture 8 os
Lecture 8 os
 
Lecture 12 os
Lecture 12 osLecture 12 os
Lecture 12 os
 
Lecture 11 os
Lecture 11 osLecture 11 os
Lecture 11 os
 
Lecture 6 os
Lecture 6 osLecture 6 os
Lecture 6 os
 
Lecture 10 os
Lecture 10 osLecture 10 os
Lecture 10 os
 
Lecture 9 os
Lecture 9 osLecture 9 os
Lecture 9 os
 
Lecture 8
Lecture 8Lecture 8
Lecture 8
 
Lecture 14 os
Lecture 14 osLecture 14 os
Lecture 14 os
 
М.Даариймаа - Ажлын гүйцэтгэлийн удирдлага
М.Даариймаа - Ажлын гүйцэтгэлийн удирдлагаМ.Даариймаа - Ажлын гүйцэтгэлийн удирдлага
М.Даариймаа - Ажлын гүйцэтгэлийн удирдлага
 
CPU, MEMORIA, REGISTROS, UNIDAD ARITMETICO-LOGICA
CPU, MEMORIA, REGISTROS, UNIDAD ARITMETICO-LOGICACPU, MEMORIA, REGISTROS, UNIDAD ARITMETICO-LOGICA
CPU, MEMORIA, REGISTROS, UNIDAD ARITMETICO-LOGICA
 

More from csms_student (13)

Lecture 6 is
Lecture 6 isLecture 6 is
Lecture 6 is
 
Lecture 15
Lecture 15Lecture 15
Lecture 15
 
Lecture 12
Lecture 12Lecture 12
Lecture 12
 
Lecture 6
Lecture 6Lecture 6
Lecture 6
 
Lecture 14
Lecture 14Lecture 14
Lecture 14
 
Lecture 4 is
Lecture 4 isLecture 4 is
Lecture 4 is
 
Lecture 3 is
Lecture 3 isLecture 3 is
Lecture 3 is
 
Lecture 3 os
Lecture 3 osLecture 3 os
Lecture 3 os
 
Program
ProgramProgram
Program
 
Lecture 2
Lecture  2Lecture  2
Lecture 2
 
Lecture 2 IS
Lecture 2 ISLecture 2 IS
Lecture 2 IS
 
Lecture 1
Lecture 1Lecture 1
Lecture 1
 
Lecture 1 IS
Lecture 1 ISLecture 1 IS
Lecture 1 IS
 

Lecture 7 os

  • 2. Хоорондоо харилцаж буй буюу нөөцийн төлөө хоорондоо өрсөлдөж буй процессууд цаашид ажиллах боломжгүй болох үзэгдлийг түгжрэл гэж нэрлэдэг.  Зайлсхийх, шийдэх төгс арга байдаггүй  Хоѐр буюу түүнээс дээш тооны процессод тохиолдно.
  • 3. a) Òүãæðýë үүñýõ á) Òүãæðýë үүññýí ìàãàäëàëòàé Çóðàã 6.1 Òүãæðýëèéí æèøýý
  • 4. À Ïðîöåññ Á Ïðîöåññ ... ... 80Êá ñàíàõ îé õүñýõ 70Êá ñàíàõ îé õүñýõ ... ... 60Êá ñàíàõ îé õүñýõ 80Êá ñàíàõ îé õүñýõ Àëãîðèòì 6.1 Òүãæðýë үүñ÷ áîëîõ ïðîöåññóóä
  • 5. Солбицол (mutual exclusion) ◦ Нөөцөд зөвхөн нэг зэрэг зөвхөн нэг л процесс хандаж, ашиглаж байж болно.  Эзэмшээд хүлээх (Hold and Wait) ◦ Ямар нэгэн процесс нөөцийг эзэмшээд бусад процессод нөөц хуваарилахыг хүлээж байж болно.
  • 6. Хүчээр суллахгүй байх (No Preemption) ◦ Процессын эзэмшиж буй нөөцийг нь хүчээр чөлөөлж болохгүй. ◦ Эдгээр 3 нөхцөл нь түгжрэл үүсгэх магадлалтай ч ямагт түгжрэл үүсгэнэ гэж үзэж болохгүй. Харин дөрөв дэх нөхцөл үүссэнээр системд түгжрэл үүсдэг.  Тойрон хүлээх (Circular wait) ◦ Бусад процессод шаардлагатай байгаа нөөцийг эзэмшсэн процессуудын битүү гинжин хэлхээ олдож байгаа үед тойрон хүлээлт үүссэн байна гэж үздэг. Энгийнээр тайлбарлавал А процссод шаардлагатай нөөцийг Б процесс эзэмшсэн, Б процессод шаардлагатай нөөцийг А процесс эзэмшсэн байхад тойрон хүлээлт үүсдэг
  • 7. Тойрон хүлээх (Circular wait)
  • 8. Солбицол (mutual exclusion)  Эзэмшээд хүлээх (Hold and Wait)  Хүчээр суллахгүй байх (No Preemption)
  • 9. Солбицол (mutual exclusion)  Эзэмшээд хүлээх (Hold and Wait)  Хүчээр суллахгүй байх (No Preemption)  Тойрон хүлээх (Circular wait)
  • 10. Солбицол ◦ Солбицлын асуудлыг бүрэн арилгах боломжгүй. Зарим тохиолдолд солбицлыг арилгаж болдог ч ерөнхий тохиолдолд энэ нь боломжгүй. Иймээс ч солбицлын асуудлыг хэрхэн үүсгэхгүй байхыг бус харин энэ асуудлыг оновчтойгоор шийдэх арга хайх тал дээр судлаачид ажилладаг.
  • 11. Эзэмшээд хүлээх ◦ Энэ асуудлыг процесс өөртөө шаардлагатай бүх нөөцийг нэг дор шаарддаг байхаар зохион байгуулснаар шийдэж болно.  Хүчээр суллахгүй байх ◦ Процессын эзэмшиж буй нөөцийг төлөвлөлтийн ямар нэгэн шалгуур ашиглан үйлдлийн систем суллах боломжтой байснаар энэ нөхцөл байдлыг арилгаж болно
  • 12. Тойрон хүлээх ◦ Нөөцийг хүсэх шугаман дараалал тогтоосноор тойрон хүлээх асуудлыг шийдэж болно.
  • 13. Процессыг үүсгэснээр түгжрэлд орох магадлалтай эсэхийг ҮСистемийн үйл ажиллагааны явцад динамикаар шалгана  Процессын нөөцийн хүсэлтийг урьдчилан мэдэж байх хэрэгтэй
  • 14. Процесс үүссэнээр систем түгжрэлд орох магадлалтай бол процессыг үүсгэх хүсэлтийг няцаах  Нөөц хуваарилах хүсэлтийг биелүүлснээр систем түгжрэлд орох магадлалтай бол нөөцийг хуваарилахгүй байх
  • 15. Банкирын алгоритм гэж нэрлэдэг  Системийн төлөв – системл тухайн мөчид нөөц хуваарилсан байдал  Аюулгүй төлөв - Түгжрэлд оролгүйгээр бүх процессууд ажиллаж дуусах ядаж нэг боломж байх төлвийг аюулгүй төлөв гэе.  Аюултай төлөв - Аюулгүй биш төлөв
  • 16. R вектор - Системд нөөцийн төрөл бүр нийт ямар хэмжээтэй байгааг (байсныг) заана  V вектор - Системд нөөцийн төрөл бүр яг одоо ямар хэмжээтэй байгааг заана.  С матриц - Процесс бүр ямар хэмжээний нөөц хүссэнийг илэрхийлнэ.  А матриц - Процесс бүр яг одоо ямар хэмжээний нөөц эзэмшиж байгааг илэрхийлнэ.
  • 17. Ñ ìàòðèö À ìàòðèö Ñ-À R âåêòîð V âåêòîð Çóðàã 6.3à Íөөö õóâààðèëñàí áàéäàë (àíõíû òөëөâ)
  • 18. Ñ ìàòðèö À ìàòðèö Ñ-À R âåêòîð V âåêòîð Ð2 ïðîöåññ àæèëëàæ äóóññàí Çóðàã 6.3á Ð2 ïðîöåññ àæèëëàæ äóóññàí áàéíà
  • 19. Ñ ìàòðèö À ìàòðèö Ñ-À R âåêòîð V âåêòîð Ð1 ïðîöåññ àæèëëàæ äóóññàí Çóðàã 6.3â Ð1 ïðîöåññ àæèëëàæ äóóññàí áàéíà
  • 20. Ñ ìàòðèö À ìàòðèö Ñ-À R âåêòîð V âåêòîð Ð3 ïðîöåññ àæèëëàæ äóóññàí Çóðàã 6.3ã Ð3 ïðîöåññ àæèëëàæ äóóññàí áàéíà
  • 21. Р2, Р1, Р3 процессууд ажиллаж дууссаны дараа Р4 процесс ажиллаж дуусна.  Зураг 6.3а –д байгаа төлөв аюулгүй төлөв юм.
  • 22. Ñ ìàòðèö À ìàòðèö Ñ-À R âåêòîð V âåêòîð àíõíû òөëөâ Çóðàã 6.4à Íөөö õóâààðèëñàí áàéäàë (àíõíû òөëөâ)
  • 23. Ñ ìàòðèö À ìàòðèö Ñ-À R âåêòîð V âåêòîð Ð1 ïðîöåññûí õүñýëòèéã áèåëүүëñýí áàéíà Çóðàã 6.4á Ð1 ïðîöåññûí õүñýëòèéã áèåëүүëñýí áàéíà
  • 24. àþóëòàé òөëөâ àþóëãүé òөëөâ òүãæðýëè éí òөëөâ
  • 25. Процесс өөрийн эзэмших шаардлагатай нөөцийг байнга урьдчилан мэдэгдэж чадахгүй. Жишээ : Санах ойг динамикаар хүсэх тохиолдол байнга гардаг.  Хугацааны тодорхой интервалд л ажилладаг буюу өндөр хурд шаарддаг (жишээ : бодит хугацааны үйлдлийн систем) үйлдлийн системд банкирын алгоритмыг ажиллуулах боломжгүй.
  • 26. R âåêòîð Q ìàòðèö À ìàòðèö V âåêòîð Çóðàã 6.6 Òүãæðýëèéã èëðүүëýõ àëãîðèòìàä àøèãëàõ өãөãäëèéí áүòöүүä
  • 27. 1. А матрицад, харгалзах мөр нь хоосон байх процессуудыг тэмдэглэ.  2. V вектортой анхны утга нь тэнцүү байх түр зуурын W вектор авна.  3. Өмнө нь тэмдэглэгдээгүй i дугаартай процессыг олж Q матрицад түүнд харгалзах i-р мөр нь QikWk (k=1,m) байх i-р мөрийг олно. Хэрэв шаардлага хангах мөр олдохгүй бол алгоритмыг төгсгөнө.  4. Хэрэв шаардлага хангах мөр 3-р алхамд олдсон бол i-р процессыг тэмдэглээд уг процессод оноосон нөөцийг сулласан гэж үз. (Wk=Wk+Aik, i=1,k). 3-р алхам руу шилж.
  • 28. Алгоритм ажиллаж дуусахад тэмдэглэгдээгүй процессууд нь түгжрэлд орсон процесс юм.  Алгоритм нь нөөц хуваарилаагүй процесс түгжрэлд ороогүй гэж үзнэ.  Ямар нэг дарааллаар процессуудын нөөц хүсэх хүсэлтийг биелүүлсэн гэж үзээд, эцэст нь түгжрэлд орсон процессуудыг гарган ирдэг.
  • 29. 1. Р4 процессыг тэмдэглэ (Р4 процесс нь ямар ч нөөц эзэмшээгүй байна).  2. W=(0, 0, 0, 0, 1) утгатайгаар авна.  3. Р3 процесс нь QW шаардлагыг хангаж байгаа тул W=W+(0, 0, 0, 1, 0)=(0, 0, 0, 1, 1) болох ба Р3 процессыг тэмдэглэнэ.  4. Алгоритмыг төгсгө.
  • 30. Бүх түгжрэлд орсон процессуудыг таслах  Процессуудын үйл ажиллагааг хугацааны тодорхой давтамжтайгаар сануулж явах хэрэгтэй (сануулахад байсан төлвийг буцалтын цэг гэж нэрлэе) ба түгжрэлд орсон процессуудыг буцалтын цэгээс нь эхлэн ажиллуулах
  • 31. Түгжрэлд орсон процессуудыг ээлж дараалан, түгжрэлгүй болтол нь таслах. Энэ үед яг аль процессыг таслах нь сонголтын асуудалтай юм. Процессыг таслах болгонд түгжрэлийг илрүүлэх алгоритмыг ажиллуулж байх хэрэгтэй.  Нөөцүүдийг ээлж дараалан, түгжрэлгүй болтол нь суллах.
  • 32. 3 –р аргад аль процессыг таслахыг шийдэх аргууд ◦ Процессорыг хамгийн бага хугацааанд эзэмшсэн ◦ Гаралтын мэдээллийг хамгийн бага гаргасан ◦ Ажиллаж дуусахад хамгийн их хугацаа үлдсэн ◦ Хамгийн бага нөөц эзэмшиж байгаа ◦ Хамгийн бага зэрэглэлтэй
  • 33. Орчин үеийн үйлдлийн системд түгжрэл үүсэх магадлал улам бүр багассаар л байна.  Тэмээн хяруулын алгоритм (ostrich algorithm) ◦ Түгжрэл үүсэх асуудлыг үл анхаарах ◦ Энд тэмээн хяруул нь элсэнд толгойгоо нуудагтай адилаар түгжрэлийн асуудал үүсээгүй буюу огт ийм асуудал байхгүй мэтээр үйлдлийн системээ зохион бүтээдэг.
  • 34. 5 философич хамт амьдардаг. Тэд амьдралынхаа турш бодох, идэх ажлыг л хийдэг ба хоолны ширээ нь тойрог хэлбэртэй. Ширээний голд том саванд гоймон (философичдод хамгийн тохирсон хоол гэж үзсэн) хийсэн ба 5 савхыг (хос савх бус нэг л ширхэг савх) ширээ тойруулан тавьсан
  • 35. Философич өлсвөл ширээ тойруулан тавьсан 5 суудлын нэгэнд суун (мэдээж уг суудал дээр өөр хүн сууж байгаа бол давхарлан сууж болохгүй) өөрийн баруун ба зүүн талд байгаа савхыг эхлээд зүүн талд байгаа савхаа дараа нь баруун талд байгаа савхаа аван (нэг зэрэг хоѐр савх авч болохгүй) ширээний голд байгаа гоймонгоос иддэг.
  • 36. Хэрэв өөрийнх нь авах ѐстой савхыг өөр хэн нэгэн авсан бол тэр савх сулрахыг хүлээнэ. Аль ч философич хоѐр савхтай байж л хоол идэх боломжтой болдог. Бодлогын нөхцөлд өгсөн шаардлагыг хангахуйцаар философичид хоол идэх боломжийг хангах алгоритм зохио
  • 37. Çóðàã 6.7 Õîîëëîæ áóé ôèëîñîôè÷äèéí áîäëîãî