نرمافزارهای آزاد یا متنباز
رشد و توسعه فناوری اطلاعات در جوامع بشری مستلزم بهرهگیری همگان از ابزارهای مربوط و دسترسی به آنهاست. امروزه در بسیاری از کشورهای جهان و از جمله در اتحادیه اروپا، چین، ژاپن و برزیل بکارگیری و توسعه نرمافزارهای آزاد مورد ملاحظه جدی قرار گرفته است. در این نرمافزارها، کدهای منبع در اختیار عموم قرار میگیرد و کاربران به هنگام استفاده از آن ملزم به پرداخت حقوق ویژهای نیستند. این نرمافزارها امن، قابل اطمینان و باثبات هستند و قیمت مناسبی دارند. تولید این نرمافزارها محدود به شرکتی ویژه نیست و دریافت آنها از طریق اینترنت برای همه رایگان است.
امروزه، بسیاری از شرکتها و سازمانهای بزرگ دنیا نیز به توسعه و استفاده از نرمافزارهای آزاد روی آوردهاند و تولیدکنندگان آن نیز، ارائه این قبیل نرمافزارها را فرصتی برای تبادل تجربیات و آموختهها با دیگران قلمداد میکنند. این موضوع، بسیاری از فواید همچون: آموزش، شکوفایی خلاقیت، کاهش شکاف دیجیتال، انتقال فناوری، خوداتکایی و رشد صنعت نرمافزار و رفع وابستگی صنعت فناوری اطلاعات و ارتباطات کشورها را داراست.
در نرمافزارهای ویژه کد منبع نرمافزار معمولا در اختیار افراد دیگر قرار نمیگیرد و از آن به عنوان اسرار صنعتی- تجاری محافظت میشود و فقط شخص یا شرکت، توانایی و حق اعمال تغییر را دارند. از ویژگیهای نرمافزارهای آزاد میتوان به موارد زیر اشاره کرد:
*اجرای برنامه با مقاصد مختلف.
*دسترسی به کد منبع برای مطالعه و تغییر.
*توزیع اصل یا تغییر یافته برنامه بدون پرداخت هزینه.
*تغییر برنامه متناسب با نیاز خود و انتشار تغییرات برای استفاده توسط دیگران.
جنبش نرمافزارهای باز در دهههای 60 و 70 میلادی با رشد برنامهنویسان در اولین آزمایشگاههای علوم رایانه مانند استانفورد، برکلی، کارنگی ملون و ام.آی.تی آغاز شد. با وجود کوچکی جامعه مزبور، تعامل آنها با یکدیگر زیاد بود. کد برنامهها میان اعضا رد و بدل میشد. چنانچه کدی بهبود داده میشد، در اختیارهمه اعضا قرار میگرفت و مخفی کردن آن کاری ناپسند بود. اما این رویه در دهه 80 توسط شرکت سیمبولیک نقض شد. اقدام این شرکت در نهایت باعث ایجاد جنبش نرمافزارهای آزاد یا باز امروزی شد.
در سال 1984 ریچارد استالمن از موسسه فناوری ماساچوست به دلیل نارضایتی از وضع موجود، یک برنامه متنباز بهنام گنو را طراحی کرد که امکان ایجاد یک سامانهعامل کامل را فراهم میکرد. هدف وی, همکاری مجدد و آزادانه طراحان نرمافزاری با یکدیگر همانند سابق بود و افراد قادر به افزایش، تغییر یا انتقال کدهای منبع بودند. در سال 1991، هسته سامانه عامل نیز طراحی شد و در سطح گستردهای توزیع شد، سپس متناسب با نیازهای تعامل توسعه و بهبود یافت و تا اینکه تبدیل به هسته سامانه عامل گنو/ لینوکس شد. این سامانه پس از ترکیب با یافتهها و نتایج حاصل از پروژههای دیگر و تامل با آنان، پیوسته رشد کرد و تواناییهای آن بهبود یافت. هسته بهعنوان مرکز و قلب سامانه عامل وظایف پردازنده مرکزی را بر عهده دارد و مدیریت حافظه و وسایل سختافزاری را کنترل میکند. در سال 1998، برای تمایز مفهوم باز بودن نرمافزار از رایگان بودن آن، پیشنهادی توسط اریک ریموند با این عنوان مطرح شد که نرمافزارهای با کد منبع باز در آینده نرمافزار "متنباز" نامیده شوند. از ویژگیهای مهم نرمافزار متنباز، کیفیت بالای آن است که دلیل آن نیز, بررسیهای متعدد نرمافزار توسط کاربران و آزمایشکنندگان و پیشنهادهای آنان برای اصلاح هر چه بهتر آن است. این پیشنهادها باعث دستیابی سریعتر به محصول نهایی مطلوبتر میشود.
با توجه به هزینه بالای تبادل نظر و انتقال دادههای مختلف برای توسعه نرمافزارهای متن باز، برخی سازمانها که از چنین نرمافزارهای استفاده میکنند، پشتیبانی لازم را انجام میدهند. معمولا اعمال تغییرات و ارائه آن زمانی انجام میشود که بیشترین اقدامات لازم توسط پیشنهاددهنده صورت گرفته باشد. بر این اساس، اصلاحات کمتری در ادامه کار صورت میگیرد. بهدلیل دسترسی کاربران به تغییرات قبلی، دوبارهکاری کمتری صورت میگیرد و مدت توسعه نرمافزار با در دسترس بودن کد منبع کاهش مییابد. از طرف دیگر، بهدلیل دسترسی برنامهنویسان حرفهای به برنامهها، امکان شناسایی اشکالات کیفی و رفع آنها زیاد است. همچنین، هزینه نگهداری نرمافزارها بهدلیل نبود نیاز به محافظت و سرمایهگذاری برای ارتقا به حداقل ممکن میرسد.
امروزه از لینوکس به عنوان یک بسته نرمافزاری کامل یاد میشود ولی درحقیقت تنها هسته سامانه عامل است که کار مدیریت و ذخیره دادهها و نیز برخی از کارکردهای سطح پایین ارتباط با سختافزار را بر عهده دارد. دیگر اجزای مهم سامانه عامل عبارتند از: کتابخانهها، واسط کاربری گرافیکی، بانکهای اطلاعاتی متنوع، ارائهکنندگان خدمات وب و ابزارهای پست الکترونیک. بسیاری از نرمافزارهای شبکه و ابزارهای توسعه نرمافزار در پروژههای گنو توسعه یافتهاند. لینوکس سامانه عامل اصلی خود را به حداقل خدمات محدود کرده است. خدمات دیگر با وجودی که تحت کنترل لینوکس هستند، برنامههای مستقلی به حساب میآیند. مزیت این کار این است که در صورت بروز اشکال یا خرابی، تنها کارکرد مربوط مختل و هسته از کار نمیافتد و رایانه به کار خود ادامه میدهد.
منبع : تدبیر
- ۸۶/۰۳/۰۷