Operatsion tizim Kirish-chiqish tizimi
Download 22.54 Kb.
|
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 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 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
Teradata Vantage Amazon Redshift VMware Greenplum SAP HANA buluti Oracle ma'lumotlar bazasi Vertika
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?
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'muriyatiga murojaat qiling