اطلاعیه

Collapse
No announcement yet.

سوال درباره ساختار MMU و چگونگی کارکرد آن

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    سوال درباره ساختار MMU و چگونگی کارکرد آن

    سلام
    یه سوال که همیشه تو ذهنم بود اینه که MMU دقیقا چی کار میکنه که CPU هایی که اونو دارند میتونند سیستم عامل های حجیم مثل لینوکس وینوز و... رو اجرا کنند؟
    و این که چجوری کار میکنه؟
    با تشکر

    #2
    پاسخ : سوال درباره ساختار MMU و چگونگی کارکرد آن

    سلام علیکم
    MMU یا همان Memory Management Unit، همانطور که از اسمش پیداست وظیفه مدیریت انواع Resource های مربوط به حافظه را عهده دار است. البته حتی در سیستم های میکروکنترلری و میکروپروسسوری که واحد MMU نیز ندارند، میتوان سیستم عامل UC-Linux را سفارشی کرده و روی آنها پورت و استفاده کرد. ولی به قول شما در سیستم عامل های سنگین تر، نیاز به هماهنگی بین حافظه های Cache، Virtual Memory، DRAM، FLASH ونوعی داوری بین آنها جهت استفاده از BUS میباشد که این موضوع وظیفه MMU می باشد. در برنامه هایی که مهندسین ایرانی عمدتا روی میکروهای AVR و PIC کار می کنند، برنامه نویس هنگام نوشتن برنامه سفارشی شده برای میکرو، نا خودگاه خودش حافظه را مدیریت میکند ولی زمانی که بحث سیستم عامل مطرح می شود، OS باید این قابلیت را داشته باشد که با نرم افزار هایی که در آینده قرار است روی خودش نصب شودبتواند تعامل معقولی را برقرار کند که این امر بدون واحد MMU به راحتی امکان پذیر نمی باشد. انشاء الله که این مطالب به دردتان خورده باشد.

    دیدگاه


      #3
      پاسخ : سوال درباره ساختار MMU و چگونگی کارکرد آن

      نوشته اصلی توسط شهریار رجب زاده
      سلام
      یه سوال که همیشه تو ذهنم بود اینه که MMU دقیقا چی کار میکنه که CPU هایی که اونو دارند میتونند سیستم عامل های حجیم مثل لینوکس وینوز و... رو اجرا کنند؟
      و این که چجوری کار میکنه؟
      با تشکر
      به عبارت خیلی خیلی خیلی ساده اجازه اجرای برنامه از روی حافظه رم میده
      اگه MMU نباشه شما فقط قادر به اجرای برنامه از روی حافظه کد هستین و به طبع فقط میتونین یه برنامه واحد اجرا کنین. مثل کاری که با RTOS انجام میشه (هسته لینوکس یکپارچه هست و هسته ویندوز بصورت ریز هسته)
      ولی MMU کمک میکنه تا برنامه ها قابلیت جابجایی داشته باشن و سیستم بنا به نیاز برنامه خاصی صدا بزنه و اجرا کنه
      [glow=red,2,300]تاپیک های ایجاد شده[/glow]

      دیدگاه


        #4
        پاسخ : سوال درباره ساختار MMU و چگونگی کارکرد آن

        ضمنا با MMU می شود حافظه را صفحه بندی (paged memory management unit (PMMU کرد و کدهای عادی یا غیر قابل اطمینان را از کدهای حساس critical جدا کرد و جلوی خرابکاری کدهای untrustedرا در عملکرد کلی سیستم گرفت. یعنی اگر یک برنامه گیر کرد تا حد امکان کل سیستم هنگ نکند و مثلا ان برنامه را ریستارت کند.
        virtual memory هم اینطوری قابل استفاده است
        شاید بعضی برنامه های اماده عادی هم روی لینوکس عادی و نه μClinux فقط کار کنند. من خبر ندارم اگر کسی تجربه ای داره لطفا در اینجا یا تو موضوع امبدد لینوکس Embedded Linux با بقیه در میان بگذارد

        عمومی » کامپیوتر ، اینترنت و علوم مرتبط » امبدد لینوکس Embedded Linux برای میکروکنترلرها و پردازنده ها
        http://www.eca.ir/forum2/index.php?topic=67412.0

        دیدگاه

        لطفا صبر کنید...
        X