خانه / سیستم عامل / سیستم عامل بلادرنگ Division

سیستم عامل بلادرنگ Division

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

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

به جرات می توانیم بگوییم برای اولین بار، ما اقدام به طراحی یک سیستم عامل بلادرنگ انحصاری برای میکروکنترلرهای AVR سری Mega نموده ایم که این سیستم عامل قابلیت های زیر را دارا  میباشد:

۱- مدیریت کامل حافظه به روش مکانیزم منفرد لیست پیوندی
۲- وجود دو بخش وظایف ایستا و پویا
۳- مجهز به صندوق‌های پستی
۴- انتقال پیغام ها به روش های همگام و ناهمگام
۵- مدیریت کامل منابع سیستمی (از جمله مدیریت مستقیم پردازنده)
۶- اجرای ۳۰ وظیفه (Task) به صورت همزمان (قابل افزایش)
۷- مجهز به سیستم پیشرفته مدیریت و رسیدگی به خطاها
۸- قابلیت پیکربندی Kernel به صورت یک رابط جداگانه
۹- مجهز به Time Slice در بین وظایف
۱۰- مجهز به سیستم Check Task به منظور مانیتورینگ وضعیت Taskهای با اولویت بالا
۱۱- مجهز به Operating System Delay Function اختصاصی
۱۲- برنامه نویسی بخش Schedule بصورت جداگانه و تحت کتابخانه مستقل
۱۳- با توجه به ساختار زمانبند، این سیستم عامل از نوع سخت می باشد
۱۴- تعریف خط فرمان و امکان صدور دستورات مستقیما از برنامه اصلی به کرنل
۱۵- مشخصه Deadline قابل تعیین برای هر Task با هر اولویتی
۱۶- تفکیک لایه های سیستمی به سه لایه: درایور، سیستم عامل و برنامه کاربردی
۱۷- امکان برقراری ارتباط بین وظایف
۱۸- مدیریت i/o بصورت کاملا هوشمند
۱۹- امکان کنترل در Semaphore به منظور دسترسی به یک منبع مشترک
۲۰- برنامه نویسی سیستم عامل به زبان های C و اسمبلی تحت کامپایلر WinAVR می باشد

پروژه طراحی سیستم عامل RTOS ایرانی، برای اولین بار از جانب محقق ایرانی که ساکن شهر Lund کشور سوئد بودند مطرح شد. ایشان این سیستم عامل را برای یکی از آزمایشگاه های سیستم عامل دانشگاه Lund University (این دانشگاه دارای رنکینگ زیر ۱۰۰ در بین دانشگاه های جهان می باشد) سفارش دادند. در طی مراحل تهیه این سیستم عامل اصلا نباید از کدهای آماده در آن استفاده میشد به عبارت دیگر می بایست کلیه بخش های ساختاری این سیستم عامل بر اساس ایده های نو ولی در عین حال بر مبنای اصول و قواعد سیستم عامل بلادرنگ طراحی میشد، از این رو مراحل تحقیق، ایده پردازی و پیاده سازی این طرح بزرگ، حدود یک سال زمان برد.

اما بعد از اشکال زدایی و تایید نهایی از طرف اساتید آن دانشگاه، دکتر علیزاده با توجه به تخصص هایی که در زمینه معماری سیستم های تحت لینوکس دارند با تلفیق برخی ویژگی ها و مفاهیم نهفته در معماری لینوکس با این سیستم عامل بلادرنگ، مانند: امکان پارتیشن بندی حافظه داخلی و خارجی، امکان ایجاد فضای حافظه Swap، ایجاد ویژگی بسیار مهم تحت عنوان پوسته فرمان جهت ارتباط با کرنل، تعریف مجوز دسترسی چند کاربره و …  این پروژه را در ابعاد جدیدی توسعه داده و امکانات وسیعی را به این طرح اضافه نمودند تا اینکه به یک نمونه پایدار و کاربردی تر تحت نام تجاری Division مبدل شد .

سیستم عامل بلادرنگ ایرانی Division

اکنون این سیستم عامل به یک پکیج بسیار کاملی ارتقاء داده شده است به طوری که می توان آن را در صنایع مختلف مبتنی بر میکروکنترلرهای خانواده AVR استفاده نمود. البته لازم به توضیح است که این سیستم عامل با تغییراتی در کرنل و بخش Scheduler، قابل نصب و بارگذاری بر روی سایر میکروکنترلرها نیز میباشد که این تغییرات در حال حاضر در دست انجام می باشد.<

برای تست اولیه سیستم عامل از برد آزمایشگاهی استاندارد معرفی شده توسط دانشگاه Lund به نام STK500 استفاده شده است که تصاویر این برد به صورت زیر می باشد:

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

به زودی جدیدترین نسخه این سیستم عامل بر روی سامانه بسیار پیشرفته امنیتی زیر که از قبل طراحی گردیده است، نصب خواهد شد :

دزدگیر

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

اگر علاقه مند هستید شما هم آموزش های لازم جهت نوشتن سیستم عامل RTOS را ببینید توصیه میکنیم یکی از محصولات ما را که در طی مراحل طراحی این سیستم عامل بلادرنگ آماده شد را که در زمینه آموزش تخصصی نحوه نوشتن سیستم عامل بلادرنگ میباشد را تهیه نمایید .

شما می توانید با خرید این سیستم عامل بلادرنگ، آن را بر روی هر پلتفرم مبتنی بر Mega AVR بارگذاری نمایید. بدین منظور یا از فایل آموزشی ما که در رابطه با نحوه بارگذاری سیستم عامل می باشد (موقع خرید همراه با سورس اصلی ارایه می گردد) استفاده نمایید یا اینکه سخت افزار و نرم افزار خود را در اختیار ما قرار دهید تا ما خودمان اقدام به تجزیه برنامه شما نموده و اجرای زیر روال ها را تحت Taskهای این سیستم عامل کانفیگ نماییم تا به صورت Multitasking فراخوانی و اجرا شوند .

 

  • قیمت
  • نوع محصول
  • کد پروژه
  • سفارش پروژه
  • پشتیبانی
این پروژه بصورت سورس به همراه فایل راهنما تحویل داده می شود

ویژگی های بارز این محصول

قابلیت استفاده بصورت پک راه انداز
امکان بروزرسانی این محصول
پیشتیبانی این محصول
کیفیت برنامه نویسی
امکان اعمال تغییرات
تحویل سورس کامل
کاربردی بودن پروژه

مجموع

ویژگی هایی که ما به این محصول نسبت می دهیم

امتیاز کاربران: 5 ( 1 رای)
لینک کوتاه:

درباره افشین علیزاده

مرا به عنوان یک علاقه‌مند به رشته های برق و کامپیوتر بشناسید‌. بدیهی است در دنیایی زندگی می‌کنم که از دریای بی‌کران علایقم‌، فقط قطراتی اندک نصیبم می‌شود. معتقدم مهندسی یعنی «خلاقیت»‌ در کار بردن علوم و فنون به منظور طراحی و یا توسعه ساختارها، و همواره سعی کرده ام تا در این مسیر دشوار قدم هایی هر چند کوچک بردارم. به لحاظ تحصیلی نیز هم اکنون دانشجوی دکترای تخصصی (Ph.D) مهندسی برق قدرت گرایش الکترونیک قدرت، در تهران می باشم.

۱۲ نظر

  1. با سلام
    خدمت آقای دکتر و همکاران سلام و خسته نباشید عرض میکنم.
    در مورد میکرو pic نرم افزارتان قابلیت های آن را دارد. لطفا مختصر و مفید توضیح دهید؟
    با نرم افزار mplab x یا دیگر نرم افزارهای c جواب بدهد. تا چه مدت طول میکشد تا آماده سازی شود؟
    در مورد میکروهای arm چطور؟ همچین برنامه ای را دارید

    • فعلا برنامه ای برای توسعه این سیستم عامل و پورت کردن آن بر روی پلتفرم هایی که ذکر کردید، نداریم.
      اما در آینده ای نزدیک بر روی فقط پلتفرم ARM، برنامه ریزی کردیم که البته اطلاعات تکمیلی تر را جداگانه اعلام خواهیم نمود.

      • با سلام مجدد
        ۱- این نرم افزار µC/OS-II میتواند این کارهایی که نام بردم را پاسخگو باشد؟
        لطفا مختصر و مفید بفرمایید.
        ۲- اگر این سیستم عامل µC/OS-II را داشته باشیم دیگر نیاز به چه نرم افزار و یا سخت افزارهای دیگر داریم.
        ۳- حجم حافظه نوشتن برنامه با این سیستم عامل µC/OS-II با سیستم های معمول چه فرقی دارد.
        ۴- آخرین ورژن نرم افزار و سیستم عامل هایی که میتوان روی برنامه را اجرا کرد(ویندوز و… .)

        • پاسخ این سوالات را می بایست خودتان تحقیق کرده و بدست آورید.
          عنایت داشته باشید که عملکرد مجموعه ما کاملا تجاری می باشد و امکان ارائه اطلاعاتی که درخواست نمودید وجود ندارد.

  2. جمال حسینی

    با عرض سلام و خسته نباشید خدمت دکتر علیزاده.
    ببخشید من این برد رو تهیه کردم ولی لوازم جانبی اون همراهش نیست.
    میتونین بگین تغذیه این برد و بقیه لوازم همراه این برد چیه.
    خیلی مچکرم.

  3. حمید رضا ضیایی

    با عرض سلام و خسته نباشید خدمت دکتر علیزاده. من این برد رو تهیه کرم ولی cd حاوی نرم افزارهای مورد نیاز این برد اسیب دیده و قابل استفاده نیست.در صورت موجود درایور و نرم افزار های مورد نیاز این برد رو برای من ایمیل کنین یا در صورت امکان یه نسخه از cd رو برام پست کنین.با تشکر

    • نرم افزار مورد نیاز را می توانید از خود سایت اتمل دانلود نمائید. شما برای استفاده از این برد فقط نیاز به کامپایلر Atmel Studio دارید.

  4. حسین مرعشی

    سلام، باعث افتخاره که با شما و سایت بسیار جالبتون آشنا میشم. سوالی که درباره این محصول ازتون داشتم این بود که به نظر شما آیا می توان این سیستم عامل را در صنایع هوافضا استفاده کرد؟ آیا پشتیبانی این محصول رو انجام میدین؟

    • سلام. این محصول پتانسیل اینکه در صنایع پیشرفته ای همچون هوافضا استفاده شود را دارد، ولی در پیاده سازی این سیستم عامل بر روی سخت افزارهای واقعی می بایست ملاحظات آزمایشگاهی بودن محصول، در نظر گرفته شود تا بعد از طی کردن مراحل مختلف به عنصر پایداری دست یابیم. مبحث پایداری در سیستم عامل های بلادرنگ باید تحت استانداردهای خاصی مورد آزمون قرار گیرد تا اشکالات احتمالی رفع گردد. و اما در مورد سوال دوم شما باید عرض کنم که اگر تحت چارچوب مشخصی به تفاهم برسیم قطعاً خدمات پشتیبانی فنی این محصول را در اختیارتان قرار خواهیم داد.

  5. محمد مزارعی

    با سلام – کار جالبی هست ، حدود یک سال پیش من نیز این تجربه را داشتم که یک سیستم عامل طراحی کنم – خیلی مینیمال ! ولی خوب چه فایده با وجود سیستم عامل های قدرمتمندی مثل کاتکی – چی بی – …..

    • این سیستم عامل همان طور که توضیح دادم یه پروژه خاص دانشگاهی بود. به نظر من اهمیت این سیستم عامل به اینه که: اولاً از ایده های جالبی برای تهیه آن استفاده شده دوماً توسط اساتید بنام علوم کامپیوتر دانشگاه Lund مورد بررسی قرار گرفته و این خیلی مهم هست که کار شما توسط چنین اساتیدی مورد ارزیابی قرار بگیره. خاطرم هست که در مراحل اولیه، برخی ایرادات به این پروژه وارد کردند که اون زمان مرحله به مرحله مشکلات رو برطرف کردم. بعدشم چون خودم علاقه زیادی به این مبحث داشتم توسعه این سیستم رو تو اولویت های کاریم قرار دادم که در نهایت رسیده به این سطحی که شما می بینیدش.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *