Free Software

"फ्री सॉफ्टवेयर" एक ऐसा सॉफ्टवेयर है जो उपयोगकर्ताओं और उनके समुदाय की स्वतंत्रता का सम्मान करता है। मोटे तौर पर, इसका मतलब है कि उपयोगकर्ताओं को सॉफ़्टवेयर को चलाने, कॉपी करने, वितरित करने, अध्ययन करने, संशोधित करने और सुधारने की स्वतंत्रता है। दूसरे शब्दों में, "मुफ्त सॉफ्टवेयर" स्वतंत्रता का प्रश्न है, कीमत का नहीं। अवधारणा को समझने के लिए, "फ्री" को "फ्री स्पीच" के रूप में सोचें, न कि "फ्री बियर"। अंग्रेजी में, कभी-कभी "फ्री सॉफ्टवेयर" के स्थान पर हम "लिब्रे सॉफ्टवेयर" कहते हैं, "फ्रीडम" से व्युत्पन्न उस स्पेनिश विशेषण का उपयोग करते हुए, यह दिखाने के लिए कि हमारा मतलब यह नहीं है कि सॉफ्टवेयर फ्री है।

चार स्वतंत्रताएं हैं जो "फ्री सॉफ्टवेयर" को परिभाषित करती हैं:

  • Freedom 0 : किसी भी उद्देश्य के लिए कार्यक्रम को इच्छानुसार चलाने की स्वतंत्रता।

  • Freedom 1: यह अध्ययन करने की स्वतंत्रता कि कार्यक्रम कैसे काम करता है, और आप जो चाहते हैं उसे करने के लिए इसे बदल सकते हैं। इसके लिए सोर्स कोड तक पहुंच एक आवश्यक शर्त है।

  • Freedom 2: प्रतियों के पुनर्वितरण की स्वतंत्रता।

  • Freedom 3: इसके संशोधित संस्करणों की प्रतियां तीसरे पक्ष को वितरित करने की स्वतंत्रता। यह आपको पूरे समुदाय को संशोधनों से लाभ उठाने का अवसर प्रदान करने की अनुमति देता है। इसके लिए सोर्स कोड तक पहुंच एक आवश्यक शर्त है।


एक प्रोग्राम "मुफ्त सॉफ्टवेयर" है यदि यह उपयोगकर्ताओं को इन सभी स्वतंत्रताओं को उचित रूप से प्रदान करता है। अन्यथा यह मुफ़्त नहीं है। इसे "प्रोप्रिएटरी सॉफ़्टवेयर" कहा जाता है।

संक्षेप में हम कह सकते हैं कि:

  • "फ्री सॉफ्टवेयर" या "लिब्रे सॉफ्टवेयर" का मतलब यह नहीं है कि यह मुफ्त है, हालांकि कई मामलों में यह है।
  • "फ्री सॉफ्टवेयर" चार बुनियादी स्वतंत्रता प्रदान करता है: सॉफ्टवेयर चलाने की स्वतंत्रता, अपने कोड को संशोधित करने और अध्ययन करने की स्वतंत्रता, ऐसे सॉफ्टवेयर की प्रतियों को पुनर्वितरित करने की स्वतंत्रता, और संशोधित सॉफ्टवेयर की प्रतियां वितरित करने की स्वतंत्रता।

आप इस जानकारी को निम्न लिंक पर पढ़ सकते हैं: https://www.gnu.org/philosophy/free-sw.en.html

GNU Project

आइए कुछ इतिहास से शुरू करते हैं... यह 20वीं सदी का 70 का दशक है, जब रिचर्ड स्टॉलमैन नाम के एक व्यक्ति ने एमआईटी (मैसाचुसेट्स इंस्टीट्यूट ऑफ टेक्नोलॉजी) में काम करना शुरू किया। उस समय फ्री सॉफ्टवेयर के साथ काम करना बहुत आम था। प्रोग्रामर एक दूसरे के साथ सहयोग करने के लिए स्वतंत्र थे और ऐसा अक्सर करते थे। क्या अधिक है, यहां तक ​​कि कंप्यूटर कंपनियों ने भी अपने सॉफ़्टवेयर को स्वतंत्र रूप से वितरित किया है। यह सब 1980 के दशक में बदल गया, और व्यावहारिक रूप से सभी सॉफ़्टवेयर निजी तौर पर वितरित किए जाने लगे, जिसका अर्थ है कि ऐसे सॉफ़्टवेयर के मालिक थे जिन्होंने उपयोगकर्ताओं के बीच सहयोग को प्रतिबंधित किया था। इस कारण से, और जो एक अन्याय प्रतीत होता है, उसके सामने, रिचर्ड स्टॉलमैन ने 1983 में GNU प्रोजेक्ट बनाने का फैसला किया। 1985 में होने के नाते जब फ्री सॉफ्टवेयर फाउंडेशन की स्थापना GNU प्रोग्राम की मदद के लिए धन जुटाने के उद्देश्य से की गई थी।

जीएनयू ऑपरेटिंग सिस्टम एक पूर्ण यूनिक्स-संगत मुफ्त सॉफ्टवेयर सिस्टम है। GNU शब्द "GNU is not Unix" से आया है। यह एक ही शब्दांश में उच्चारित किया जाता है: u। रिचर्ड स्टॉलमैन ने सितंबर 1983 में जीएनयू परियोजना की प्रारंभिक घोषणा लिखी थी। एक विस्तारित संस्करण, जिसे जीएनयू घोषणापत्र [1] कहा जाता है, सितंबर 1985 में प्रकाशित हुआ था।

नाम "जीएनयू" चुना गया था क्योंकि यह कुछ आवश्यकताओं को पूरा करता था। सबसे पहले, यह "GNU Is Not Unix" के लिए एक पुनरावर्ती परिवर्णी शब्द था। दूसरा, यह एक वास्तविक शब्द था। अंत में, यह कहना (या गाना) मजेदार था [2]।

उन्होंने ऑपरेटिंग सिस्टम को UNIX-संगत बनाने का फैसला किया क्योंकि समग्र डिजाइन पहले से ही परीक्षण और पोर्टेबल था, और क्योंकि संगतता ने यूनिक्स उपयोगकर्ताओं के लिए UNIX से GNU में स्विच करना आसान बना दिया था।

UNIX जैसे ऑपरेटिंग सिस्टम में कर्नेल, कंपाइलर, एडिटर, वर्ड प्रोसेसर, मेल सॉफ्टवेयर, ग्राफिकल इंटरफेस, लाइब्रेरी, गेम्स और कई अन्य चीजें शामिल हैं। इन सबके लिए पूरा ऑपरेटिंग सिस्टम लिखने में काफी मेहनत लगती है।

1990 की शुरुआत में मुख्य घटकों को पहले ही ढूंढ लिया गया था या एक, कर्नेल को छोड़कर प्रोग्राम किया जा चुका था।

GNU Project

[1]. https://www.gnu.org/gnu/manifesto.html

[2]. http://www.poppyfields.net/poppy/songs/gnu.html

Linux project

आइए इतिहास में वापस जाएं, इस बार 1991 तक।

उस समय के आसपास, लिनुस टॉर्वाल्ड्स नाम का एक फिनिश कंप्यूटर विज्ञान का छात्र मिनिक्स के समान एक ऑपरेटिंग सिस्टम बनाना चाहता था (जिसका उपयोग उसने विश्वविद्यालय में किया था), लेकिन यह उसके नए कंप्यूटर पर काम करेगा। 80386 प्रोसेसर के साथ।

जीएनयू सी कंपाइलर का उपयोग करते हुए, लिनुस टॉर्वाल्ड्स के पास जल्द ही कर्नेल (कर्नेल) का पहला संस्करण था जो उनके कंप्यूटर पर चलने में सक्षम था। 25 अगस्त 1991 को, उन्होंने यूज़नेट पर इस प्रणाली की घोषणा की, comp.os.minix सूची में। उनकी परियोजना ने शीघ्र ही अनुयायियों को प्राप्त कर लिया और कई ऐसे भी थे जो उनके साथ जुड़ गए, और उक्त कर्नेल के लिए विकास करना शुरू कर दिया।

लिनुस ने शुरू में अपने सॉफ्टवेयर को अपने लाइसेंस के तहत जारी किया था, हालांकि उन्होंने अंततः 1992 में जीएनयू जीपीएल लाइसेंस चुना था, कुछ हद तक क्योंकि सी उपकरण जिसे उन्होंने संकलित करने के लिए इस्तेमाल किया था वह जीपीएल भी था।

इस कर्नेल के लिए लिनक्स का नाम इसके प्रकाशन के महीनों बाद लिया गया था, क्योंकि लिनुस खुद मूल रूप से इसे "Freax" कहना चाहता था। वास्तव में, कर्नेल के पहले संस्करण में, आप मेकफ़ाइल के अंदर देख सकते हैं कि आपने इसे इस तरह कैसे कहा। अंत में एरी लेमके, जो हेलसिंकी प्रौद्योगिकी विश्वविद्यालय में FTP सर्वर के प्रभारी लोगों में से एक थे, ने लिनुस से परामर्श किए बिना फाइलों को "लिनक्स" परियोजना के तहत सर्वर पर रखा। लिनुस को यह नाम पसंद नहीं आया क्योंकि उसे यह नाम बहुत अधिक स्वार्थी या स्वार्थी लगा।

वह अंततः नाम परिवर्तन के लिए सहमत हो गया और लंबे समय बाद एक साक्षात्कार में, लिनुस ने स्वयं टिप्पणी की कि "यह केवल सबसे अच्छा नाम था जिसे चुना जा सकता था।"

tux

GNU/Linux

FSF (GNU) हर्ड (अभी भी विकास के अधीन) नामक कर्नेल विकसित कर रहा था। यह कर्नेल जितना उन्होंने सोचा था उससे कहीं अधिक धीरे-धीरे विकसित हो रहा था। इसलिए Linux कर्नेल के जारी होने से पहले, इसे प्रोजेक्ट के भीतर अपनाया गया था।

तो, ऑपरेटिंग सिस्टम का सही नाम Linux नहीं है, बल्कि GNU/Linux है। वर्तमान में जब लोग Linux के बारे में बात करते हैं, तो वे वास्तव में GNU / Linux के बारे में बात कर रहे हैं [1]।

कर्नेल ही बेकार है। कर्नेल वह घटक है जो सॉफ़्टवेयर बनाता है, और इसलिए उपयोगकर्ता, हार्डवेयर के साथ संचार करने में सक्षम होता है। लेकिन एक कंप्यूटर को चलाने में एक कर्नेल से ज्यादा समय लगता है। यह आवश्यक है कि उपयोगकर्ता भाग में कुछ कार्यक्रम हों। इन कार्यक्रमों को GPL (GNU) के तहत लाइसेंस प्राप्त हो भी सकता है और नहीं भी।

[1]. https://www.gnu.org/gnu/linux-and-gnu.en.html