Нээлттэй эх
Нээлттэй эх(Open Source) нэртэй номын эх сурвалж Англи хэл дээр http://en.wikibooks.org/wiki/Open_Source холбоос дээр байгаа бөгөөд нээлттэй эхийн тухай мэдэхийг хүсэх хүн бүрт зориулж GNU лицензийг баримтлан орчуулж бэлтгэлээ. Номын хэсгүүдэд эндүү ташуу орчуулга, үг үсгийн алдаа байвал ... бичиж тусалбал их баярлаж номыг сайжруулж засахаар хичээх болно. --Erdee 18:55, 17 March 2009 (UTC)
This book is intended to be an introduction to the Open source software movement. It is still getting organized. At the moment a basic outline is available below, once there is some content for each section, and it looks like the outline is more or less stable, the various chapters will be moved into proper sections to conform to wikibook standards. Please take a moment to read the introduction to understand the direction this book is intended to take (at least as of this writing). --Ahc 16:03, 4 Jan 2005 (UTC)
Нээлттэй эх буюу ОпенСорс(Open Source)
Сүүлийн хэдэн жилд Нээлттэй эх нь хэн хүний санаанд оромгүйгээр компьютержуулалтын нүүр царайг танигдахын аргагүй өөрчилж байна. Энэ өөрчлөлтийг IMB өөрсдийн персонал компьютерын үйлдлийн системийг Майкрософтоор бичүүлэхээр гэрээ хийж компьютержуулалтын хөгжлийг орвонгоор нь өөрчилж байсан үеэс хойших том өөрчлөлт болно гэдэгт компьютерын үйлдвэрлэл эрхлэгч олон хүн итгэж байна.
Энэ өгүүллийн цувралууд Нээлттэй эхийн хөгжлийн түүх, философи болон хууль зүйн үндэслэлийг ойлгуулахыг зорихын зэрэгцээ програм хангамжийг хөгжүүлэгчид юуг авч хэрэглэж болох мөн өөрсдийн хөдөлмөрөө хандивлах төслүүдийг сонгох болон түүнд нэгдэж оролцоход тусална. Олон дэлгэрэнгүй мэдээллийг интернет дэх вэб хуудаснуудаас мөн Википедиа дахь “Нээлттэй эх болон Чөлөөт програм хангамж (Free Software)”-ийн янз бүрийн өгүүллүүдээс олж унших боломжтой болжээ. Өгүүллэгт цааш дэлгэрүүлэн уншиж болох мэдээллийн вэб хаягуудын дор бүр нь хавсаргаж өглөө. Нээлттэй эхийн олон төсөлд манай залуучууд маань оролцон ажиллаж байгааг хэдхэн Вэб сайтын жишээг иш татаж доор орууллаа.
Нээлттэй эх гэж юу вэ?
Нээлттэй эх эсвэл “эх код нь нээлттэй програм хангамж” нь патенттай өмчлөгдсөн програм хангамжаас эрс ялгаатай. Нээлттэй эхэд хамрагдах програм хангамжуудын эх кодыг хэн гуай ч үзэх, судлах, үнэлэх дүгнэх болон шинэчлэн өөрчлөх боломжоор хангадаг. Иймээс нээлттэй эхийн програм хангамж нь олон програм зохиогч, хөгжүүлэгчийн үзэл бодол шингэж бүтээгдсэн байдаг. Эцсийн хэрэглэгчид ихэвчлэн “чөлөөт болон нээлттэй эхийн програм хангамжийн” хувилбарыг багтаасан нээлттэй эхийн зарчмыг хангаж ажиллана.
Нээлттэй эхийг санаачлагчид “нээлттэй эхийн програм хангамж”ийн тодорхойлолтыг дараах байдлаар тодорхойлжээ. ( http://opensource.org/docs/osd вэб үзнэ үү. )
Нээлттэй эх нь зөвхөн эх кодыг ашиглах гэсэн утга биш. Дараах шаардлагыг зайлшгүй мөрдөх нөхцөлтэйгөөр нээлттэй эхийн програм хангамжийг түгээх боломжтой. Үүнд:
- 1.Чөлөөтэй дахин түгээх
Хэд хэдэн ялгаатай эх кодуудыг агуулсан, цаашид түгээх програм хангамжийн нэг хэсэг болгон хэрэглэх програм хангамжийг чөлөөтэй өгөх эсвэл худалдахдаа ямар ч хэсгийг нь лиценз(license) буюу зөвшөөрлийн баримтаар хязгаарлахыг хориглоно.
- 2.Эх код
Програмд тус програм хангамжийн эх кодыг зайлшгүй хавсаргах бөгөөд програмын эх кодыг хөвүүлсэн хувилбарын адил түгээх боломжоор зайлшгүй хангана. Зарим програм хангамж эх кодын хамт түгээгдээгүй бол түүнийг хаанаас татаж авч болох талаар дэлгэрэнгүй мэдээллийг хавсаргаж, татаж авахаар төлбөргүй байна. Үүний зэрэгцээ эх кодыг програмчлагч хүсвэл өөрчилж хөрвүүлэх боломжоор зайлшгүй хангана. Зориудаар ээдрээтэй болгосон эх кодыг зөвшөөрөхгүй. Завсрын үр дүн буюу эх кодоос машин кодод хөрвүүлэх хөрвүүлэлтийн дунд үеийн үр дүнг эх кодоор зөвшөөрөхгүй.
- 3.Үүсмэл (суурилсан) ажил
Лиценз нь өөрчлөлт хийхийг болон үүсмэл програм хангамжийг зөвшөөрөх ба хэрэглэгч эх програмын лицензийн томьёолол дор үүсмэл програмыг түгээхийг зөвшөөрнө.
- 4.Эх кодын зохиогчийг шударга шулуун байлгах
Хэрэв програмыг зорилгоор өөрчилж хөрвүүлэн бүтээх (build) үед эх кодыг програмын нөхөлт файлуудын (patch files) хамт түгээхийг лицензээр олгон гэдэг нь лиценз зөвхөн эх кодыг өөрчилсөн хувилбараар түгээхийг хязгаарлана гэж ойлгож болно. Өөрчилсөн эх кодоос бүтээсэн програм хангамжийг түгээхийг лицензэд ил тодоор зөвшөөрөх ёстой. Лицензэд үүсмэл ажлууд нь эх кодоосоо өөр нэртэй эсвэл хувилбарын өөр дугаартай байхыг шаардаж магадгүй.
- 5.Хувь хүн болон бүлгийг ялгаварлахгүй байх
Лиценз нь бүлэг хүмүүс эсвэл хувь хүнийг ялгаварлан гадуурхахгүй.
- 6. Ашиглах салбарыг эсэргүүцэж ялгаварлахгүй байх
Оролдож болох өвөрмөц салбарт програмыг хэрэглэж үзэхийг хэн ч лицензээр хориглохгүй. Жишээлбэл: бизнесийн эсвэл генетикийн судалгааны салбарт програм хангамжийг хэрэглэж болохгүй гэсэн хязгаарлалт байхгүй.
- 7.Лицензийг түгээх
Програмд хавсаргасан эрх нь нэмэлт лицензгүй ажиллахаар дахин түгээгдэх програмын хэсэг тус бүрд зайлшгүй үйлчилнэ.
- 8.Лиценз тодорхой нэг бүтээгдэхүүнд зориулагдахгүй
Програмд хавсаргасан эрх нь түгээх тодорхой нэг програмын хэсэг нь болохоор програмд хамааралтай байж болохгүй. Хэрэв програм нь түгээхдээ шахаж бэлдсэн програмаас гаргаж авсан бөгөөд уг програмын лицензийн томьёоллын дор хэрэглэсэн эсвэл түгээсэн байвал бүх хэсгүүд нь дахин түгээгдэхдээ эх програм хангамжтай давхардаж байгаа хэсгүүдээрээ эх програмтайгаа ижил эрхийг эдэлнэ.
- 9.Лиценз бусад програм хангамжийг хязгаарлахгүй
Лиценз нь зэрэгцэн лицензлэгдэж түгээгдэж байгаа өөр бусад програм хангамжид орон зайн хязгаарлалт тогтоохгүй. Жишээлбэл: Лиценз нь энэ “медианд” зориулан түгээх бусад бүх програм хангамж нээлттэй эхийн програм хангамж байх ёстой гэж шаардах ёсгүй.
- 10.Лиценз технологийн харьяаллын бус байх ёстой
Ямар нэг тусгай технологи эсвэл интерфейсийн хэв маягийг лицензээр тогтоож хангахгүй.
Чөлөөт програм хангамж бүхэн нээлттэй эхийн програм хангамж байх боловч харин нээлттэй эхийн програм хангамж бүхэн чөлөөт байх албагүй юм.
Чөлөөт (Free) програм хангамж гэж юу вэ?
GNU төсөлд тод заасанчлан програм хангамжийн дөрвөн эрх чөлөөний ойлголтыг баримтлан эрх чөлөөт програм хангамж гэдгийг ойлгодог. Дараах дөрвөн эрх чөлөө нь:
- Ямар ч зорилгоор програм хангамжийг хэрэглэгч чөлөөтэй хэрэглэнэ.
- Хэрэглэгчид програмын механизмын ажиллах ажиллагааг чөлөөтэй судлах, тодорхой зорилгоор програмын ажиллагааг тохируулан өөрчлөх боломжтой байна.
- Хэрэглэгч өөр хэрэглэгчид програм хангамжийг чөлөөтэй дамжуулж болно.
- Хэрэглэгчид програм хангамжийг шинэчлэн өөрчлөх, сайжруулах нь чөлөөтэй байх ба энэ хувилбараа нийтэд тарааж болно.
Чөлөөт програм хангамж нь нээлттэй эхийн програм хангамжтай маш олон ижил талтай байдаг ч нээлттэй эхийн нийгэмлэгийн олон хүн энэ хоёр нь томьёоллын хувьд гол ялгаатай гэж үздэг. Үүнийг доор дурдан тайлбарлана.
Хөгжүүлэгчид чөлөөт програмыг “үг хэлэх чөлөөтэй ч, төлбөргүй шар айраг байдаггүйн адил” (free as in speech, not as in beer) гэж ихэвчлэн хэлдэг. Чөлөөт програм хангамжийн хөдөлгөөний ялгарах ойлголт нь эрх чөлөөнд хамааралтай болохоос үнэ төлбөрт хамааралгүй.
Чөлөөт програм хангамжийг нээлттэй эхийн програм хангамжтай харьцуулахад
Нээлттэй эхийн програм хангамжийн хамгийн энгийн ялгах ялгаа нь энэ нь эрх чөлөөний тухай ойлголт биш програм хангамж нь юуг илүү сайн хийж чаддаг вэ гэсэн утгат байна. Энэ шаардлага нээлттэй эхийн лицензтэй бүх програмуудад хэрэгжээгүй ч, энэ өгүүллэгээр хангалттай мэдээллийг олгохыг хичээх бөгөөд уншигч та тунгаан бодно уу.
Програм хангамжийн энэ шилжилтийг ихэвчлэн “Чөлөөт ба Нээлттэй эхийн програм хангамж” (Free and Open-Source software) гэж нэрлэдэг. Энэ үгийг FOSS гэж товчлох бөгөөд нээлттэй эхийн төслүүдэд өргөн хэрэглэнэ. Олон хүн энэ хоёрын ялгааны тухай өгүүлдэг бол тус өгүүллэгээр энэ хоёрын нэгдлийн тухай илэрхийлнэ. Харин “Open-Source software” лицензийн тухай ярих тохиолдолд OSS гэж хураангуйг хэрэглэдэг бол “Free software” лицензийн тухай ярих үед FSS гэж хураангуйг хэрэглэдэг байна.
Нийтийн домэйн програм хангамж (Public Domain Software)
“Өөрчлөх, засах, шинэчлэх болон ашиглахыг хүсэж байгаа хэн ч ямар нэгэн нөхцөлгүйгээр хэрэглэхэд зориулан гаргасан програм хангамжийг илэрхийлнэ. Орч.”
Нийтийн домэйнд (хүрээнд) орж ирсэн програм хангамж нь нээлттэй эх програмын элбэг тохиолдлын нэг хэлбэр. Энэ програм хангамжийг зохиогчийн эрхэндээ (copyright) эсвэл лиценздээ ямар нэг байдлаар хязгаарлаагүй байх тул ямар ч зорилгоор чөлөөтэй хэрэглэх боломжтой байдаг. Нээлттэй эхийн програм хангамжийн хөдөлгөөн өрнөж эхлэхээс өмнө эрдэмтэн судлаачдын онолын сэтгэлгээгээр бичсэн програм хангамж нийтийн хэрэгцээгээр шалгагдаж гарч ирдэг байв. Энэ дадал өөрчлөгдөж олон улсын нээлттэй эхийн хөдөлгөөн болж өргөжөөд, үр дүнд нийтийн домэйнд олон програм хангамж нэмэгдэж, одоо FOSS болжээ.
Нээлттэй эхийн төслүүдэд хэрэглэсэн маш их нөөц одоо нийтийн домэйнд байна .
FOSS нь төлбөргүй гэсэн ойлголт биш
Энэ нь FOSS-ийн тухай нийтлэг андуурах ойлголт ба FOSS-ийн цөөнх нь биш харин ихэнх програм хангамж нь төлбөр төлдөггүй хэрэглэдгээс улбаатай. Жишээ нь Ричард Сталлманы боловсруулсан “Emacs” бичвэр боловсруулагч анх гарч ирэхдээ төлбөр төлж аваад хэрэглэдэг байсан бол урт хугацааны явцад хуулаад хэрэглэх боломжтой болжээ. FOSS-ийн ихэнх лицензийн хүрээнд төлбөр авах сонголт хөгжүүлэгчид байгаа ч тэд энэ сонголтыг хийх нь ховор байдаг. FOSS төслүүдийн үнэнч бодит шаардлага бол хөгжүүлэгчид програм хангамжаа эх кодын хамт түгээгээд, ашиглах хүнд эх кодыг засах, өөрчлөх боломжийг олгох явдал юм.
Бүх програм хангамж бүтээгдэхүүн болж гарахдаа анхны өртөг дээр нэмэгдээд түүнд хамрагдах үргэлжлэх өртөг байдаг. Энэ нь хувь хүнийг тухай програм хангамжид болон бусад эх үүсвэрт сургах сургалтын өртөг, тохиргоонууд хийж өгөх өртөг гэх мэтийн дэмжлэг үзүүлэх гэрээ хэлбэрээр хэрэгжиж болно. Дээрх бүх үйл ажиллагаа борлуулалтын зориулалт бүхий уламжлалт програм хангамж ба FOSS-ийн програм хангамжийн хувьд ижил байдаг. Одоогоор том корпорацын урт хугацааны боловсруулан хэрэгжүүлэх програм хангамжууд маш их үнэтэй харин хувь хэрэглэгчдэд ямар ч асуудалгүйгээр FOSS хямд тус ч байгаа талаар өргөн хүрээтэй идэвхтэй мэтгэлцээнүүд дэлхий нийтэд явагдаж байна.
Хөгжлийн түүх.
Энэ өгүүлэлтэй холбогдох эх сурвалжуудыг Википедиагийн өгүүллүүдээс, GNU төслийн вэб хуудас (http://www.gnu.org/gnu/gnu-history.html), BSD-ийн түүх (http://daemonz.org/bugs/history.html) гэсэн хуудаснуудаас дэлгэрүүлэн уншиж болно.
Нээлттэй эхийн хөдөлгөөн эд өрнөлтийн үедээ явагдаж байгаа тул одоогоор түүхийг бичих нь хялбар биш ч уншигчдад нээлттэй эхийн хөдөлгөөний үүсэл хөгжлийн талаар ерөнхий ойлголтыг өгвөл одоо өрнөж байгаа мэтгэлцээнүүдийг илүүтэйгээр ойлгох болно.
1960-1970 оноос эхлэн нээлттэй эхийн бараг бүх эх кодууд ил болсон. Түүнээс хойш энэ програм хангамжууд олон төрлийн тооцоолон бодох машин дээр ажиллахдаа, хэрэглэгч байгууллагууд эх код дээр бичигдсэн програмыг өөрсдийн нөхцөлд тохируулан машины кодод хөрвүүлэгч програмаар хөрвүүлэн ашигладаг байв. Гэвч ихэнхдээ эх код нь лицензийн гэрээгээр баталгаажаагүй эсвэл лицензтэй ч түүний хүрээнд хэрэгждэггүй байлаа.
Заримдаа хэрэглэгчид програмын алдааг илрүүлээд, засаж сайжруулсан хувилбараа ямар ч төлбөр авалгүй эргүүлээд эх код нийлүүлэгчдээ илгээдэг. Юниксийн хэрэглэгчдийн бүлэг ихэвчлэн эх кодоо дундаа хэрэглэдэг. Энэ үед ихэнх компаниуд програм хангамжаас илүүтэйгээр компьютерын хатуу эд анги илүү ашиг авчирдаг гэсэн ойлголттой байв.
Мөн тэр үед их дээд сургуулийн эрдэмтэд судлаачид өөрсдийн судалгааны ажлын нэг хэсэг болгож програм хангамжуудыг зохиох, түүнээс бусад нь олон зүйлийг суралцаг гэж үзээд нийтийн домэйнд оруулдаг байв. Анхны “э-мэйл сервер”, “ftp сервер” болон “вэб сервер” нь бүгд нийтийн домэйн төслүүд бөгөөд үүнийг их дээд сургуулийн судалгааны ажилтнууд, эрдэмтэд нийтийн домэйн програмын адил дундаа хэрэглэж боловсруулан зохиожээ.
Энэ хугацаанд компьютерын хатуу эд анги, техник хэрэгсэл илүүтэйгээр стандартад орж ирсэн бөгөөд үүнийгээ дагаад програм хангамж боловсруулагчид кодын аль хэсгийг хэрэглэгчид харж засварлаж болох, аль хэсгийг харагдахгүй болгох мэтээр хязгаарлах болсон. Уг хязгаарлалтууд хэрэглэгчдийг гацаах боох, ялангуяа судалгааны ажилтан эрдэмтэд өөрсдийн илрүүлсэн алдаа, асуудлуудыг цаашид засах боломжгүй болж, цаг хугацааны явцад компьютерын хатуу эд анги болон програм хангамжийг өөрсдийн хүссэнээр хэрэглэх боломжгүй болсон. Энэ чиг хандлага ихэвчлэн Майкрософтын өсөлтөөр хүч авсан програм хангамжийн үндсэн урсгалд байгаа юм.
1970-аад онуудад шинэ гарсан микро компьютерын програм хангамжийг боловсруулж бичих байдлаар амьдрах жижиг бизнесийн оролдлого нэлээд дэлгэрчээ. Гол нь компьютерын техникийг худалдахад найдаж дараа нь програм хангамжийг боловсруулж тэтгэх байдлаар ажиллаж байв. Ийм хүмүүсийн цөөнхийн бичсэн програм хангамжууд хүссэн ч хүсээгүй ч үнэхээр чөлөөтэй тарж байв. Үүгээр магадгүй хамгийн алдартай Билл Гэйт (болон Майкрософтыг үүсгэгчид) компьютерын техник хэрэгсэл нь биш, харин програм хангамж нь компьютержуулалтын шинэ ертөнцийн ирээдүйг эзэмших асар их орлогын эх үүсвэр байгааг мэдэрсэн ч байж болно. Энэ үед IBM өөрсдийн персонал компьютерын үйлдлийн системийг өөрсдөө боловсруулахын оронд бусад техник хэрэгслийн үйлдвэрлэлд лицензийн эрхтэйгээр хэрэглэж байсан Майкрософтын лицензтэй DOS үйлдлийн системийн эртний хувилбарыг авч хэрэглэсэн. Энэ сонголт нь ихэнх PC компьютерт ажиллах үйлдлийн системийн стандартыг бий болгож компьютержуулалтын нүүр царайг өөрчилсөн бөгөөд PC компьютержуулалтад Майкрософтын ноёрхлыг шууд дагуулсан. Хожим тэдэнд сервер талын програм хангамжийн зах зээлд орох гол боломжийг олгосон байна. Майкрософт нь дэлхийн програм хангамжийн гол үйлдвэрлэгч болон өссөн бөгөөд зах зээлийн бараг бүх салбарт өрсөлддөг болсон. Маш олон хүний бодлоор Нээлттэй эхийн төслүүдийг хэрэгжүүлснээр Майкрософттай өрсөлдөх ганц зам гэж үзэж байгаагаас ихэнх компаниуд их хэмжээний суурь дэмжлэгээр хангах хөшүүргийг хэрэглэж байна.
Энэ өрнөлийн түрэлтээр, FOSS-ийн хөдөлгөөн эхлээд дараах хоёр газар өрнөжээ. Үүнд: Калифорнийн их сургууль дээр Берклейн Програм хангамжийн Түгээлт (BSD) лицензээр, Ричард Сталлманын Чөлөөт програм хангамжийн сангийн GNU нийтийн лицензтэйгээр өрнөсөн.
Берклейн Програм хангамжийн Түгээлт (BSD)
1970-аад онуудад, Кен Тоомсон Билл Лаб-д (Bell Labs) ажиллаж байсны дараа Берклей дэх Калифорнийн их сургуульд нэг жил багшилжээ. Тэр үед их сургуульд судалгааны хэд хэдэн бүлэг Юникс-д зориулж програм хангамжийг боловсруулж байсан. Тухайн үед Билл Лабораторийн хан шинэ “DEC VAX” компьютерын системийн програм хангамжаар ажиллахаа тодорхой төлөвлөгөөгүй байсан тул Берклейн “Компьютерын шинжлэлийн судалгааны бүлэг” (CSRG) тэр тавцанг(талбарыг) эзэмшсэн байна. Энэ талбар нь бусад их сургуулиудад нийтлэг дэлгэрсэн бөгөөд CSRG анхлан түгээхдээ өөрсдийн хийсэн өөрчлөлт болон нэмэлтүүдийг “Берклейн Програм хангамжийн Түгээлт” (BSD) нэр дор гаргаж байжээ. Берклейн судлаачид тэр үеийн Юниксийн хувилбарыг нэмж сайжруулах аргуудыг байнгаа хийдэг байсан бөгөөд тэдний хийсэн өөрчлөлтийг Билл Лабораторийн хан хүлээн зөвшөөр ч цааш нь бусдад дамжуулдаг байв. Хугацааны явцад CSRG нь Юникс үйлдлийн системийн суурь зарчмыг сайжруулах аргыг олсон байна. Үүнтэй зэрэгцээд “Америкийн холбоо ба цахилгаан мэдээний компани” (AT&T) өөрийн хувилбараар Юникс үйлдлийн системийг сайжруулж хоёр чиглэлээр хөгжиж эхэлсэн. Юниксийн Берклейн хувилбар дэвжин хөгжихийн зэрэгцээ AT&T-гийн хийж байсан үндсэн ажлаас холдож эхэлсэн байна. 1990-ээд оны эхэн үед Берклейн програм хангамжийн түгээлтийн нэр дор ажиллах AT&T, Берклей дэх Калифорнийн их сургуулийн бүлэг, Юникс системийн лаборатори (USL) гэх гол бүлгүүдийн хооронд хууль зүйн үндэслэлээр маргалдах болсон бөгөөд AT&T зах зээлийн чиглэлийн дагуу Юниксийг хөгжүүлэх болсон. Билл лабораторийг эх кодуудыг хэн ч хариуцаж авсан BSD-ийн дор гарсан ихэнх бүтээгдэхүүн өмчийн хязгаарлалгүйгээр чөлөөтэй болсон. 1990-ээд оны дундуур Калифорнийн их сургуулийн захиргаанаас албан ёсоор BSD хаахад “4.4BSD-Lite”, “Release 2” нь CSRG-ийн хамгийн сүүлийн бүтээгдэхүүн болсон юм. Өнөөдөр олны хэрэглэх, хөгжүүлж байгаа “FreeBSD”, “ NetBSD”, “OpenBSD” гэх BSD хувилбарууд нь BSD дээр суурилсан байна. Нээлттэй арга барилаар BSD нь түгээгдэн хөгжиж байгаагийн үр дүнд ялгаатай олон хувь нийлүүлэгч нараас хувь нэмэр туслалцаа ирж байна.
Чөлөөт програм хангамжийн сан ба GNU төсөл
1983 онд Массачусетсийн технологийн дээд сургуульд (MIT) ажиллаж байсан Ричард Сталлман хэлснээр MIT-ийн боловсруулж хийж байсан компьютерын чиглэлийн судалгааны ажлууд ашгийн хойноос хөөцөлдөх нь ихсэхийн зэрэгцээ хэрэглэгчдийн програмын хэрэглээнд хязгаарлал тогтоох нь олширч түүнийг бухимдуулсан гэдэг. Хэсэг хугацааны дараа Сталлман хэрэглэг ч нарт хяналтыг олгох боломж бүхий програм хангамжийг зохиож эхэлсэн. Түүний үзлээр бол ямар ч хязгаарлалт хийж болохооргүй лицензээр баталгаажсан бүхэл үйлдлийн системийг боловсруулан гаргах явдал байв. Түүний анхны боловсруулсан томоохон програм хангамж нь бичвэр боловсруулагч “GNU Emacs” байсан бөгөөд үүний дараа LISP систем, w:C компайлер, дараа нь GNU төслийг боловсруулсан байна.
1995 онд Ричард Сталлман GNU төслийг дэмжин туслах зорилготой Чөлөөт програм хангамжийн санг (FSF) байгуулсан. FSF өргөжин тэлж FOSS хөдөлгөөний гол байгууллагын нэг нь болсон. Үүгээр FSF-ийн анхны зорилго болох GNU үйлдлийн системийн эхний хувилбар боловсорсон. Мөн FSF нь чөлөөт програм хангамжийг дэмжигч, хамгаалагч “Чөлөөт програм хангамжийг тараагч(дэлгэрүүлэгч) санваартны” үүргийг гүйцэтгэдэг. FSF нь GNU төслөөр бичигдсэн эх кодын зохиогчийн эрхийг (copyright) хадгалж, хэрэглэгчид төлбөргүй авч хэрэглэж болно гэдгийг үргэлж сануулж байдаг юм.
Үнэн хэрэгтээ FSF үүссэнээс хойших арван жилд Юниксийн өргөтгөлийг зохиогчид болон “Юникстэй Төстэй” үйлдлийн системийг зохиогч бүх хүн Сталлмантай нэгдсэн байна. Юниксийн бүтэц мөн чанар нь олон талаар ашиглах жижиг програмууд(буюу өргөтгөл програмууд) ба багаж хэрэгсэл програмуудаас бүрдэнэ. Энэ төсөл нь үргэлжлэн явагдаж байгаа бөгөөд GNU төсөл гэсэн нэрээр алдаршжээ. Энэ програмуудын нэлээд нь BSD хувилбараар стандарт болсон байна. 1994 онд Линүс Торвалдсын зохиосон Линүкс кернелийн (Linux kernel = Линүкс цөм) эхний хувилбар гарсан бөгөөд үүнийг GNU-ийн өргөтгөл програмуудаар баяжуулж GNU төслөөс авах боломжтой болгосноор Линүкс үйлдлийн систем бий болсон. Линүксийн Дувайн түгээлтийг GNU/Linux гэж нэрлэдэг бөгөөд энэ нь Сталлманы бодлогыг баримтлах хамтарсан бүтээгдэхүүн ба GNU төслийн амин чухал өргөтгөл програмууд нь болдог. GNU төслийн үргэлжлэл ахиц удаантай байгаа ч, тэд өөрийн гэсэн үйлдлийн системийн цөмийг хөгжүүлж байгаа бөгөөд түүнийг “Hurd” гэж нэрлэжээ. GNU-ээс албан ёсоор Юниксийн цөмийг “Hurd” аар солих боломжтой гэсэн саналыг оруулж байгаа ба одоо “ветта” хувилбарыг боловсруулж байна.
FSF өөрийн гэсэн хувь нэмрийг компьютержуулалтын шинжлэлд оруулж байгаа бөгөөд өдөр бүр GNU-ийн програм хангамжийг хэдэн сая аар хуулж дэлхий даяар хэрэглэж байна.
Цаашид дэлгэрүүлж сонирхъё гэвэл
Дараах эх сурвалжуудаас энэ өгүүллэгийн ихэнх мэдээлэл бүрдсэн болно. Хэрэв та нээлттэй эхийн хөгжлийн талаар дэлгэрүүлэн үзэх сонирхолтой бол энд илүү их мэдээлэл байгаа.
Википедиагийн өгүүллэгүүд: Түүх гэсэн бүлэгт чөлөөт програм хангамжийн өгүүллэгүүд бий.
Өөр эх сурвалж:
- Албан ёсоор хөгжүүлж байгаа GNU төслийн түүх (http://www.gnu.org/gnu/gnu-history.html)
- BSD түүх (http://daemonz.org/bugs/history.html)
Философи ба үндсэн зарчим
Хүмүүсээ нээлттэй эхийн програмд анхаарлаа хандуулна уу гэх ямар ч үндэслэл байгаагүй. Гэлээ ч дараах хоёр үндсэн урсгалын талаар олон хүн төстэй үзэл бодлоо хоорондоо хуваалцахаар хэлэлцэж эхэлсэн нь эрчимтэй хөдөлгөөнийг үүсгэхэд нөлөөлжээ. Нээлттэй эхийн хөдөлгөөнийг ойлгохын тулд дараах хоёр зарчмыг ойлгоход хангалттай.
- Програм хангамжийн эрх чөлөө.
- Нээлттэй эх хөгжүүлэх загвар.
Програм хангамжийн эрх чөлөө
Нээлттэй эхийн хөдөлгөөнтэй ижил өмнөх үеийн програм хангамжийн хөдөлгөөн бол чөлөөт програм хангамжийн хөдөлгөөн юм. Хэдийгээр нарийн тодорхойлолтын тухай хэлэлцэгдэж байгаа ч програм хангамжийн эрх чөлөө гэдгийн дор гурван ойлголтыг ерөнхийдөө ойлгож болно.
- Чөлөөтэй хэрэглэх
Програм хангамжийг өөрийн хувийн хэрэгцээнд зориулж хязгаарлах ёсгүй, үүнээс гадна зохиогчдын үүрэг хариуцлагыг хязгаарласан хууль дүрэм байх ёсгүй гэж олон хүн үздэг. Майкрософт Виндовз гэх мэт арилжааны багц нь тодорхой зориулалтаар хэрэглэх гээд хязгаарлалтууд хийснээрээ эрс ялгаатай байдаг. Америкийн зохиогчийн эрхийн хууль дүрэмд энэ эрх чөлөө хувийн гэрээгээр хязгаарлаагүй бол хэрэгжинэ гэжээ.
- Чөлөөтэй өөрчлөх
Байгаа програмуудыг чөлөөтэй өөрчлөх эрхтэй гэдэг нь чөлөөтэй хэрэглэн гэдгээсээ ч чухал байж болох юм. Нээлттэй эхийн энэ эрх чөлөө нь чиний өөрчилсөн хувилбар чинийх гэдгийг үргэлж сануулахаар хэрэгждэг юм. Нээлттэй эхийн зарим лиценз нь өөрчлөгч авч хэрэглэсэн эх кодын лицензийг зайлшгүй өөрчлөгдсөн ажилд мөрдүүлэхийг шаардана. (Жишээ нь Майкрософттай дундаа хэрэглэдэг эх програмууд байна.) Ийм эрх чөлөөг хэрэглэгч нарт олгодог бүрэн гүйцэд програм хангамжийн багц илэрхий цөөхөн байдаг. Зохиогч өөрөө зөвшөөрснөөр өөр бусдад энэ эрх чөлөөг олгоно.
- Чөлөөтэй түгээх
Өөрчилсөн эсвэл өөрчлөөгүй байдлаар програм хангамжийг түгээх боломж чөлөөтэй байх нь сүүлийн оньс нь юм байна. Програм хангамжийн багцын түгээлтийг хязгаарлан гэсэн ойлголт түүнийг ашиглаад бусдын хийх гэсэн ажлыг хязгаарлах гэсэн ойлголттой холбоотой. Нийгмийн бүлэгт хүмүүсийн хөгжүүлж оруулах ажилд саад болох ойлголттой шууд холбоотой. Чөлөөтэй өөрчлөхөд ижилхэн, зарим нээлттэй эхийн лицензэд чөлөөтэй түгээхийг хязгаарлахдаа ихэвчлэн шаардлагатай өөрчлөлт(сольсон) оруулсан зүйлийг зарим төв хадгаламжид (repository) буцааж өргөн мэдүүлсэн байхыг шаарддаг. Энэ нь өөрчлөх эрхтэй хамт зохиогчийн патентын эрх нь хэрэгжинэ гэсэн утга.
Энэ эрх чөлөөний шаардлагаас гарах гайхшруулах зүйл нь чөлөөт програм хангамж эдийн засгийн хувьд чөлөөтэй. Нэлээд олон лиценз нь програм хангамжид өөрчлөлт оруулсан эсвэл оруулаагүй ч худалдах буюу арилжааны хязгаарлалт хийгдээгүй байдаг. Харин түүхийн бодит амьдрал дээр нэлээд хэдэн бүлгийн чөлөөт програм хангамж гэж ерөнхийдөө ойлгогддог програмын тус тусдаа хэсгүүд нь хураамжаар олгосон байдаг. Лицензээс хамаар ч арилжаалахдаа өөр хязгаарлалтад орж болно.
Жишээлбэл програм хангамжийн эрх чөлөөг хангах GNU General Public License (Нийтийн дундын лиценз) буюу GPL гэж нэрлэх лицензтэй програм хангамж түгээгчдэд тодорхой хязгаарлалт хийдэг. GPL-ийг GNU төсөлд зориулж Ричард Сталлман боловсруулж бичжээ. GPL-д дээр дурдсан эрх чөлөө тухай ойлголтыг бүгдийг жагсаан бичсэн байдаг. Дээрх гол шугамаас ялгагдах үндсэн ялгаа нь Бүтээлч эгэл олныг(Creative Commons) “Хуваалц, ижилхэн хуваалц(Share and Share Alike)” гэсэн нөхцөлөөр уриалан дууддаг. Хэрэв GPL лиценз дор байх тодорхой програм хангамжийн багцын өөрчлөлтийг түгээхээр бол өөрийн чинь гүйцэтгэсэн ажлын хэсэг GPL лицензийн дор байна гэдгийг зайлшгүй зөвшөөрөх шаардлагатай болно. GPL лицензийн тухай нэмэлт мэдээллийг номын лиценз гэсэн бүлгээс дэлгэрүүлэн уншаарай.
Нээлттэй эх хөгжүүлэх загвар
Нээлттэй эхийн философийн хоёрдох гол баримтлал нь шинэ програм хангамж хөгжүүлэх загварын аятай орчинг бий болгоход оршино. Нээлттэй эх нь санаа оноогоо хуваалцах тухай ойлголт бөгөөд олон тооны сонирхолтой хөгжүүлэгчдийн чармайлтаар зохиосон програмыг тархааж өгнө. Энэ хуваалцах зарчим нь сайн програм хангамжийг богино хугацаанд хөгжүүлэхэд чиглэгдэнэ. Энэ нь уламжлалт хөгжүүлэх загвараас илүүтэйгээр хэрэглэгчдийн санал хүсэлтийг (feedback) -аар шууд хөгжүүлэгч нарт хүргэнэ. Apply болон IBM гэх нэрээрээ танигдах програм хангамжийн голлох компаниуд энэ аргаар програм хангамж бичих нь давуу талтай гэж үздэг. Дарвины төслийг (Darwin project) Apply энэ аргаар гүйцэтгэсэн бөгөөд IBM энэ хөгжүүлж буй загварыг бусад компаниуд хэрэглэхэд анхаар ч нээлттэй эхийн бүлгийн хэрэглэгчдэд ажиллах нөхцөлийг бүрдүүлэх зорилгоор програм хангамжийн хэд хэдэн мэдэгдэхүйц хандивыг оруулсан.