AQuoSA - AQuoSA

AQuoSA (Xizmat arxitekturasining moslashuvchan sifati) [1] bu ochiq me'morchilik moslashuvchanlikni ta'minlash uchun Xizmat sifati ichiga funksionallik Linux yadrosi. Loyiha QoS bilan bog'liq xizmatlarni qo'llab-quvvatlash uchun moslashuvchan, ko'chma, engil va ochiq arxitekturaga ega, bu umumiy maqsadli operatsion tizimning yuqori qismida. Linux. Arxitektura rejalashtirishni rasmiy tahlil qilish va nazariy natijalarni boshqarish asosida tashkil etilgan.

AQuoSA-ning asosiy xususiyati - bu dinamik ravishda moslashishga qodir bo'lgan Resurslarni zaxiralash qatlami Markaziy protsessor ularning asosida QoS xabardor dasturlar uchun ajratish ish vaqti talablar. Bunday funktsiyani ta'minlash uchun AQuoSA yadro darajasidagi protsessorni joylashtiradi rejalashtiruvchi amalga oshirish resurslarni zahiralash asoslangan CPU uchun mexanizm Birinchi muddat (EDF). Bu Linux yadrosiga (qisman) amalga oshirish imkoniyatini beradi. vaqtincha izolyatsiya tizim ichida ishlaydigan vazifalar qatoriga kiradi.

AQuoSA - bu juda ko'p foydalanuvchi tizimida imtiyozsiz foydalanuvchilarga boshqariladigan usulda, to'g'ri ishlab chiqilgan kirishni boshqarish modeli orqali real vaqtda rejalashtirish imkoniyatlarini taqdim etadigan bir nechta loyihalardan biridir.

Tavsif

Loyiha arxitekturasi quyidagicha umumlashtirilishi mumkin:

AQuoSA.svg

Linux yadrosiga tuzatish

Eng past darajada, Linux yadrosiga tuzatish har qanday tegishli rejalashtirish hodisasi to'g'risida dinamik ravishda yuklangan modullarga xabar berish qobiliyatini qo'shadi. Bu vazifalar yaratilishida yoki o'limida, shuningdek voqealarni blokirovka qilish va blokdan chiqarishda aniqlangan. Ushbu tuzatish minimal invazivdir, chunki u asosan Linux rejalashtiruvchisi kodi (sched.c) ichiga to'g'ri kiritilgan bir necha satr kodlardan iborat. U "Umumiy rejalashtiruvchi patch" deb nomlangan, chunki u har qanday rejalashtirish siyosatini amalga oshirishga imkon beradi.

Resurslarni bron qilish

Resurslarni bron qilish qatlami uchta komponentdan iborat.

Asosiy komponent dinamik ravishda yuklanadigan yadro moduli Umumiy rejalashtiruvchi patch orqali Linux yadrosiga kiritilgan funktsiyalardan foydalangan holda, protsessor uchun resurslarni bron qilishni rejalashtirish paradigmasini amalga oshiradi.

Ikkinchidan, foydalanuvchi darajasidagi kutubxona (QRES kutubxonasi) dasturga to'liq rejalashtirilgan va to'liq ishlab chiqilgan to'plam orqali yangi rejalashtirish siyosatidan foydalanishga imkon beradi. API qo'ng'iroqlar. Aslida, ushbu qo'ng'iroqlar dasturga tizimdan protsessorning ma'lum foizini protsesslariga ajratib qo'yishini so'rashga imkon beradi.

Uchinchidan, yadro darajasidagi komponent (Supervisor) QRES kutubxonasi orqali dasturlar tomonidan qilingan barcha so'rovlarga vositachilik qiladi, shunda so'ralgan CPU aktsiyalarining umumiy yig'indisi buzilmaydi. rejalashtirish holati rejalashtiruvchining (qo'shimcha xarajatlar tufayli birdan kam yoki bittadan ozroq). Nazoratchi xatti-harakatlari tizim ma'muri tomonidan to'liq konfiguratsiya qilinadi, shuning uchun har bir foydalanuvchi / guruh asosida protsessorda qilingan bandlovlar uchun minimal kafolatlangan va maksimal ruxsat etilgan qiymatlarni belgilash mumkin bo'ladi.

AQuoSA yordamida dasturlar to'g'ridan-to'g'ri Resurslarni zahiralash qatlamidan foydalanishi mumkin, bu ularga protsessorning bir qismini zaxiralashga imkon beradi, shuning uchun kerakli rejalashtirish kafolatlari bilan ishlaydi. Masalan, multimedia dasturi operatsion tizim dasturni har bir P millisekundada kamida Q millisekundlarda rejalashtirish kafolati bilan ishlatish, bu erda Q va P dastur xususiyatiga bog'liq.

Resurslarni zahiralash qatlamida dasturni ro'yxatdan o'tkazishda tizim har doim dasturga kafolat berishi kerak bo'lgan minimal kafolatli bandni belgilash mumkin. Minimal kafolatli rezervasyonlarning so'rovlari asosida qatlam bajaradi kirish nazorati, ya'ni yangi dasturga, agar unga qo'shilgandan so'ng, ishlaydigan dasturlarning yangi to'plami CPU to'yinganligi chegarasini engib chiqmasa kerak bo'ladi.

Adaptiv bandlovlar

Yuqori siqishni texnologiyalaridan foydalanadigan odatiy multimedia ilovalari uchun bunday dasturlarni protsessorda aniq zahirasi bilan ishlatish juda qiyin, maqsadga muvofiq yoki noqulay bo'lishi mumkin. Darhaqiqat, ishlatilishi kerak bo'lgan eng samarali rezervatsiya vaqtni o'zgarishiga olib keladi, bu esa har xil dekompressiya vaqtiga olib keladigan turli xil siqilish darajalariga bog'liq.

An'anaviy haqiqiy vaqt tizimlaridan foydalanish WCET (Eng yomon ishni bajarish vaqti) tahlil qilish texnikasi, masalan, protsessorda keyingi nusxani kutishdan oldin blokirovka qilishdan oldin, masalan, davriy vazifani bajarishi mumkin bo'lgan maksimal vaqt.

Bunday tahlil bugungi murakkab multimedia dasturlarida juda qiyin, ayniqsa ko'p darajali keshlar, protsessor bajaradigan quvur liniyalari, avtobusdagi buferlar, ko'p magistral avtobuslar kabi ko'plab taxmin qilinmaydigan o'zgaruvchilar xotiraga kirish uchun zarur bo'lgan vaqtni aniqlash.

Bunday tizimlarda dasturning o'rtacha kutilayotgan yukiga qarab tizim dizaynini sozlash ancha qulaydir. Aks holda, tizim ish vaqtida sezilarli darajada ishlatilmasligi mumkin.

Yuqorida aytib o'tilganidek, multimedia dasturlarining ma'lum sinflari uchun, masalan video pleer, dastur tomonidan ishlov berilayotgan haqiqiy ma'lumotlarga bog'liq ravishda yukning og'ir tebranishlari tufayli, ish vaqtida dastur uchun talab qilinadigan CPU fraktsiyasi uchun tegishli sobit qiymatni topish juda mumkin emas. O'rtacha talablarga asoslangan yoki undan kattaroq kattaroq rezervatsiya, ish vaqtida sifatsiz vaqtinchalik davrlarga olib keladi (masalan, filmni ijro etish). Boshqa tomondan, maksimal kutilgan yukga asoslangan qat'iy rezervatsiya, aksariyat hollarda protsessorning keraksiz haddan tashqari zahirasini keltirib chiqaradi, faqat yuk maksimal kutilgan qiymatga yaqinlashadigan davrlar bundan mustasno.

Ushbu dastur dasturlari uchun dastur jarayonlarining hisoblash talablarini doimiy ravishda on-layn kuzatishni amalga oshiradigan AQuoSA-ning Adaptiv Rezervatsiya qatlami tomonidan taqdim etilganidek, Adaptiv Rezervatsiya texnikasidan foydalanish ancha qulaydir. kuzatiladigan ma'lumotlarga qarab protsessorda qilingan rezervasyonni dinamik ravishda moslashtirishi mumkin.

Adaptiv zahiralash qatlami API-larga keng tarqalgan multimedia dasturlari tarkibida juda keng qo'llaniladigan tekshirgichlar to'plamidan foydalanish uchun ta'sir ko'rsatadi.

AQuoSA-ga kirishni boshqarish modeli

Linuxning real vaqt rejimidagi aksariyat versiyalari o'zgartirilgan OS operatsion tizimining real vaqt imkoniyatlaridan foydalanuvchilar tizimda root huquqlariga ega bo'lishlarini talab qiladi. Bu o'rnatilgan tizim kontekstida juda yaxshi qabul qilinadi. Biroq, bu multimedia dasturlari yoki shunga o'xshash narsalar uchun real vaqtda rejalashtirish funktsiyalari zarur bo'lgan ko'p foydalanuvchi tizimlar uchun haddan tashqari ko'pdir. Shuning uchun, AQuoSA tizim ma'murlari quyidagilarni amalga oshirishi mumkin bo'lgan kirishni boshqarish uchun maxsus modelni kiritadi.

  1. individual foydalanuvchilarga yoki guruhlarga real vaqt rejimida rejalashtirish kvotalarini, operatsion tizim individual ravishda foydalanuvchilarga yoki guruhlarga bera oladigan minimal kafolatlangan o'tkazuvchanlik kengligi uchun maksimal qiymatlar bo'yicha belgilash;
  2. minimal miqdordagi kafolatlangan ko'rsatkichlardan yuqori bo'lgan ixtiyoriy tarmoqli kengligi qiymatlari raqobatdosh foydalanuvchilar o'rtasida ortiqcha yuklanish holatlarida qanday taqsimlanishini nazorat qilish;
  3. individual foydalanuvchilar yoki guruhlar tomonidan yaratilgan real vaqt rejimidagi rezervasyonlar tufayli tizimga o'rnatilishi mumkin bo'lgan maksimal reja jadvalini nazorat qilish; masalan, real vaqtda bron qilishda ko'rsatilishi mumkin bo'lgan minimal muddat qancha bo'lishini boshqarishga imkon berish.

Batafsil ma'lumotni RTAS 2008 da chop etilgan mavzu bo'yicha maqolada topishingiz mumkin.[2]

Tashqi havolalar

Adabiyotlar

  1. ^ Palopoli, Luidji; Cucinotta, Tommaso; Marzario, Luka; Lipari, Juzeppe (2008 yil aprel). "AQuoSA - Xizmat arxitekturasining moslashuvchan sifati". Dasturiy ta'minot: Amaliyot va tajriba. 39: 1–31. CiteSeerX  10.1.1.149.8231. doi:10.1002 / tezlik.883.
  2. ^ Cucinotta, Tommaso (2008). "Ko'p foydalanuvchi tizimlarida adaptiv bron qilish uchun kirishni boshqarish". 2008 yil IEEE real vaqt va o'rnatilgan texnologiyalar va ilovalar simpoziumi. 387-396 betlar. doi:10.1109 / RTAS.2008.16. ISBN  978-0-7695-3146-5.