Contiki - Contiki - Wikipedia

Contiki
Contiki-ipv6-rpl-cooja-simulation.png
Cooja Contiki tarmoq simulyatorida IPv6-RPL-6LoWPAN tarmog'ini tashkil etuvchi 41 tugunda ishlaydigan Contiki 2.6 ni ko'rsatadigan Ubuntu tizimining skrinshoti.
TuzuvchiAdam Dunkels
Ishchi holatJoriy
Manba modeliOchiq manba
Dastlabki chiqarilish2003 yil 10 mart; 17 yil oldin (2003-03-10)
Oxirgi nashr3.0 / 26.08.2015; 5 yil oldin (2015-08-26)
LitsenziyaBSD
Rasmiy veb-saytwww.contiki-os.org

Contiki bu operatsion tizim kam quvvatli simsiz ishlashga yo'naltirilgan, tarmoq xotirasi cheklangan tizimlar uchun Internet narsalar qurilmalar. Contiki uchun doimiy foydalanishga ko'cha yoritgichlari, aqlli shaharlar uchun ovozli monitoring, radiatsiya monitoringi va signalizatsiya tizimlari kiradi.[1] Bu ochiq manbali dasturiy ta'minot ostida chiqarilgan BSD litsenziyasi.

Contiki tomonidan yaratilgan Adam Dunkels 2002 yilda[2] va Texas Instruments, Atmel, Cisco, dan dunyo bo'ylab ishlab chiquvchilar guruhi tomonidan yanada ishlab chiqilgan. ENEA, ETH Tsyurix, Redwire, Axen universiteti, Oksford universiteti, SAP, Sensinode, Shvetsiya kompyuter fanlari instituti, ST Microelectronics, Zolertia va boshqalar.[3] Contiki TCP / IP stack-ga o'rnatilganligi va voqealarga asoslangan yadro orqali engilroq oldindan rejalashtirish tufayli mashhurlikka erishdi. [4] bu IoT uchun juda turtki beruvchi xususiyatdir. Ism Contiki dan keladi Tor Heyerdal mashhur Kon-Tiki sal.

Contiki ko'p vazifali va ichki o'rnatilgan dasturlarni taqdim etadi Internet Protocol Suite (TCP / IP to'plami), faqat 10 ga yaqin kerak kilobayt ning tezkor kirish xotirasi (RAM) va 30 kilobayt faqat o'qish uchun xotira (ROM).[1] To'liq tizim, shu jumladan grafik foydalanuvchi interfeysi, taxminan 30 kilobayt RAMga ehtiyoj seziladi.[5]

Yaqinda yangi filial yaratildi, nomi ma'lum Contiki-NG: Keyingi avlod IOT qurilmalari uchun operatsion tizim

Uskuna

Contiki qattiq cheklangan qo'shimcha qurilmalar turlarida ishlashga mo'ljallangan xotira, kuch, ishlov berish quvvati va aloqa tarmoqli kengligi. Odatdagi Contiki tizimida kilobaytlar bo'yicha xotira, milliwattlar bo'yicha quvvat byudjeti, megaHertz bilan o'lchangan ishlov berish tezligi va yuzlab kilobits / soniya bo'yicha aloqa o'tkazuvchanligi mavjud. Bunday tizimlarga ko'plab turlar kiradi o'rnatilgan tizimlar va eski 8-bit kompyuterlar.

Tarmoq

Contiki uchta tarmoq mexanizmlarini taqdim etadi: uIP TCP / IP to'plami,[6] nima beradi IPv4 tarmoq, uIPv6 to'plami,[7] nima beradi IPv6 tarmoq va Rime stack, bu kam quvvatli simsiz tarmoqlar uchun mo'ljallangan maxsus engil tarmoq protokollari to'plamidir. IPv6 to'plami Cisco tomonidan qo'shilgan va chiqarilgandan so'ng uni qabul qiladigan eng kichik IPv6 to'plami bo'lgan IPv6 tayyor sertifikatlash.[8] IPv6 stekasida quyidagilar mavjud Kam quvvatli va zararli tarmoqlar uchun marshrutlash protokoli (RPL) kam quvvatli IPv6 tarmoqlari uchun marshrutlash protokoli va 6LoWPAN uchun sarlavhani siqish va moslashtirish qatlami IEEE 802.15.4 havolalar.

Rime - bu muqobil tarmoq to'plami, chunki IPv4 yoki IPv6 steklari ustma-ustasi taqiqlanganda foydalanish mumkin. Rime to'plami kam quvvatli simsiz tizimlar uchun aloqa primitivlari to'plamini taqdim etadi. Odatiy ibtidoiy ko'rsatmalar - bitta hopli bitta translyatsiya, bitta-hopli translyatsiya, multi-hop-yagona translyatsiya, tarmoqni suv bosishi va manzilsiz ma'lumotlarni yig'ish. Primitivlar o'z-o'zidan ishlatilishi yoki murakkab protokollar va mexanizmlarni yaratish uchun birlashtirilishi mumkin.[9]

Kam quvvatli ishlash

Ko'pgina Contiki tizimlari kuchli quvvatga ega. Batareyada ishlaydigan simsiz sensorlar ko'p yillar davomida qarovsiz ishlashni va batareyalarni qayta zaryadlash yoki almashtirish uchun ozgina mablag 'sarflashni talab qilishi mumkin. Contiki u ishlaydigan tizimlarning quvvat sarfini kamaytirish mexanizmlari to'plamini taqdim etadi. Radioning kam quvvatli ishlashiga erishish uchun standart mexanizm ContikiMAC deb nomlanadi.[10] ContikiMAC yordamida tugunlar kam quvvat rejimida ishlay olishi va hanuzgacha radio xabarlarni qabul qilishi va uzatishi mumkin.

Simulyatsiya

Contiki tizimida Contiki tugunlarini simulyatsiya qiluvchi Cooja deb nomlangan sensor simulyatori mavjud.[11] Tugunlar quyidagi uchta sinfdan biriga tegishli: a) taqlid qilingan Cooja tugunlari, b) simulyatsiya xostida tuzilgan va bajarilgan Contiki kodi yoki c) Java tugunlari, bu erda tugunning xatti-harakatlari Java klassi sifatida qayta tiklanishi kerak. Bitta Cooja simulyatsiyasi uchta sinfning har qandayida joylashgan sensorli tugunlarning aralashmasini o'z ichiga olishi mumkin. Taqlidli tugunlardan, shuningdek, taqlid qilinmagan tarmoqqa Contiki bo'lmagan tugunlarni kiritish uchun ham foydalanish mumkin.

Contiki 2.6 da. Bilan platformalar TI MSP430 va Atmel AVR mikrokontrollerlarni taqlid qilish mumkin.

Dasturlash modeli

Kichik xotirali tizimlarda samarali ishlash uchun Contiki dasturlash modeli asoslanadi protezlar.[12][13] Prototread - bu ikkalasining xususiyatlarini baham ko'radigan, xotirani tejaydigan dasturiy abstraktsiya ko'p ishlov berish va voqealarga asoslangan dasturlash har bir prototreadning past xotirasiga ega bo'lish uchun. Yadro ichki yoki tashqi hodisaga javoban jarayonning prototipini chaqiradi. Ichki hodisalarga misol qilib olov yoqadigan taymerlar yoki boshqa jarayonlardan xabarlar joylashtirilishi mumkin. Tashqi hodisalarga misol qilib radio qo'shnisidan tetiklanadigan yoki keladigan paketlarni keltirib chiqaradigan datchiklarni keltirish mumkin.

Protektorlar birgalikda rejalashtirilgan. Shunday qilib, Contiki jarayoni doimo aniq vaqt oralig'ida yadroga boshqaruvni qaytarishi kerak. Contiki jarayonlari hodisalarni kutishni blokirovka qilish uchun har bir voqea chaqiruvi orasidagi yadroni boshqarishni ta'minlaydigan maxsus prototrop konstruktsiyasidan foydalanishi mumkin.

Xususiyatlari

Ning skrinshoti VNC serverida ishlaydi Atmel AVR Contiki porti

Contiki, har bir jarayon uchun ixtiyoriy ravishda oldindan o'qiydigan ko'p qirrali o'qishni qo'llab-quvvatlaydi, jarayonlararo aloqa hodisalar orqali o'tadigan xabarlardan, shuningdek ixtiyoriy ravishda foydalanish grafik foydalanuvchi interfeysi (GUI) kichik tizim yoki mahalliy ulangan terminallar uchun to'g'ridan-to'g'ri grafik qo'llab-quvvatlash yoki tarmoqqa ulangan virtual displey Virtual Network Computing (VNC) yoki Telnet orqali.

Contiki-ning to'liq o'rnatilishi quyidagi xususiyatlarni o'z ichiga oladi:

Contiki ommabop tomonidan qo'llab-quvvatlanadi SSL / TLS kabi kutubxonalar wolfSSL, uning 3.15.5 versiyasida port mavjud.[14]

Portlar

Contiki Commodore 64.

Contiki operatsion tizimi quyidagi tizimlarga o'tkaziladi:

Mikrokontroller

Kompyuterlar

O'yin pristavkalari

Shuningdek qarang

Izohlar

  1. ^ a b v d e f g h men cc65 asoslangan rivojlanish

Adabiyotlar

  1. ^ a b Contiki OS.
  2. ^ Contiki: Sensor tarmoqlariga IP olib kelish
  3. ^ "Hamjamiyat", Contiki OS.
  4. ^ Dunkels, Adam (2004), "Contiki - kichik tarmoqqa ulangan sensorlar uchun engil va moslashuvchan operatsion tizim", Mahalliy kompyuter tarmoqlari bo'yicha IEEE 29 yillik xalqaro konferentsiyasi materiallari., 455-462 betlar.
  5. ^ Ochiq joyda: narsalar Internetini boshqaradigan ozgina ma'lum bo'lgan ochiq kodli OS
  6. ^ Dunkels, Adam (2003 yil may), "8 bitli arxitektura uchun to'liq TCP / IP", Mobil tizimlar, dasturlar va xizmatlar (MobiSys) bo'yicha birinchi ACM / Usenix xalqaro konferentsiyasi materiallari., San-Fransisko
  7. ^ Dervi, Matild; Abille, Julien; Vettervald, Patrik; O'Flinn, Kolin; Leverett, Bleyk; Gnoske, Erik; Vidales, Maykl; Mulligan, Jeof; Tsiftes, Nikolas; Fin, Niklas; Dunkels, Adam (2008 yil noyabr), "IPv6 sensorli tarmoqlarini tayyorlash", Tarmoqqa o'rnatilgan datchik tizimlari bo'yicha Oltinchi ACM konferentsiyasining materiallari (SenSys) (afishada sessiya), Raleigh, Bosimining ko'tarilishi, BIZ: ACM
  8. ^ Yangiliklar xonasi, Cisco, 2008 yil.
  9. ^ Dunkels, Odam; Österlind, Fredrik; U, Zhitao (2007 yil noyabr), "Simsiz sensorli tarmoqlar uchun moslashuvchan aloqa arxitekturasi", Tarmoqqa o'rnatilgan datchik tizimlari bo'yicha beshinchi ACM konferentsiyasining materiallari (SenSys), Sidney, AU.
  10. ^ Dunkels, Odam, ContikiMAC Radio Duty Velosiped protokoli (PDF ).
  11. ^ "Boshlash", Contiki OS.
  12. ^ Dunkels, Odam; Shmidt, Oliver; Voygt, Tiemo; Ali, Munieb (2006 yil noyabr), "Protothreads: xotirada cheklangan o'rnatilgan tizimlarning voqealarga asoslangan dasturlashini soddalashtirish", O'rnatilgan tarmoq sensorlari tizimlari bo'yicha to'rtinchi ACM konferentsiyasining materiallari (SenSys), Boulder, CO, AQSH Dunkels, A .; Shmidt, O .; Voygt, T .; Ali, M. (2006). "Prototreads". O'rnatilgan tarmoq sensorlari tizimlari bo'yicha 4-xalqaro konferentsiya materiallari - Sen Sys '06. p. 29. doi:10.1145/1182807.1182811. ISBN  1595933433. (PDF, Taqdimot slaydlari ).
  13. ^ "Protreadread", Kod, Google.
  14. ^ "wolfSSL CONTIKI OS porti - wolfSSL". 2018-12-18. Olingan 2019-01-09.
  15. ^ http://sourceforge.net/p/contiki/mailman/message/31753844/
  16. ^ Shteyn, H, Contiki-ni Windows ostida boshqarish, Trix, arxivlangan asl nusxasi 2003-12-09 kunlari.

Tashqi havolalar