ค้นหาบล็อกนี้

วันอังคารที่ 12 กรกฎาคม พ.ศ. 2554

Open Source

ซอฟต์แวร์ Open Source ต่างกับซอฟต์แวร์อื่นอย่างไร?
    * โดยทั่วไปรูปแบบของไลเซนต์ และการแจกจ่ายซอฟต์แวร์มีหลายรูปแบบ โดยสามารถจำแนกได้ตามเกณฑ์ 2 ด้าน คือ
         1. การให้พร้อมซอร์สโค้ด
         2. การคิดค่าใช้จ่าย 

    * ซอร์สโค้ด หมายถึง รหัสซอฟต์แวร์ต้นฉบับที่เขียนโดยภาษาระดับสูง ซึ่งแตกต่างจากไบนารีโค้ด เพราะซอฟต์แวร์ Open Source เปิดเผยโครงสร้าง และลอจิกของโปรแกรม
    * ซอฟต์แวร์ที่ให้เฉพาะไบนารีโค้ดอย่างเดียว เรียกว่า ซอฟต์แวร์ปิด (closed source) 


ไลเซนต์ Open Source ต่างกับไลเซนต์อื่นอย่างไร?
คำว่า "Open Source" หรือ "Free Software" ไม่เพียงพอสำหรับอธิบายไลเซนต์ของซอฟต์แวร์ โดยทั่วไปส่วนที่สำคัญของลิขสิทธิ์ (Copyright) จะอธิบายเกี่ยวกับสิทธิ์ในการทำสำเนา การแจกจ่าย และการดัดแปลง

สำหรับไลเซนต์ของโอเพ่นซอร์สจะเน้นใน 2 ประเด็น คือ 

           1. การยกเลิกค่าไลเซนต์ซอฟต์แวร์
           2. การให้ซอร์สโค้ดมาพร้อมกับซอฟต์แวร์ 

        * สิ่งที่ทำให้ไลเซนต์ของโอเพ่นซอร์สแตกต่างจากไลเซนต์อื่นๆ ก็คือ หลักการของ "Copyleft" โดย Copyleft จะมีข้อจำกัดอยู่ว่า ถ้ามีการพัฒนาซอฟต์แวร์เพิ่มเติมจากต้นฉบับ แล้วซอฟต์แวร์ตัวใหม่ต้องใช้ไลเซนต์เดียวกับต้นฉบับด้วย
        * ไลเซนต์ Copyleft ที่สำคัญของซอฟต์แวร์โอเพ่นซอร์ส ก็คือ GPL 

Public Domain
          การกำหนดไลเซนต์เป็น "Public Domain" หมายถึง การยกเลิกลิขสิทธิ์ หรือ "Copyright" 

          o นิยามของ Public Domain อาจจะใช้ได้กับบางประเทศ เช่น อเมริกา แต่สำหรับบางประเทศเช่น เยอรมันจะใช้ไม่ได้ เพราะว่าจะไปขัดกับ German right
          o ในอเมริกาส่วนใหญ่จะใช้ไลเซนต์นี้กับซอฟต์แวร์ที่พัฒนาโดยสถาบันการศึกษา หรือสถาบันวิจัย ซึ่งส่วนใหญ่ทางรัฐบาลจะเป็นผู้ให้เงินสนับสนุน ผู้ใช้ในอเมริกาจะสามารถนำไปใช้ได้โดยไม่มีข้อจำกัดใดๆ และอนุญาตให้นำไปทำเป็น Commercial Domain ได้ด้วย 

Shareware
          จุดมุ่งหมายของ Shareware ก็คือ ความพยายามที่จะให้มีการนำเอาซอฟต์แวร์ไปใช้ให้มากที่สุดเท่าที่จะเป็นไปได้ Shareware จะให้เฉพาะไบนารีโค้ด และให้ใช้ซอฟต์เพียงช่วงเวลาสั้นๆ เท่านั้น เมื่อหมดเวลาทดลองใช้แล้ว ถ้าต้องการใช้ต่อก็ต้องเสียค่าใช้จ่าย 

Freeware
          เป็นไลเซนต์ที่ให้เฉพาะไบนารีโค้ดโดยไม่คิดค่าธรรมเนียมในการใช้งาน และเป็นไปได้ที่จะอนุญาตให้เฉพาะส่วนตัว หรือที่ไม่ใช้ในทางธุรกิจ ส่วนใหญ่บริษัทจะใช้ Freeware ในการโปรโมทผลิตภัณฑ์รอบๆ ข้าง เช่น ไมโครซอฟต์มี Internet Exploror เป็น Freeware เพื่อเป็นกลยุทธ์ในการครองตลาด เป็นต้น 

       ตัวอย่าง Freeware ที่ Open Directory Project 

GNU Public License (GPL)
    ผู้คิดค้นไลเซนต์ GPL คือ Richard Stallman ซึ่งอธิบายปรัญญาใน Free Software Foundation ไว้ว่า 

GPL ไม่มีข้อจำกัดในการทำสำเนา และการแจกจ่าย 

          ซอฟต์แวร์โอเพ่นซอร์สส่วนใหญ่จะใช้ไลเซนต์แบบ GPL ที่เด่นๆ ก็คือ ซอฟต์แวร์ในโครงการ GNU และระบบปฏิบัติการ Linux 

              o ผู้ใช้จะต้องสามารถเข้าถึงซอร์สโค้ดได้ง่าย ตัวไลเซนต์เองต้องนำไปใส่ไว้ในโปรแกรมด้วย
              o จะต้องแสดงไลเซนต์ซอฟต์แวร์ขึ้นมาเมื่อเริ่มโปรแกรม
              o จะอนุญาตให้แก้ไขซอฟต์แวร์ได้ ก็ต่อเมื่อมีการระบุว่าใครได้แก้ไขอะไร เมื่อไร
              o อนุญาตให้สร้างโปรแกรมใหม่จากการแก้ไขซอฟต๋์แวร์ต้นฉบับ แต่มีเงื่อนไขว่าโปรแกรมจะต้องมีไลเซนต์แบบ GPL เท่านั้น ("Copyleft") 

                  o จนทำให้เกิดปรากฏการณ์ที่เรียกว่า "Viral" effect เพราะว่าซอฟต์แวร์ที่รวมเอาซอฟต์แวร์ที่มีไลเซนต์เข้าไว้ด้วยกันต้องอยู่ภายใต้ไลเซนต์ที่คล้ายกับ GPL ไปด้วย 

              o ไลเซนต์แบบ "Copyleft" ไม่เหมาะกับการนำไปใช้ในทางธุรกิจ เพราะบริษัทพัฒนาซอฟต์แวร์ต้องเปิดเผยซอร์สโค้ดของตัวเองด้วย ถ้าใช้ซอฟต์แวร์บางส่วนที่เป็น GPLในการพัฒนาซอฟต์แวร์ 

GNU Lesser General Public License (LGPL) 
      เนื่องจากไลเซนต์แบบ GPL ค่อนข้างมีข้อจำักัดในการนำไปใช้ในเชิงธุรกิจ องค์กรอิสระ Free Software Foundation (FSF) จึงได้พัฒนาไลเซนต์ LGPL 

     * LGPL อนุญาตให้ผลิตภัณฑ์ซอฟต์แวร์ธุรกิจสามารถใช้ซอฟต์แวร์ไลบรารี โดยไม่มีข้อจำกัดเหมือนไลเซนต์แบบ GPL ซอฟต์แวร์ตัวแรกที่ใช้ไลเซนต์ LGPL คือ GNU C Library 



ขอบคุณ Thaiopensource.org

3 ความคิดเห็น: