6-Amaliy mashg’ulot Mavzu: ot samaradorligi monitoringi Ishdan maqsad


Amaliyot mashg’ulotlarini bajarish uchun topshiriqlar



Yüklə 5,52 Mb.
səhifə3/9
tarix17.05.2023
ölçüsü5,52 Mb.
#110840
1   2   3   4   5   6   7   8   9
6-10

Amaliyot mashg’ulotlarini bajarish uchun topshiriqlar:

1. Aomei backupper yoki Acronis true image dasturini o’rnatish


2. Operatsion tizimdan zahira nusxa olish
3. OT razdel (qism)laridan nusxa olish
4. Olingan nusxa yordamida kompyuterga uni tiklash
5. Olingan barcha natijalarni screen shotini olish va saqlash.


Nazorat uchun savollar:

  1. Operatsion tizim samaradorligi nima?

  2. Samaradorlik qanday oshirilishi mumkin?

  3. Aomei backupper qanday dastur?

  4. Acronis true image qanday dastur?

  5. Samaradorlikni oshirishda ushbu dasturlarni o’rni qanday?


















7-Amaliy mashg’ulot.


Mavzu: OTda ko’p protsessorli simmetrik qayta ishlash
Ishdan maqsad: Simmetrik ko'p protsessor tizimlarini ishlash prinsiplarini o`rganish
Nazariy qism



Thread - bu alohida bajarilish oqimi. Bu sizning dasturingizda bir vaqtning o'zida ikkita narsa sodir bo'lishini anglatadi. Ammo ko'pchilik Python 3 ilovalari uchun turli xil iplar bir vaqtning o'zida bajarilmaydi: ular shunchaki ko'rinadi.


Dasturingizda ikkita (yoki undan ko'p) turli protsessorlar ishlaydi, ularning har biri bir vaqtning o'zida mustaqil vazifani bajaradi deb o'ylash jozibali. Bu deyarli to'g'ri. Mavzular turli protsessorlarda ishlayotgan bo'lishi mumkin, lekin ular bir vaqtning o'zida faqat bitta ishlaydi.
Bir vaqtning o'zida bir nechta vazifalarni bajarish uchun Python-ning nostandart amalga oshirilishi, ba'zi kodlaringizni boshqa tilda yozish yoki qo'shimcha xarajatlar bilan birga keladigan ko'p ishlov berishdan foydalanish kerak.
Python-ning CPython-ni qo'llash usuli tufayli, iplarni ulash barcha vazifalarni tezlashtirmasligi mumkin. Bu GIL bilan o'zaro aloqalar bilan bog'liq bo'lib, u bir vaqtning o'zida bitta Python ipini ishlatishni cheklaydi.
Ko'p vaqtini tashqi hodisalarni kutishga sarflaydigan vazifalar, odatda, iplarni o'tkazish uchun yaxshi nomzodlardir. Og'ir protsessor hisoblashni talab qiladigan va tashqi hodisalarni kutish uchun oz vaqt sarflaydigan muammolar umuman tez ishlamasligi mumkin.
Bu Python-da yozilgan va standart CPython ilovasida ishlaydigan kod uchun amal qiladi. Agar sizning mavzularingiz C tilida yozilgan bo'lsa, ular GILni chiqarish va bir vaqtning o'zida ishlash imkoniyatiga ega. Agar siz boshqa Python ilovasida ishlayotgan bo'lsangiz, uning iplarni qanday ishlashini ko'rish uchun hujjatlar bilan tekshiring.
Agar siz standart Python ilovasini ishlatayotgan bo'lsangiz, faqat Python-da yozsangiz va protsessor bilan bog'liq muammo bo'lsa, uning o'rniga multiprocessing modulini tekshirishingiz kerak.
O'zingizning dasturingizni Threadlardan foydalanish uchun arxitektura qilish, shuningdek, dizayn ravshanligini oshirishi mumkin. Ushbu qo'llanmada siz o'rganadigan misollarning aksariyati tezroq ishlashi shart emas, chunki ular threadlardan foydalanadi. Ulardagi threadlardan foydalanish dizaynni yanada toza va mulohaza yuritishni osonlashtiradi.
Mavzuni boshlash
Endi siz thread nima ekanligi haqida tasavvurga ega bo'lganingizdan so'ng, keling, uni qanday yasashni o'rganamiz. Python standart kutubxonasi ushbu maqolada ko'rishingiz mumkin bo'lgan ko'pgina ibtidoiy elementlarni o'z ichiga olgan ish zarralarini taqdim etadi. Thread, ushbu modulda iplarni chiroyli tarzda qamrab oladi va ular bilan ishlash uchun toza interfeysni ta'minlaydi.

Alohida mavzuni boshlash uchun siz Thread misolini yaratasiz va keyin uni .start() ga aytasiz:



Agar siz ro'yxatga olish bayonotlarini ko'rib chiqsangiz, asosiy bo'lim mavzuni yaratish va boshlashni ko'rishingiz mumkin:

Mavzuni yaratganingizda, siz unga funktsiyani va ushbu funktsiyaga argumentlarni o'z ichiga olgan ro'yxatni o'tkazasiz. Bunday holda, siz Thread-ga thread_function() ni ishga tushirishni va uni argument sifatida 1 ni berishni aytasiz.

Siz mavzular uchun nom sifatida ketma-ket butun sonlardan foydalanasiz. Har bir mavzu uchun noyob nomni qaytaradigan threading.get_ident() mavjud, lekin ular odatda qisqa va oson o'qilishi mumkin emas.


thread_function() ning o'zi ko'p ish qilmaydi. U shunchaki ba'zi xabarlarni ular orasida time.sleep() bilan qayd qiladi.


Ushbu dasturni avvalgidek ishga tushirganingizda (yigirmanchi qator izohlangan holda), natija quyidagicha ko'rinadi:



Ko'p threadlar bilan ishlash


Misol kodi hozirgacha faqat ikkita thread bilan ishlagan: asosiy thread va siz thread bilan boshlagan. thread ob'ekti.
Ko'pincha siz bir nechta mavzularni boshlashni va ularni qiziqarli ishlarni qilishni xohlaysiz. Keling, buni qilishning qiyinroq usulini ko'rib chiqaylik, keyin siz osonroq usulga o'tasiz.
Bir nechta mavzularni boshlashning qiyinroq usuli bu siz allaqachon bilgan usul:

Yüklə 5,52 Mb.

Dostları ilə paylaş:
1   2   3   4   5   6   7   8   9




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©www.genderi.org 2024
rəhbərliyinə müraciət

    Ana səhifə