كونتيكي

كونتيكي
لقطة شاشة لنظام Ubuntu تُظهر Contiki 2.6 قيد التشغيل على 41 عقدة تشكل شبكة IPv6-RPL-6LoWPAN في محاكي شبكة Cooja Contiki.
المطورآدم دونكلز
نموذج المصدرالمصدر المفتوح
الإصدار الأولي10 مارس 2003 ؛ منذ 21 سنة ( 2003-03-10 )
الإصدار النهائي3.0 / 25 أغسطس 2015 ؛ منذ 9 سنوات ( 2015-08-25 )
مستودعgithub.com/contiki-os/contiki
رخصةبند BSD-3
الموقع الرسميwww.contiki-os.org
كونتيكي-إن جي
إصدار مستقر
4.9 / 17 يونيو 2023 ؛ منذ 16 شهرًا (2023-06-17)
مستودعgithub.com/contiki-ng/contiki-ng
موقع إلكترونيwww.contiki-ng.org

Contiki هو نظام تشغيل للأنظمة الشبكية المحدودة الذاكرة مع التركيز على أجهزة إنترنت الأشياء اللاسلكية منخفضة الطاقة . يستخدم Contiki لأنظمة إضاءة الشوارع ومراقبة الصوت للمدن الذكية ومراقبة الإشعاع وأجهزة الإنذار. [1] إنه برنامج مفتوح المصدر تم إصداره بموجب ترخيص BSD-3-Clause .

تم إنشاء Contiki بواسطة Adam Dunkels في عام 2002 [2] وتم تطويره بشكل أكبر من قبل فريق عالمي من المطورين من Texas Instruments و Atmel و Cisco و ENEA و ETH Zurich و Redwire و RWTH Aachen University و Oxford University و SAP و Sensinode و Swedish Institute of Computer Science و ST Microelectronics و Zolertia والعديد من الآخرين. [3] اكتسب Contiki شعبية بسبب مكدس TCP / IP المدمج والجدولة الوقائية خفيفة الوزن عبر نواة مدفوعة بالأحداث [4] وهي ميزة محفزة للغاية لإنترنت الأشياء. يأتي اسم Contiki من طوف Kon-Tiki الشهير لثور هيردال .

يوفر Contiki إمكانية تعدد المهام ومجموعة بروتوكولات إنترنت مدمجة (TCP/IP stack)، إلا أنه يحتاج فقط إلى حوالي 10 كيلوبايت من ذاكرة الوصول العشوائي (RAM) و30 كيلوبايت من ذاكرة القراءة فقط (ROM). [1] يحتاج النظام الكامل، بما في ذلك واجهة المستخدم الرسومية ، إلى حوالي 30 كيلوبايت من ذاكرة الوصول العشوائي (RAM). [5]

تم مؤخرًا إنشاء فرع جديد يُعرف باسم Contiki-NG: نظام التشغيل لأجهزة إنترنت الأشياء من الجيل التالي

الأجهزة

تم تصميم Contiki للعمل على أنواع الأجهزة التي تعاني من قيود شديدة فيما يتعلق بالذاكرة والطاقة وقوة المعالجة وعرض النطاق الترددي للاتصالات . يحتوي نظام Contiki النموذجي على ذاكرة بحجم كيلوبايت، وميزانية طاقة بحجم ملي واط، وسرعة معالجة تقاس بالميجا هرتز، وعرض نطاق ترددي للاتصالات بحجم مئات الكيلوبت/ثانية. تتضمن مثل هذه الأنظمة العديد من أنواع الأنظمة المضمنة وأجهزة الكمبيوتر القديمة ذات 8 بت .

الشبكات

توفر Contiki ثلاث آليات للشبكة: مجموعة uIP TCP/IP، [6] التي توفر شبكات IPv4 ، ومجموعة uIPv6، [7] التي توفر شبكات IPv6 ، ومجموعة Rime، وهي مجموعة من بروتوكولات الشبكات خفيفة الوزن المخصصة والمصممة للشبكات اللاسلكية منخفضة الطاقة. ساهمت شركة Cisco بمجموعة IPv6 وكانت، عند إصدارها، أصغر مجموعة IPv6 تتلقى شهادة IPv6 Ready . [8] تحتوي مجموعة IPv6 أيضًا على بروتوكول التوجيه لشبكات الطاقة المنخفضة والضياع (RPL) لشبكات IPv6 منخفضة الطاقة وطبقة ضغط وتكييف رأس 6LoWPAN لروابط IEEE 802.15.4 .

Rime عبارة عن مجموعة شبكات بديلة، للاستخدام عندما تكون التكلفة الإجمالية لمجموعات IPv4 أو IPv6 باهظة. توفر مجموعة Rime مجموعة من العناصر الأساسية للاتصالات للأنظمة اللاسلكية منخفضة الطاقة. العناصر الأساسية الافتراضية هي البث الأحادي القفزة، والبث الأحادي القفزة، والبث الأحادي القفزات المتعددة، وإغراق الشبكة، وجمع البيانات بدون عناوين. يمكن استخدام العناصر الأساسية بمفردها أو مجتمعة لتشكيل بروتوكولات وآليات أكثر تعقيدًا. [9]

تشغيل منخفض الطاقة

إن العديد من أنظمة Contiki مقيدة بشدة بالطاقة. قد تحتاج أجهزة الاستشعار اللاسلكية التي تعمل بالبطارية إلى توفير سنوات من التشغيل دون مراقبة وبوسائل قليلة لإعادة شحن البطاريات أو استبدالها. توفر Contiki مجموعة من الآليات لتقليل استهلاك الطاقة للأنظمة التي تعمل عليها. الآلية الافتراضية لتحقيق تشغيل منخفض الطاقة للراديو تسمى ContikiMAC. [10] مع ContikiMAC، يمكن تشغيل العقد في وضع الطاقة المنخفضة ولا تزال قادرة على تلقي ونقل الرسائل اللاسلكية.

محاكاة

يتضمن نظام Contiki محاكي استشعار يسمى Cooja، والذي يحاكي عقد Contiki. [11] تنتمي العقد إلى واحدة من الفئات الثلاث التالية: أ) عقد Cooja المحاكية، ب) كود Contiki المجمّع والمنفذ على مضيف المحاكاة، أو ج) عقد Java، حيث يجب إعادة تنفيذ سلوك العقدة كفئة Java. قد تحتوي محاكاة Cooja واحدة على مزيج من عقد الاستشعار من أي من الفئات الثلاث. يمكن أيضًا استخدام العقد المحاكية لتضمين عقد غير Contiki في شبكة محاكاة.

في Contiki 2.6، يمكن محاكاة المنصات التي تحتوي على وحدات التحكم الدقيقة TI MSP430 و Atmel AVR .

نموذج البرمجة

لتشغيل الأنظمة ذات الذاكرة الصغيرة بكفاءة، يعتمد نموذج برمجة كونتيكي على الخيوط الأولية . [12] [13] الخيط الأولي هو تجريد برمجة فعال في استخدام الذاكرة يشترك في ميزات كل من البرمجة متعددة الخيوط والبرمجة القائمة على الأحداث لتحقيق تكلفة ذاكرة منخفضة لكل خيط أولي. يستدعي النواة الخيط الأولي لعملية استجابة لحدث داخلي أو خارجي. ومن أمثلة الأحداث الداخلية المؤقتات التي يتم إطلاقها أو الرسائل التي يتم نشرها من عمليات أخرى. ومن أمثلة الأحداث الخارجية أجهزة الاستشعار التي تقوم بتشغيل الحزم الواردة من جار لاسلكي.

يتم جدولة الخيوط الأولية بشكل تعاوني. وبالتالي، يجب على عملية Contiki دائمًا إعادة التحكم صراحةً إلى النواة على فترات منتظمة. قد تستخدم عمليات Contiki بنية خيوط أولية خاصة لمنع انتظار الأحداث مع التنازل عن التحكم إلى النواة بين كل استدعاء للحدث.

سمات

لقطة شاشة لخادم VNC قيد التشغيل على منفذ Atmel AVR الخاص بـ Contiki

يدعم Contiki تعدد العمليات الاختياري لكل عملية، والاتصال بين العمليات باستخدام أحداث تمرير الرسائل، بالإضافة إلى نظام فرعي اختياري لواجهة المستخدم الرسومية (GUI) مع دعم رسومي مباشر للمحطات المتصلة محليًا أو العرض الافتراضي المتصل بالشبكة باستخدام الحوسبة الشبكية الافتراضية (VNC) أو عبر Telnet.

يتضمن التثبيت الكامل لبرنامج Contiki الميزات التالية:

يتم دعم Contiki بواسطة مكتبات SSL/TLS الشهيرة مثل wolfSSL ، والتي تتضمن منفذًا في إصدارها 3.15.5. [14]

الموانئ

كونتيكي على كومودور 64

المتحكمات الدقيقة

أجهزة الكمبيوتر

أجهزة الألعاب

انظر أيضا

ملحوظات

  1. ^ تطوير يعتمد على cc65 abcdefghi

مراجع

  1. ^ من قبل Contiki OS.
  2. ^ كونتيكي: جلب بروتوكول الإنترنت إلى شبكات الاستشعار
  3. ^ "المجتمع"، نظام التشغيل كونتيكي.
  4. ^ دنكلز، آدم (2004)، "كونتيكي – نظام تشغيل خفيف الوزن ومرن لأجهزة استشعار صغيرة متصلة بالشبكة"، وقائع المؤتمر الدولي السنوي التاسع والعشرون لمعهد مهندسي الكهرباء والإلكترونيات حول شبكات الكمبيوتر المحلية ، ص 455-462.
  5. ^ في العلن: نظام التشغيل مفتوح المصدر غير المعروف الذي يحكم إنترنت الأشياء
  6. ^ Dunkels, Adam (مايو 2003)، "TCP/IP كامل للهندسة المعمارية ذات 8 بتات"، وقائع المؤتمر الدولي الأول لـ ACM/Usenix حول الأنظمة والتطبيقات والخدمات المحمولة (MobiSys) ، سان فرانسيسكو{{citation}}: CS1 maint: location missing publisher (link)
  7. ^ دورفي، ماتيلد؛ أبيلي، جوليان؛ ويتيروالد، باتريك؛ أوفلين، كولين؛ ليفيريت، بليك؛ غنوسك، إريك؛ فيداليس، مايكل؛ موليجان، جيف؛ تسيفتس، نيكولاس؛ فيني، نيكلاس؛ دنكلز، آدم (نوفمبر 2008)، "جعل شبكات الاستشعار جاهزة لـ IPv6"، وقائع المؤتمر السادس لجمعية الحوسبة الآلية حول أنظمة الاستشعار المضمنة المتصلة بالشبكة (SenSys) (جلسة الملصقات)، رالي، كارولاينا الشمالية ، الولايات المتحدة : جمعية الحوسبة الآلية
  8. ^ غرفة الأخبار، سيسكو، 2008.
  9. ^ Dunkels, Adam; Österlind, Fredrik; He, Zhitao (نوفمبر 2007)، "هندسة الاتصالات التكيفية لشبكات الاستشعار اللاسلكية"، وقائع المؤتمر الخامس لـ ACM حول أنظمة الاستشعار المضمنة الشبكية (SenSys) ، سيدني، أستراليا{{citation}}: CS1 maint: location missing publisher (link).
  10. ^ دنكلز، آدم، بروتوكول كونتيكيماك لتوزيع الراديو (PDF).
  11. ^ "ابدأ"، نظام التشغيل كونتيكي.
  12. ^ Dunkels, Adam; Schmidt, Oliver; Voigt, Thiemo; Ali, Muneeb (نوفمبر 2006)، "Protothreads: تبسيط البرمجة الموجهة بالأحداث للأنظمة المضمنة المقيدة بالذاكرة"، وقائع المؤتمر الرابع لجمعية الحوسبة الآلية حول أنظمة الاستشعار الشبكية المضمنة (SenSys) ، بولدر، كولورادو ، الولايات المتحدة الأمريكية{{citation}}: CS1 maint: location missing publisher (link) Dunkels, A.; Schmidt, O.; Voigt, T.; Ali, M. (2006). "Protothreads". وقائع المؤتمر الدولي الرابع حول أنظمة الاستشعار الشبكية المضمنة - Sen Sys '06 . ص. 29. doi :10.1145/1182807.1182811. ISBN 1595933433. S2CID  983128.(PDF, شرائح العرض التقديمي).
  13. ^ "Protothread"، الكود.
  14. ^ "wolfSSL CONTIKI OS port - wolfSSL". 2018-12-18 . تم الاسترجاع في 2019-01-09 .
  15. ^ "نظام التشغيل Contiki / [Contiki-developers] منفذ Contiki لمعالج Arm LPC1768". 19 ديسمبر 2020.
  16. ^ Stein, H, تشغيل Contiki تحت Windows، Trix، مؤرشف من الأصل في 2003-12-09.
  • "أدوات كونتيكي"، قتلة محترفون، AT : C02:الموقع غير الرسمي للموانئ التاريخية للإصدار 1.x.
  • "Minimal Contiki OS for LPC2103"، Manishshakya، NP، مؤرشف من الأصل في 2014-06-04.
  • مولد ملفات التكوين وصور الأقراص Contiki 2.5، أنظمة A2 الرجعية.
  • نقل Contiki على PIC32 (لوحة Seed-Eye)، IT : SSSUP، تم أرشفته من الأصل في 2013-03-18 ، تم استرجاعه في 2013-01-31.
  • الموقع الرسمي
Retrieved from "https://en.wikipedia.org/w/index.php?title=Contiki&oldid=1251523881"
Original text
Rate this translation
Your feedback will be used to help improve Google Translate