میان افزار یا Firmware چیست ؟
جواب دادن به این سؤال کمی پیچیده است. تا حدودی می توان گفت که با یک مفهوم سر و کار داریم مفهومی به نام میان افزار موجودیتی که نه سخت افزار است نه کاملا می توان آن را نرم افزار دانست. بهتر است کمی بیشتر توضیح دهیم تا میان افزار بیشتر آشنا شوید
برای مدیریت هر سخت افزاری یا بهتر بگوییم برای استفاده بهینه از امکانات سخت افزاری، نیازمند یک سیستم مدیریتی هستیم که توانایی مدیریت و زمانبندی اجرا و کنترل فرآیندها و پردازش ها را داشته باشد.
در مدل های پیشرفته (مانند انواع کامپیوتر، برخی از مدل های گوشی موبایل و انواع Handheld) نام این سیستم مدیریتی سیستم عامل و در مدل های ساده تر (مانند انواع پخش کننده MP3 ، انواع ساده گوشی موبایل همانند نوکیا 1100 و انواع ساده تر و دستگاه های ساده تر مانند انواع رایتر ) نام آن Firmware یا به فارسی میان افزار است.
در انواع پیشرفته، کار میان افزار ترجمهِ دستورات نرم افزاری به زبان قابل فهم برای سخت افزار و در انواع ساده تر مثلا در یک پخش کننده MP3 تفسیر فرامین صادر شده از طریق دکمه و درخواست اجرای فرمان مورد نظر از سیستم یا مدارات موجود در دستگاه است.
محل دقیق میان افزار کمی بالاتر از سخت افزار است. در واقع می توان اظهار داشت که اولین نرم افزار مرتبط ( یا حتی تنها نرم افزار) با سخت افزار، میان افزار است. برنامه نویسان می دانند که محل قرارگیری میان افزار، دقیقا پایین تر از اسمبلر است.
میان افزارها را در کارگاه یا کارخانه به وسیله دستگاه هایی به نام Emulator در حافظه های قابل برنامه ریزی و فقط خواندنی موسوم به Programable Read Only Memory) PROM) قرار می دهند. در واقع این حافظه ها را به وسیله Emulator برنامه ریزی می کنند.
یک نمونه از انواع این حافظه ها همان بایوس کامپیوتر است که میان افزاری را (همان تنظیمات بایوس) نیز اجرا می کند. محتویات این حافظه ها نیز ایستا است و پس از خاموش شدن دستگاه به اطلاعات موجود در آن ها صدمه ای وارد نمی آید.
گاهی ممکن است در زمان طراحی و تولید این میان نرم افزارها (که در مرحله طراحی و تولید گهگاه به اندازه یک برنامه سنگین محاسباتی زمان بر هستند) مشکلاتی به وجود آید که تنها در زمان عملکرد مشخص شوند.
از این رو تولیدکنندگان سخت افزار مرتبا به بررسی میان افزارهای نصب شده اقدام می کنند و در صورت وجود خطا یا ایراد نرم افزاری، اقدام به برطرف نمودن آن ایراد می کنند و نسخه بروز شده آن میان افزار را منتشر می سازند.
از این رو بروز رسانی میان افزار سخت افزار های نصب شده در کامپیوترمان، گوشی موبایلمان، پخش کننده MP3 و دستگاه های سخت افزاری که کنترل شبه نرم افزاری دارند، کاری عاقلانه و سنجیده است.
رایتر شما چه CD Writer باشد، چه DVD Writer، فارغ از نوع، مدل و نشان تجاری دستگاه، دارای یک Firmware است. مانند تمام نرم افزارها، Firmware نیز مرتبا از سوی سازنده ارتقا پیدا می کند. دلیل این کار نیز کاملا مشخص است؛ برطرف کردن مشکلات و نواقصی که در زمان طراحی یا تولید و اجرای آن به وجود می آیند.
این مشکلات ممکن است در مراحل اولیه طراحی و تولید خود را نشان ندهند. معمولا پس از اجرای نرم افزار، نمایش انواع باگ ها و مشکلات منطقی و غیر منطقی شروع می شود و شب های به یاد ماندنی ای را برای تیم طراحی به یادگار خواهد گذاشت.
از این رو هر تولید کننده ای برای این که ضمن حفظ اعتبار خود مشکلاتی را که ممکن است در زمان استفاده توسط کاربر تشخیص داده شوند، برطرف سازد، اقدام به تهیه نسخه های بهبود یافته Firmware دستگاه های تولیدی خود می نماید.
توجه داشته باشید که ممکن است در زمان استفاده از درایو نوری خود، هرگز متوجه مشکلات موجود نشوید، اما مطمئن باشید اگر با روشی که در ادامه معرفی خواهد شد، آگاهی یافتید که Firmware بروز شده ای از سوی تولید کننده ارائه شده است، به طور حتم مشکل یا مشکلاتی در Firmware دستگاه وجود دارد.
بنابراین می توانید اقدام به بروز کردن دستگاهتان کنید.
انواع مختلف میان افزارها را بهتر بشناسید
به عنوان یک دسته بندی گسترده، میان افزارها می توانند از وب سرورها گرفته تا سیستم های احراز هویت و یا حتی ابزار پیام رسانی را شامل شوند.
دولوپ برنامه های جدید (New application development)
همانگونه که گفته شد میان افزار می تواند از توسعه برنامه های مختلف پشتیبانی کند و در این بخش برای تکمیل کردن جمله باید گفت که میان افزار از برنامه های modern و popular در تنوع های مختلف پشتیبانی می کند.
از این رو توسعه دهندگان می توانند با ظرافت بیشتری در زمان اجرای برنامه های مختلف، زبان های برنامه نویسی و… روبرو شوند که طبیعتا با افزایش سرعت روبرو خواهند شد. همچنین میان افزار می تواند به عنوان دریافت کننده وب سرورها عمل کند.
بهینه سازی برنامه های موجود (Optimization of existing applications)
میان افزار می تواند به توسعه دهندگان کمک کند تا برنامه های قدیمی را به برنامه cloud-native تبدیل کنند و ابزارهای ارزشمندی را با عملکرد بهتر و قابلیت های بهینه سازی و افزوده شده منتشر سازند.
ادغام وسیع (Comprehensive integration)
ابزارهای ادغام میان افزار، سیستم های داخلی و خارجی حیاتی را به یکدیگر متصل می کنند و لازم به ذکر است که قابلیت های ادغام و یک پارچه سازی می توانند کمک بسزایی به توسعه دهندگان نمایند.
رابط برنامه نویسی کاربردی (API)
بسیاری از سرویس های میان افزار از طریق APIها دسترسی یافته اند که این سرویس ها مجموعه از تعاریف، ابزارهای کاربردی و پروتکل ها هستند که به برنامه ها اجازه ارتباط با یکدیگر را می دهند.
بدون دیدگاه