Suhbat rejimi ma'lum darajani talab qiladi


Download 241.53 Kb.
bet22/37
Sana19.06.2023
Hajmi241.53 Kb.
#1624495
1   ...   18   19   20   21   22   23   24   25   ...   37
Bog'liq
8-мавзу БМИ

JVM bo’lmagan


Ba’zi platformalar Java uchun to’g’ridan-to’g’ri apparat yordamini taklif qiladi; dasturiy ta’minot Java virtual mashinasi o’rniga qo’shimcha qurilmalarda Java bayt kodini boshqaradigan mikro tekshirgichlar mavjud, [50] va ba’zilari ARM asosidagi protsessorlarda Java bayt kodini bajarish uchun apparat yordami bo’lishi mumkin Jazel variant, garchi qo’llab-quvvatlash asosan ARMning joriy dasturlarida to’xtatilgan bo’lsa.

Xotirani avtomatik boshqarish


Java an foydalanadi avtomatik axlat yig’uvchi (AGC) xotirani boshqarish uchun ob’ektning hayot aylanishi. Dasturchi qachon ob’ektlar yaratilishini aniqlaydi va Java ish vaqti ob’ektlar ishlatilmay qolgandan keyin xotirani tiklash uchun javobgardir. Ob’ektga havolalar qolmagandan so’ng, ulanib bo’lmaydigan xotira avtomatik ravishda axlat yig’uvchi tomonidan ozod qilish huquqiga ega bo’ladi. A ga o’xshash narsa xotira oqishi dasturchining kodida keraksiz bo’lgan narsaga havola bo’lsa, odatda kerak bo’lmaydigan narsalar hali ham ishlatilayotgan idishlarda saqlanganda paydo bo’lishi mumkin. Agar mavjud bo’lmagan ob’ekt uchun usullar chaqirilsa, a nol ko’rsatkich istisno tashlanadi. [51] [52]
Java-ning xotirani avtomatik boshqarish modeli asosidagi g’oyalardan biri bu dasturchilar xotirani qo’lda boshqarishni amalga oshirish majburiyatidan xalos bo’lishdir. Ba’zi tillarda moslamalarni yaratish uchun xotira bilvosita ajratilgan suyakka dan aniq ajratilgan va ajratilgan uyum. Ikkinchi holatda, xotirani boshqarish mas’uliyati dasturchiga tegishli. Agar dastur ob’ektni taqsimlamasa, a xotira oqishi sodir bo’ladi. Agar dastur allaqachon ajratilgan xotiraga kirishga yoki uni ajratishga harakat qilsa, natija aniqlanmagan va taxmin qilish qiyin va dastur beqaror bo’lib qolishi yoki ishdan chiqishi mumkin. Yordamida qisman tuzatilishi mumkin aqlli ko’rsatgichlar, ammo bu qo’shimcha xarajatlarni va murakkablikni oshiradi. E’tibor bering, axlat yig’ish to’sqinlik qilmaydi mantiqiy xotira qochqinlar, ya’ni xotira hali ham havola qilinadigan, ammo hech qachon ishlatilmaydigan joylar.
Axlat yig’ish har qanday vaqtda yuz berishi mumkin. Ideal holda, dastur bo’sh turganida paydo bo’ladi. Agar uyumda yangi ob’ekt ajratish uchun bo’sh xotira etarli bo’lmasa, uni ishga tushirish kafolatlanadi; bu dasturning bir lahzada to’xtab qolishiga olib kelishi mumkin. Java-da xotirani aniq boshqarish mumkin emas.
Java C / C ++ uslubini qo’llab-quvvatlamaydi ko’rsatkich arifmetikasi, bu erda ob’ekt manzillari arifmetik ravishda boshqarilishi mumkin (masalan, ofset qo’shish yoki olib tashlash yo’li bilan). Bu axlat yig’uvchiga havola qilingan moslamalarni boshqa joyga ko’chirishga imkon beradi va tur xavfsizligi va xavfsizligini ta’minlaydi.
C ++ va boshqa ba’zi ob’ektga yo’naltirilgan tillarda bo’lgani kabi, Java-ning o’zgaruvchilari ibtidoiy ma’lumotlar turlari to’g’ridan-to’g’ri maydonlarda (ob’ektlar uchun) yoki suyakka (usullar uchun) emas, balki odatda ibtidoiy bo’lmagan ma’lumotlar turlari uchun to’g’ri keladi (lekin qarang) qochish tahlili ). Bu Java-ning dizaynerlari tomonidan ishlash sabablari bilan ongli ravishda qaror qilindi.
Java tarkibida bir nechta axlat yig’uvchilar mavjud. Odatiy bo’lib, HotSpot quyidagini ishlatadi parallel chiqindilarni yig’uvchi. [53] Shu bilan birga, uyumni boshqarish uchun ishlatilishi mumkin bo’lgan yana bir nechta axlat yig’uvchilar mavjud. Java dasturlarining 90% uchun Bir vaqtning o’zida Mark-Sweep (CMS) axlat yig’uvchi etarli. [54] Oracle CMS-ni “bilan” almashtirishga qaratilgan Axlat-birinchi yig’uvchi (G1). [55]
Xotirani boshqarish muammosini hal qilish, dasturchini boshqa turdagi resurslarni, masalan, tarmoq yoki ma’lumotlar bazasi ulanishlari, fayl tutqichlari va boshqalarni to’g’ri ishlash yukidan xalos qilmaydi, ayniqsa istisnolar mavjud bo’lganda. Paradoksal ravishda, axlat yig’uvchilarning mavjudligi sinflarda aniq destruktor usuliga ega bo’lish zaruriyatini yo’qotib qo’ydi va shu bilan boshqa resurslarni boshqarish qiyinlashdi. [ iqtibos kerak ]

Download 241.53 Kb.

Do'stlaringiz bilan baham:
1   ...   18   19   20   21   22   23   24   25   ...   37




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