Xotiraning boshqarishning umumiy tamoyillari


Download 0.74 Mb.
Pdf ko'rish
bet4/9
Sana25.12.2022
Hajmi0.74 Mb.
#1065683
1   2   3   4   5   6   7   8   9
Bog'liq
xoliqov Sardor 7-mustaqil ishi

Stekni taqsimlash 
Ko'pchilik Unixga o'xshash tizimlar, shuningdek Microsoft Windows deb nomlangan 
funktsiyani amalga oshirish alloka stack xotirani uyumga o'xshash tarzda dinamik 
ravishda taqsimlash uchun malloc . Odatda kompilyator uni stack ko'rsatgichi bilan 
ishlaydigan chiziqli ko'rsatmalarga tarjima qiladi.
[5]
 Garchi bu tarzda ajratilgan xotirani 
qo'lda bo'shatishga hojat bo'lmasa ham, u chaqirilgan funktsiya avtomatik ravishda 
bo'shatiladi alloka qaytib 
keladi, 
toshib 
ketish 
xavfi 
mavjud. 
Va 
alloka 
an maxsus kengayish ko'plab tizimlarda kuzatilgan, ammo hech qachon POSIX yoki C 
standartlarida ishlamaydi, stack overflow holatida uning harakati aniqlanmagan. 
Allokaning xavfsiz versiyasi deb nomlangan _malloca , xatolar haqida xabar beradigan, 
Microsoft Windows-da mavjud. Buning ishlatilishini talab qiladi _freea .
[6]
 gnulib SEH 
istisnoini toshib yuborish o'rniga, ekvivalent interfeysni taqdim etadi, kattalashtirilgan 
kattalik aniqlanganda malloc-ga vakolat beradi.
[7]
 Shunga o'xshash xususiyatni qo'lda 
hisobga olish 
va o'lchamlarini tekshirish yordamida taqlid qilish 
mumkin, 
masalan alloca_account glibc-da.
[8]
 
Avtomatik o'zgaruvchilar 
Ko'pgina dasturlash tillarini amalga oshirishda protsedura ichida e'lon qilingan barcha 
o'zgaruvchilar (subroutine yoki function) ushbu funktsiya uchun mahalliy hisoblanadi; 
dastur uchun ish vaqti muhiti, protseduraga dasturning bajarilishini kiritishda ushbu 
o'zgaruvchilar uchun avtomatik ravishda xotirani ajratadi va protsedura chiqqandan keyin 
ushbu xotirani avtomatik ravishda chiqaradi. Maxsus deklaratsiyalar mahalliy 
o'zgaruvchilarga protsedura chaqiruvlari orasidagi qiymatlarni saqlab qolishlariga yoki 
mahalliy o'zgaruvchilarga boshqa protseduralar orqali kirishga imkon berishi mumkin. 
Mahalliy 
o'zgaruvchilarni 
avtomatik 
ravishda 
taqsimlash 
amalga 
oshiriladi rekursiya mavjud bo'lgan xotira bilan cheklangan chuqurlikda. 
Axlat yig'ish 
Axlat yig'ish - bu dasturda foydalanishga yaroqsiz bo'lgan ob'ektlarga ajratilgan xotirani 
avtomatik ravishda aniqlash va ajratilgan xotirani bo'sh xotira joylariga qaytarish 
strategiyasi. Ushbu usul "qo'lda" xotirani boshqarishdan farq qiladi, bu erda dasturchi 
xotiradagi so'rovlarni va dasturdagi xotirani chiqarishni aniq kodlaydi. Avtomatik 
chiqindilar dasturchilarning ish yukini kamaytirish va xotirani taqsimlashdagi ba'zi turdagi 


xatolarning oldini olish kabi afzalliklarga ega bo'lsa-da, axlat yig'ish uchun o'ziga xos 
xotira resurslari kerak va protsessor vaqti uchun dastur bilan raqobatlasha oladi. 

Download 0.74 Mb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8   9




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