Google is committed to advancing racial equity for Black communities. See how.
این صفحه به‌وسیله ‏Cloud Translation API‏ ترجمه شده است.
Switch to English

بستر، زمینه

OpenThread منتشر شده توسط گوگل توسط تیم OpenThread ، فروشندگان سیلیکون و انجمن به چندین دستگاه و سیستم عامل منتقل شده است. نمونه های ساخت برای همه سیستم عامل های منتقل شده در مخزن OpenThread موجود است .

به جستجوی فروشندگان مراجعه کنید تا لیستی قابل جستجو از همه سیستم عامل ها و درگاه های انجمن پشتیبانی شده توسط فروشندگان پیدا کنید.

حمایت کردن

پشتیبانی از هر سیستم عامل در طول زمان متفاوت است. برخی از سیستم عامل ها با پشتیبانی پشتیبانی شده توسط تیم OpenThread مشخص شده اند. سیستم عامل های بدون نشان اخیراً آزمایش نشده اند و ممکن است "پشتیبانی محدود" داشته باشند.

سطح پشتیبانی شرح
پشتیبانی پشتیبانی کامل و اساسی و همچنین هر جز Comp دارای مجوز Thread که از OpenThread استفاده می کند. بسیاری از این سیستم عامل ها توسط تیم OpenThread آزمایش و استفاده شده اند و برای استفاده در نسخه های نمایشی و Codelabs ما توصیه می شوند.
پشتیبانی محدود این سیستم عامل ها به طور کامل آزمایش نشده اند و ممکن است برخی از قابلیت های اصلی را از دست بدهند.
پشتیبانی نشده در حال حاضر پشتیبانی نمی شود و ممکن است با OpenThread مشکلی داشته باشد. با مسئولیت خود استفاده کنید.

معماری سیستم

معماری سیستم OT

OpenThread با توجه به قابلیت حمل و انعطاف پذیری طراحی شده است. کد قابل حمل C / C ++ (C99 و C ++ 03) است که به دلیل یک لایه انتزاعی باریک ، معماری سیستم است. این لایه انتزاعی به این معنی است که OpenThread می تواند بر روی فلز برهنه یا سیستم عامل اجرا شود. تا به امروز ، OpenThread برای اجرای در FreeRTOS ، RIOT-OS ، Zephyr OS ، Linux و macOS نشان داده شده است.

ماهیت قابل حمل OpenThread هیچ فرضی در مورد ویژگی های پلت فرم ندارد. OpenThread قلاب ها را برای استفاده از ویژگی های پیشرفته رادیویی و رمزنگاری فراهم می کند و نیازهای سیستم مانند حافظه ، کد و چرخه های محاسبه را کاهش می دهد. با حفظ توانایی پیش فرض در یک پیکربندی استاندارد ، این کار در هر سیستم عامل قابل انجام است.

OpenThread دارای یک سیستم ساخت قابل تنظیم است که به کمک آن یک توسعه دهنده می تواند ویژگی ها را در صورت لزوم فعال یا غیرفعال کند. فراتر از ابزار ابزار پیش فرض GNU ، منبع برای کار با تعدادی دیگر از ابزارهای محبوب مانند IAR و Visual Studio طراحی شده است.

طرح های سکو

OpenThread از هر دو طرح سیستم روی تراشه (SoC) و پردازنده مشترک پردازنده شبکه (NCP) پشتیبانی می کند.

SoC یک راه حل تک تراشه ای است که دارای RFIC (802.15.4 در مورد Thread) و پردازنده است که در آن OpenThread و لایه کاربرد روی پردازنده محلی اجرا می شود.

یک طرح NCP جایی است که لایه برنامه روی پردازنده میزبان اجرا می شود و با OpenThread از طریق اتصال سریال با استفاده از یک پروتکل کنترل کننده میزبان استاندارد که ما Spinel می نامیم ارتباط برقرار می کند. در این طراحی OpenThread می تواند از طریق رادیو یا پردازنده میزبان اجرا شود.

تک تراشه ، فقط موضوع (SoC)

معماری OT SoC

در این طرح ، لایه برنامه و OpenThread روی همان پردازنده اجرا می شوند. این برنامه مستقیماً از API های OpenThread و پشته IPv6 استفاده می کند.

این طراحی SoC است که بیشتر برای دستگاه های نهایی استفاده می شود. از آنجا که به شدت در یک سیلیکون یکپارچه است ، کمترین هزینه و کمترین مصرف برق را دارد.

تک تراشه ، چند رابط (SoC)

معماری OT Multiple SoC

وقتی یک SoC دارای چندین رادیو مانند 802.15.4 و Wi-Fi یا 802.15.4 و Bluetooth Low Energy (BLE) باشد ، لایه برنامه و OpenThread هنوز روی همان پردازنده کار می کنند. در طراحی رابط چندگانه ، OpenThread از طریق یک رابط داده خام IPv6 از پشته شخص ثالث IPv6 استفاده می کند.

هم پردازنده شبکه (NCP)

معماری OT NCP

طراحی استاندارد NCP دارای ویژگی های Thread در SoC است و لایه برنامه را روی پردازنده میزبان اجرا می کند ، که معمولاً از دستگاه OpenThread توانایی بیشتری دارد (اما نیاز به انرژی بیشتری دارد). پردازنده میزبان از طریق یک رابط سریال (معمولاً SPI یا UART) از طریق پروتکل Spinel با دستگاه OpenThread ارتباط برقرار می کند.

مزیت این طراحی این است که میزبان با قدرت بالاتر می تواند بخوابد در حالی که دستگاه OpenThread با قدرت پایین برای حفظ جایگاه خود در شبکه Thread فعال است. و از آنجا که SoC به لایه برنامه پیوند ندارد ، توسعه و آزمایش برنامه ها مستقل از ساخت OpenThread است.

این طرح برای دستگاه های دروازه ای یا دستگاه هایی که درخواست پردازش دیگری مانند دوربین های IP و بلندگوها دارند ، مفید است.

هم پردازنده رادیویی (RCP)

معماری OT Host-Controller

این یک نوع از طراحی NCP است که هسته OpenThread در پردازنده میزبان فقط با یک "کنترل کننده" کم در دستگاه با رادیو Thread زندگی می کند. پردازنده میزبان معمولاً در این طراحی خوابیده نیست ، تا حدی برای اطمینان از قابلیت اطمینان شبکه Thread.

در اینجا مزیت این است که OpenThread می تواند از منابع پردازنده قدرتمندتر استفاده کند.

این طراحی برای دستگاههایی که حساسیت کمتری به محدودیتهای برق دارند مفید است. به عنوان مثال ، پردازنده میزبان در یک دوربین فیلمبرداری همیشه برای پردازش ویدیو روشن است.

مسائل بستر باز

موارد زیر در حال حاضر برای سیستم عامل های OpenThread باز است: