Nano-RK - Nano-RK

Nano-RK: simsiz sensorli tarmoqning real vaqtdagi operatsion tizimi (RTOS)[1][2] a real vaqtda operatsion tizim (RTOS) dan Karnegi Mellon universiteti ishlashga mo'ljallangan mikrokontroller sensorli tarmoqlarda foydalanish uchun. Nano-RK aniq ustuvorlikni to'liq qo'llab-quvvatlaydi oldindan rejalashtiruvchi real vaqtda vazifalar to'plamini qo'llab-quvvatlash uchun nozik tanlangan vaqt ibtidoiylari bilan. "Nano" shuni anglatadiki, RTOS kichik, 2 KB iste'mol qiladi Ram va 18 KB dan foydalanish miltillovchi, "RK" esa qisqa resurs yadrosi. Resurs yadro tizim resurslarini qanchalik tez-tez iste'mol qilish mumkinligi haqida rezervasyonlarni taqdim etadi. Masalan, a vazifa har 150 msda (protsessor zahirasi) 10 msdan foydalanishga ruxsat berilishi mumkin yoki a tugun faqat 10 ni uzatishga ruxsat berilishi mumkin tarmoq paketlari daqiqada (tarmoqni bron qilish). Ushbu rezervasyonlar virtualni tashkil qiladi energiya byudjeti tugunni mo'ljallangan batareyaning ishlash muddatiga mos kelishini ta'minlash va ishlamay qolgan tugunni ortiqcha tarmoq trafigi hosil bo'lishidan himoya qilish. Nano-RK bu ochiq manba, yozilgan C va ustida ishlaydi Atmel - FireFly sensorli tarmoq platformasi, MicaZ motlari va MSP430 protsessor.[3]

Keyingi maqola [4] datchik tarmoqlarida RTOS-dan foydalanish bilan bog'liq ba'zi savdo-sotiqlarni muhokama qiladi.

afzallik

NanoRK aniq vaqt omilini hurmat qilishda yordam berish uchun ustuvorlikka asoslangan oldindan rejalashtirishning afzalliklaridan foydalanadi, shu bilan vazifaning o'z vaqtida va sinxronizatsiyasini ta'minlaydi. Simsiz tugunda cheklangan akkumulyator quvvati xususiyati tufayli, Nano-RK virtual energiya zahiralari yordamida protsessor, tarmoq va sensor samaradorligini ta'minlaydi, bu tizimni manba yadrosi sifatida belgilaydi. Ushbu energiya zahiralari tarmoqdagi boshqa tugunlarning bilmagan xatolaridan yoki zararli xatti-harakatlaridan tugunning ishlash muddatiga salbiy ta'sirini minimallashtirish uchun energiya va aloqa byudjetlarini amalga oshirishi mumkin. U engil simsiz tarmoq to'plami yordamida paketlarni yo'naltirish, marshrutlash va boshqa tarmoq rejalashtirish protokollarini qo'llab-quvvatlaydi. Boshqa joriy sensorli operatsion tizimlar bilan taqqoslaganda, Nano-RK o'zining ichki yadro yadrosi (RK) uchun kichik hajmdagi iz bilan boy funktsionallik va o'z vaqtida rejalashtirishni ta'minlaydi.[5]

Nano-RK ning xususiyatlari

Statik konfiguratsiya - Nano-RK energiya sarfini boshqarish uchun statik dizayn-vaqt yondashuvidan foydalanadi. Nano-RK tomonidan dinamik vazifalarni yaratishga ruxsat berilmaydi, dastur ishlab chiquvchilaridan ikkala vazifani va bron kvotalarini / ustuvor yo'nalishlarini statik sinov konstruktsiyasida belgilashni talab qiladi. Ushbu dizayn ishlab chiquvchilarga dastur talablarini va butun tizim davomida energiya samaradorligini ta'minlash uchun har bir vazifa uchun energiya byudjetini yaratishga imkon beradi. Statik konfiguratsiya yondashuvidan foydalanib, barcha ish vaqti konfiguratsiyalari va quvvat talablari oldindan aniqlangan va tizim haqiqiy dunyoda joylashtirilishidan va bajarilishidan oldin dizayner tomonidan tasdiqlangan. Ushbu yondashuv, shuningdek, an'anaviy RTOSlar bilan taqqoslaganda barqarorlik va kichik iz xususiyatlarini kafolatlashga yordam beradi.

Watchdog Timer-ni qo'llab-quvvatlash - Watchdog - bu tizim uzoq vaqt davomida hal qiluvchi nosozliklarga duch kelsa, tizimni qayta tiklash harakatini boshlaydigan dasturiy ta'minot taymeri. Qo'riqchi mexanizmi tizimni javob bermaydigan holatdan normal ishlashga qaytarishi mumkin, taymer o'chguncha kutib turing va keyinchalik qurilmani qayta yoqing. Nano-RK-da qo'riqchi taymeri to'g'ridan-to'g'ri protsessorning qayta yuklash signaliga ulanadi REBOOT ON ERROR. Odatiy bo'lib, u tizim ishga tushirilganda va rejalashtiruvchi har safar ishga tushirganda faollashadi. Agar tizim oldindan belgilangan vaqt ichida javob bermasa, tizim qayta ishga tushiriladi va boshqaruvni qayta tiklash uchun boshlash buyrug'i ketma-ketligini ishga tushiradi.

Chuqur uyqu rejimi - Nano-RK ning yana bir xususiyati - chuqur uyqu holatidir. Energiya samaradorligi sababli, agar mos keladigan vazifalar bo'lmasa, tizim o'chirilishi va chuqur uyqu holatiga o'tish imkoniyati berilishi mumkin. Tizim chuqur uyqu holatida bo'lsa, faqat chuqur uyqu taymeri tizimni oldindan belgilangan kechikish davri bilan uyg'otishi mumkin. Chuqur uyqu holatidan uyg'onganingizdan so'ng, protsessorning o'z vaqtida uyg'onishini kafolatlash uchun keyingi kontekstni almashtirish vaqti belgilanadi. Agar datchik tuguni chuqur uxlashni xohlamasa, unga qo'shimcha qurilmalarni boshqarish paytida kam energiya sarfi holatiga o'tish imkoniyati ham beriladi.

NANO-RK tayyor navbat

Nano-RK belgilangan hajmdagi qator ichida tayyor navbat tugunlarining ikki tomonlama bog'langan ro'yxatini amalga oshirdi va "tayyor navbat" deb nomlanib, barcha tayyor vazifalarni vazifaning ustuvor yo'nalishlaridan qaysi biri yuqoriroq bo'lsa, kamayib boruvchi tartibda buyurtma qiladi. Nano-RK dasturida ishlaydigan vazifalar soni tarqatishdan oldin sinov maydonchasida statik ravishda tuzilganligi sababli, tayyor navbatning kattaligi ham bajarishga tayyor bo'lishi mumkin bo'lgan ushbu vazifalarga o'rnatiladi. Nrk readys. nomli sobit uzunlikdagi qator, nrk defs.h fayli ichida ikkita ko'rsatgich bilan birga ushbu qator ichidagi eng muhim ikkita katakka murojaat qilish uchun topilgan. Bepul tugun ko'rsatgichi (bo'sh tugun) va bosh tugun ko'rsatkichi (bosh tugun) mos keladigan navbatdagi katakchani va mos ravishda eng yuqori ustuvor vazifani bajarishga yo'naltiradi.

Rejalashtiruvchi

Nano-RK yadrosi - bu ustuvorlikka asoslangan va energiya tejaydigan statik, oldindan real vaqtni rejalashtirish. Prioritetga asoslangan oldindan rejalashtirishni rejalashtirish uchun rejalashtiruvchi har doim tayyor navbatdan eng yuqori ustuvor vazifani tanlaydi. Energiyani tejash uchun vazifalar resurs uchun so'rov o'tkazmaydi, aksincha ba'zi bir hodisalarda vazifalar bloklanadi va hodisalar yuz berganda ularni ochish mumkin. Tayyor navbatda hech qanday vazifa bo'lmaganida, tizim energiyani tejash uchun quvvat bilan ta'minlanishi mumkin. Tizim ishlayotganida, nrk cur vazifasi tcb tomonidan tasdiqlangan bitta va bitta vazifa (joriy vazifa) oldindan belgilangan muddat davomida ishlaydi. Shunday qilib, rejalashtiruvchining eng muhim vazifasi - bu qaysi vazifani keyinroq bajarish kerakligi va keyingi vazifani rejalashtiruvchini qayta ishga tushirguncha qancha vaqt davomida bajarish kerakligini hal qilishdir.

Adabiyotlar

  1. ^ nano-RK Arxivlandi 2008-05-11 da Orqaga qaytish mashinasi
  2. ^ [1] A. Eswaran, A. Rowe va R. Rajkumar, "Nano-RK: Sensor tarmoqlari uchun energiya manbalaridan markazlashtirilgan operatsion tizim", IEEE real vaqt tizimlari simpoziumi, 2005 yil dekabr.
  3. ^ Anand Esvaran va Entoni Rou va Raj Rajkumar, "FireFly: Vaqt sinxronlashtirilgan real vaqtda sensorli tarmoq platformasi"
  4. ^ ko'milgan.com
  5. ^ [3] Anand Esvaran va Entoni Rou va Raj Rajkumar, "Nano-RK: Sensor tarmoqlari uchun energetikadan xabardor bo'lgan RTOS", 2005 yil.

Tashqi havolalar