MikrokernelNeutrino yaqinlashganda Simmetrik multiprocessing (SMP) odatda yuqori darajada ishlaydigan serverlarda o'rnatilgan eng so'nggi operatsion tizimlar (masalan, UNIX va NT) bilan bog'liq. Bunday yirik, monolitik tizimlar, odatda, juda murakkab me'morchilikka ega va rivojlanish uchun sarflangan ko'plab odam-soat natijasidir. Bunday yirik arxitektura bilan yadro nosimmetrik multiprocessingni ta'minlash uchun deyarli barcha operatsion tizim xizmatlariga ega bo'lgani sababli, ko'pincha kodga ko'p sonli o'zgarishlar kiritish va maxsus faol qulflardan (spinloklar) foydalanishni talab qiladigan katta o'zgarishlar qilishni talab qiladi.
QNX Neutrino OS esa, aksincha, manba menejerlari sifatida faoliyat yuritadigan va fayl tizimlari, ramziy I / U va tarmoqlar kabi xizmatlarni bajaradigan ishlar bilan o'rab olingan ixcham mikrokernelni o'z ichiga oladi. Mikrokerelni o'zgartirib, SMP funktsiyalari barcha OS xizmatlari uchun berilishi mumkin.dastur kodini o'zgartirishdan . Agar ushbu xizmatlarni amalga oshiradigan jarayonlar ko'p tarmoqli bo'lsa, unda barcha ishlar bir nechta protsessorlarga tarqatilishi mumkin. Bundan tashqari, nosimmetrik multiprocessing tufayli bir natija server jarayonini yanada samaraliroq qilish mumkin, chunki bu ish zarracha boshqa serverlar va mijozlar bilan birga mavjud protsessorlar tomonidan bajarilishi uchun rejalashtirilishi mumkin.
Haqiqatan ham, yuqorida aytib o'tilgan yondashuvga muvofiq, QNX Neutrino OS yadrosi / jarayon menejerida nosimmetrik multiprocessing qobiliyatini amalga oshirish uchun faqat bir necha kilobayt dastur kodi ishlatiladi. Nosimmetrik multiprocessing qo'llab-quvvatlovchi jarayonlar boshqaruvchisi versiyalari quyidagi asosiy protsessor oilalari uchun mavjud:
PowerPC (masalan , procnto-600-smp );
MIPS (procnto-smp );
x86 (procnto-smp ).
X86 versiyasi Intel MultiProcessor Specification (MP Spec) ga mos keladigan va sakkizta Pentium protsessorni (yoki Pentiumga qaraganda kuchliroq) o'z ichiga olgan boshqa tizimlar uchun ham ishlatilishi mumkin. Bundan tashqari, QNX Neutrino OS P4 va Xeon protsessorlarida ishlatiladigan Intelning yangi multi-threading texnologiyasini (Hyper-Threading Technology) qo'llab-quvvatlaydi.
Procnto-smp administratori Albatta, bu parallel hisoblash qobiliyatiga ega bo'lmagan yagona protsessorli tizimlarda ishlaydi. Shunday qilib, Pentium dual-protsessorli anakart ko'p jihatdan bitta protsessorli anakartga o'xshash bo'lsa, u juda foydali qarorga keladi, chunki bunday anakart osonlikcha boshqa protsessorni qo'shib, osonlikcha kengaytirilishi mumkin. QNX Neutrino OS tizimida nosimmetrik multiprocessingni amalga oshirish bir necha qo'shimcha kilobayt bilan ta'minlanganligi sababli, u yuqori ko'rsatkichli serverlarda emas, balki cheklangan hisoblash resurslari bilan ham ko'milgan tizimlarda osonlik bilan ishlatilishi mumkin.
PowerPC va MIPS mikroişlemcili oilalar uchun SMP yadro versiyalari, tegishli apparat (shu jumladan, keshni sinxronizatsiya qilish, interprocessor interruptları va hokazo.) PowerPC SMP yadrosi versiyasi 7 Seriya Protsessor bilan har qanday tizimni qo'llab-quvvatlaydixx yoki 74 xx (Masalan, Motorola MVP yoki Marvell EV-64260-2XMPC7450 SMP Development System kabi disk raskadrovka platformalarida). MIPS uchun SMP yadrosi versiyasi Broadcom BCM1250 juft yadroli protsessor kabi tizimlarni qo'llab-quvvatlaydi.
x 86 QNX Neutrino OS mikrokernel tizimi apparat tomoni bilan bog'liq juda kam miqdorda dasturiy ta'minot kodini o'z ichiga oladi. Tizimning imkoniyatlarini belgilaydigan dastur kodi tizimni ishga tushirishda faollashtirilgan va tizimni ishga tushirishga, mavjud xotira resurslarini aniqlashga mo'ljallangan va hokazo dasturga kiritilgan. Yig'ilgan ma'lumotlar mikrokernel va barcha jarayonlar yordamida ishlatiladigan xotira stoliga (faqat o'qish uchun) joylashtirilgan. Startup bios intel MP Spec Specifikatsiyasi (versiya 1.4 yoki undan yuqori versiya) bilan mos keladigan tizimlarda ishlash uchun mo'ljallangan. Ushbu dastur Startup quyidagi funktsiyalarni bajaradi:
har bir qo'shimcha protsessorni ishga tushirish.
Tizim tiklashdan so'ng qayta boshlash kodi faqat bitta protsessor tomonidan amalga oshiriladi. Ushbu protsessor deyiladiyuklash protsessori (Boot Processor, BP). Har bir qo'shimcha protsessor uchun boshlang'ich dasturi ishga tushirilgan yuklash protsessori aniqlandiboshlang'ich bios , quyidagi harakatlarini amalga oshiradi:
protsessorni ishga tushirish;
uni 32-bitli himoyalangan rejimga o'tkazing;
u uchun o'zining sahifa jadvalini tanlang;
Do'stlaringiz bilan baham: |