آبجی
12th October 2009, 01:04 PM
واژه آزادی در نرمافزارهای آزاد به معنای آزادی در استفاده (به هر منظور)، تغییر و/یا توزیع مجدد نرمافزار است. از آنجایی که در فارسی آزادی معنایی دوگانه نمیدهد نیازی به تفسیر انواع آزادی نیست، ولی به دلیل آن که «نرمافزار آزاد» ترجمه تحت الفظی اصطلاح "Free Software" است، بهتر است اصطلاح "Free Software" در انگلیسی را نیز اینجا بررسی کنیم، در انگلیسی این واژه دو معنا میدهد:
1. به همان معنایی که ما در بالا اشاره کردیم، یعنی Free به معنای آزادی، که این گونه نرم افزارها قابل استفاده، نسخهبرداری، تغییر و/یا توزیع مجدداند، بدون محدودیت و یا با محدودیتهایی برای حفظ آزادی.
2. و معنایی دیگر و در واقع هر تفسیری به جز تفسیر نوع اول که تنها معنای رایگان بدهد، مانند «آبجو مجانی» (یا در فرهنگ ایرانی، شربت صلواتی و یا هر چیز دیگری که اسمش را بگذارید).
در فارسی منظور ما از نرمافزارهای آزاد معنای اول است.
* ۱ تعریف
* ۲ انگیزه
* ۳ حقوق پدیدآورنده
* ۴ کپیلفت
* ۵ امنیت
* ۶ مثالهایی از نرمافزارهای آزاد کاربردی
تعریف
نرم افزاری که آزادیهای زیر را برای کاربر قائل شود، نرم افزار آزاد خوانده میشود (توجه کنید که کلمه Free به معنای آزاد استفاده میشود و نه رایگان!):
* آزادی اجرای برنامه برای هر کاری (آزادی صفرم)
* آزادی مطالعه چگونگی کار برنامه و تغییر آن (پیش نیاز: متن برنامه) (آزادی یکم)
* آزادی تکثیر و کپی برنامه (آزادی دوم)
* آزادی تقویت و بهتر کردن برنامه و توزیع آن برای همگان (پیش نیاز: متن برنامه) (آزادی سوم)
هر نرم افزار آزاد، چنین آزادیهایی را برای کاربر دارد. علاوه بر اینها، یک شرط هم هست و آن هم اینست که اگر شما از این آزادیها استفاده کردید و نرم افزاری را تولید کردید و آن را به دیگران دادید، باید این آزادیها را به کاربرانتان هم بدهید. اگر شما این آزادیها را داشتید پس دیگران هم باید داشته باشند، یعنی نرم افزار آزاد تا آخرین توزیعش باید آزاد بماند.
آزادی نرمافزارهای آزاد تا جایی هست که حتی میتوان بدون پرداخت هزینهای برای مجوز، کپیهایی از یک نرمافزار آزاد را، با یا بدون تغییرات، رایگان یا در ازای دریافت وجه، برای هرکس و هرجایی آن را توزیع کرد.
نرمافزارهای آزاد (به دلیل ابهام در لفظ free) به اشتباه بهعنوان نرمافزارهای رایگان و احتمالاً بیارزش تلقی میشدند، به همین دلیل این نرمافزارها به متن باز یا متن آزاد (Open Source) معروف شدند. در واقع در نرم افزاهای آزاد قیمت مورد نظر نیست بلکه آزادی مطرح است.
از دیگر ضمانتهای که نرمافزار آزاد تأمین میکند، اجازهنامه عمومی همگانی (GPL) است. GPL برای هر کس امکان دوباره توزیعکردن یا همگردانی (کامپایل) مجدد متن برنامه را فراهم میکند. طبق این اجازهنامه همچنین باید متن برنامه در دسترس قرار داده شود تا امکان استفاده و یا تغییر آن باشد. برنامههای رایانهای اینگونه را معمولاً بازمتن گویند. متن چنین برنامههایی نمیتواند به حالت «محدودشده» درآید مگر با نظر تک تک نویسندگان آن متن. بیشتر نویسندگان متن سیستمعامل لینوکس تحت این مجوز برنامهنویسی میکنند.
انگیزه
از انگیزههایی که باعث ایجاد نرمافزارهای آزاد شد میتوان رقابت نرمافزارهای آزاد و سرمایهگرایی را ذکر کرد. فعالان این جنبش معتقدند که محدودیتهایی که سرمایهگرایی به نرمافزارها اعمال میکند، مانع از اصلاح و پیشرفت فنی آنها میشود و با این نوع محدودیتها مخالفند.
حقوق پدیدآورنده
مسلماً اختراع یک نرمافزار حقوق مادی و معنوی برای مخترع نرمافزار ایجاد میکند که در ایران تحت عنوان قانون حمایت از حقوق پدیدآورندگان نرمافزارهای رایانهای به تصویب رسیده است.
از جمله حقوق معنوی میتوان به موارد زیر اشاره کرد:
* حق انتساب (نام پدید آورنده ذکر شود)
* حق یکپارچگی اثر
* حق انتشار گمنام یا نام مستعار
و از جمله حقوق مادی میتوان به حق تغییر یا نشر با اجازهٔ پدیدآورنده اشاره کرد.
کپیلفت
شما اجازه ندارید با افزودن محدودیتهایی به یک نرمافزار تحت حمایت قانون کپیلفت، آزادیهای مرکزی آن را برای دیگران از بین ببرید. این قانون نه تنها با آزادیهای مرکزی در تضاد نیست بلکه از آنها محافظت نیز میکند.
برای این نرم افزارها اجازهنامه قابل قبول است که اگر یک نسخهٔ تغییر یافته از برنامه را توزیع کردید و توسعهدهندهٔ قبلی یک کپی از آن را درخواست نمود٬ شما باید یک کپی برای او بفرستید.
امنیت
نرمافزارهای آزاد معمولاً با سرعت بیشتری نسبت به نرمافزارهای انحصار گرایانه بهروز میشوند و حفرههای امنیتی که در نسخههای پیشین وجود داشته، در نسخههای جدید اصلاح میشود.
مثالهایی از نرمافزارهای آزاد کاربردی
* پروژههای سیستم عامل گنو مانند gnome desktop.
* هستهٔ سیستمعامل گنو/لینوکس، داروین (سیستمعامل) و بیاسدی.
* کامپایلر جیسیسی، کتابخانهٔ زبان برنامهنویسی سی.
* پایگاهدادههای رابطهای مانند: mysql،PostgreSQL.
* زبانهای برنامهنویسی مانند تیسیال، روبی، پایتون، پرل و پیاچپی.
* مرورگر وب فایرفاکس.
* اُپن آفیس.
* برنامههای حروف چینی مانند تک، لاتک و فارسی تک.
* نرمافزارهای مدیریت محتوا مانند جوملا (!Joomla)، پیاچپی نیوک (phpnuke)، پست نیوک (postnuke) و مامبو (mambo).
* نرمافزارهای ساخت انجمن (Forum) مانند پیاچپیبیبی (phpbb)، اساماف (smf)، یاب (YaBB) و فروم (phorum).
1. به همان معنایی که ما در بالا اشاره کردیم، یعنی Free به معنای آزادی، که این گونه نرم افزارها قابل استفاده، نسخهبرداری، تغییر و/یا توزیع مجدداند، بدون محدودیت و یا با محدودیتهایی برای حفظ آزادی.
2. و معنایی دیگر و در واقع هر تفسیری به جز تفسیر نوع اول که تنها معنای رایگان بدهد، مانند «آبجو مجانی» (یا در فرهنگ ایرانی، شربت صلواتی و یا هر چیز دیگری که اسمش را بگذارید).
در فارسی منظور ما از نرمافزارهای آزاد معنای اول است.
* ۱ تعریف
* ۲ انگیزه
* ۳ حقوق پدیدآورنده
* ۴ کپیلفت
* ۵ امنیت
* ۶ مثالهایی از نرمافزارهای آزاد کاربردی
تعریف
نرم افزاری که آزادیهای زیر را برای کاربر قائل شود، نرم افزار آزاد خوانده میشود (توجه کنید که کلمه Free به معنای آزاد استفاده میشود و نه رایگان!):
* آزادی اجرای برنامه برای هر کاری (آزادی صفرم)
* آزادی مطالعه چگونگی کار برنامه و تغییر آن (پیش نیاز: متن برنامه) (آزادی یکم)
* آزادی تکثیر و کپی برنامه (آزادی دوم)
* آزادی تقویت و بهتر کردن برنامه و توزیع آن برای همگان (پیش نیاز: متن برنامه) (آزادی سوم)
هر نرم افزار آزاد، چنین آزادیهایی را برای کاربر دارد. علاوه بر اینها، یک شرط هم هست و آن هم اینست که اگر شما از این آزادیها استفاده کردید و نرم افزاری را تولید کردید و آن را به دیگران دادید، باید این آزادیها را به کاربرانتان هم بدهید. اگر شما این آزادیها را داشتید پس دیگران هم باید داشته باشند، یعنی نرم افزار آزاد تا آخرین توزیعش باید آزاد بماند.
آزادی نرمافزارهای آزاد تا جایی هست که حتی میتوان بدون پرداخت هزینهای برای مجوز، کپیهایی از یک نرمافزار آزاد را، با یا بدون تغییرات، رایگان یا در ازای دریافت وجه، برای هرکس و هرجایی آن را توزیع کرد.
نرمافزارهای آزاد (به دلیل ابهام در لفظ free) به اشتباه بهعنوان نرمافزارهای رایگان و احتمالاً بیارزش تلقی میشدند، به همین دلیل این نرمافزارها به متن باز یا متن آزاد (Open Source) معروف شدند. در واقع در نرم افزاهای آزاد قیمت مورد نظر نیست بلکه آزادی مطرح است.
از دیگر ضمانتهای که نرمافزار آزاد تأمین میکند، اجازهنامه عمومی همگانی (GPL) است. GPL برای هر کس امکان دوباره توزیعکردن یا همگردانی (کامپایل) مجدد متن برنامه را فراهم میکند. طبق این اجازهنامه همچنین باید متن برنامه در دسترس قرار داده شود تا امکان استفاده و یا تغییر آن باشد. برنامههای رایانهای اینگونه را معمولاً بازمتن گویند. متن چنین برنامههایی نمیتواند به حالت «محدودشده» درآید مگر با نظر تک تک نویسندگان آن متن. بیشتر نویسندگان متن سیستمعامل لینوکس تحت این مجوز برنامهنویسی میکنند.
انگیزه
از انگیزههایی که باعث ایجاد نرمافزارهای آزاد شد میتوان رقابت نرمافزارهای آزاد و سرمایهگرایی را ذکر کرد. فعالان این جنبش معتقدند که محدودیتهایی که سرمایهگرایی به نرمافزارها اعمال میکند، مانع از اصلاح و پیشرفت فنی آنها میشود و با این نوع محدودیتها مخالفند.
حقوق پدیدآورنده
مسلماً اختراع یک نرمافزار حقوق مادی و معنوی برای مخترع نرمافزار ایجاد میکند که در ایران تحت عنوان قانون حمایت از حقوق پدیدآورندگان نرمافزارهای رایانهای به تصویب رسیده است.
از جمله حقوق معنوی میتوان به موارد زیر اشاره کرد:
* حق انتساب (نام پدید آورنده ذکر شود)
* حق یکپارچگی اثر
* حق انتشار گمنام یا نام مستعار
و از جمله حقوق مادی میتوان به حق تغییر یا نشر با اجازهٔ پدیدآورنده اشاره کرد.
کپیلفت
شما اجازه ندارید با افزودن محدودیتهایی به یک نرمافزار تحت حمایت قانون کپیلفت، آزادیهای مرکزی آن را برای دیگران از بین ببرید. این قانون نه تنها با آزادیهای مرکزی در تضاد نیست بلکه از آنها محافظت نیز میکند.
برای این نرم افزارها اجازهنامه قابل قبول است که اگر یک نسخهٔ تغییر یافته از برنامه را توزیع کردید و توسعهدهندهٔ قبلی یک کپی از آن را درخواست نمود٬ شما باید یک کپی برای او بفرستید.
امنیت
نرمافزارهای آزاد معمولاً با سرعت بیشتری نسبت به نرمافزارهای انحصار گرایانه بهروز میشوند و حفرههای امنیتی که در نسخههای پیشین وجود داشته، در نسخههای جدید اصلاح میشود.
مثالهایی از نرمافزارهای آزاد کاربردی
* پروژههای سیستم عامل گنو مانند gnome desktop.
* هستهٔ سیستمعامل گنو/لینوکس، داروین (سیستمعامل) و بیاسدی.
* کامپایلر جیسیسی، کتابخانهٔ زبان برنامهنویسی سی.
* پایگاهدادههای رابطهای مانند: mysql،PostgreSQL.
* زبانهای برنامهنویسی مانند تیسیال، روبی، پایتون، پرل و پیاچپی.
* مرورگر وب فایرفاکس.
* اُپن آفیس.
* برنامههای حروف چینی مانند تک، لاتک و فارسی تک.
* نرمافزارهای مدیریت محتوا مانند جوملا (!Joomla)، پیاچپی نیوک (phpnuke)، پست نیوک (postnuke) و مامبو (mambo).
* نرمافزارهای ساخت انجمن (Forum) مانند پیاچپیبیبی (phpbb)، اساماف (smf)، یاب (YaBB) و فروم (phorum).