اطلاعیه

Collapse
No announcement yet.

arm و سیستم عامل ها

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

    arm و سیستم عامل ها

    سلام دوستان
    این تاپیک رو برای این ایجاد کردم که نحوه ی نصب و اجرای سیستم های مبتنی بر لینوکس و win.ce و اگه شد android رو از ساده ترین مفاهیم تا پیچیده
    یاد بگیریم (البته این جا همه استادن ) :smile:
    از اساتید می خوام که همکاری کنن تا بار علمی تاپیک بالا بره
    اولا mmu چیه؟ یعنی هر میکرویی که قابلیت نصب سیستم عامل رو داشته باشه؟
    یعنی مثلا میکروی at91sam9261 این قابلیت رو داره؟اگه داره تو ایران پیدا می شه ؟اگه نمی شه میکروی دیگه ای هست؟
    دوما nand فلش و nor فلش چیه؟
    شاید این سوال خیلی خنده دار باشه "سیستم عامل رو روی میکرو پروگرم میکنن؟ :mrgreen:
    این میکرو هایی که حمایت lcd داره چیه یعنی چی؟ :angry:
    بازم ممنون

    #2
    پاسخ : arm و سیستم عامل ها

    نوشته اصلی توسط babak_micro
    1- اولا mmu چیه؟ یعنی هر میکرویی که قابلیت نصب سیستم عامل رو داشته باشه؟
    یعنی مثلا میکروی at91sam9261 این قابلیت رو داره؟اگه داره تو ایران پیدا می شه ؟اگه نمی شه میکروی دیگه ای هست؟
    2- دوما nand فلش و nor فلش چیه؟
    3- شاید این سوال خیلی خنده دار باشه "سیستم عامل رو روی میکرو پروگرم میکنن؟ :mrgreen:
    4- این میکرو هایی که حمایت lcd داره چیه یعنی چی؟ :angry:
    1- واحد مدیریت حافظه - این کورتکس های A میکرو نیستن! :biggrin: - الان سرعت اینترنتم خوب نیست که برات دیتاشیتش رو بگیرم و بررسی کنم و جوابت رو بدم.
    2- هر کدوم یه حافظه فلش هستش که NAND یا NOR که روشون نوشته منظورش اینه که بر اساس این گیت های منطقی ساخته شده. هر کدوم یه خصلتی داره، یکی سرعت نوشتنش کمتر از یکی دیگه هستش ولی ممکنه همونی که سرعت نوشتنش کمتر باشه سرعت بیشتری داشته باشه. اختلاف های خاصی دارن.
    3- نه (دوباره میگم: اینا میکرو نیستنا)
    4- بستگی داره، مثلا یکیشو نشون بده(بعضی از بردها فکر کنم نمایشگرها رو ساپورت میکنن):

    دیدگاه


      #3
      پاسخ : arm و سیستم عامل ها

      نوشته اصلی توسط Rohalamin
      1- واحد مدیریت حافظه - این کورتکس های A میکرو نیستن! :biggrin: - الان سرعت اینترنتم خوب نیست که برات دیتاشیتش رو بگیرم و بررسی کنم و جوابت رو بدم.
      2- هر کدوم یه حافظه فلش هستش که NAND یا NOR که روشون نوشته منظورش اینه که بر اساس این گیت های منطقی ساخته شده. هر کدوم یه خصلتی داره، یکی سرعت نوشتنش کمتر از یکی دیگه هستش ولی ممکنه همونی که سرعت نوشتنش کمتر باشه سرعت بیشتری داشته باشه. اختلاف های خاصی دارن.
      3- نه (دوباره میگم: اینا میکرو نیستنا)
      4- بستگی داره، مثلا یکیشو نشون بده(بعضی از بردها فکر کنم نمایشگرها رو ساپورت میکنن):
      1-مگه arm میکرو نیست ؟اگه میکرو نیستن پس چین؟
      2-خب تو یه این جور بردها چه کاربردی دارن چی توشون معمولا می ریزن؟
      3-یه سوال چه جوری روی اینا os میریزن؟ فایل های os به چه شکلن؟os رو توی کجا می ریزن؟
      بازم ممنون :redface:

      دیدگاه


        #4
        پاسخ : arm و سیستم عامل ها

        1- نه، پردازنده. اینجا یه توضیحاتی دادم:

        کاربردهای عملی ARM

        2 و 3- گفتم که این پردازنده ها واسه OS ها هستن. شما باید به سایت سازندگان این بردها مراجعه کنید. مثل این:

        Cubieboard

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

        پ.ن: تا تنها هستیم نقل قول نکن و واسه تشکر هم فقط فشردن دکمه تشکر کافیه! :smile:

        دیدگاه


          #5
          پاسخ : arm و سیستم عامل ها

          میشه خودمون یه دونه از این کوبی برد ها بسازیم این cortex های سری A تو ایران هست من خودم یکی دیدم تو همین انجمن که یه چیزی شبیه مادر برد با AT91SAM9260 درست کرده بود عکساشم قرار داده بود که نمی دونم کار درستی که قرار بدم یا نه.
          میشه دو تا از این پردازنده ها رو گذاشت بشه دو هسته ای :mrgreen:
          میشه رو این کوبی بردی که می سازیم مثلا لینوکس یا win.ce بریزیم
          راستی BSP چیه؟

          دیدگاه


            #6
            پاسخ : arm و سیستم عامل ها

            اولا mmu چیه؟ یعنی هر میکرویی که قابلیت نصب سیستم عامل رو داشته باشه؟
            memory management unit یا واحد مدیریت حافظه.این قابلیت رو میده که پردازنده از چند حافظه مختلف بتونه انتخاب کنه که از کدوم بوت بشه. مثلا avrکه این رو نداره فقط از روی فلش داخلیش بوت میشه.این که وجودش برای سیستم عامل ضروری هست یا نه بستگی به سیستم عامل داره.
            یعنی مثلا میکروی at91sam9261 این قابلیت رو داره؟اگه داره تو ایران پیدا می شه ؟اگه نمی شه میکروی دیگه ای هست؟
            این میکرو میتونه سیستم عامل رو ساپورت کنه ولی مشکلش این هست که شما بردش رو نمیتونی طراحی کنی. به دلیل BGA بودن پکیجش! میتونی از 9260 استفاده کنی که اینجا راحت پیدا میشه.فرقشون هم فقط تو این هست که 9261 یه درایور LCD بیشتر داره. به هر حال هردو عتیقه هستند و فقط تا حد یادگیری مبانی خوبه که باهاشون کار کرد.
            دوما nand فلش و nor فلش چیه؟
            این ها تکنولوژی ساخت هستند که براساس چه گیتی هست. قیمت حافظه های nor بالاتر هست واسه همین تو حجمهای کوچیک تر nand ساخته میشند.مزیت حافظه های nor داشتن باس مجزا برای آدرس و دیتا هست که سرعت ارتباط رو بالاتر میبره. به علاوه زمان دسترسی به قسمت های تصادفی سریع تر هست. به خاطر راه اندازی راحت وسرعتشون خیلی اوقات برای حافظه ی بوت سیستم استفاده میشند اما اجبار نیست و میشه از nand استفاده کرد ( یا اصلا از هیچ کدومشون!)
            این میکرو هایی که حمایت lcd داره چیه یعنی چی؟
            شما LCD هایی که ارتباطی شبیه VGA دارند رو مستقیما به میکرو نمیتونید وصل کنید. چون نیاز این LCD ها اینه که تصویر حدود 60 بار تو ثانیه روشون نوشته بشند. این کار باعث تلف کردن توان پردازنده میکرو میشه.باید از درایور مخصوص راه اندازی LCD استفاده کرد. بعضی از میکرو ها این درایور رو داخل خودشون دارند و رفرش صفحه و تمام زمان بندی ها رو انجام میده. این میکرو ها نیاز به SD ram کنارشون هست تا به عنوان بافر تصویر استفاده کنند.
            [img width=477 height=100]http://www.eca.ir/pic/upload/agazade.png[/img]

            دیدگاه


              #7
              پاسخ : arm و سیستم عامل ها

              نوشته اصلی توسط babak_micro
              میشه خودمون یه دونه از این کوبی برد ها بسازیم این cortex های سری A تو ایران هست من خودم یکی دیدم تو همین انجمن که یه چیزی شبیه مادر برد با AT91SAM9260 درست کرده بود عکساشم قرار داده بود که نمی دونم کار درستی که قرار بدم یا نه.
              میشه ولی خیلی ساده نیست. بخاطر اینکه بعضی قسمت ها فرکانس بالا هستن باید تجربه خاصی داشته باشی. در کل خودش یه تخصصه. از لحاظ قیمت هم احتمالا نمیصرفه.
              نوشته اصلی توسط babak_micro
              میشه دو تا از این پردازنده ها رو گذاشت بشه دو هسته ای :mrgreen:
              نمی خواد این کار رو بکنی! الان چهارتاییش هم هست!(همین کوبی برد) :twisted: دیروز داشتم توی DSPهای شرکت تکزاس اینسترومنت میگشتم، باورت نمیشه اگه بگم DSP هشت هسته ای داره که میشه مثل یه پردازنده 8 هسته ای حسابش کرد که 15 مگاهرتزه!!!
              نوشته اصلی توسط babak_micro
              میشه رو این کوبی بردی که می سازیم مثلا لینوکس یا win.ce بریزیم
              بستگی داره. اونش دیگه به شما و قطعاتی که انتخاب میکنی بستگی داره.
              نوشته اصلی توسط babak_micro
              راستی BSP چیه؟
              من نمی دونم از کجا ورش داشتی ولی احتمالا منظورش این بوده:
              Binary space partitioning

              دیدگاه


                #8
                پاسخ : arm و سیستم عامل ها

                میشه کل سیستم رو بریزیم تو SD CARD یا مثلا یه هارد که از روش BOOT کنه ؟
                رم چی اصلا استفاده میشه؟
                معمولا از چه رمی استفاده میشه؟
                فرکانس این ARM ها به طور معمول چنده؟
                منظورتون از این که فرکانس بالاست عرض ترک ها رو میگین چه قدر باشه؟
                اون طور که تو سایت این کوبی برد ها نوشته WIN.CE رو نمیتونه ساپورت کنه چرا , از نظر سخت افزاری کم داره؟
                راستی این INTEL ATOM هم سرعتش خوبه تبلت خودم اینتل اتمه.

                دیدگاه


                  #9
                  پاسخ : arm و سیستم عامل ها

                  نوشته اصلی توسط babak_micro
                  میشه کل سیستم رو بریزیم تو SD CARD یا مثلا یه هارد که از روش BOOT کنه ؟
                  رم چی اصلا استفاده میشه؟
                  معمولا از چه رمی استفاده میشه؟
                  فرکانس این ARM ها به طور معمول چنده؟
                  منظورتون از این که فرکانس بالاست عرض ترک ها رو میگین چه قدر باشه؟
                  اون طور که تو سایت این کوبی برد ها نوشته WIN.CE رو نمیتونه ساپورت کنه چرا , از نظر سخت افزاری کم داره؟
                  راستی این INTEL ATOM هم سرعتش خوبه تبلت خودم اینتل اتمه.
                  بله
                  مثلا mini2440 این قابلیت رو داره اما باید یه نندی چیزی داشته باشه که بوتلودر اول ریخته بشه تو رم و بعد لود سیستم عامل از SD روی رم
                  یا اینکه مثل pandaboard چیز دیگه ای به جز همین کارت SD به عنوان حافظه برای نگهداری سیستم و عامل و فایل های مربوطش نداشته باشید!

                  همه چی بستگی به IC مورد نظر داره از SDRAM که مناسب همین پروسسور های دم دست ماست شروع میشه تا DDR و DDRII که تو پردازنده های omap تگزاس دیدم

                  به طور معمول معنی نمیده!مثل اینکه بگید فرکانس پردازنده های INTEL به طور معمول چند باشه
                  بستگی به معماریش داره cortex-a8 و a9 بالای 1GHz و ARM9 و ARM11 زیر این مقدار

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

                  اینو نمیدونم باید ویندوزی ها جواب بدن اما احتمال میدم کسی تا حالا براش ویندوز CE رو پورت نکرده باشه

                  رجوع شود به بنچمارک های گوشی ها و تبلت ها برای مثال
                  نوشته اصلی توسط babak_micro
                  1-مگه arm میکرو نیست ؟اگه میکرو نیستن پس چین؟
                  2-خب تو یه این جور بردها چه کاربردی دارن چی توشون معمولا می ریزن؟
                  3-یه سوال چه جوری روی اینا os میریزن؟ فایل های os به چه شکلن؟os رو توی کجا می ریزن؟
                  بازم ممنون :redface:
                  نه اونایی که میکروکنترلر نیستند و توان پردازشی بالاتری داشته باشند بهشون میگن application processors یا اگه پردازنده و پردازنده گرافیکی و واحد های کنترلی مثل mmu و ارتباطی با هم تو یه چیپ باشند بهش اصطلاحا میگن SoC که مخفف system on chip هست برای درک بهتر SoC فرض کنید مادربورد رو تو یه چیپ خلاصه کرده باشند

                  هم فایل های سیستم عامل و هم برنامه(مستقل از سیستم عامل) فرض کنید اینها یه جور کامپیوتر هستند(مثل اونی که باهاش کار میکنید ولی یه مقدار ذغالی تر!) هر کار که با کامپیوترتون میکنید با اینم میشه مثلا ساخت گوشی و تبلت تا مثلا کار هایی مثل کنترل و پردازش تصویر با این حال محدودیت توان پردازنده ها رو فراموش نکنید

                  اول از همه یه بوتلودر میخواید که دو حالت داره(برای لینوکس):
                  یا میریزید رو نند یا نور بوردتون با پروگرامر مثلا جی تگ
                  یا اینکه با جی تگ یا از طریق امکاناتی که بورد بهتون میده یه جوری بوتلودر رو بریزید روی رم و از اونجا کارتون رو ادامه بدید(آخرش بوتلودر یا هر چیز دیگه کپی میشه روی رم بعد اجرا میشه)
                  بعدش کرنل یا هسته سیستم عامل رو با درایور هایی که میخواید میسازید
                  سپس میرید سراغ rootfs یا همون file systemتون که شامل برخی استارت پ ها و برنامه هاییه که تو لینوکس اونو به عنوان دستورات میشناسیم و برای ارتباط با سخت افزار هم از طریق یه سری فایل ارتباط برقرار میکنیم
                  دست آخر هم فایل های خروجی رو در اختیار بوتلودر قرار میدیم و پارامترهای بوتش رو عوض میکنیم تا سیستم عامل رو بوت کنه(مثلا من از روی کارت SD بوت میکنم ولی بوتلودرم روی نند خود دستگاهه یا یکی دیگه به جای SD از شبکه استفاده میکنه یا حتی خود نند و نور بورد هم قابل استفاده است)
                  نوشته اصلی توسط babak_micro
                  میشه خودمون یه دونه از این کوبی برد ها بسازیم این cortex های سری A تو ایران هست من خودم یکی دیدم تو همین انجمن که یه چیزی شبیه مادر برد با AT91SAM9260 درست کرده بود عکساشم قرار داده بود که نمی دونم کار درستی که قرار بدم یا نه.
                  میشه دو تا از این پردازنده ها رو گذاشت بشه دو هسته ای :mrgreen:
                  میشه رو این کوبی بردی که می سازیم مثلا لینوکس یا win.ce بریزیم
                  راستی BSP چیه؟
                  خیلی کار ها میشه کرد فقط مشکل طرز انجام کار و تواناییشه!

                  چرا نشه؟اگه بورد رو خودتون میسازید باید سیستم عامل رو متناسب با بورد تطبیق بدید

                  چون بیشتر در مورد سیستم عامل و بوردها بحث شده احتمال زیاد منظورتون باید Board Support Package باشه که توضیحات کامل رو آقای مصلح راد اینجا نوشتن:
                  http://www.eca.ir/forum2/index.php?topic=69497.msg453278#msg453278

                  دیدگاه


                    #10
                    پاسخ : arm و سیستم عامل ها

                    چه جوری سیستم عامل یه سخت افزار تعیین میشه برچه اساسی میگیم که مثلا روی این برد لینوکس میشه ریخت؟
                    میشه بردش رو خودمون طراحی کنیم.این mini2440 رو از کجا خریدید
                    راستی اگه بخوایم مثلا یه مودم gsm بهش وصل کنیم باید تو همون کرنل درایور هاش رو بریزیم
                    واسه لینوکس به چه زبونی .؟من رفتم جمهوری mini2440 بخرم پیدا نکردم گفتن باید سفارش بدی این کوبی برد ها بهتره یا 2440 یا اینکه خودمون طراحی کنیم خودم که خیلی دوست دارم طراحی کنم .؟!!!

                    دیدگاه


                      #11
                      پاسخ : arm و سیستم عامل ها

                      نوشته اصلی توسط babak_micro
                      چه جوری سیستم عامل یه سخت افزار تعیین میشه برچه اساسی میگیم که مثلا روی این برد لینوکس میشه ریخت؟
                      میشه بردش رو خودمون طراحی کنیم.این mini2440 رو از کجا خریدید
                      راستی اگه بخوایم مثلا یه مودم gsm بهش وصل کنیم باید تو همون کرنل درایور هاش رو بریزیم
                      واسه لینوکس به چه زبونی .؟من رفتم جمهوری mini2440 بخرم پیدا نکردم گفتن باید سفارش بدی این کوبی برد ها بهتره یا 2440 یا اینکه خودمون طراحی کنیم خودم که خیلی دوست دارم طراحی کنم .؟!!!
                      بر اساس معماری پردازنده و پیش نیاز های سخت افزاری سیستم عامل تعیین میشه یه نمونش رو میتونید تو کتاب کرنل بی درنگ ucos بخونید که مثلا گفته سیستم وقفه پردازنده باید از یه سری ویژگی پشتیبانی کنه و ...
                      ولی من خودم ببینم یه پردازنده mmu داره به این نتیجه میرسم که به احتمال زیاد میشه روش سیستم عامل ریخت(سیستم عامل به اون مفهومی که تو ذهنتونه و الا رو همین avr هم میشه این ucos رو سوار کرد)

                      باز هم میگم میشه همه کار کرد ولی بحث سر تواناییشه که حداقل باید روش های طراحی بورد چند لایه رو بلد باشید و اگه میخواید اجراش کنید به فکر پولش هم باشید

                      از فروشگاه این سایت ولی من کلا از مینی ۲۴۴۰ خوشم نیومد تو نت که سرچ میکنم کسی رو این بورد کار نمیکنه دیگه همه رفتن سراغ بورد های جدیدتر

                      کلا سر و کار با کرنل داره این بحث درایور که دو حالت built in یا modular داره که برای تست روش modular مناسبه که شما یک کرنل رو کامپایل میکنید و از خروجیش استفاده میکنید و بعد درایور مورد نظر رو تو کرنلی که کامپایل کردید میتونید تغییر بدید و کامپایل کنید با این تفاوت که نیازی نیست هی کرنل جدید برای دستگاه رو تغییر بدید و فقط فایل درایور رو رو دستگاه تست میکنید(برای لینوکس)

                      قسمت اعظم کد های لینوکس رو همین C تشکیل میده

                      cubieboard رو باهاش کار نکردم نمیتونم نظر بدم پیشنهادم هم شروع از یه بورد آمادست که کار باهاش میتونه خیلی از ذهنیت های قبلی رو نسبت به کار با اینجور تجهیزات تغییر بده

                      دیدگاه


                        #12
                        پاسخ : arm و سیستم عامل ها

                        نوشته اصلی توسط شهریار رجب زاده
                        بر اساس معماری پردازنده و پیش نیاز های سخت افزاری سیستم عامل تعیین میشه یه نمونش رو میتونید تو کتاب کرنل بی درنگ ucos بخونید که مثلا گفته سیستم وقفه پردازنده باید از یه سری ویژگی پشتیبانی کنه و ...
                        ولی من خودم ببینم یه پردازنده mmu داره به این نتیجه میرسم که به احتمال زیاد میشه روش سیستم عامل ریخت(سیستم عامل به اون مفهومی که تو ذهنتونه و الا رو همین avr هم میشه این ucos رو سوار کرد)

                        باز هم میگم میشه همه کار کرد ولی بحث سر تواناییشه که حداقل باید روش های طراحی بورد چند لایه رو بلد باشید و اگه میخواید اجراش کنید به فکر پولش هم باشید

                        از فروشگاه این سایت ولی من کلا از مینی 2440 خوشم نیومد تو نت که سرچ میکنم کسی رو این بورد کار نمیکنه دیگه همه رفتن سراغ بورد های جدیدتر

                        کلا سر و کار با کرنل داره این بحث درایور که دو حالت built in یا modular داره که برای تست روش modular مناسبه که شما یک کرنل رو کامپایل میکنید و از خروجیش استفاده میکنید و بعد درایور مورد نظر رو تو کرنلی که کامپایل کردید میتونید تغییر بدید و کامپایل کنید با این تفاوت که نیازی نیست هی کرنل جدید برای دستگاه رو تغییر بدید و فقط فایل درایور رو رو دستگاه تست میکنید(برای لینوکس)

                        قسمت اعظم کد های لینوکس رو همین C تشکیل میده

                        cubieboard رو باهاش کار نکردم نمیتونم نظر بدم پیشنهادم هم شروع از یه بورد آمادست که کار باهاش میتونه خیلی از ذهنیت های قبلی رو نسبت به کار با اینجور تجهیزات تغییر بده
                        میشه یه Arm رو معرفی کنید که قابلیت نصب سیستم عامل داشته باشه و تو ایران باشه کلا سخت افزار های یه برد کامل رو میشه بگید مثلا نند فلش چی باشه و...
                        تو کتاب "اصول کار با میکروکنترلر ARM نشر کانون نشر علوم مال آقای کاوه فارغی " یه چیزایی راجع امپدانس مسیرها و محاسبات اون و مسیر کشی و... توضیح داده باید این بردی که می سازیم دورو باشه؟
                        راستی این GPU چیه پردازنده ی گرافیکی حتما لازمه ؟
                        ببخشید زیاد سوال می پرسم

                        دیدگاه


                          #13
                          پاسخ : arm و سیستم عامل ها

                          نوشته اصلی توسط babak_micro
                          میشه یه Arm رو معرفی کنید که قابلیت نصب سیستم عامل داشته باشه و تو ایران باشه کلا سخت افزار های یه برد کامل رو میشه بگید مثلا نند فلش چی باشه و...
                          تو کتاب "اصول کار با میکروکنترلر ARM نشر کانون نشر علوم مال آقای کاوه فارغی " یه چیزایی راجع امپدانس مسیرها و محاسبات اون و مسیر کشی و... توضیح داده باید این بردی که می سازیم دورو باشه؟
                          راستی این GPU چیه پردازنده ی گرافیکی حتما لازمه ؟
                          ببخشید زیاد سوال می پرسم
                          ARM که زیاده!منم اینی که دارم متناسب با نیازهام بوده شما بگردید اگه بوردی روش سیستم عامل هایی مثل لینوکس و ویندوز CE یا حتی آندروید هم نصب بشه به درد این کارا میخوره
                          شرکت های مختلف هم معمولا خودشون یه بورد میزنند میفروشند در کنارش شماتیک بورد رو هم میزنند مثل اتمل و کارایی که با ۹۲۶۰ کرده و همینطور بقیه چیپ هاش

                          نمیتونید دو رو درش بیارید!منم چیزی از زدن بورد چند لایه نمیدونم

                          نه لزوما همینکه چیپ از LCD ساپورت کنه کافیه اما اگه کارتون گرافیکیه باید به فکر GPU هم باشید چون اینجا صرفا صفحه نمایشگر فریم به فریم با دادن مقدار RGB هر پیکسل میشه چیزی رو نشون داد بقیه برنامه های معمولی و سبک هم همین کار رو با LCD میکنند اینایی که گفتم رو با مینی ۲۴۴۰ تجربه کردم و پردازندش GPU نداره

                          دیدگاه

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