Contiki چیست ؟
Contiki یک سیستم عامل IoT است که که به طور خاص برای دستگاه های IoT دارای محدودیت حافظه , توان , پهنای باند و قدرت پردازشی طراحی شده است. این سیستم عامل از یک طراحی مینیمال به همراه ابزار متداول سیستم عامل های مدرن بهره می برد. و عملکردی برای مدیریت برنامه ها , فرآیندها , منابع , حافظه و ارتباطات ارائه می کند.
Contiki محبوبیت خود را مدیون سبک بودن (براساس استانداردهای مدرن) , پخته بودن و انعطاف پذیر بودن است.
بسیاری از مدارس , محققان سازمان ها , و حرفه ای ها از آن به عنوان سیستم عاملی که باید به آن کوچ کرد یاد می کنند . Contiki تنها چند کیلوبایت برای اجرا شدن نیاز دارد و در فضایی در حدود 30کیلوبایت تمامی سیستم عامل خود را جای می دهد -یک مرورگر وب , سرور وب , ماشین حساب, پوسته , کلاینت تلنت , کلاینت ایمیل , بازدیدکننده vnc , و ftp . این سیستم از سیستم عامل ها و شیوه های توسعه دهه های قبل بهره می گیرد که به راحتی امکان جای گیری در فضای کوچک را داشتند .
ارتباطات Contiki
Contiki از پروتکل های استاندارد و پروتکل های قدرتمند اخیر برای IoT پشتیبانی می کند
- uIP (برای IPv4) – این پیاده سازی TCP/IP میکروکنترلر های 8 و 16 بیتی را پشتیبانی می کند.
- uIPv6(برای IPv6)_یک افزونه IPv6 برای uIP کاملا سازگار .
- Rime این پشته جایگزین راه حلی برای وقتی که IPv4 یا IPv6 در دسترس نیستند ارائه می کند. Rime یک سری ابزار ابتدایی برای سیستم های کم مصرف نیز ارائه می کند.
- 6LoWPAN این نام مخفف IPv6 بر روی شبکه های محلی بیسیم شخصی می باشد .این سیستم از تکنولوژی فشرده سازی بهره می برد تا از نرخ انتقال داده بیسیم پایین موردنیاز دستگاه های با منابع محدود پشتیبانی کند .
- RPL این پروتکل IPv6 بردار فاصله ای برای LLNها (low-power and lossy networks) امکان پیدا شدن بهترین راه ممکن را در یک شبکه پیچیده از دستگاه ها با ظرفیت های مختلف فراهم می کند .
- CoAP این پروتکل از ارتباطات برای دستگاه های ساده ,به طور معمول دستگاه های نیازمند نظارت از راه دور شدید پشتیبانی می کند .
مطالعه آزاد
بارگیری ماژول دینامیک
بارگیری ماژول دینامیک و ارتباط در زمان اجرا از محیط هایی که در آن ها رفتار برنامه بعد از بکارگیری تغییر می کند پشتیبانی می کند . بارگذار ماژول Contiki فایل های ELF را بارگذاری می کند , جابجا می کند و آن ها را به هم ارتباط می دهد .
شبیه ساز شبکه Cooja
Cooja , شبیه ساز نتورک Contiki یک سیستم کامپایل شده و سالم Contiki که توسط Cooja کنترل می شود را شبیه سازی می کند.
استفاده از Cooja ساده است . به سادگی یک mote جدید با انتخاب از منوی mote ها ایجاد کنید . در پنجره ایی که پدیدار می شود نامی برای آن انتخاب کنید , فرمور آن را تعیین کنید و کامپایل شدن آن را تست کنید .
بعد از ساختن آن , mote ها را با زدن دکمه create اضافه کنید . یک mote type جدید ظاهر خواهد شد که می توانید به آن گره ها را متصل کنید . گام آخر نیز ذخیره سازی فایل شبیه سازیتان است تا بتوانید در آینده از آن استفاده کنید .
دیگر سیستم عامل های IoT
علاوه بر سیستم عامل Contiki و سیستم عامل اندروید که ورزن شخصی سازی شده آن را میتوان برای سیستم های اینترنت اشیا استفاده کرد. اکثر این سیستم عامل ها بر مبنای لینوکس هستن و توزیع های لینوکس محبوب تر هستن.
- FreeRTOS
- RIOT
- Google’s Brillo
- Yocto project
- TinyOS
- Contiki
- Windows Embedded
- mbedOS
- Zephyr project
- WindRiver Rocket
امیدوارم که به طور کلی با سیستم عامل های مورد استفاده در اینترنت اشیا آشنا شده باشید و در صورت لزوم هر کدام را برایتان توضیح بیشتر خواهیم داد.خیلی ممنون از اینکه این مطلب را در میکرو دیزاینتر الکترونیک مطالعه کردید. همهی آموزش های اینترنت اشیا را اینجا مطالعه کنید.
اگر این نوشته برایتان مفید بود لطفا کامنت بنویسید.
با سلام و خسته نباشید
اگر امکان داره در مورد Free RTOS و استفاده ازاوم در CubeMX آموزش جامعی قرار بدید
با تشکر
مطلب خوبی بود یه غلط نگارشی داشت که نوشته بودید لینکوس درستش لینوکس هست