اطلاعیه

Collapse
No announcement yet.

چی هست؟rootfs-Root File System

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

    چی هست؟rootfs-Root File System

    باسلام
    rootfs چطوری ساخته می شود؟
    برای اینکه یک فایل کامپایل شده رو به برد 9260 انتقال بدهم نیاز است که فایل خودم رو به rootfs انتقال بدهم!
    لطفا دوستان راهنمایی کنند!
    بعد یک سوال دیگهBusyBox چی هست انگار که برای ساخت rootfs استفاده می شود!
    اگر درست است چطور می شود از اون استفاده کرد؟


    http://processors.wiki.ti.com/index....2_Target_Image

    #2
    پاسخ : چی هست؟rootfs-Root File System

    نوشته اصلی توسط S.R.F
    باسلام
    rootfs چطوری ساخته می شود؟
    برای اینکه یک فایل کامپایل شده رو به برد 9260 انتقال بدهم نیاز است که فایل خودم رو به rootfs انتقال بدهم!
    لطفا دوستان راهنمایی کنند!
    بعد یک سوال دیگهBusyBox چی هست انگار که برای ساخت rootfs استفاده می شود!
    اگر درست است چطور می شود از اون استفاده کرد؟


    http://processors.wiki.ti.com/index....2_Target_Image
    یه سر به مسیر / در لینوکس خودتون بزنید
    چیزی که میبینید یه جور rootfs هست مشابه همونی که لازم دارید
    معمول rootfs یه سری فایل و دایرکتوری هست
    برای من که مینی 2440 دارم کرنل به تنهایی کافی نبود و فقط میشد باهاش یه برنامه تحت لینوکس رو اجرا کرد
    چیزی که میخوام بگم اینه که اون ترمینالی که دارید یه جورایی میشه گفت یه برنامه تحت لینوکسه مثل همون برنامه ای که خودمون مینویسیم برای مثلا روشن کردن led
    پس تا اینجا میتونید برنامتون رو توی یه دایرکتوری بریزید(کامپایل شدش رو) بعد اون دایرکتوری رو مثلا به فرمت jffs2 در بیارید و بریزید توی بورد(یا NFS و SD و ...) و آخرش در پارامتر های بوت بوتلودری مثل u-boot یا barebox آدرس فایل jffs2 رو میدید به عنوان rootfs بعدش مثلا در u-boot یه init=helloworld میزارید وقتی بوت میکنید بعد از لود شدن کرنل این برنامه مستقیما اجرا میشه
    نمونش هم تو این دیده میشه:
    http://wiki.iface.ch/index.php/How_to_cross_compile_a_working_kernel_for_Mini2440
    حالا busybox چی کار میکنه؟
    گفتم اون ترمینال و دستوراتش همه یه سری برنامه مثل اون چشمک زنه هستند
    busybox این برنامه ها رو تو خودش داره و کافیه آدرس کامپایلر و آدرس جایی که میخواید rootfs تون رو کامپیوتر درست بشه و برنامه ها(در واقع میشه دستورات لینوکس بوردتون یه جورایی) مورد نیازتون رو انتخاب کنید و بعد اجراش کنید تا براتون بسازه
    بعد یه سری کار اضافه احتمالا باید انجام بدید روی rootfs مثل اینکارهایی که اینجا شده(البته مال مینی2440 هست):
    http://wiki.iface.ch/index.php/Basic_rootfs_for_Mini2440
    بعد میتونید برنامتون رو تو همون جایی که rootfs هست قرار بدید و lib هایی که برنامه بهش احتیاج داره رو از خود محل قرارگیری کامپایلر کپی کنید بریزید توی دایرکتوری lib در rootfs تون معمولا به شکل

    ***.so.*

    هستند
    بعد هر کاری که لازمه مثل تبدیل rootfs به jffs2 یا هر فرمت دیگه ای یا ریختن مستقیم روی SD و یا share کردنش از طریق شبکه و در نهایت بوت کردنش از rootfs تون لذت ببرید فقط فرقش با قبل اینه که چیزی که در جای init=helloworld هست به linuxrc تغییر پیدا میکنه هر چند نوشتن init=linuxrc الزامی نیست بعد میرید تو ترمینال میزنید:

    ./helloworld

    در صورتی که اونجا مستقیم برنامه اجرا میشد
    پس rootfs میتونه حتی یه دایرکتوری خالی باشه!
    و کرنل در واقع برنامه هایی که تحت کامپایلر های مخصوصش درست شده باشند رو اجرا میکنه
    ممنون اساتید جاهایی رو که اشتباه گفتم تصحیح کنند

    دیدگاه


      #3
      پاسخ : چی هست؟rootfs-Root File System

      نوشته اصلی توسط شهریار رجب زاده
      یه سر به مسیر / در لینوکس خودتون بزنید
      چیزی که میبینید یه جور rootfs هست مشابه همونی که لازم دارید
      معمول rootfs یه سری فایل و دایرکتوری هست
      برای من که مینی 2440 دارم کرنل به تنهایی کافی نبود و فقط میشد باهاش یه برنامه تحت لینوکس رو اجرا کرد
      چیزی که میخوام بگم اینه که اون ترمینالی که دارید ...
      باسلام
      آقا یک دنیا ممنون
      شما دارید درست می گید من هم هرچی می خونم در موردش همینو میگه ولی نمی دونم پله به پله چکار کنم
      ببینید الان یک فایل کامپایل شده برای 9260 دارم ه با کامپایلر مخصوص gcc-arm-inux کامپایل شده
      فایلو دارم حالا فایل jffs2 رو هم از داخل CD محصول دارم چطور دیکد کنم تا بشه روی همون تغییرات داد؟
      کاش یک اموزش پله به پله بدید وا قعا راه انداز است!
      باز هم ممنون

      دیدگاه


        #4
        پاسخ : چی هست؟rootfs-Root File System

        نوشته اصلی توسط S.R.F
        باسلام
        آقا یک دنیا ممنون
        شما دارید درست می گید من هم هرچی می خونم در موردش همینو میگه ولی نمی دونم پله به پله چکار کنم
        ببینید الان یک فایل کامپایل شده برای 9260 دارم ه با کامپایلر مخصوص gcc-arm-inux کامپایل شده
        فایلو دارم حالا فایل jffs2 رو هم از داخل CD محصول دارم چطور دیکد کنم تا بشه روی همون تغییرات داد؟
        کاش یک اموزش پله به پله بدید وا قعا راه انداز است!
        باز هم ممنون
        سلام
        خواهش میکنم
        راستش با jffs2 کار نکردم نمیدونم چجوری باید این کار رو کرد ولی فکر نکنم کار زیادی هم بشه کرد چون باید تغییرات روی اون toolchain مورد نظر (اگه درست گفته باشم) انجام داد و بعد کامپایل کرد
        busybox همین کارهای حداقلی رو که گفتم لازم داشت چیز اضافه تری بلد نیستم

        دیدگاه


          #5
          پاسخ : چی هست؟rootfs-Root File System

          نوشته اصلی توسط شهریار رجب زاده
          سلام
          خواهش میکنم
          راستش با jffs2 کار نکردم نمیدونم چجوری باید این کار رو کرد ولی فکر نکنم کار زیادی هم بشه کرد چون باید تغییرات روی اون toolchain مورد نظر (اگه درست گفته باشم) انجام داد و بعد کامپایل کرد
          busybox همین کارهای حداقلی رو که گفتم لازم داشت چیز اضافه تری بلد نیستم
          Journalling Flash File System version 2. A
          مخفف شده به نام
          JFFS2
          http://jimdonelson.com/mini2440/Mini2440Book.pdf
          یک pdf برای برنامه سازی برای 2440

          دیدگاه


            #6
            پاسخ : چی هست؟rootfs-Root File System

            باسلام
            بنده هنوز به نتیجه نرسید و یک جورایی این ماجرا رو ول کردم ولی دباره مجبور شدم
            روش کار کنم کسی می دونه چطوری jfss2بسازیم داخل ویندوز؟
            نه لینوکس

            دیدگاه

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