"โอเพนซอร์ส" (Open Source) คืออะไร
โอเพนซอร์ส คือการเปิดเผยซอร์สโค้ด(source code) ที่ใช้ในการพัฒนาหรือเขียนโปรแกรม ความหมายในทางซอฟต์แวร์หมายถึงซอฟต์แวร์ที่ผู้พัฒนาซอฟต์แวร์ มีความตั้งใจที่จะเผยแพร่หรือแจกจ่ายผลงานไปให้บุคคลอื่นที่ต้องการโดยมีเงื่อนไขที่กำหนดไว้ในข้อตกลงยินยอม (licensing agreement) และแจกจ่ายให้กับผู้ใช้ที่ต้องการด้วยรหัสที่ทำงานได้ (executable code) พร้อมกับซอร์สโค้ด (source code) ที่สามารถแก้ไขปรับปรุงเปลี่ยนแปลง ภายใต้ข้อตกลงยินยอมตาม (licensing agreement) และลิขสิทธิ์ของตัวซอฟต์แวร์
ความแตกต่างระหว่างซอฟต์แวร์โอเพนซอร์สกับซอฟต์แวร์ประเภทอื่น
สามารถจำแนกซอฟต์แวร์ออกได้เป็น 4 กลุ่ม ดังต่อไปนี้
• Proprietary/Commercial Software ให้เฉพาะไบนารีโค้ดเท่านั้น ไม่เปิดเผยซอร์สโค้ด
• Shareware ให้ใช้ฟรีเฉพาะช่วงเริ่มต้นเท่านั้นเพื่อทดลองการใช้งาน แต่หลังนั้น จะต้องเสียค่าใช้จ่าย หรือให้ใช้งานโดยไม่จำกัดเวลาแต่จะจำกัดความสามารถหรือคุณสมบัติบางอย่างของโปรแกรมไว้ และไม่เปิดเผยซอร์สโค้ด
• Freeware ไม่ต้องเสียค่าใช้จ่าย และไม่เปิดเผยซอร์สโค้ด
• Open Source Software (OSS) ให้ซอร์สโค้ด ซึ่งจะมีทั้ง Commercial OSS(เสียค่าใช้จ่าย) และ Non-commercial OSS(ไม่เสียค่าใช้จ่าย) โดยทั่วไปจะสามารถดาวน์โหลดได้จากเว็ปไซต์ คุณสมบัติหลักของซอฟต์แวร์โอเพนซอร์ส คือ จะให้อิสระกับผู้ใช้ในการนำไปใช้ นำไปแจกจ่าย และนำไปปรับปรุงแก้ไข อย่างไรก็ตามจะมีข้อแตกต่างกันในส่วนของสิทธิ์ในการนำไปใช้ในทางธุรกิจ สำหรับ Commercial OSS เนื่องจากลิขสิทธิ์ของโอเพนซอร์สจะไม่ห้ามให้นำไปคิดค่าใช้จ่าย
คุณสมบัติที่สำคัญของซอฟต์แวร์โอเพนซอร์ส
• การเข้าถึงซอร์สโค้ดโดยที่แจกจ่าย หรือการกระจายซอฟต์แวร์กระทำโดยการแนบซอร์สโค้ดร่วมกับไบนารีโค้ด การที่ให้ผู้ใช้
หรือบุคคลอื่นเข้าถึงซอร์สโค้ดได้ เพื่อที่จะทำการปรับปรุง และใช้ประโยชน์ซอร์สโค้ดเพื่อการศึกษา ทำความเข้าใจ เรียนรู้เทคนิค ตลอดจนการเพิ่มเติมปรับปรุงคุณสมบัติ หรือองค์ประกอบบางส่วนของซอฟต์แวร์ได้
• การมีข้อตกลงเกี่ยวกับสิทธิ (licensing agreement) ในการอนุญาตให้แจกจ่ายเผยแพร่ซอฟต์แวร์ที่เริ่มพัฒนาขึ้น และกระจาย
ต่อเมื่อมีการปรับปรุงแก้ไขให้ดีขึ้นหรือเพิ่มเติม
บทบาทและความสำคัญของซอฟต์แวร์โอเพนซอร์ส
หากมองย้อนไปในอดีตถึงความสำเร็จของเทคโนโลยีอินเทอร์เน็ต หัวใจสำคัญที่ทำให้ประสบความสำเร็จ คือโอเพนซอร์สโค้ดซอฟต์แวร์ เมื่อครั้งมีการพัฒนาอินเทอร์เน็ตและโพรโตคอล TCP/IP ยังมีที่เป็นระบบปิดอีกหลายเทคโนโลยี เช่น SNA, DECNET รวมถึงเทคโนโลยีทางด้านเครือข่ายแบบอื่น ๆ อีกมาก แต่เนื่องจากอินเทอร์เน็ตได้รับแรงหนุนจากกลุ่มผู้พัฒนาในมหาวิทยาลัย ซึ่งไม่ได้เน้นในเรื่องทางการค้าหรือหาผลประโยชน์ และได้รับการสนับสนุนโดยมูลนิธิการศึกษาวิทยาศาสตร์แห่งชาติสหรัฐ (NSF) ขณะเดียวกันมีระบบปฏิบัติการยูนิกซ์หลายตัวในยุคแรก เช่น BSD Unix อยู๋ในรูปแบบโอเพนซอร์ส หลังจากนั้นมีโปรแกรมแบบโอเพนซอร์สที่มีบทบาทที่สำคัญตามมาอีกหลายโปรแกรม เช่น GNU C คอมไพเลอร์ที่ได้รับความนิยมสูงในหมู่ผู้พัฒนาโปรแกรม การพัฒนาระบบยูนิกซ์ทำให้เกิดการพัฒนาโปรแกรม BIND ซึ่งเชื่อมโยงระบบ DNS ของทั่วโลกเข้าด้วยกันทำให้อินเทอร์เน็ตที่ใช้ในปัจจุบัน ใช้ระบบฐานข้อมูล DNS แบบร่วมกัน ซึ่งก็เป็นส่วนของโอเพนซอร์ส ในยุคแรกมีความสำเร็จของโปรแกรมโอเพนซอร์สที่กระจายอยู่บนอินเทอร์เน็ตและใช้มาถึงปัจจุบันคือ ระบบอีเมล ที่มีโปรแกรม Sendmail มีโปรแกรมแก้ไขข้อความที่รู้จักกันดีคือ EMAC ในเวลาต่อมา เมื่อเทคโนโลยี World Wide Web กระจายตัวมากยิ่งขึ้น การสร้างเครื่องให้บริการเว็บก็มีโปรแกรมโอเพนซอร์สเข้ามาช่วยทำให้การให้บริการเว็บกระจายเร็วยิ่งขึ้น
ลิขสิทธิ์ซอฟต์แวร์โอเพนซอร์ส
แนวทางการพัฒนาซอฟต์แวร์แบบโอเพนซอร์สเป็นแนวทางที่มีการพัฒนาได้สองแนวทางคือ แบบมีพิธีการกับแบบงานวัด
การใช้คำเปรียบเทียบแบบมีพิธีการ หมายถึง การพัฒนาซอฟต์แวร์แบบกระจาย แต่อยู่ภายใต้การบริหารจัดการโดยตรงกับส่วน
กลางส่วนหนึ่งหรือองค์กรหนึ่ง การดำเนินการพัฒนาซอฟต์แวร์มีการใช้หลักการควบคุมเวลาการกระจายการทำงานแต่สามารถ
รวบรวมซอร์สโค้ด และการจัดการทดสอบกระทำอย่างมีระบบ มีผู้ดูแลที่ชัดเจน มีเจ้าของโครงการ การดำเนินการในลักษณะนี้ส่วน
หนึ่งทำในรูปแบบที่อยู่ภายใต้โครงการนักวิจัยในมหาวิทยาลัย หรือองค์กรใดองค์กรหนึ่ง โดยเห็นรูปแบบการพัฒนาที่เป็นจุดเด่น
และผลลัพธ์ต้องการเผยแพร่ อีกรูปแบบหนึ่งที่เรียกว่า แบบงานวัด หรือตลาดนัด เป็นแบบที่กระจายตัวซอฟต์แวร์ไปยังสังคมกลุ่ม
โอเพนซอฟต์แวร์ไปยังสังคมกลุ่มโอเพนซอร์สโค้ดที่ใครจะเข้ามาช้อปปิ้งเพื่อลองนำไปใช้และเข้าใจจุดมุ่งหมาย จากนั้นก็พัฒนาต่อ
ให้ดีขึ้น โดยใช้ความรู้ความสามารถของแต่ละคนเข้ามาร่วมกันนำไปใช้และพัฒนาต่อ การดำเนินการจึงไม่สามารถควบคุมเรื่อง
เวลาและเป้าหมายที่ชัดเจนได้ การทำงานจึงเหมือนกับอาสาสมัครที่เข้ามาช่วยกันในงานวัด
เมื่อการพัฒนาโอเพนซอร์สซอฟต์แวร์เกิดขึ้นจากกลุ่มคนจำนวนมาก จึงมีการกำหนดลิขสิทธิ์ในการใช้งานโดยมี คือผู้ที่มี
บทบาทสำคัญมากในด้านเทคโนโลยีโอเพนซอร์ส โดยได้ก่อตั้งองค์กรหนึ่งชื่อ FSF - Free Software Foundation ในปี ค.ศ.1983 ด้วยเหตุผลที่ว่า ธุรกิจซอฟต์แวร์ทำขึ้นเพื่อการค้า และจะเป็นอุปสรรคใหญ่ต่อการพัฒนาซอฟต์แวร์ เพราะการพัฒนาที่ไม่เปิดเผยซอร์สโค้ด และการที่มีปัญหาเรื่องลิขสิทธิ์ต่างๆ ทำให้การพัฒนาซอฟต์แวร์ต้องติดขัดและขาดความก้าวหน้า เขาจึงเสนอรูปแบบการพัฒนาและลิขสิทธิ์ซอฟต์แวร์ที่ชื่อว่า GPL - General Public License โดยมีองค์กรที่เขาเป็นผู้ก่อตั้งให้มาเป็นผู้พิจารณาและดูแลในเรื่องกฏหมาย
ริชาร์ด สตอลแมน ได้เริ่มโครงการโดยที่เอาซอฟต์แวร์มาเผยแพร่โดยใช้ชื่อโครงการว่า GNU (กะนู) โดยมาจากคำว่า GNU’s Not Unix ซึ่ งเป็นที่มาของซอฟต์แวร์ที่เป็นเครื่องมือในการพัฒนาซอฟต์แวร์ต่อไปอีกหลายตัว เช่น GNU C ซึ่งเป็นคอมไพเลอร์ที่นิยมใช้กันอย่างแพร่หลาย
GNU จึงมีลิขสิทธิ์แบบ GPL ซึ่งเป็นลิขสิทธิ์ที่ถูกต้องตามกฏหมาย และมีกฏหมายรองรับ แต่มีข้อแตกต่างกับลิขสิทธิ์ซอฟต์แวร์ เพื่อการค้าอื่นคือ GPL ให้สิทธิแก่ผู้ใช้มากกว่า เพราะให้สิทธิ์ในการใช้ทำสำเนา ในการแจกจ่ายต่อ หรือได้ซอร์สโค้ดมาเพื่อพัฒนาแก้ไขดัดแปลง ไม่ว่าการกระทำพื้น ๆ มีวัตถุประสงค์เพื่อการศึกษา หรือเพื่อธุรกิจเชิงพาณิชย์ แต่ได้เน้นข้อพิเศษไว้คือ ห้ามเปลี่ยนแปลงหลักการ เงื่อนไข หรือข้อตกลงใดๆ ที่กำหนดไว้ในซอฟต์แวร์ที่ใช้ลิขสิทธิ์แบบ GPL กล่าวคือ ถ้าผู้ใช้นำลิขสิทธิ์แบบ GPL ไปใช้ และพัฒนาต่อต้องคงลิขสิทธิ์แบบ GPL ไปใช้ และพัฒนาต่อ ต้องคงลิขสิทธิ์แบบ GPL ไว้ต่อไป ทั้งนี้นั้นเป็นข้อดีที่เป็นแนวความคิดที่ป้องกันไว้ในกรณีที่บุคคลต่อไปจะไปสร้างสิทธิหรือจำกัดสิทธิ์แก่ผู้อื่นที่เปลี่ยนไปจากเดิม
.
.
.
อัพเดตความรู้ ข้อมูล ข่าวสารด้านคอมพิวเตอร์และเทคโนโลยีสารสนเทศ กับเว็บบล็อก http://computertru.blogspot.com
Music Hit In your life
สมัครสมาชิก:
ส่งความคิดเห็น (Atom)
กสทช
(1)
เกมส์คอมพิวเตอร์
(6)
ข่าวสั้นไอที
(3)
ข่าวไอที
(27)
คุณธรรมสำหรับผู้ใช้งานอินเทอร์เน็ต
(4)
ทิปคอมพิวเตอร์
(13)
เนื้อหา รูปภาพ หรือสื่ออื่นที่ปรากฎเป็นของเจ้าของบทความนั้นๆ
(15)
แนะนำเว็บไซต์
(2)
พระราชบัญญัติว่าด้วยการกระทำความผิดเกี่ยวกับคอมพิวเตอร์
(1)
ระบบเติมเงิน
(1)
ระบบปฏิบัติการ Operating System
(8)
ละเมิด
(1)
Computer IT Technology
(17)
Computer Virus
(7)
Hardware Computer
(32)
Information technology IT
(58)
Network ระบบเครือข่าย
(57)
Software Internet
(28)
ไม่มีความคิดเห็น:
แสดงความคิดเห็น