رایانش ماشین های بی پوشش

"این صفحه به صفحه ی رایانش ماشین بدون پوشش انتقال یافت"

محاسبه ماشین بدون پوشش یک معماری رایانه است که بر اساس ماشین های بدونن پوشش می باشد. در الگوی BMC، برنامه‌ها بدون پشتیبانی هیچ سیستم عامل یا هسته متمرکزی اجرا می‌شوند، هیچ نرم‌افزار واسطه‌ای روی "ماشین بدون پوشش" قبل از برنامه های اجرا شونده بارگذاری نمی‌شود. این برنامه‌ها که "برنامه‌های ماشین بدون پوشش" یا به‌طور خلاصه برنامه‌های BMC نامیده می‌شوند، از هیچ انبارش ثابت یا دیسک سختی استفاده نمی‌کنند و در عوض در حافظه‌های بزرگ جداشونده مانند حافظه فلش ذخیره می‌شوند. یک برنامه BMC شامل یک برنامه واحد یا یک رشته کوچک از برنامه ها است که به عنوان یک اجراشونده واحد در یک فضای آدرس اجرا می شود. برنامه های BMC به منابع سخت افزاری حیاتی خود دسترسی مستقیم دارند. آنها نهادهایی خودکفا، خود مدیریت شونده و خودکنترلی هستند که بدون استفاده از اجزای نرم افزاری دیگری یا نرم افزار خارجی راه اندازی، بارگیری و اجرا می شوند. برنامه های BMC به دلیل طراحی خود دارای امنیت ذاتی هستند. هیچ آسیب‌پذیری مرتبط با سیستم‌عاملی وجود ندارد و هر برنامه فقط شامل عملکردهای ضروری (حداقلی) است. هیچ وضعیت ممتازی در سیستم BMC وجود ندارد زیرا برنامه ها فقط در وضعیت کاربر اجرا می شوند. همچنین، چون کد برنامه به صورت ایستا گردآوری (کامپایل) می شود - هیچ راهکاری برای تغییر پویای جریان برنامه ی BMC در طول اجرا وجود ندارد

 تاریخچه 
در روزهای ابتدایی رایانش، نرم افزار های رایانه ای به طور مستقیم با سخت افزار در ارتباط بودند و هیچ سیستم عاملی وجود نداشت.با بزرگتر شدن برنامه ها و دربرگرفتن دامنه های مختلف، سیستم های عامل اختراع شدند. آنها به عنوان یک میان برنامه که لایه ی انتزاعی سخت افزاری را در اختیار برنامه ها میگذارد عمل میکردند.سیستم های عامل در اندازه و پیچیدگی خود به میزان بسیار زیادی رشد کرده اند که باعث تلاش هایی برای کم کردن بار سیستم های عامل و بهبود عملکردشان شده است، که شامل میکروکرنل، اگزوکرنل ، سیستم عامل تاینی ، سیستم عامل کیت ، پالاشیوز و کیتن ،J. Lange et al, “Palacios and Kitten: New high performance operating systems for scalable virtualized and native supercomputing,” 24th IEEEInternational Paral-lel and Distributed Processing Symposium (IPDPS), 2010, pp. 1-12 آی او-لایت ، بیر-متال لینوکس ، آی بی ام-لیبرا و دیگر کرنل های پشتیبان می شود.علاوه بر رویکرد های بالا، در سامانه های نهفته مانند موبایل های هوشمند، یک بخش کوچک و اختصاصی از سیستم عامل و یک رشته از برنامه ها به صورت خیلی نزدیکی با سخت افزار هم راستا شده اند.همچنین تعداد بی شماری کنترل های صنعتی و بازی های رایانه ای هستند که به طور مستقیم روی سخت افزار اجرا می شوند. در اکثر این سامانه ها، سخت افزار دسترسی ندارد تا برنامه های همه کاره را اجرا کند.

رایانش ماشین تنها، از مفهوم شیئ برنامه ای (AO) که توسط کارنه در دانشگاه توسان ابداء شده بود نشات گرفته است. این برنامه با گذشت سالیان به سیستم عامل های پراکنده(DOSC) Karne, R.K, Venkatasamy, K (Karthick Jaganathan), Ahmed, T. Dispersed Operating System Computing (DOSC), Onward Track, OOPSLA 2005, San Diego, CA, October 2005. تکامل پیدا کرد و در نهایت به الگوی BMC تبدیل شد.

 مقایسه با رایانش مرسوم 
الگوی BMC در مسائل محتلفی با رایانش مرسوم متفاوت است. هنگام اجرای برنامه های BMC هیچ هسته ی مرکزی و یا سیستم عاملی وجود ندارد. همچنین یک ماشین بدون پوشش در الگوی BMC هیچ مالکیتی ندارد و منابع با ارزش را ذخیره نمی کند و از آن می توان برای اجرای برنامه های رایانشی همه کاره استفاده کرد.

این ویژگی ها را نمی توان در رایانش معمول و مرسوم مانند سامانه های نهفته و سامانه روی تراشه (SOC) پیدا کرد. مفهوم BMC یک رویکرد حداقلی برای دستیابی به سادگی، اندازه ی کد های کوچکتر و امنیت می باشد.

در رایانش ماشین بی پوشش، دستگاه محاسبه گر بدون پوشش است و برنامه ی آن مستقیما با سخت افزار در ارتباط است. نرم افزار و برنامه های سامانه در حقیقت یکی هستند.یک وضعیت کاربر و یا وضعیت کرنل در این سامانه وجود ندارد. وقتی یک رشته برنامه در حال اجرا هستند هیچ چیز دیگری در حال اجرا نمی باشد. تمام برنامه ها با یک زبان برنامه نویسی C/C++ و با مقدار بسیار کمی کد نوشته می شوند.برنامه نویس نرم افزار تمامی منایع سخت افزاری را کنترل می کند.این روش بر اساس رویداد ها بنا شده است به همین جهت نیازی به هسته (کرنل) ندارد. یک رشته برنامه ی BMC بر اساس یک معماری مجموعه دستورالعمل داده شده (ISA) خیلی ساده می تواند برای همیشه اجرا شود، تا زمانی که دستورالعمل ها قابلیت رقابتی خود را با مرور زمان از دست نداده اند.این رویکرد با رایانش سبز بسیار همخوانی دارد چرا که نیازی نیست تا سخت افزار و نرم افزار را به خاطر منسوخ شدن از پیش تعیین شده ی امروزی که در تمامی وجه های سیستم های اطلاعاتی ما وجود دارد دور بیاندازیم.

 موارد استفاده و پژوهش 
الگوی BMC برای ایجاد وب سرور ها،He, L., Karne, R. K., Wijesinha, A.L., and Emdadi, A. Design and Performance of a Bare PC Web Server, International Journal of Computers and Their Applications (IJCA), June 2008. سرور های جدا از هم،B. Rawal, R. K. Karne, and A. L. Wijesinha. Splitting HTTP Requests on Two Servers, The Third International Conference on Communication Systems and Networks: COMSNETS 2011, January 2011, Bangalore, India.B. Rawal, R. K. Karne, and A. L. Wijesinha. “Mini Web server clusters for HTTP request splitting,” IEEE International Conference on High-Performance Computing and Communications (HPCC), pp. 94-100.صدا روی پروتکل اینترنت (VoIP)G. H. Khaksari, A. L. Wijesinha, R. K. Karne, L. He, and S. Girumala, “”A peer-to-peer bare PC VoIP application,” 4th IEEE Consumer Communications and Networking Conference (CCNC), 2007, pp. 803-807.، سرور SIP A. Alexander, R. Yasinovskyy, A. Wijesinha, and R. Karne, "SIP Server Implementation and Performance on a Bare PC," International Journal in Advances on Telecommunications, vol. 4, no. 1 and 2, 2011.، ایمیل،Ford,G.H., Karne, R.K., Wijesinha, A.L., and Appiah-Kubi, P. The Design and Implementation of a Bare PC Email Server,33rd Annual IEEE International Computer Software and Applications Conference (COMPSAC 2009), Seattle, Washington, July 2009, p480-485. وبمیل، P. Appiah-kubi, R. K. Karne, and A. L. Wijesinha. The Design and Performance of a Bare PC Webmail Server, The 12th IEEE International Conference on High-Performance Computing and Communications, AHPCC 2010, Sept 1-3, 2010, Melbourne, Australia, p521-526. جستجوگر متنی ،S.Almautairi, R. K. Karne and A.L. Wijesinha, A Bare PC Text Based Browser, 2019 Workshop On Computing, Networking and Communications (CNC), Honolulu, Hawaii, February 2019 پروتکل های امنیتی،N. Kazemi, A. L. Wijesinha, and R. Karne. Design and Implementation of IPsec on a Bare PC, 2nd International Conference on Computer Science and its Applications (CSA), 2009.A. Emdadi, R. K. Karne, and A. L. Wijesinha. Implementing the TLS Protocol on a Bare PC, ICCRD2010, The 2nd International Conference on Computer Research and Development, Kaula Lumpur, Malaysia, May 2010.سامانه های فایل بندی،W. V. Thompson, H. Alabsi, R. K. Karne, S. Linag, A.L. Wijesinha, R. Almajed, and H. Chang, A Mass Storage System for Bare PC Applications Using USBs, International Journal on Advances in Internet Technology, vol 9, no 3 and 4, year 2016. p63-74.W. Thompson, R. Karne, A. Wijesinha, H. Alabsi, and H. Chang, Implementing a USB File System for Bare PC Applications, ICIW 2016: The Eleventh International Conference on Internet and Web Applications and Services, p58-63. آرایه چندگانه دیسک‌های مستقل (RAID)،H. Z. Alabsi, W. V. Thompson, R. K. Karne, A. L. Wijesinha, R. Almajed, F. Almansour, A Bare Machine RAID File System for USBs, SEDE 2017: 26th International Conference on Software Engineering and Data Engineering, pp 113-118. اس کیو لایت تبدیل شده ی بی پوشش،W. Thompson, R. K. Karne and A.L. Wijesinha, Interoperable SQLite for a Bare PC, 13th International Conference Beyond Database Architectures and Structures (BDAS'17), 2017, p177-188.U. Okafor, R. K. Karne, A. L. Wijesinha and B. Rawal Transforming SQLITE to Run on a Bare PC, In Proceedings of the 7th International Conference on Software Paradigm Trends, pages 311-314, Rome, Italy, July 2012. میان برنامه برای کارت های رابط شبکه (NICs) F. Almansour, R. K. Karne, A.L. Wijesinha, H. Alabsi and R. Almajed, Middleware for NICs in Bare PC Applications, 26th International Conference on Computer Communications and Networks (Poster Paper), ICCCN2017, Vancouver, Canada, 2017. و ارتباط اترنت بر روی سور های تحت وب BMC با استفاده از دو کارت رابط شبکه،F.Almansour, R K. Karne, A. L. Wijesinha, B. S. Rawal “Ethernet Bonding on a Bare PC Web Server with Dual NICs”, The 33rd ACM Symposium On Applied Computing SAC 2018, April 2018, Pau, France. استفاده شده است. موفقیت در تبدیل برنامه های مرسوم ونیدوز یا لینوکس به طوریکه به عنوان برنامه های BMC اجرا شوند راه را برای استفاده های جدید الگوی BMC باز می کند. مشکلات طراحی در اجرای یک وب سرور بر روی رایانه بی پوشش با معماری 32 بیت چند هسته ای با استفاده از پروتکل هدایت انتقال (TCP) توضیح داده شده است.N. Soundararajan, R. Karne, A. Wijesinha, N. Ordouie, H. Chang, Design Issues in Running a Webserver on Bare PC Multi-Core Architecture, IEEE 44th Annual Computers, Software,and Applications Conference (COMPSAC), 2020 یک پروتکل مشتری/سرور برای ارتباط تحت وب بر روی قرارداد داده‌نگار کاربر (UDP) با استفاده از معماری 32 بیتی روی ماشین بی پوشش نمایش داده شده است.N. Soundararajan, R. Karne, A. Wijesinha, N. Ordouie, B.S.Rawal, A Novel Client/Server Protocol for Web-based Communication over UDP on a Bare Machine, 18th IEEE Student Conference on Research and Development (SCOReD), 2020. توسعه ی نرم افزار های رایانه بدون استفاده از هیچ سیستم عامل یا هسته ی مرکزی در معماری 64 بیتی چند هسته ای و اجرای آن نشان داده شده است.N. Ordouie, N. Soundararajan, R. Karne, A. Wijesinha, Developing Computer Applications without any OS or Kernel in a Multi-core Architecture, IEEE ISNCC November 2021.