RTOS چیست؟
توسعه دهندگان اختصاصی FreeRTOS بیش از ۱۵ سال است که درهمکاری نزدیک با شرکت های برتر تراشه سازی جهان کارمی کنند تا بتوانند RTOS و ابزارهای با کیفیت عالی و برتر بازار را ارائه دهند.
سیستم عامل یک برنامه رایانه ای است که ازعملکردهای اصلی رایانه پشتیبانی می کند وخدمات را به برنامه ی دیگر (یا برنامه های دیگر) که در رایانه اجرا می شوند ارائه می دهد. این برنامه ها عملکردی را که کاربر از کامپیوتر میخواهد یا به آن نیاز دارد ، ارائه می دهد. خدمات ارائه شده توسط سیستم عامل نوشتن برنامه ها را سریعتر ، ساده تر و قابل نگهداری می کند. اگر این صفحه وب را می خوانید ، از یک مرورگر وب (برنامه کاربردی که عملکرد موردعلاقه شما را فراهم می کند) استفاده می کنید ، که خود در یک محیط ارائه شده توسط سیستم عامل در حال اجرا است.
RTOS چیست؟
به نظر می رسد اکثر سیستم عامل ها امکان اجرای همزمان چندین برنامه را دارند. به این کار چند وظیفه ای می گویند. در واقع ، هرهسته پردازنده فقط درهرزمان مشخص می تواند یک رشته اجرا کند. بخشی از سیستم عامل به نام زمانبند وظیفه تصمیم گیری در مورد زمان اجرای برنامه را دارد و با تعویض سریع بین هر برنامه ، در ظاهر اجرای همزمان برنامه ها را فراهم می کند.
نوع سیستم عامل با توجه به اینکه زمانبند تصمیم می گیرد چه زمانی برنامه را اجرا کند ، تعریف می شود. به عنوان مثال ، برنامه ریز مورد استفاده در یک سیستم عامل چند کاربره (مانند Unix) اطمینان حاصل خواهد کرد که هر کاربر مقدار مناسبی از زمان پردازش را بدست می آورد. به عنوان مثال دیگر ، برنامه ریز در یک سیستم عامل رومیزی (مانند ویندوز) سعی می کند اطمینان حاصل کند که کامپیوتر به کاربر پاسخگو است.
برنامه ریز در یک سیستم عامل بی درنگ Real time) RTOS) به گونه ای طراحی شده است که یک الگوی اجرای قابل پیش بینی (که معمولاً به عنوان قطعی توصیف می شود) ارائه می دهد. این مورد به ویژه برای سیستم های جاسازی شده (embedded) مورد توجه است زیرا سیستم های embedded اغلب نیاز به زمان واقعی دارند. الزامات زمان واقعی موردی است که مشخص میکند سیستم تعبیه شده باید در یک زمان دقیق تعیین شده (مهلت مقرر) به یک رویداد خاص پاسخ دهد. تضمین پاسخگویی به الزامات زمان واقعی تنها درصورتی قابل انجام است که رفتار برنامه ریز سیستم عامل قابل پیش بینی باشد.(و بنابراین قاطعانه است.)
برنامه ریزهای مرسوم در زمان واقعی ، مانند برنامه ریز مورد استفاده در FreeRTOS ، با اجازه دادن به کاربر برای تعیین اولویت برای هر شاخه از اجرا ، به جبرگرایی می رسند. سپس برنامه ریز از اولویت استفاده می کند تا بداند کدام شاخه از اجرای بعدی اجرا می شود. در FreeRTOS ، یک رشته اجرا را یک وظیفه می نامند.
Free RTOS چیست؟
FreeRTOS یک کلاس از RTOS است که به اندازه کافی کوچک طراحی شده است تا بتواند روی میکروکنترلر کار کند. (اگرچه استفاده از آن محدود به برنامه های میکروکنترلر نیست). میکروکنترلر یک پردازنده کوچک و محدود به منابع است که روی یک تراشه ، خود پردازنده را فقط با خواندن حافظه (ROM یا Flash) برای نگه داشتن برنامه برای اجرا و حافظه دسترسی تصادفی (RAM) مورد نیاز برنامه ها که در خود جای داده است را اجرا می کند. به طور معمول این برنامه مستقیماً از حافظه فقط خواندنی (ROM) اجرا می شود.
میکروکنترلرها در برنامه های عمیق embedded (آن دسته از برنامه هایی که در واقع هرگز خود پردازنده ها یا نرم افزاری را که در حال اجرا هستند ، مشاهده نمی کنید) استفاده می شود که معمولاً وظیفه ای کاملاً اختصاصی دارند. محدودیت های اندازه و ماهیت برنامه اختصاصی ، به ندرت استفاده از یک اجرای کامل RTOS را تضمین می کند ” یا در واقع استفاده از یک اجرای کامل RTOS را امکان پذیر می کند.” FreeRTOS فقط قابلیت برنامه ریزی زمان واقعی ، ارتباطات بین وظایف ، زمانبندی و همزمانی اولیه را فراهم می کند. این بدان معنی است که با دقت بیشتری به عنوان هسته زمان واقعی یا مجری در زمان واقعی توصیف می شود. سپس قابلیت های اضافی مانند رابط کنسول فرمان یا دسته های شبکه را می توان با اجزای الحاقی اضافه کرد.