Operatsion tizim Kirish-chiqish tizimi


Download 22.54 Kb.
Sana15.06.2023
Hajmi22.54 Kb.
#1485578
Bog'liq
Operatsion tizim Kirish-chiqish tizimi


Operatsion tizim Kirish-chiqish tizimi
Operatsion tizimning kirish chiqishi muhim funktsiya bo'lib, Kirish chiqish boshqaruvi sifatida tanilgan. Ushbu o'quv qo'llanma Operatsion tizim tomonidan ishlatiladigan Kirish Chiqish tizimi va quyi tizim tushunchalarini qamrab oladi.

Keling, har bir tushunchani batafsil tushunaylik.

Kirish-chiqish tizimi nima?
Kirish-chiqarish tizimi kompyuter xotirasi va tashqi dunyo o'rtasida ma'lumotlarni uzatadi.

Kirish chiqish tizimi kirish-chiqish operatsiyalari ketma-ketligi orqali kirish-chiqish tranzaktsiyasini amalga oshirish uchun kirish-chiqish qurilmalari, kirish-chiqish boshqaruv bloki va dasturiy ta'minotdan iborat.

Kirish-chiqish qurilmalari
Kirish-chiqish qurilmalari kompyuter tizimlarida juda muhim ahamiyatga ega. Ular foydalanuvchilarga tizim bilan o'zaro aloqada bo'lish vositalarini taqdim etadi. I/o qurilmalarini boshqarish uchun alohida I/n tizimi mavjud.

Kirish-chiqish tizimining komponentlari


I/o tizimlarining turli komponentlari quyidagilardan iborat.

Kirish-chiqish apparati


Kirish chiqishi Ilova interfeysi
Kirish chiqish uchun dasturiy ta'minot
Keling, har birini alohida tushunaylik.

I/l Uskuna


Sichqoncha, klaviatura, disk drayveri va boshqalar kabi operatsion tizim tomonidan boshqariladigan ko'plab I/s qurilmalari mavjud.
Muayyan qurilmani boshqarish uchun operatsion tizimga ulanishi mumkin bo'lgan turli xil qurilma drayverlari mavjud.
Qurilma nazoratchisi qurilma va qurilma drayveri o'rtasidagi interfeysdir.
Kirish/chiqarish qurilmalari - bu kompyuter tizimidagi kiritish/chiqarish operatsiyalari uchun mas'ul bo'lgan qurilmalar.
Asosan quyidagi ikki turdagi kirish/chiqish qurilmalari mavjud:

Qurilmalarni bloklash


Belgilar qurilmalari
Qurilmalarni bloklash

Blok qurilmasi ma'lumotni ma'lum o'lchamdagi blokda saqlaydigan qurilma bo'lib, har bir blok o'z manziliga ega.


Blok qurilmasida har bir blok mustaqil ravishda o'qilishi yoki yozilishi mumkin.
Disk bo'lsa, har doim boshqa silindrni izlash mumkin va keyin qo'lning qayerda ekanligidan qat'i nazar, kerakli blokning bosh ostida aylanishini kutish mumkin.
Shuning uchun disk bloklangan manzilli qurilmadir.
Belgilar qurilmalari

Belgilar qurilmasi hech qanday blok tuzilmasidan foydalanmasdan belgilar oqimini qabul qiladi/etkazib beradi.


Belgilar qurilmasiga murojaat qilib bo‘lmaydi.
Belgilar qurilmasida hech qanday qidiruv operatsiyasi mavjud emas.
Kompyuter tizimida printer, sichqonlar, kalamushlar, tarmoq interfeyslari va boshqalar kabi belgilar juda ko'p. Bu to'rtta umumiy belgilar qurilmalari.

Buni ko'rsatadigan diagramma:

operatsion tizimning kirish chiqishi

I/I Ilova interfeysi


Foydalanuvchi ilovalari qurilmaga xos kodlar bo'lgan qurilma drayverlari yordamida barcha I/s qurilmalariga kirishlari mumkin.
Ilova qatlami barcha qurilmalar uchun umumiy interfeysni ko'radi.
Aksariyat qurilmalar bloklangan I/o yoki belgilar I/o qurilmalardir.
Bloklash qurilmalariga bir vaqtning o'zida bitta blokdan foydalanish mumkin bo'lsa, bir vaqtning o'zida bir belgili qurilmalarga kirish mumkin.
I/l dasturiy ta'minoti
I/ o dasturiy ta'minoti foydalanuvchi darajasidagi kutubxonalar va yadro modullarini o'z ichiga oladi .
Kutubxonalar kirish va chiqishni amalga oshirish uchun foydalanuvchi dasturiga interfeysni taqdim etadi.
Yadro modullari qurilma boshqaruvchilari bilan o'zaro ta'sir qiluvchi qurilma drayverlarini ta'minlaydi.
I/o dasturiy ta'minoti qurilmadan mustaqil bo'lishi kerak, shunda dasturlar har qanday I/qurilma uchun oldindan ko'rsatilmagan holda ishlatilishi mumkin.
Misol uchun - faylni o'qiydigan dastur qattiq diskda, floppi diskda, CD-RosM va boshqalarda faylni o'qiy olishi kerak . har safar dasturni o'zgartirmasdan.
Parallel ishlov berish nima?
Parallel ishlov berish jarayonlar alohida qismlarga bo'lingan va har bir qism bir vaqtning o'zida bajariladigan arxitektura sifatida aniqlanadi. Jarayonlarni bitta emas, balki bir nechta protsessor yadrolarida ishga tushirish orqali vazifalarni bajarish uchun ketadigan vaqt ancha past bo'ladi. Parallel hisoblashning asosiy maqsadi murakkab vazifalarni oson ishlov berish uchun yanada yaxshi ishlash va muammolarni hal qilish qobiliyatini oshirish uchun oddiy bosqichlarga bo'linishini ta'minlashdir.

Jarayonlarning turli qismlari bir nechta protsessorlarda ishlaydi va bu turli qismlar umumiy xotira orqali bog'lanadi. Turli jarayonlar ishga tushirilgandan va tugallangandan so'ng, ular bitta yechimni ta'minlash uchun oxirida birlashtiriladi.

Parallel ishlov berish an'anaviy hisoblashning evolyutsiyasidir. Vazifalar murakkablashganda va bu vazifalarni qayta ishlash vaqtlari juda uzoq davom etganda, an'anaviy hisoblash devorga tegdi. Bundan tashqari, bunday vazifalar ko'pincha ko'proq quvvat sarflaydi va aloqa va masshtablash muammolariga ega. Bunday muammolarni oldini olish uchun ularni hal qilish uchun parallel ishlov berish yaratildi va shu bilan birga bir nechta yadrolar yordamida jarayonlar tugallanishini ta'minlaydi.

Parallel ishlov berish bir nechta mashinani o'rganish algoritmlari va AI platformalari uchun asosiy kontseptsiyani tashkil qiladi . ML/AI algoritmlari an'anaviy ravishda bitta protsessorli muhitda ishga tushirildi, bu esa ishlashdagi qiyinchiliklarga olib keldi. Biroq, parallel hisoblashning joriy etilishi ma'lumotlar fanlari va mashinalarni o'rganish platformalaridan foydalanuvchilarga turli jarayonlar va vazifalarni bajaradigan bir vaqtning o'zida bajariladigan iplardan foydalanishga imkon beradi.

Parallel ishlov berish dasturi
Xususiyat yoki atama sifatida parallel ishlov berishni eslatuvchi dasturiy ta'minot.

Teradata Vantage

Amazon Redshift

VMware Greenplum

SAP HANA buluti

Oracle ma'lumotlar bazasi

Vertika
Parallel ishlov berish turlari
Xususiy yoki ochiq manbaga qarab, parallel hisoblash quyida keltirilgan to'rt xil turga ega:

Bit darajasidagi parallelizm: Parallel hisoblashning bu turida protsessor so'z hajmi kattalashtiriladi. Jarayonlar hajmi protsessor so'z hajmidan kattaroq bo'lgan o'zgaruvchilar ustida operatsiyalarni bajarish uchun kamroq ko'rsatmalarga ega bo'ladi.


Yo'riqnoma darajasidagi parallellik: Parallel hisoblashning ushbu turida boshqaruvchi apparat yoki dasturiy ta'minot turli xil ish vaqti ko'rsatmalarini belgilaydi. Masalan, apparat nuqtai nazaridan protsessor turli ko'rsatmalarning ishlash vaqtini va qaysi buyruq parallel ravishda bajarilishi kerakligini hal qiladi. Dasturiy ta'minot nuqtai nazaridan, dastur yoki kompilyator maksimal ishlashni ta'minlash uchun qaysi ko'rsatmalar parallel ravishda ishlashi kerakligini hal qiladi.
Vazifa parallelizmi: bir vaqtning o'zida bir nechta turli vazifalar bajariladi. Odatda, bu turli vazifalarning barchasi kechikishlar va uzluksiz ishlashni ta'minlash uchun bir xil ma'lumotlarga kirish huquqiga ega.
Superword darajasidagi parallelizm: Ushbu turdagi parallelizm bir vaqtning o'zida ishlash uchun turli xil vazifalarni yaratish uchun ichki koddan foydalanadi.
Parallel ishlov berishdan foydalanishning afzalliklari
Parallel ishlov berishning bir nechta afzalliklari quyidagilardan iborat:
Umumiy tejash: Parallel ishlov berish foydalanuvchilarga vaqt va xarajatlarni tejashga yordam beradi. Bitta vazifani bajarish vaqti bir vaqtning o'zida turli protsessorlarda bir xil vazifani bajarish bilan solishtirganda juda yuqori. Vaqtni tejashga qo'shimcha ravishda, xarajatlarni tejash asosiy afzallikdir, chunki u resurslardan samarali foydalanadi. Kichik miqyosda bu qimmat bo'lsa-da, bir vaqtning o'zida milliardlab operatsiyalarni boshqarish xarajatlarni sezilarli darajada kamaytiradi.
Dinamik tabiat: Haqiqiy muammolarni hal qilish va samarali echimlarni topish uchun turli xil ma'lumotlar nuqtalarining bir vaqtning o'zida mavjudligini ta'minlash uchun dinamik simulyatsiya va modellashtirishga e'tibor qaratish tobora muhim ahamiyat kasb etmoqda. Parallel ishlov berish bir vaqtning o'zida bir nechta muammolarning dinamik tabiatini qo'llab-quvvatlaydigan foyda keltiradi.
Optimallashtirilgan resurslardan foydalanish: Klassik, an'anaviy ishlov berishda butun apparat yoki dasturiy ta'minot ishlatilmasligi, qolganlari esa ishlamay qolishi mumkin. Biroq, parallel ishlov berishda, vazifalar ajratilgan va alohida bajarilganligi sababli, tezroq ishlov berish vaqtini ta'minlash uchun uskunadan ko'proq foydalaniladi.
Murakkab ma'lumotlar to'plamlarini boshqarish: Ma'lumotlarning rivojlanishi va o'sishi bilan ma'lumotlar toza va foydalanishga yaroqli bo'lib qolishiga ishonch hosil qilish qiyin. Ma'lumotlar to'plamlari murakkablashmoqda va an'anaviy ishlov berish katta, tuzilmagan va murakkab ma'lumotlar to'plamlarini boshqarishning eng yaxshi usuli bo'lmasligi mumkin.
Parallel ishlov berishdan foydalanishning ta'siri
Parallel ishlov berishning asosiy ta'siridan ba'zilari:

Superkompyuter imkoniyatlari: Parallel hisoblashlardan foydalanishning asosiy afzalliklaridan biri shundaki, u superkompyuterlarga juda murakkab vazifalarni qisqa vaqt ichida hal qilishga yordam beradi. Superkompyuterlar - bu juda murakkab vazifani kichikroq vazifalarga bo'lish va kichikroq vazifalar ustida ishlash orqali parallel hisoblash printsipi asosida ishlaydigan mashinalar. Parallel ishlov berish qobiliyati superkompyuterlarga iqlim o'zgarishi, sog'liqni saqlash, kosmik, kriptologiya, kimyo va boshqa ko'plab sohalar uchun modellarni sinovdan o'tkazish kabi bir qancha muhim muammolar ustida ishlashga yordam beradi.


O'zaro funktsional vertikal imtiyozlar: Parallel ishlov berish deyarli barcha sohalarga ta'sir qiladi, kiberxavfsizlikdan sog'liqni saqlash, chakana savdo va boshqalar. Turli sohalarda duch keladigan muammolar bilan bog'liq algoritmlarni ishlab chiqish orqali parallel ishlov berish tezroq ishlov berish vaqtini ta'minlaydi va tarmoqlar bo'yicha foyda, xarajatlar va cheklovlarni tushunishga yordam beradi.
Katta ma'lumotlarni qo'llab-quvvatlash : Ma'lumotlar miqdori ko'plab sohalarda kengayib borar ekan, bu katta ma'lumotlar to'plamlarini boshqarish tobora qiyinlashib bormoqda. Parallel ishlov berish katta ma'lumotlar portlashiga ta'sir qiladi, chunki bu kompaniyalar va korxonalar uchun ushbu ma'lumotlar to'plamlarini boshqarish vaqtini sezilarli darajada qisqartiradi. Bundan tashqari, tuzilgan va tuzilmagan ma'lumotlarning aralashmasi katta hajmdagi ma'lumotlarni qayta ishlash uchun yuqori turdagi hisoblashni talab qiladi - bu erda parallel ishlov berish muhim ta'sir ko'rsatadi.
Parallel ishlov berish va ketma-ket ishlov berish
Ketma-ket ishlov berish - bu vazifalar ketma-ket bajariladigan ishlov berish turi sifatida aniqlanadi. Vazifalar parallel ishlov berishdagidek yonma-yon emas, birma-bir bajariladi. Seriyali va parallel ishlov berish o'rtasidagi asosiy farqlardan ba'zilari quyidagilardir:
Seriyali ishlov berishda bitta protsessor, parallel ishlov berishda esa bir nechta protsessor ishlatiladi
Seriyali ishlov berishda faqat bitta protsessor bo'lganligi sababli, ishlov beriladigan ish yuki bir protsessor tomonidan ancha yuqori bo'ladi, bu parallel ishlov berishda bo'lmaydi.
Seriyali ishlov berish turli vazifalarni bajarish uchun ko'proq vaqt talab etadi, chunki ular birin-ketin bajariladi, parallel ishlov berishda esa bir vaqtning o'zida bajariladi.
Multiprocessing nima?
Ko'p ishlov berish tizimi ikkitadan ortiq protsessorga ega. Tizimga protsessorlar qo'shiladi, bu tizimning hisoblash tezligini oshirishga yordam beradi. Har bir protsessor o'z registrlari va asosiy xotirasiga ega.

Biroq, har bir protsessor alohida bo'lgani uchun, bitta protsessorda ishlov beradigan hech narsa bo'lmasligi mumkin. Bitta protsessor bo'sh o'tirishi mumkin, ikkinchisi esa muayyan jarayonlar bilan ortiqcha yuklangan bo'lishi mumkin. Bunday holda, jarayon va resurslar protsessorlar o'rtasida dinamik ravishda taqsimlanadi.

Multithreading nima?
Multithreading - bu bitta jarayonga bir nechta kod segmentlariga (masalan, iplar) ega bo'lish imkonini beruvchi dasturni bajarish texnikasi. Shuningdek, u ushbu jarayonning "konteksti" doirasida bir vaqtning o'zida ishlaydi. Ko'p tarmoqli ilovalar - bu bir vaqtning o'zida ishlaydigan ikki yoki undan ortiq ipga ega bo'lgan ilovalar. Shuning uchun u parallellik deb ham ataladi.

Ko'p ishlov berishning xususiyatlari


Ko'p ishlov berishning asosiy xususiyatlari:

Ko'p ishlov berish xotirani tashkil qilish usuliga ko'ra tasniflanadi.


Ko'p ishlov berish tizimning ishonchliligini oshiradi
Ko'p ishlov berish dasturni parallel bajariladigan vazifalarga ajratish orqali ish faoliyatini yaxshilashi mumkin.
Multithreading xususiyatlari
Ko'p ish zarralarining muhim jihatlari:

Ko'p qirrali jarayonda har bir ip bir-biriga parallel ravishda ishlaydi.


Mavzular xotira maydonini ajratishga imkon bermaydi. Shuning uchun u xotirani tejaydi va dasturning yaxshi ishlashini taklif qiladi
Multiprocessing va multithreading o'rtasidagi farq
Bu erda Multithreading va Multiprocessing o'rtasidagi muhim farqlar mavjud

Parametr Ko'p ishlov berish Ko'p tarmoqli


Asosiy Multiprocessing sizga hisoblash quvvatini oshirishga yordam beradi. Multithreading hisoblash quvvatini oshirish uchun bitta jarayonning hisoblash iplarini yaratishga yordam beradi.
Ijro Bu bir vaqtning o'zida bir nechta jarayonlarni bajarishga imkon beradi. Bitta jarayonning bir nechta iplari bir vaqtning o'zida bajariladi.
CPU almashinuvi Multiprocessingda protsessor bir vaqtning o'zida bir nechta dastur ishlayotgandek ko'rinishi uchun bir nechta dasturlarni almashtirishi kerak. Ko'p ish zarrachalarida protsessor bir vaqtning o'zida barcha oqimlar ishlayotgandek ko'rinishi uchun bir nechta ish zarrachalari o'rtasida almashishi kerak.
Yaratilish Jarayonni yaratish sekin va resursga xosdir. Ipni yaratish vaqt va resurs jihatidan tejamkor.
Tasniflash Ko'p ishlov berish nosimmetrik yoki assimetrik bo'lishi mumkin. Multithreading tasniflanmagan.
Xotira Multiprocessing har bir jarayon yoki dastur uchun alohida xotira va resurslarni ajratadi. Xuddi shu jarayonga tegishli bo'lgan ko'p ish zarrachalari jarayon bilan bir xil xotira va resurslarni baham ko'radi.
Ob'ektlarni tuzlash Multithreading tuzlashdan saqlaydi. Ko'p ishlov berish boshqa jarayonlarga yuborish uchun xotiradagi ob'ektlarni yig'ishga tayanadi.
Dastur Multiprocessing tizimi bir nechta dastur va vazifalarni bajarishga imkon beradi. Multithreading tizimi bir xil yoki turli jarayonlarning bir nechta iplarini bajaradi.
Olingan vaqt Ishni qayta ishlashga kamroq vaqt sarflanadi. Ishni qayta ishlash uchun o'rtacha vaqt ajratiladi.
Ko'p ishlov berishning afzalligi
Ko'p ishlov berishning kamchiliklari / afzalliklari:
Ko'p protsessorli tizimning eng katta afzalligi shundaki, u qisqa vaqt ichida ko'proq ishni bajarishga yordam beradi.
Kod odatda oddiy.
Bir nechta protsessor va yadrolardan foydalanadi
CPython uchun GIL cheklovlaridan qochishga yordam beradi
Agar umumiy xotiradan foydalanmasangiz, sinxronizatsiya primitivlarini olib tashlang.
Bolalar jarayonlari asosan uzilishi/o'ldirilishi mumkin
Bu sizga ishni qisqa vaqt ichida bajarishga yordam beradi.
Ushbu turdagi tizimlar katta hajmdagi ma'lumotlarni qayta ishlash uchun juda yuqori tezlik talab qilinganda qo'llanilishi kerak.
Ko'p ishlov berish tizimlari yagona protsessorli tizimlarga nisbatan pulni tejaydi, chunki protsessorlar tashqi qurilmalar va quvvat manbalarini almashishi mumkin.
Multithreadingning afzalligi
Mana, ko'p ish zarralarining afzalliklari/foydalari:

Mavzular bir xil manzil maydoniga ega


Mavzular engil bo'lib, xotirada kam joy egallaydi
Tarmoqlar orasidagi aloqa narxi past.
Xotira holatiga boshqa kontekstdan kirish osonroq
Bu sizga sezgir foydalanuvchi interfeyslarini osongina yaratishga imkon beradi
I/U-ga bog'langan ilovalar uchun ideal variant
Umumiy xotiradagi ikkita oqim o'rtasida almashish uchun kamroq vaqt va tugatish uchun vaqt talab etiladi
Mavzular jarayonlarga qaraganda tezroq boshlanadi va vazifalarni almashtirishda ham tezroq.
Barcha mavzular juda foydali bo'lgan jarayon xotirasi hovuzini baham ko'radi.
Mavjud jarayonda yangi ip yaratish yangi jarayonga qaraganda kamroq vaqt talab etadi
Ko'p ishlov berishning kamchiliklari
Bu erda Multiprocessing operatsion tizimidan foydalanishning kamchiliklari/kamchiliklari

IPC (jarayonlararo aloqa) ko'proq xarajatlar bilan juda murakkab


Kattaroq xotira maydoniga ega
Ko'p ish zarrachalarining kamchiliklari
Ko'p ish zarralari tizimidan foydalanishning kamchiliklari/kamchiliklari:

Multithreading tizimi to'xtatilmaydi/o'ldirilishi mumkin emas


Agar buyruqlar navbati va xabar nasosi modeliga rioya qilmasa, sinxronizatsiyadan qo'lda foydalanish kerak bo'ladi, bu zaruratga aylanadi.
Kodni tushunish odatda qiyinroq va poyga sharoitlarini keskin oshiradi
Download 22.54 Kb.

Do'stlaringiz bilan baham:




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling