۲۷ مهر ۱۳۹۷

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

زئوس Zeus

زئوس Zeus

زئوس هستم خدای المپزئوس هستم خدای المپ

مطالب مشابه

12 Comments

  1. 5

    احمد

    سلام’ موضوع مقالتون بسیار جذاب هست’خطاب به اون دوست محترممون که در مورد لینوکس بحث میکرد مثل اینکه اصلا حواسش به موضوع مقاله نبوده ‘ اجرای برنامه ها بدون سیستم عامل ‘یعنی اسمبلی خالص و ارتباط کامل با arm . چه ربطی به لینوکس داره رو نمیدونم’ بیصبرانه منتظر ادامه مقالتون هستم’ موضوع بسیار عالی و حرفه ای هست’ بسیار سپاسگذارم

    پاسخ
  2. 4

    وحید

    سلام
    وقت بخیر
    خواستم چند نکته رو عرض کنم خدمتتون
    ۱_ گرم شدن پردازنده بدلیل عملیات پردازشیه که اگر مدیریت بشه دیگه گرم نمیشه و مشکل نیست اساسا
    ۲_نبود سیستم عامل استیبل هم مشکل نیست، میتوان برای هر معماری و با هرکانفیگی سیستم عامل مبتنی بر لینوکس دلخواه ساخت!
    ۳_ بلادرنگ نبودن(یا ریل تایم نبودن) لینوکس سخن درستی است اما میتوان با روشهای مختلف لینوکس را ریل تایم کرد پس مشکلی نیست
    ۴_مشخص کردن پایها در هر ریست رو هم میتوان در سیستم عامل تعیین کرد پس ….

    پاسخ
    1. 4.1
      زئوس Zeus

      زئوس Zeus

      سلام دوست گرامی ، خوشحالم که این مقاله مورد توجه دوستان قرار گرفته و نکات خوبی رو مورد سوال قرار می دهند.
      1 – اصولا توان مصرف شده توسط پردازنده است که موجب گرم شدن آن می شود ، که هیچ رابطه ای با عملیات پردازشی ندارد ، توان مصرفی پردازنده تابع دو مقوله فرکانس کاری پردازنده و پرفال های مورد استفاده است. مثلا در پروژه ای که ما نیاز به کار گرافیکی نداریم میتوانیم با خاموش کردن بخش گرافیکی از مصرف توان این قسمت جلوگیری کنیم و در نتیجه گرمای کمتری ایجاد خواهد شد ، فرکانس کاری پردازنده هم رابطه مستقیمی توان مصرفی دارد ، وقتی که شما پردازنده را در فرکانس 700 مگاهرتر راه اندازی میکنید ، دیگر فرقی نمیکند که با آن فیلم دکد کنید یا آن را بی کار بگذارید توان مصرفی یکسان خواهد بود. پس در نتیجه هرچه فرکانس کاری کمتر باشد توان مصرفی کمتر است نه لزوما هرچه پردازش کمتر باشد.
      2 – اتفاقا استیبل بودن سیستم عامل از درجه اهمیت خیلی بالایی برخوردار است ، شاید زیاد در عمل با این مساله مواجه نشده اید ، اگر تجربه کارهای صنعتی و حساس را داشته باشید به خوبی این مقوله را درک می کنید.مساله ورودی و خروجی ها نیست لزوما؛ برای روشن شدن مساله یک مثال عملی میزنم ، فرض کنید تجهیز شما یک خلبان خودکار است ، اگر استیبل نباشید یا در حین پرواز ریست شود جان چندصد نفر به خطر خواهد افتاد ؟ از این دست مثال ها در صنعت بیشمار است که موجب ضرر های جانی و مالی بسیاری خواهد شد.
      3 – بلادرنگ بودن یک سیستم در کرنل آن تعیین می شود ، لینوکس چیزی نیست جز یک کرنل ! پس شما با هیچ نرم افزاری قادر نخواهید بود قابلیت بلادرنگ بودن را به کرنل اضافه کنید مگر با تغییر کد های کرنل ! هر فردی قادر به تغییر که نه حتی کامپایل کرنل لینوکس هم نیست چه برسد به تغییر کد های آن و ریل تایم کردن آن. البته ناممکن نیست ولی قطعا شخصی که چنین دانشی را داشته باشد این مقاله را به خوبی درک میکند. و این که قبلا کرنل های ریل تایم تولید و کامپایل شده اند اگر کسی قادر به راه اندازی آنها بر روی رزبری پای باشند.
      4 – قبلا توضیح دادم که چرا لزوما پایه مهم نیستند ، یک مساله دیگر که مطرح هست زمان بوت شدن سیستم است ، زمان چند ده ثانیه کجا که لینوکس بوت میشود و زمان یکی دو ثانیه که برنامه شما بوت میشود کجا !
      پس ؛ بهتر است در این خصوص دقیق تر باشیم. همه میدانیم که هر سیستمی کاربردی دارد و کسی منکر کابرد های لینوکس نیست و کسی هم نمی تواند منکر کارکردهای این نوع دیزاین باشد. بیشتر افراد اصلا درکی از اتفاقاتی که درون یک سیستم عامل پیشرفته مثل لینوکس می افتد ندارند و قادر نخواهند بود سیستم را مدیریت کنند چه برسد که بخواهند برای ان برنامه هم بنویسند.

      پاسخ
      1. 4.1.1

        وحید

        ممنونم از پاسختون
        منظورم از اینکه استیبل بودن مشکلی نیست اینه که میشه لینوکس رو استیبل کرد
        ریل تایم بودن رو هم میشه با متدهای مختلف مثل xenomai cobalt و یا xenomai mercury ویا rtai و سایر روشها بدست اورد، البته تخصص نرم افزار لازمه و معمولابرای بچهای الکترونیک سخت و زمانبره
        برنامه نویسی کرنل روهم باید بلد بود وگرنه ….
        حرف شمارو میپذیرم که یا باید در یک حوزه متخصص بود و یا باید حوزه ای که در اون متخصص هستیم مشغول شیم، معنی نداره کسی که حتی درس سیستم عامل پاس نکرده بخواد بره لینوکس تعبیه شده پیاده سازی کنه و همه چیز خیلی خوب کار کنه
        در مورد زمان بوت شدن هم راه حلهای زیادی وجود داره که میشه بسیار سریع ….
        البته قبلا هم گفتم، برای مقاصد خاص باید لینوکس ساخت، روشهای متعددی هست که از حوصله این بحث خارجه اما کسیکه ندونه کرنل چیه و چجوری میشه کامپایلش کرد و … کلا ….
        در کل، لینوکس، امروز و دیروز بوجود نیومده و محصول ادم اماتوری مثل من هم نیست پس اگر فکر میکنیم جایی مشکلی وجود داره براش راه حل های بسیار متنوعی وجود داره
        البته میشه سیستم عامل هم نداشت اما خوب دیگه خیلییی چیزا نداریم(البته اول باید دونست با سیستم عامل چه چیزهایی داریم ? )

        پاسخ
        1. 4.1.1.1
          زئوس Zeus

          زئوس Zeus

          خواهش میکنم دوست عزیز.
          لینوکس به خودی خود استیبل هست و به همین دلیله که بر روی سرورهای بزرگ در حال ارئه سرویس است، مشکل موجود از پورت لایه های نرم افزاری برای سخت افزار رزبری پای است و با پیدا کردن مشکلات مربوطه میشه نسخه استیبل رو برای هر سخت افزاری رو ایجاد کرد.
          من در مورد این نرم افزار ها اطلاعی ندارم ولی چیزی که واضحه هست تا کرنل پشتیبانی نکنه ، ریل تایم واقعی به وجود نمی آد ، البته اطلاعی ندارم که این نرم افزار ها چطور کار میکنند شاید بیت کدهایی رو به کرنل اضافه می کنند ولی از قبل با RTLINUX آشنایی دارم و این پروژه به صورت واقعی ریل تایم است. در صورت لزوم و داشتن دانش کافی افراد می توانند از این پروژه استفاده کنند.
          اصولا تحصیلات آکادمیک زیاد ربطی به علاقه افراد نداره ، کسی که علاقه داشته باشه ، بدون پاس کردن به قول شما درس سیستم عامل و فقط با مطالعه کتاب ها و رفرنس های مربوطه مهارت بیشتری کسب میکنند ، افراد مختلفی میشناسم که رشته غیر الکترونیک دارند و الکترونیک کار میکنند و الکترونیکی هایی که به صورت حرفه ای برنامه نویسی انجام می دهند. فکر میکنم علاقه است که تعیین کننده است.
          بله درسته برای مقاصد خاص باید لینوکس ساخت ، یعنی مجدد کامپایل کرد با تغییرات لازم ولی کسی که قصد داره این کار رو انجام بده ، باید دید سخت افزاری خوبی داشته باشه ، وارد کردن چند خط توی ترمینال و تغییر چند تا آپشن نمیشه بهش گفت لینوکس ساختن ، اینوکس رو کسی بلده بسازه که اونو روی یک پلتفرم جدید پورت کنه یا فلان قابلیت رو از صفر بهش اضافه کنه.
          بله لینوکس واقعا خوبه من به شخصه مدت زیادی هست که از لینوکس استفاده میکنم ، یکی از نقاط قوت سیستم های اپن سورس پیدا کردن راه حل های مختلف و ایجاد خلاقیت هست ولی بحث ما لینوکس نیست ما در این سری مقالات که در حال انتشار آنها هستم شناختن سخت افزار است ، این که چطور میشه برای پردازنده های فرکانس بالا برنامه نوشت بر خلاف چیزی که عموم افراد فکر می کننده چندان پیچیده نیست یا این که چطور میشه چند پردازنده ای رو مدیریت کرد و…..
          ما هم قرار نیست سیستم عامل نداشته باشیم ، اگر مقداری صبوری کنید نحوه پیاده سازی سیستم عامل رو هم بر روی برد ها آموزش میدیم 🙂

          پاسخ
  3. 3
    Pouria Rezaee

    Pouria

    جالب بود من همیشه این سیستمو متکی به سیستم عامل میدونستم و اگر میخواستی یذره هم شبیه آردواینو بنویسی یا gcc میخواست یا دات نت و مشکل بجایی کشیده میشد که برای یذره خنک سازی باید هیت سینک و فن کیس و… کلی دردسر میخواست و… منتظر مطلب بعدیتونم شاید این روشم خوب باشه ولی هر روشی مزایا و معایبی داره…

    پاسخ
    1. 3.1
      زئوس Zeus

      زئوس Zeus

      خواهش می‌کنم دوست عزیز ، بله حق با شماست هر روشی نقایص خاص خودش رو داره
      به هر حال این هم میتونه یه روش استفاده باشه ، و البته فکر میکنم برای خیلی ها و بسته به کارشون این روش بهتر هم باشه
      انشالله به زودی قسمت دوم رو هم منتشر می‌کنیم

      پاسخ
  4. 2
    New Modern

    حسین

    بسیار عالی بود
    تا حالا به این موضوع فکر نکرده بودم
    بی صبرانه منتظر ادامه این مطلب هستم

    پاسخ
    1. 2.1
      زئوس Zeus

      زئوس Zeus

      خواهش میکنم دوست عزیز
      انشالله به زودی قسمت دوم مطلب منتشر خواهد شد.

      پاسخ
  5. 1

    hamed

    سلام
    تشکر بابت مطلبتون، حالابخش بعدی یا بخش اصلی کجاست یا کی میاد ؟

    پاسخ
    1. 1.1
      زئوس Zeus

      زئوس Zeus

      سلام دوست عزیز
      در دست اقدام است و انشالله فردا قسمت دوم مقاله منتشر خواهد شد.

      پاسخ

پاسخ دهید

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

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