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

لطفاً به خارج از جعبه فکر کنید و سؤالات جالب بپرسید!

خوب ، بیایید


بیایید یک قدم عقب برداریم و بپرسیم که چرا این مانیتور کودک در وهله اول لینوکس را اجرا می کند؟ اگر هیچ سیستم عامل وجود نداشته باشد و برنامه با کد میکروکنترلر لخت نوشته شده باشد (فکر کنید کد آردوینو) چیست؟ در این صورت هیچ [s sudo یا ls یا حتی پوسته ای برای استفاده مهاجم وجود نخواهد داشت ، درست است؟

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

  1. کاهش زمان dev: در هنگام ساخت Wi-Fi و بلوتوث با قابلیت ابری که با هماهنگی ابری خود را با هماهنگی Android همراه با Android اجرا می کند. و برنامه های iOS ، لینوکس دارای تمام کتابخانه ها ، برنامه های کاربردی و درایورهایی است که شما باید آن را انجام دهید.
  2. افزایش قابلیت آزمایش: اگر دستگاه با درگاه SSH دارای bash یا مشغول کار است ، اتصال به آن بسیار آسان است. در مرحله تست محصول چه اشتباهی رخ داده است.

برای اینکه ایده ی انسداد خود را عملی کنید ، لازم است نه تنها نام برنامه های خط فرمان مانند sudo و ls را مسدود کنید. بلکه هر API هسته لینوکس نیز برای جلوگیری از حمله مهاجم در کامپایل خود ، از آن جلوگیری می کند د باینری که مستقیماً هسته را صدا می کند. بنابراین اجازه دهید نگاهی دیگر به ایده خود بیاندازیم:

پیاده سازی برای کامپایلرها کاملاً آسان است. ساده ترین مورد "تغییر نام این عملکرد و همه تماس با آن" را بگیرید. شما می توانید یک کامپایلر سیستم عامل و یک کامپایلر برنامه را به همان نام های تصادفی اختصاص دهید و آنها قادر به گفتگو با یکدیگر خواهند بود.

شما باید این مجموعه تصادفی را خودتان انجام دهید. در غیر این صورت ، کسی می تواند نقشه ها را در گوگل جستجو کند.

بنابراین ، شما نیاز به ایجاد هسته از منبع با "کامپایلر مبهم" خود دارید تا فقط نقشه های API های هسته مبهم را بدانید. (تا کنون هسته لینوکس را از منبع ساخته اید؟ من کار سختی را انجام می دهم.) شما می خواهید درایور تراشه وای فای Broadcom BCM2837 که در آن دستگاه مینی کامپیوتر قرار می گیرد؟ اگر Broadcom حتی کد منبع را در اختیار شما قرار دهد ، باید آن درایور را در برابر هسته مبهوت خود با کامپایلر خود بسازید. از آنجایی که باید کل پشته های نرم افزاری شبکه وای فای و شبکه GNU را بسازید. قبل از اینکه یک سیستم عامل کارآمد داشته باشید ، چند چیز دیگر برای یافتن منبع و ساخت نیاز دارید؟ اوه ، و اگر هر یک از این موارد وصله ای ایجاد کرد ، اکنون شما مجبور هستید دوباره آن را بسازید (با فرض اینکه فایل های نقشه برداری از انسداد را از ساخت اصلی ذخیره کرده اید) و آن را به سمت دستگاههای خود بیرون کنید ، زیرا – با طراحی – دستگاه های شما می توانند از binary patch تولید شده توسط فروشنده استفاده نکنید.

اوه ، و برای خنثی کردن هکرها ، هیچ یک از این موارد "در اینجا فایلهای باینری برای Whizpopper 1.4.7 وجود دارد" وجود ندارد ، اوه ، شما نیاز به ساختن نسخه منحصر به فرد از همه چیز از هسته تا برای هر دستگاه که شما حمل می کنید. با توجه به تجربه من در زمینه هسته ، شما به ساعتها و ساعتها (احتمالاً روزها؟) زمان کامپایل در اینجا حتی در i7 نگاه می کنید.


بنابراین به سؤالات شما:

  1. آیا سیستم مانع از سیستم عامل است؟
  2. اگر به طور گسترده ای مورد استفاده قرار نگیرید ، موانع کاربردی یا فنی استفاده چیست؟ استفاده از مؤلفه های نرم افزار از قبل موجود در صورت نیاز به پیدا کردن و ساختن همه چیز از منبع. در واقع ممکن است تلاش کمتری برای خنثی کردن سیستم عامل به صورت کامل انجام شود ، وانمود شود که سال 1960 است ، و برنامه خود را مستقیماً در میکرو کد پردازنده بنویسید.

    من امنیت را بیشتر از بیشتر توسعه دهندگان دوست دارم ، اما مانند را لعنتی می کنم که . [19659018]