SlideShare une entreprise Scribd logo
1  sur  18
Лекц № 4
Нөөцийн төлөөх өрсөлдөөн,процессуудын
       синхрончлолын асуудал
   Нөөцийн төлөөх өрсөлдөөн үүсэх шалтгаан
    шийдэх энгийн аргууд

   Процессуудын хоорондын харилцан хамаарал

   Солбицолд тавигдах шаардлага

   Солбицлын асуудлыг шийдэх
Нөөцийн төлөөх өрсөлдөөн үүсэх
    шалтгаан шийдэх энгийн
            аргууд
Нөөцийн төлөөх өрсөлдөөн


  Солбицлын асуудал нь хамтран эзэмшиж
буй өгөгдөл рүү зэрэгцэн ажиллаж буй
процессууд нэгэн зэрэг хандах үед үүсдэг.

  Синхрончлолын асуудал нь ямар нэг
нөхцлөөр процессуудыг ажиллах, түр зогсох
үйлдлийг зохицуулах үед үүсдэг.
Нөөцийн төлөөх өрсөлдөөн

        Олон тооны процесс зэрэгцэн
          ажиллаж буй тохиолдолд ямар
          нэг нөөцийг ашиглах хэд хэдэн
          хүсэлт зэрэгцэн ирж болно. Энэ
          тохиолдолд хүсэлтийг хэрхэн
          зохицуулах вэ гэсэн асуудал гарч
          ирнэ.


Процессууд нөөцийг хамтран эзэмших асуудлыг
  шийдэхийн тулд дараах аргачлалуудыг ашиглана:
Нөөцийн төлөөх өрсөлдөөн


  Системд байгаа процессуудыг бүртэгдэг байх: -
систем дэх процессуудыг үйлдлийн систем процесс
удирдах блок ашиглан бүртгэнэ.

  Нөөц ба өгөгдлийг хамгаалдаг байх: - нөөц болон
өгөгдөлд процессын зүгээс зөвшөөрөлгүй хандах
боломжийг хааж өгөх хэрэгтэй. Хэрэв хандах
боломжтой бол нөөц хуваарилах, чөлөөлөх үйлдэл
өөрийн утгаа алдана.
Нөөцийн төлөөх өрсөлдөөн

  Процессын биелэлт нь бусад процессь систем
дэх процессын тооь процессын хурд зэргээс
хамаардаггүй байхаар зохион байгуулах: - процесс
бусдын шаардлагаар нөөцийг чөлөөлдөггүй байх
буюу өөрийн хэрэгцээг хангасан үедээ л нөөцийг
чөлөөлдөг байх хэрэгтэй.
Процессуудын хоорондын
    харилцан хамаарал
Процессуудын хоорондын харилцан
                хамаарал
   Систем    дэх    процессуудын     талаар бусад
процессуудын талаар ямар ч мэдээлэлг¿й байх ба
зºвхºн ººрт шаардлагатай нººцийн тºлºº бусадтай
ºрсºлдºх хэлбэрээх ажиллана.
   ªºðººð õýëáýë ïðîöåññ á¿ð ººðèéí øààðäëàãûã
õàíãàõûí òºëºº ë àæèëëàíà. Ýíý òîõèîëäîëä
ñèñòåìä äàðààõ àñóóäëóóä ¿¿ñ÷ áîëíî.
Процессуудын хоорондын харилцан
               хамаарал
   Ñîëáèöîë (mutual exlusion mutex):
   Нэг процессын эзэмшиж буй нөөцийг өөр нэгэн
процесс эзэмшихийг хүсч болно. Энэ тохиолдолыг
эгзэгтэй муж (critical section) гэж үзэн шийдвэрлэнэ.

  Түгжрэл (deadlock): Хоѐр процесс хоѐр нөөцийг
дараалан эзэмших тохиолдолд түгжрэл үүсдэг.

   Гачигдал (starvation): Гурван процесс нэг нөөцийг
эзэмшихийн төлөө өрсөлдөж байгаа. Энэ тохиолдолд
2 процесс нь тухайн нөөцийг ээлжлэн эзэмшинэ.
Гурав дах процесс нь цаашид хэвийн ажиллахад
хүндрэл үүсч гачигдалд орж байна.
Солбицолд тавих шаардлага
Солбицолд тавих шаардлага

   Солбицолд доор шаардлагуудыг тавьдаг.
• Нөөцийг эзэмшиж буй процессуудаас зөвхөн нэг нь
л эгзэгтэй мужид байх: -нөөцийг зөвхөн нэг л процесс
давуу эрхтэйгээр эзэмшинэ.

• Эгзэгтэй мужид орохыг хүссэн процесс тодорхой
бус шалтгаанаар зогсож болохгүй: -эгзэгтэй мужид
орохыг хүсэд эрхээ авсан процесс тасарвал бусад
процессын хувьд эгзэгтэй мужийг эзэмших эрхгүй
байх ба эгзэгтэй мужийг эзэмших эрх хэзээ ч
сэргэхгүй. Ингэснээр бусад процессын хувьд гачигдал,
түгжрэл үүсч болно.
Солбицолд тавих шаардлага

• Өөрийн эгзэгтэй бус мужид байгаа процесс
тасарвал бусад процессын үйл ажиллагаанд саад
болдоггүй байх

• Бусад процесс эгзэгтэй бус мужид байхгүй бол
процесс өөрийн эгзэгтэй мужид ямарваа нэгэн
хүлээлтгүйгээр орох ѐстой: - хэрэв процесс хэн
нэгнийг хүлээх юм бол гачигдал үүснэ. Үүнд
магадгүй дахин өөр ямар ч процесс эгзэгтэй
мужид орохгүй бол энх хүсэлт тавьсан процесс
хүлээсээр гачигдалд орно.
Солбицолд тавих шаардлага

• Процессын хурд, процессын тоо гэх мэтийг
тооцохгүй байх: - үйлдлийн системийг зохион
бүтээхдээ уян хатан байлгах үүднээс энэ
шаардлагыг тавьдаг.

• Процесс бүр тодорхой хугацаанд л эгзэгтэй
муждаа байх ѐстой: - хэрэв процесс эгзэгтэй
мужийг тодорхойгүй хугацаагаар эзэмших бол уг
нөөцөд хандахыг хүссэн бусад процесс гачигдалд
орно.
Солбицлын асуудлыг шийдэх
Солбицлын асуудлыг шийдэх


  Òåõíèê õàíãàìæèä ¿íäýñëýí ñолбицлын
асуудлыг шийдэх àðãà íü åðºíõèéäýý äàðààõ 2
õýñýãò õóâààãäàíà.
• Òàñàëäàë õîðèõ
• Ìàøèíû òóñãàé êîìàíä àøèãëàõ:
Солбицлын асуудлыг шийдэх


• Òàñàëäàë õîðèõ: ¿éëäëèéí ñèñòåìä ïðîöåññ íü
¿éëäëèéí ñèñòåìèéí ¿éë÷èëãýý ýñâýë òàñàëäàë
äóóäàãäòàë ¿ðãýëæëýí àæèëëàíà. Èéìýýñ
ñîëáèöëûã áàòàëãààæóóëàõûí òóëä òàñàëäëûã
õîðèõîä ë õàíãàëòòàé. Îëîí ïðîöåññûí ñèñòåìä
áóþó çýðýãöýý áîëîâñðóóëàëòûí ¿åä íýã ë ïðîöåññ
äýýð    òàñàëäëûã     õîðèõ   íü     ñîëáèöëûã
áàòàëãààæóóëàõ ¿éë àæèëëàãàà áîëæ ÷àäàõã¿é.
Солбицлын асуудлыг шийдэх


• Ìàøèíû òóñãàé êîìàíä: îëîí ïðîöåññîðûí
ñèñòåìä á¿õ ïðîöåññîðò òàñàëäàë õîðèõ àðãààð
ñîëáèöëûã áàòàëãààæóóëæ áîëíî. ̺í îëîí
ïðîöåññîðûí ñèñòåìèéí àðõèòåêòóðò á¿õ
ïðîöåññîð ñàíàõ îéí íýã ë ìóæèéã õàìòðàí
ýçýìøäýã áèëýý. Òåõíèê õàíãàìæèéã ÿìàð íýãýí
ñàíàõ îéí ìóæèä àøèãëàæ áîëîõóéöààð
ñîëáèöëûã áàòàëãààæóóëàõ àñóóäëûã øèéäýõ
õýä õýäýí ýíãèéí êîìàíäûã çîõèîí á¿òýýñýí
áàéäàã.

Contenu connexe

En vedette (9)

Lecture 3 os
Lecture 3 osLecture 3 os
Lecture 3 os
 
Lecture 4 is
Lecture 4 isLecture 4 is
Lecture 4 is
 
Lecture 13 os
Lecture 13 osLecture 13 os
Lecture 13 os
 
Lecture 3 is
Lecture 3 isLecture 3 is
Lecture 3 is
 
Lecture 6 os
Lecture 6 osLecture 6 os
Lecture 6 os
 
Lecture 9 os
Lecture 9 osLecture 9 os
Lecture 9 os
 
Lecture 10 os
Lecture 10 osLecture 10 os
Lecture 10 os
 
Lecture 10
Lecture 10Lecture 10
Lecture 10
 
Lecture 1
Lecture 1Lecture 1
Lecture 1
 

Plus de csms_student (13)

Lecture 14 os
Lecture 14 osLecture 14 os
Lecture 14 os
 
Lecture 15 os
Lecture 15 osLecture 15 os
Lecture 15 os
 
Lecture 11 os
Lecture 11 osLecture 11 os
Lecture 11 os
 
Lecture 8 os
Lecture 8 osLecture 8 os
Lecture 8 os
 
Lecture 5 os
Lecture 5 osLecture 5 os
Lecture 5 os
 
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 8
Lecture 8Lecture 8
Lecture 8
 
Lecture 6
Lecture 6Lecture 6
Lecture 6
 
Program
ProgramProgram
Program
 
Lecture 2
Lecture  2Lecture  2
Lecture 2
 
Lecture 2 IS
Lecture 2 ISLecture 2 IS
Lecture 2 IS
 

Lecture 4 os

  • 1. Лекц № 4 Нөөцийн төлөөх өрсөлдөөн,процессуудын синхрончлолын асуудал
  • 2. Нөөцийн төлөөх өрсөлдөөн үүсэх шалтгаан шийдэх энгийн аргууд  Процессуудын хоорондын харилцан хамаарал  Солбицолд тавигдах шаардлага  Солбицлын асуудлыг шийдэх
  • 3. Нөөцийн төлөөх өрсөлдөөн үүсэх шалтгаан шийдэх энгийн аргууд
  • 4. Нөөцийн төлөөх өрсөлдөөн Солбицлын асуудал нь хамтран эзэмшиж буй өгөгдөл рүү зэрэгцэн ажиллаж буй процессууд нэгэн зэрэг хандах үед үүсдэг. Синхрончлолын асуудал нь ямар нэг нөхцлөөр процессуудыг ажиллах, түр зогсох үйлдлийг зохицуулах үед үүсдэг.
  • 5. Нөөцийн төлөөх өрсөлдөөн Олон тооны процесс зэрэгцэн ажиллаж буй тохиолдолд ямар нэг нөөцийг ашиглах хэд хэдэн хүсэлт зэрэгцэн ирж болно. Энэ тохиолдолд хүсэлтийг хэрхэн зохицуулах вэ гэсэн асуудал гарч ирнэ. Процессууд нөөцийг хамтран эзэмших асуудлыг шийдэхийн тулд дараах аргачлалуудыг ашиглана:
  • 6. Нөөцийн төлөөх өрсөлдөөн Системд байгаа процессуудыг бүртэгдэг байх: - систем дэх процессуудыг үйлдлийн систем процесс удирдах блок ашиглан бүртгэнэ. Нөөц ба өгөгдлийг хамгаалдаг байх: - нөөц болон өгөгдөлд процессын зүгээс зөвшөөрөлгүй хандах боломжийг хааж өгөх хэрэгтэй. Хэрэв хандах боломжтой бол нөөц хуваарилах, чөлөөлөх үйлдэл өөрийн утгаа алдана.
  • 7. Нөөцийн төлөөх өрсөлдөөн Процессын биелэлт нь бусад процессь систем дэх процессын тооь процессын хурд зэргээс хамаардаггүй байхаар зохион байгуулах: - процесс бусдын шаардлагаар нөөцийг чөлөөлдөггүй байх буюу өөрийн хэрэгцээг хангасан үедээ л нөөцийг чөлөөлдөг байх хэрэгтэй.
  • 8. Процессуудын хоорондын харилцан хамаарал
  • 9. Процессуудын хоорондын харилцан хамаарал Систем дэх процессуудын талаар бусад процессуудын талаар ямар ч мэдээлэлг¿й байх ба зºвхºн ººрт шаардлагатай нººцийн тºлºº бусадтай ºрсºлдºх хэлбэрээх ажиллана. ªºðººð õýëáýë ïðîöåññ á¿ð ººðèéí øààðäëàãûã õàíãàõûí òºëºº ë àæèëëàíà. Ýíý òîõèîëäîëä ñèñòåìä äàðààõ àñóóäëóóä ¿¿ñ÷ áîëíî.
  • 10. Процессуудын хоорондын харилцан хамаарал Ñîëáèöîë (mutual exlusion mutex): Нэг процессын эзэмшиж буй нөөцийг өөр нэгэн процесс эзэмшихийг хүсч болно. Энэ тохиолдолыг эгзэгтэй муж (critical section) гэж үзэн шийдвэрлэнэ. Түгжрэл (deadlock): Хоѐр процесс хоѐр нөөцийг дараалан эзэмших тохиолдолд түгжрэл үүсдэг. Гачигдал (starvation): Гурван процесс нэг нөөцийг эзэмшихийн төлөө өрсөлдөж байгаа. Энэ тохиолдолд 2 процесс нь тухайн нөөцийг ээлжлэн эзэмшинэ. Гурав дах процесс нь цаашид хэвийн ажиллахад хүндрэл үүсч гачигдалд орж байна.
  • 12. Солбицолд тавих шаардлага Солбицолд доор шаардлагуудыг тавьдаг. • Нөөцийг эзэмшиж буй процессуудаас зөвхөн нэг нь л эгзэгтэй мужид байх: -нөөцийг зөвхөн нэг л процесс давуу эрхтэйгээр эзэмшинэ. • Эгзэгтэй мужид орохыг хүссэн процесс тодорхой бус шалтгаанаар зогсож болохгүй: -эгзэгтэй мужид орохыг хүсэд эрхээ авсан процесс тасарвал бусад процессын хувьд эгзэгтэй мужийг эзэмших эрхгүй байх ба эгзэгтэй мужийг эзэмших эрх хэзээ ч сэргэхгүй. Ингэснээр бусад процессын хувьд гачигдал, түгжрэл үүсч болно.
  • 13. Солбицолд тавих шаардлага • Өөрийн эгзэгтэй бус мужид байгаа процесс тасарвал бусад процессын үйл ажиллагаанд саад болдоггүй байх • Бусад процесс эгзэгтэй бус мужид байхгүй бол процесс өөрийн эгзэгтэй мужид ямарваа нэгэн хүлээлтгүйгээр орох ѐстой: - хэрэв процесс хэн нэгнийг хүлээх юм бол гачигдал үүснэ. Үүнд магадгүй дахин өөр ямар ч процесс эгзэгтэй мужид орохгүй бол энх хүсэлт тавьсан процесс хүлээсээр гачигдалд орно.
  • 14. Солбицолд тавих шаардлага • Процессын хурд, процессын тоо гэх мэтийг тооцохгүй байх: - үйлдлийн системийг зохион бүтээхдээ уян хатан байлгах үүднээс энэ шаардлагыг тавьдаг. • Процесс бүр тодорхой хугацаанд л эгзэгтэй муждаа байх ѐстой: - хэрэв процесс эгзэгтэй мужийг тодорхойгүй хугацаагаар эзэмших бол уг нөөцөд хандахыг хүссэн бусад процесс гачигдалд орно.
  • 16. Солбицлын асуудлыг шийдэх Òåõíèê õàíãàìæèä ¿íäýñëýí ñолбицлын асуудлыг шийдэх àðãà íü åðºíõèéäýý äàðààõ 2 õýñýãò õóâààãäàíà. • Òàñàëäàë õîðèõ • Ìàøèíû òóñãàé êîìàíä àøèãëàõ:
  • 17. Солбицлын асуудлыг шийдэх • Òàñàëäàë õîðèõ: ¿éëäëèéí ñèñòåìä ïðîöåññ íü ¿éëäëèéí ñèñòåìèéí ¿éë÷èëãýý ýñâýë òàñàëäàë äóóäàãäòàë ¿ðãýëæëýí àæèëëàíà. Èéìýýñ ñîëáèöëûã áàòàëãààæóóëàõûí òóëä òàñàëäëûã õîðèõîä ë õàíãàëòòàé. Îëîí ïðîöåññûí ñèñòåìä áóþó çýðýãöýý áîëîâñðóóëàëòûí ¿åä íýã ë ïðîöåññ äýýð òàñàëäëûã õîðèõ íü ñîëáèöëûã áàòàëãààæóóëàõ ¿éë àæèëëàãàà áîëæ ÷àäàõã¿é.
  • 18. Солбицлын асуудлыг шийдэх • Ìàøèíû òóñãàé êîìàíä: îëîí ïðîöåññîðûí ñèñòåìä á¿õ ïðîöåññîðò òàñàëäàë õîðèõ àðãààð ñîëáèöëûã áàòàëãààæóóëæ áîëíî. ̺í îëîí ïðîöåññîðûí ñèñòåìèéí àðõèòåêòóðò á¿õ ïðîöåññîð ñàíàõ îéí íýã ë ìóæèéã õàìòðàí ýçýìøäýã áèëýý. Òåõíèê õàíãàìæèéã ÿìàð íýãýí ñàíàõ îéí ìóæèä àøèãëàæ áîëîõóéöààð ñîëáèöëûã áàòàëãààæóóëàõ àñóóäëûã øèéäýõ õýä õýäýí ýíãèéí êîìàíäûã çîõèîí á¿òýýñýí áàéäàã.