محاسبات ماشین برهنه
این مقاله، محاسبات ماشین برهنه، اخیراً بهواسطهٔ فرایند ایجاد مقاله ایجاد شدهاست. بازبینیکننده در حال بستن درخواست است و این برچسب احتمالاً بهزودی برداشته میشود.
ابزارهای بازبینی: پیشبارگیری بحث اعلان به نگارنده |
خطای اسکریپتی: پودمان «AfC submission catcheck» وجود ندارد.
محاسبات ماشین برهنه[ویرایش]
"این مقاله در حال ترجمه از ویکی انگلیسی است لطفا حذف نشود."
محاسبات ماشین برهنه(Bare Machine Computing) یا به اختصار (BMC) یک نوع معماری کامپیوتر است که بر پایه ماشین های برهنه (bare machines) ایجاد شده است. الگوی ماشین های برهنه اجرای برنامه ها بدون پشتیبانی از سیستم عامل یا پشتیبانی از کرنل متمرکز و ... است. در ماشین های برهنه هیچ نرم افزار واسطی قبل از اجرای برنامه ها وجود ندارد. برنامه ها که به آن ها برنامه های ماشین های برهنه یا برنامه های BMC گفته می شود از هیچ حافظه ماندگار یا هارد دیسک ای استفاده نمی کنند و به جای آن در حافظه های جدا شدنی مانند فلش ذخیره می شوند. یک برنامه BMC شامل یک برنامه تنها یا مجموعه کوچکی از برنامه ها(دنباله از برنامه ها) که به عنوان یک فایل با یک خانه حافظه اجرا می شوند. برنامه های BMC به منابع ضروری سخت افزار دسترسی دارند. این برنامه ها مدیریت و کنترل خود را به عهده دارند و خودکفا هستند به طوری که برای بوت شدن لود شدن و اجرا به هیچ اجزا نرم افزاری و نرم افزار خارجی نیاز ندارند. برنامه های BMC ناشی از نحوه طراحی ای که دارند دارای امنیت ذاتی هستند. هیچ آسیبی به سیستم عامل وارد نمیکنند و هر برنامه فقط شامل وظایف ضروری است. در سیستم BMC چون برنامه های فقط در حالت کاربر(user mode) اجرا می شوند حالت privileged وجود ندارد. همچنین کد برنامه به صورت ایستا(statically) کامپایل می شود و در طول اجرای برنامه نیازی به تغییر ندارد.
تاریخچه[ویرایش]
در اولین روزهای محاسبات ماشینی کامپیوترها مستقیما با سخت افزار ارتباط داشتند و هیج سیستم عاملی وجود نداشت. با بزرگتر شدن برنامه ها و در برگرفتن دامنه های مختلف سیستم های عامل اختراع شدند. سیستم های عامل به عنوان میان افزار برای ارايه سخت افزار مورد نیاز برنامه ها عمل می کردند. سیستم های عامل برای کاهش سربار و بهبود عملکرد از نظر اندازه و پیچیدگی رشد بسیاری کردند. مانند Microkernel, Exokernel, Tiny-OS, OS-Kit, Palacios and Kitten, IO_Lite, bare-metal Linux, IBM-Libra و کرنل های کوچک دیگر. علاوه بر رویکردهای فوق در سیستم های تعبیه شده مانند گوشی های هوشمند نیز یک بخش کوچک و اختصاصی از یک سیستم عامل با مجموعه ای از برنامه ها با سخت افزار ادغام شده است. همچنین تعداد بسیاری از بازی ها و برنامه های صنعتی به طور مستقیم روی سخت افزار اجرا می شوند. در بیشتر این سیستم های سیستم عامل برای اجرای برنامه های عمومی کاربردی در دسترس نیست. محاسبات ماشینی برهنه از مفهوم Application Object یا (AO) نشات گرفته که توسط کارنه در دانشگاه تاوسن اختراع شده است. در طول سال ها به سیستم عامل های پراکنده (DOSC) و در نهایت به الگوی BMC تبدیل شد.
مقایسه با محاسبات مرسوم[ویرایش]
الگوی BMC در بسیاری از جهات با محاسبات مرسوم متفاوت است. در زمان اجرای برنامه BMC هیج کرنل متمرکزی یا سیستم عاملی اجرا نمی شود. همچنین ماشین برهنه در الگوی BMC هیج منبع ذخیره باارزش یا مالکیتی ندارد و میتواند برنامه های کاربردی و عمومی محاسباتی را اجرا کند. این مشخصات در سیستم ها با الگوی محاسبات مرسوم مانند سیتستم های تعبیه شده یا سیستم های روی تراشه (SOC) یافت نمی شود. علاوه بر این مفهوم BMC یک رویکرد حداقلی برای رسیدن به سادگی امنیت و سایز کد کوچکتر است.
در ماشین های BMC یک قسمت محاسباتی برهنه است به طور مستقیم با سخت افزار در ارتباط است. برنامه های BMC و برنامه های سیستمی یکی و مشابه هم هستند. حالت کاربر (user mode) یا حالت کرنل (kernel mode) در سیستم وجود ندارد. زمانی که یک مجموعه برنامه مشخص در حال اجرا است هیج برنامه دیگری اجرا نمی شود. تمام برنامه تنها با یک زبان برنامه نویسی C/C++ و با کد اسمبلی (assembly) خیلی کوتاهی نوشته می شود. برنامه نویس تمام سخت افزار را مدیریت می کند.
This article "محاسبات ماشین برهنه" is from Wikipedia. The list of its authors can be seen in its historical and/or the page Edithistory:محاسبات ماشین برهنه. Articles copied from Draft Namespace on Wikipedia could be seen on the Draft Namespace of Wikipedia and not main one.