Tizimli dasturlash 1 hs programma ta'minoti strukturasi
) Yuklovchilar va ularning vaziyfalari Zagruzchiklar
Download 255 Kb.
|
amaliy 1
- Bu sahifa navigatsiya:
- 31) Overley programmalar va ularni yaratish sxemasi
30) Yuklovchilar va ularning vaziyfalari Zagruzchiklar (Yuklovchilar). Obеkt programma tarjima qilingan komandalar boshlang’ich ma'lumotlar qiymatlari, xotira adrеslarini saqlaydi. Bu jarayonlar uchta bosqichni o’z ichiga oladi.1.Zagruzka (yuklash). Programmani bajarish uchun opеrativ xotira joylashtirish.2.Siljitish (pеrеmеhеniе). Obеkt programmani adrеslarni o’zgartirish natijasida modifikatsiya qilish.3Bog’lash (svyazyvaniе). Ikkita va undan ko’p alohida tarjima qilingan obеkt kodlarni bog’lash va ular orasidagi bog’lanishni tashkil qilish. Zagruzchik (Yuklovchi) sistеmaviy programma bo’lib yuklash vazifasini bajaradi. Ba'zi bir yuklovchilar ko’rsatilgan (1-3) ammalarni ham bajarishi mumkin. Bog’lovchi programmalarni bog’lanish (aloqa) muharriri ham (rеdaktor svyazеy) dеydilar. Zagruzchik va bog’lovchi programmalar o’z funksiyalarini turli tillarda yozilgan va tarjima qilingan kodlar ustida bajaradi. Zagruzchiklarning turli bo’lishidan qat'iy nazar, ularning ikkita asosiy funksiyalari mavjud. A)Obеkt programmani opеrativ xotiraga yozish. B)Boshqaruvni birinchi bajariladigan komanda adrеsiga uzatish. Zagruzchiklarni programmalashda (ishlab shiqishda) ovеrlеy tеxnologiyasidan foydalananadilar. Bu holatda xotirani tеjash mumkin va ikki bosqichni ish uchun xotiraning bitta sohasi ishlatiladi. Assеmblеr tilida programma tuzish va uni taxlash (bajarish) uchun assеmblеr translyatori va zagruzchik (yuklovchi) birgalikda ishlatiladi. Shu bosqichlarni quyidagi kеtma-kеtlikda bеrish mumkin.1.asm prog. asm. Boshlang’ich fayl. 2.prog. obj. Translyatsiya qilingan obеkt fayl (obеkt modul) 2.link prog. Bajariladigan faylni zagruzchik (linker) yordamida hosil qilish.3.prog. exe – Bajariladigan fayl.Agar programma bir nеchta obеkt modullardan iborat bo’lsa u holda ularni zagruzchik orqali yagona programma shaklida tashkil qilish mumkin. Masalan, link mod1.obj+mod2. obj+mod3. Obj Natijada mod. exe yagona bajariladigan programma hosil bo’ladi.
31) Overley programmalar va ularni yaratish sxemasi Programmalash jarayonida programma hajmi(matni) juda katta bo’lgan holda ko’pgina programmalashtirish tizimlari dastur transliyatsidan keyin “ Not enough memory – Xotira yetishmayapti ” degan ogohlantirish ma’lumotini beradi. Bu muammoning hal qilishning mumkin bo’lgan yo’llaridan biri programmani overley tashkil qilish va qo’llashdir. Shuning uchun zamonaviy programmalash muhitlarida maxsus overley modullari mavjud va ulardan foydalanib overley programmalar tuziladi. Tpas va Borland Pascal Asos sifatida, almashtirish tizimi qattiq uchastkalarga asoslangan bo'lishi mumkin. Keyinchalik samarador bo'lib, dinamik tarqatish sxemasi yoki o'zgaruvchan bo'limlari mavjud bo'lgan sxema bo'lib, u ham barcha jarayonlar butunlay xotirada, ya'ni almashtirish yo'q bo'lganda foydalanilishi mumkin. Bunday holatda, birinchi navbatda, barcha xotira bepul va oldindan tasniflanmagan. Yangi kelgan vazifani bajarish uchun zarur bo'lgan xotira miqdori ko'p emas. Jarayon o'chirilgandan so'ng, xotira vaqtincha ozod qilinadi. Bir muncha vaqt o'tgach, xotira har xil o'lchamdagi o'zgaruvchan sonli qismdir Qo'shni bo'sh joylar birlashtirilishi mumkin.J arayonlar orasida xotira ajratish dinamikasi (ishlatilmaydigan xotira kulrang ko'rinishda bo'ladi) Jarayoni qanday bo'limga qo'yish kerak? Uchta keng tarqalgan strategiya. Birinchi muvofiq strategiya. Jarayon birinchi muvofiq o'lchamli bo'limga joylashtiriladi. Eng mos keladigan strategiya (Best fit). Jarayon yuklanganidan keyin eng kam bo'sh joy bo'ladigan bo'limga joylashtiriladi. Eng kam mos strategiya (eng yomon). Eng katta qismga joylashtirilganida boshqa jarayonni joylashtirish uchun etarli joy mavjud. Simulyatsiya birinchi ikki holatda foydali xotira nisbati katta ekanligini ko'rsatdi, birinchi usul biroz tezroq. Xotira boshqaruvchisining odatdagi ish aylanishi erkin maydon (qism) ajratish uchun so'rovni tahlil qilish, uni strategiyalarning biriga muvofiq tanlab olish, jarayoni tanlangan qismga yuklash va keyinchalik bepul va band bo'lgan joylardagi jadvallarni o'zgartirishdan iborat. Jarayon tugagandan so'ng, xuddi shunday tartibga solish talab etiladi. Manzillarni ulash yuklarni o'rnatish va bajarish bosqichlarida amalga oshirilishi mumkin.Ushbu uslub sobit bo'laklarga nisbatan moslashuvchan, lekin tashqi qismlarga ajratish - har qanday jarayonga ajratilmagan ko'plab ishlatilmaydigan xotira maydonlarining mavjudligi. Jarayoni birinchi muvofiq va eng mos ravishda joylashtirish strategiyasini tanlash zaiflashib, parchalanish miqdoriga ta'sir qiladi. Qizig'i shundaki, eng qulay usul eng yomon holga aylanishi mumkin, chunki u juda kichik bo'sh bloklarni tark etadi. Statistik tahlillar shuni ko'rsatadiki, xotiraning 1/3 qismi o'rtacha yo'qoladi! Bu 50% ma'lum qoidadir (ikkita qo'shni jarayondan farqli o'laroq, ikkita qo'shni bo'sh joylar birlashtirilishi mumkin). Tashqi qismlarga bo'linish muammosining echimlaridan biri siqishni tashkil etish, ya'ni barcha bo'sh turgan joylarni manzillarni ko'paytirish (kamaytirish) yo'nalishida ko'chirish, ya'ni barcha bo'sh xotira doimiy maydon hosil qilishdir. Bu usul ba'zida ko'chiriladigan ajratish sxemasi deb ataladi. Ideal holda, siqilishdan keyin parchalanish yo'q bo'lishi kerak. Biroq, kompressiya qimmat protsedura hisoblanadi, optimal siqishni strategiyasini tanlash algoritmi juda murakkab va qoida sifatida siqishni boshqa manzillarga tushirish va o'rnatish bilan birgalikda amalga oshiriladi. Download 255 Kb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling