Bosh sahifa > Ko'rgazma > Kontent

O'rnatilgan dasturiy ta'minot arxitekturasi

Mar 08, 2019

Umumiy foydalanishda turli xil dasturiy ta'minot arxitekturasi mavjud.


Oddiy boshqarish loopi

Ushbu dizayndagi dasturiy ta'minot oddiygina loopga ega. Ichki dastur subroutines deb ataladi, ularning har biri apparat yoki dasturiy ta'minotning bir qismini boshqaradi. Shuning uchun u oddiy nazoratli pastadir yoki qo'mondon aylanishi deb ataladi.


Interruptni boshqarish tizimi

Ba'zi ko'milgan tizimlar asosan interruptlar tomonidan nazorat qilinadi. Bu shuni anglatadiki, tizim tomonidan bajariladigan vazifalar turli hodisalar bilan bog'liq; masalan, oldindan belgilangan chastotada taymer yoki bayt qabul qiluvchi ketma-ket port tekshiruvi orqali interruptni yaratish mumkin.


Ushbu turdagi tizimlar voqea ishlovchilarining kam kechiktirilishi kerak bo'lsa, va voqea-ishlovchilar qisqa va oddiy. Odatda bunday tizimlar asosiy ko'chadan oddiy vazifani bajaradi, lekin bu vazifa kutilmagan kechikishlar bilan juda sezgir emas.


Ba'zida chiqib ketish moslamasi navbatdagi tuzilishga ko'proq vazifalarni qo'shib qo'yadi. So'ngra, chiqib ketish moslamasi tugagandan so'ng, bu vazifalar asosiy ko'chadan bajariladi. Ushbu usul tizimni alohida jarayonlarga ega bo'lgan juda ko'p yadroli yadroga yaqinlashtiradi.


Kooperativ ko'p vazifalar

Ko'p ish yuritishni to'xtatuvchi ko'p ishlov berish tizimi loopning APIda yashirilishini istisno qilishdan tashqari, oddiy tekshiruv sxemasiga juda o'xshaydi. Dasturchi bir qator topshiriqlarni belgilaydi va har bir topshiriq "ishga tushirish" uchun o'z muhitini oladi. Agar vazifa bo'sh bo'lsa, odatda "pauza", "kutish", "hosil", "nop" (ishlamasligi kerak) va boshqalar.


Foydali va kamchiliklarni nazorat qilishning pastki qismiga o'xshaydi, faqatgina yangi vazifani qo'shish osonroq bo'ladi, yangi vazifani yozib yoki navbatga qo'shiladi.


Preemptiv multitasking yoki multi-threading

Ushbu turdagi tizimda past darajadagi kod bo'lagi vazifalar yoki tarmoqlar orasidagi taymer (interruptga ulangan) asosida o'zgartiriladi. Bu tizim odatda "operatsion tizim" yadrosiga ega deb hisoblanadi. Qancha funktsionallik talab etilishiga qarab, kontseptual ravishda parallel ishlaydigan bir nechta vazifalarni boshqarishni murakkablashtiradi.


Har qanday kod boshqa bir ishning (MMU yordamida katta tizimlardan tashqari) ma'lumotlarga zarar etkazishi mumkinligi tufayli dasturlarni diqqat bilan loyihalash va testdan o'tkazish kerak, va birgalikda ma'lumotlarga kirish uchun xabarlar navbatlari, semaforlar yoki boshqa Sinxronizatsiya sxemasini blokirovkalash.


Ushbu murakkabliklar tufayli tashkilotlarga real vaqtda ishlaydigan tizimdan (RTOS) foydalanish, dastur dasturchilariga hech bo'lmaganda yirik tizimlar uchun operatsion tizim xizmatlariga emas, balki qurilma funksiyalariga e'tibor berishga imkon beradi; kichik tizimlar odatda xotira hajmi, ishlashi yoki batareya quvvati bilan bog'liq cheklovlar tufayli umumiy real vaqtda tizim bilan bog'liq yukni hisobga olmaydi. RTOSni tanlash kerak bo'lgan tanlov o'z-o'zidan kelib chiqadi, ammo tanlov tanlashni boshlashdan avval amalga oshirilishi kerak. Ushbu vaqtinchalik majburiyatlarni ishlab chiquvchilar o'z qurilmalari uchun o'rnatilgan operatsion tizimni joriy talablarga asoslanib tanlashga majbur qiladi va kelajakdagi variantlarni katta miqdorda cheklaydi. Kelajakdagi variantlarni cheklash mahsulot hayoti qisqarganligi sababli ko'proq masala bo'lib qoladi. Bundan tashqari, murakkablik darajasi ketma-ket, USB, TCP / IP, Bluetooth, simsiz LAN, magistral radio, bir nechta kanal, ma'lumotlar va ovoz, rivojlangan grafikalar, kutish hollari va boshqalar. Ushbu tendentsiyalar real vaqtda operatsion tizimga qo'shimcha ravishda ko'milgan qidiruv qavatni sotib olishga olib keladi.


Mikroorganizmlar va exokernels

Mikrokernel - real vaqtda OS dan mantiqiy bir qadam. Odatiy tartibga ko'ra, operatsion tizim yadrosi xotirani ajratadi va protsessorni turli xil ishlanmalarga o'zgartiradi. Foydalanuvchi rejimi jarayonlari fayl tizimlari, tarmoq interfeyslari va h.k. kabi asosiy funktsiyalarni amalga oshiradi.


Umuman olganda, vazifalar almashinuvi va intertaskali aloqa tez va sekin bo'lganida muvaffaqiyatsiz bo'lganda, mikrokernellar muvaffaqiyatli bo'ladi.


Exokernels oddiy chaqiruvlar orqali samarali muloqot qiladi. Tizimdagi apparat va dasturiy ta'minot dastur dasturchilari tomonidan mavjud va kengaytirilishi mumkin.


Monolitik yadrolar

Bunday holda rivojlangan qobiliyatga ega nisbatan katta yadro ko'milgan muhitga moslashtiriladi. Bu dasturchilarga Linux yoki Microsoft Windows kabi ish stoli operatsion tizimiga o'xshash muhit yaratadi va shuning uchun rivojlanish uchun juda samarali bo'ladi; pastga tushadigan bo'lsa, u qo'shimcha sezilarli qo'shimcha qurilmalarni talab qiladi, ko'pincha qimmatroq bo'ladi va bu yadrolarning murakkabligi tufayli kamroq prognozli va ishonchli bo'lishi mumkin.


O'rnatilgan monolitik yadrolarning umumiy misollari Linux va Windows CE formatlariga kiritilgan.


Qurilmadagi qo'shimcha xarajatlarga qaramasdan, ushbu turdagi ko'milgan tizim mashhurlik, xususan, simsiz routerlar va GPS navigatsiya tizimlari kabi kuchli qurilmalarda kengayib bormoqda. Buning sabablari quyidagilardan iborat:


Katta ko'milgan chiplar uchun portlar mavjud.

Ular qurilma drayverlari, veb-serverlar, xavfsizlik devorlari va boshqa kodlar uchun ochiq kodni qayta ishlatishga ruxsat beradi.

Rivojlanish tizimlari keng funktsiyalar bilan boshlanishi mumkin, keyin tarqatish keraksiz funktsiyalarni chiqarib tashlash uchun tuzilishi va iste'mol qiladigan xotiraning xarajatini tejash imkonini beradi.

Ko'pgina muhandislar foydalanuvchi rejimida ishlaydigan dastur kodini ishlashni yanada ishonchli va disk raskadrovka qilishni osonlashtiradi, shuning uchun rivojlanish jarayonini osonlashtiradi va kodni yanada ko'chma deb hisoblaydi.

Tezroq javob talab qiladigan xususiyatlar, odatda, qo'shimcha qurilmalarga joylashtirilishi mumkin.

Qo'shimcha dastur komponentlari

Asosiy operatsion tizimga qo'shimcha ravishda, ko'pgina ichki tizimlar qo'shimcha yuqori qatlamli dasturiy komponentlarga ega. Ushbu komponentlar JON, TCP / IP, FTP, HTTP va HTTPS kabi tarmoq protokoli zaxiralarini o'z ichiga oladi va FAT va Fleshli xotira boshqaruv tizimlari kabi saqlash imkoniyatlarini o'z ichiga oladi. Agar katıştırılmış qurilma audio va video imkoniyatlarga ega bo'lsa, tizimda tegishli haydovchilar va kodeklar mavjud bo'ladi. Monolitik yadrolarda ushbu dasturiy ta'minot qatlamlarining ko'pchiligi mavjud. RTOS turkumida qo'shimcha dasturiy ta'minot komponentlarining mavjudligi savdo taklifiga bog'liq.


Domenga xos arxitektura

Avtomobil sektorida AUTOSAR ko'milgan dasturiy ta'minot uchun standart me'moriy hisoblanadi.