ماشین بدون واسطه کیست؟ توضیح بده.
در علوم رایانه، ماشین بدون واسطه ( به انگلیسی : Bare Machine ) رایانه‌ای است که دستور‌العمل‌ ها را مستقیماً روی سخت‌افزار منطقی و بدون دخالت هرگونه سیستم‌عاملی اجرا میکند. از سیستم‌عامل های ابتدایی گرفته تا سیستم‌عامل های پیچیده و بسیار حساس امروزی که خدمات بسیاری را در خود جای داده اند، همه آنها طی مراحل زیادی تکامل یافته اند. پس از توسعه رایانه های با قابلیت برنامه‌ریزی ( که نیاز به تغییرات فیزیکی برای اجرا کردن برنامه های مختلف نداشتند ) و قبل از توسعه سیستم های عامل، دستور های ترتیبی به کمک زبان Machine Language و بدون هیچ لایه نرم افزاری، مستقیماً روی سخت‌افزار رایانه اجرا می شدند. این رویکرد "ماشین بدون واسطه" نام دارد و مربوط به قبل از سیستم‌عامل های امروزی است. امروزه کاربرد این رایانه ها بیشتر برای سیستم های تعبیه‌ شده و سفت‌افزار هایی مورد توجه است که پیش‌نیاز های تاخیر زمانی بالایی دارند، در حالی که برنامه های معمولی توسط یک سیستم زمان اجرا که یک لایه سیستم‌عامل هم روی آن است اجرا می‌شوند.مزایا.در اکثر مواقع برنامه ای که با ماشین بدون واسطه پیاده‌سازی می شود، در عین استفاده از حافظه کمتر و مصرف انرژی بهینه‌تر، سریع‌تر اجرا می شود. این امر به این دلیل است که سیستم‌عامل ها نیز مانند هر برنامه دیگری نیاز به زمان و حافظه برای اجرا شدن دارند، مشکلی که در ماشین های بدون واسطه وجود ندارد. برای مثال، هر ویژگی سخت‌افزاری که شامل ورودی یا خروجی است در ماشین بدون واسطه به صورت مستقیم به آن دسترسی داریم، این در حالی است که همین ویژگی در یک ماشین دارای سیستم‌عامل باید یک زیر‌ برنامه را مسیریابی و سپس اجرا کند، که زمان و حافظه مصرف می کند.معایب.برای یک برنامه ماشین بدون واسطه، باید برنامه‌نویسی بیشتری انجام شود تا به درستی کار کند و این برنامه پیچیده‌تر است زیرا خدمات و امکاناتی که سیستم‌عامل ارائه می کند و توسط برنامه استفاده می شوند، باید مطابق نیاز مجدداً پیاده سازی شوند. این خدمات می توانند شامل موارد زیر باشند :اشکال‌زدایی یا دیباگ کردن یک برنامه بدون واسطه کار سختی است زیرا :برنامه‌نویسی بدون واسطه عموماً توسط زبانی که به سخت‌افزار نزدیک است انجام می شود مانند راست، سی پلاس پلاس، زبان سی، زبان اسمبلی و یا حتی برای کد های کوتاه یا پردازنده های خیلی جدید مستقیماً از کد ماشین استفاده می شود. تمام مشکلات اجتناب ناپذیری که ذکر شدند، به این معنی هستند که برنامه های بدون واسطه به ندرت قابلیت حمل شدن دارند.مثال ها.رایانه های های اولیهرایانه های اولیه مانند PDP-11، به برنامه‌نویسان این اجازه را داد که برنامه ای که با کد ماشین نوشته شده است را در رَم بار کنند. به کمک چراغ هایی بر نتیجه عملیات برنامه ها نظارت می شد. خروجی به دست آمده از نوار مغناطیسی، چاپگر و یا حافظه نیز برای نظارت استفاده می شدند.سیستم های تعبیه شدهبرنامه‌نویسی ماشین بدون واسطه یک عمل رایج در سیستم های تعبیه شده به حساب می آید، زیرا ریز‌کنترل‌گر ها یا ریز‌پردازنده ها معمولاً به صورت مستقیم روی نرم افزار یکپارچه و تک منظوره و بدون بارگذاری یک سیستم‌عامل جداگانه راه‌اندازی می شوند. چنین نرم‌افزار های تعبیه شده ایی می توانند در ساختار متفاوت باشند، ولی ساده‌ترین شکل آن می تواند متشکّل از یک حلقه بی‌نهایت اصلی باشد، که زیر برنامه هایی که مسئول بررسی ورودی ها، انجام اعمال و نوشتن خروجی ها هستند را فرا بخواند.توسعه.رویکرد استفاده از ماشین های بدون واسطه مسیر را برای ایده های جدید هموار کرد که به تکامل توسعه سیستم‌عامل ها شتاب بخشید.این رویکرد نیاز به موارد زیر را برجسته کرد :برای مثال، برنامه ها در PDP-11 به طور دستی و با استفاده از مجموعه ای از کلید ها روی پنل جلویی دستگاه بار می شدند. صفحه‌کلید ها با اختلاف بهتر از این دستگاه های ورودی قدیمی هستند، زیرا که تایپ کردن کد یا داده بسیار سریع‌تر از خاموش و روشن کردن کلید ها برای وارد کردن آنها به ماشین است. بعداً صفحه‌کلید ها تقریباً در تمامی رایانه ها فارغ از برند و قیمت تبدیل به استاندارد شدند.نمایشگر رایانه ها همچنین می توانند به راحتی خروجی یک برنامه را به یک روش کاربر پسند نمایش دهند. به طور مثال، فقط برای درک کردن وضعیت سخت‌افزار یک رایانه اولیّه، باید اطلاعات بسیار دقیقی درباره آن رایانه خاص و سیستم نمایشگر آن که متشکّل از آرایه ای از چراغ ها است داشته باشیم. ولی در مقابل آن، هر کسی که توانایی خواندن داشته باشد، می تواند یک رابط کاربریِ که به خوبی روی یک سیستم مدرن طراحی شده را بدون نیاز به دانستن چیزی درباره سخت‌افزار رایانه ای که برنامه روی آن اجرا می شود متوجه شود.منابع.۱. گوردون، هابیل؛ آمیت، نداو؛ حرال، نداو; بن یهودا، مولی؛ لاندو، الکس؛ شوستر، عساف؛ تسافریر، دن (2012). "ELI". ۲. "راهنمای کاربردی برای فلز بدون واسطه ++C". دریافت شده در 16 دسامبر 2022.۳. سیلبرشاتز، آ؛ گالوین، پیتر؛ گاگن، گرگ (2003). . ISBN 9780471250609.