ความแตกต่างระหว่างซอฟต์แวร์ฟรีและโอเพ่นซอร์ส โอเพ่นซอร์สคืออะไรและเหตุใดจึงสำคัญสำหรับ cryptocurrencies และ open blockchain

โอเพ่นซอร์สและซอฟต์แวร์ฟรี
07.07.2009 12:25

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

ดังนั้นซอฟต์แวร์โอเพ่นซอร์สคืออะไร? บางทีคำจำกัดความที่พบบ่อยที่สุดของคำนี้อาจเผยให้เห็นถึงคุณสมบัติหลัก ซอฟต์แวร์โอเพ่นซอร์สคือซอฟต์แวร์โอเพ่นซอร์สทั้งหมด ผลิตภัณฑ์ซอฟต์แวร์ที่ไม่เพียงมีให้ใช้งานสำหรับการรับชมเท่านั้น แต่ยังรวมถึงการดัดแปลงด้วย ซึ่งช่วยให้คุณใช้รหัสที่สร้างขึ้นแล้วเพื่อเขียนซอฟต์แวร์เวอร์ชันใหม่ สำหรับการแก้ไขข้อบกพร่องและการปรับปรุงโอเพ่นซอร์ส โปรแกรม. เป็นที่น่าสังเกตว่า คำนิยามนี้ตามที่ผู้สนับสนุนโอเพ่นซอร์สไม่ได้สะท้อนถึงสาระสำคัญของแนวคิดอย่างเต็มที่ จากมุมมองของพวกเขา ซอฟต์แวร์โอเพ่นซอร์สนอกเหนือจากซอร์สโค้ดที่มีให้สำหรับการแก้ไขแล้ว ยังรวมถึงปรัชญาทั้งหมดด้วย ความหมายของมันคือการสร้างสังคมสารสนเทศผ่านการประยุกต์ใช้อย่างครอบคลุมของ เปิดโปรแกรมผลิตภัณฑ์ ny ในทุกขอบเขตของกิจกรรมของมนุษย์

ความสวยงามของซอฟต์แวร์โอเพ่นซอร์สคืออะไร? ตามที่ตัวแทนของแนวโน้มนี้ ซอฟต์แวร์โอเพ่นซอร์สอนุญาตให้:

  1. ปรับผลิตภัณฑ์ซอฟต์แวร์ตามความต้องการของผู้ใช้เฉพาะหรือกลุ่มผู้ใช้
  2. แก้ไขข้อผิดพลาดของนักพัฒนาก่อนหน้า
  3. ปรับแต่ง และปรับปรุงซอฟต์แวร์.

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

เป็นที่น่าสังเกตว่าในมุมมองสากล ซอฟต์แวร์โอเพ่นซอร์สรวมถึงซอฟต์แวร์โอเพ่นซอร์สโดยตรง เช่นเดียวกับผลิตภัณฑ์ซอฟต์แวร์ประเภทอื่นๆ ที่สามารถแจกจ่ายได้ฟรีและให้ซอร์สโค้ดสำหรับการเปลี่ยนแปลง ซอฟต์แวร์ดังกล่าวรวมถึงโปรแกรมฟรี (ฟรีแวร์) และฟรี (ซอฟต์แวร์ฟรี)

ดังนั้น คำว่าโอเพ่นซอร์ส (ซอฟต์แวร์โอเพ่นซอร์ส) จึงถูกใช้ครั้งแรกในปี 1998 โดยโปรแกรมเมอร์ Eric Raymond (Eric Steven Raymond) และ Bruce Perens (Bruce Perens) พวกเขาแน่ใจว่าคำว่าซอฟต์แวร์เสรี (ซอฟต์แวร์เสรี) ในภาษาอังกฤษนั้นคลุมเครือ และในบางแง่อาจทำให้ผู้ประกอบการที่เป็นผู้ใช้ซอฟต์แวร์ดังกล่าวหวาดกลัวได้ ปัจจุบันโอเพ่นซอร์สเป็นเครื่องหมายการค้าของ Open Source Initiative ซึ่งจัดจำหน่ายซอฟต์แวร์โอเพ่นซอร์ส นอกจากนี้ยังมีคณะกรรมการพิเศษที่ตัดสินใจว่าใบอนุญาตของโปรแกรมเฉพาะสามารถเรียกว่าโอเพ่นซอร์สได้หรือไม่

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

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

ผู้ก่อตั้งแนวคิดซอฟต์แวร์เสรีคือ Richard Matthew Stallman โปรแกรมเมอร์ชาวอเมริกัน เขาเป็นผู้กำหนดแนวคิดของซอฟต์แวร์เสรีเป็นคนแรก ซึ่งสะท้อนถึงหลักการของการพัฒนาซอฟต์แวร์แบบเปิดในชุมชนวิทยาศาสตร์ที่พัฒนาขึ้นในมหาวิทยาลัยของสหรัฐอเมริกาในทศวรรษที่ 1970 Stallman กำหนดเกณฑ์ที่ชัดเจนสำหรับซอฟต์แวร์ฟรี เกณฑ์เหล่านี้กำหนดสิทธิ์ที่ผู้เขียนซอฟต์แวร์เสรีมอบให้แก่ผู้ใช้ใดๆ ดังนั้น เมื่อใช้ซอฟต์แวร์ฟรี ผู้ใช้จะได้รับ "อิสระสี่ประการ": เรียกใช้ ศึกษา แจกจ่าย และปรับปรุงโปรแกรม

  • "Zero Freedom" - โปรแกรมนี้สามารถใช้เพื่อวัตถุประสงค์ใดก็ได้
  • "อิสรภาพแรก" - คุณสามารถศึกษาวิธีการทำงานของโปรแกรมและปรับใช้ตามวัตถุประสงค์ของคุณเอง เงื่อนไขนี้คือความพร้อมใช้งานของซอร์สโค้ดของโปรแกรม
  • "อิสรภาพที่สอง" - คุณสามารถแจกจ่ายสำเนาของโปรแกรมได้ - เพื่อช่วยนักพัฒนา
  • "Third Freedom" - สามารถปรับปรุงโปรแกรมและเผยแพร่เวอร์ชันที่ปรับปรุงแล้วเพื่อเป็นประโยชน์ต่อชุมชนทั้งหมด เงื่อนไขนี้คือความพร้อมใช้งานของซอร์สโค้ดของโปรแกรม

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

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

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

อย่างไรก็ตาม มีบางโปรแกรมที่ตกอยู่ภายใต้คำจำกัดความของ open แต่ไม่ฟรี โปรแกรมดังกล่าวรวมถึง UnRAR ซึ่งเป็นโปรแกรมแกะไฟล์เก็บถาวร RAR ความจริงก็คือซอร์สโค้ดนั้นเป็นสาธารณสมบัติ แต่ใบอนุญาตห้ามไม่ให้ใช้ซอร์สโค้ดเพื่อสร้างไฟล์เก็บถาวรที่เข้ากันได้กับ RAR

แน่นอนว่าหมวดหมู่ของซอฟต์แวร์โอเพ่นซอร์สนั้นแตกต่างกันก็มีความสำคัญเช่นกัน เนื่องจากมีระดับอิสระที่แตกต่างกันซึ่งสัมพันธ์กับการกระทำของผู้ใช้ ในขณะเดียวกัน บางครั้งเราสามารถสังเกตเห็นความแตกต่างที่สำคัญระหว่างคำจำกัดความของซอฟต์แวร์โอเพ่นซอร์สและฟรี ซอฟต์แวร์โอเพ่นซอร์ส กล่าวคือ ซอฟต์แวร์ที่มีซอร์สโค้ด (เปิด) (Open Source Software) เป็นวิธีการพัฒนาซอฟต์แวร์ซึ่งซอร์สโค้ดที่สร้างขึ้นของโปรแกรมนั้นเปิดอยู่ นั่นคือเปิดให้สาธารณชนเข้าชมและแก้ไขได้ สิ่งนี้ทำให้ทุกคนสามารถใช้รหัสที่สร้างขึ้นแล้วสำหรับความต้องการของตนเอง และอาจช่วยในการพัฒนาโปรแกรมโอเพ่นซอร์ส ซอฟต์แวร์เสรีเป็นสิทธิ์ของผู้ใช้ แต่ไม่ใช่ภาระผูกพันของผู้ผลิต เนื่องจาก ใบอนุญาตแบบเปิดไม่จำเป็นต้องมีซอฟต์แวร์ให้ฟรีเสมอไป อย่างไรก็ตาม โครงการโอเพ่นซอร์สที่ประสบความสำเร็จมากที่สุดหลายโครงการยังคงใช้งานได้ฟรี

ซอฟต์แวร์โอเพ่นซอร์สยังเป็นคุณลักษณะที่สำคัญของซอฟต์แวร์เสรี ดังนั้นคำว่า "ซอฟต์แวร์โอเพ่นซอร์ส" ที่เสนอในภายหลังโดย Eric Raymond ดูเหมือนจะเหมาะสมกับปรากฏการณ์ของซอฟต์แวร์เสรีมากกว่าที่ Stallman เสนอในสมัยของเขา " ซอฟต์แวร์เสรี

โปรดทราบว่าประโยชน์ของการพัฒนาฟรีสำหรับผู้ใช้ไม่ควรพูดเกินจริง ซอฟต์แวร์ฟรีบางตัวไม่พร้อมสำหรับการแก้ไขโดยผู้ใช้เท่าๆ กัน ซึ่งในทางกลับกัน ไม่มีส่วนเกี่ยวข้องใดๆ กับสิทธิ์การใช้งาน การกระจายของพวกเขาปริมาณของโปรแกรมมีบทบาทสำคัญ: หากมีหลายหมื่นบรรทัด (เช่นใน OpenOffice.org, อะนาล็อกของ Microsoft Office) แม้แต่ผู้เชี่ยวชาญที่ผ่านการรับรองก็ต้องใช้เวลาค่อนข้างมาก เพื่อค้นหาและแก้ไขข้อผิดพลาด นับ สำหรับนักพัฒนาซึ่งจะตอบสนองต่อความคิดเห็นและข้อเสนอแนะทั้งหมดของผู้ใช้และแก้ไขโปรแกรมทันทีก็เป็นไปไม่ได้เช่นกัน เนื่องจากไม่มีภาระผูกพันใด ๆ ต่อผู้ใช้เกี่ยวกับคุณภาพของโปรแกรม ในเรื่องนี้ ผู้ใช้โปรแกรมที่เป็นกรรมสิทธิ์อาจอยู่ในตำแหน่งที่ดีกว่า

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

สถานที่ของซอฟต์แวร์ฟรีในตลาดซอฟต์แวร์ปัจจุบันมีความสำคัญมากและมีเชิงพาณิชย์มากมาย และสถานะธุรกิจใช้ซอฟต์แวร์ฟรีโดยตรงหรือโดยอ้อม ตัวอย่างเช่น ผู้ใช้อินเทอร์เน็ตทั้งหมดใช้โปรแกรมฟรี Bind ซึ่งให้บริการ DNS แม้ว่าจะเป็นทางอ้อมก็ตาม นอกจากนี้ องค์กรหลายแห่ง (โดยเฉพาะผู้ให้บริการผ่านเวิลด์ไวด์เว็บ) ใช้เว็บเซิร์ฟเวอร์ Apache ฟรี ซึ่งกำไรขององค์กรขึ้นอยู่กับโดยตรง ไม่ต้องพูดถึงเซิร์ฟเวอร์บนแพลตฟอร์ม Linux

ประโยชน์ของการใช้ซอฟต์แวร์ฟรีและโอเพ่นซอร์สนั้นชัดเจน: โดยปกติแล้วคุณไม่ต้องเสียค่าใช้จ่าย และถ้าคุณทำ ค่าใช้จ่ายจะน้อยกว่าซอฟต์แวร์ที่เป็นกรรมสิทธิ์มาก ข้อเสียเปรียบหลักจากมุมมองของผู้ใช้ในเชิงพาณิชย์คือนักพัฒนาซอฟต์แวร์ฟรีไม่มีข้อผูกมัดอื่นใดนอกจากหน้าที่ทางศีลธรรม นั่นคือในความเป็นจริงพวกเขาไม่รับผิดชอบต่อคุณภาพของซอฟต์แวร์

ตัวอย่างเช่น ในหนึ่งในใบอนุญาตสาธารณะ (GNU) มีแม้แต่ข้อความมาตรฐานที่ระบุว่าไม่มีการรับประกัน: "โปรแกรมนี้มีให้ตามสภาพที่เป็นอยู่" เว้นแต่จะระบุไว้เป็นอย่างอื่นเป็นลายลักษณ์อักษร ผู้เขียนและ/หรือผู้ถือลิขสิทธิ์รายอื่นไม่ยอมรับข้อผูกมัดในการรับประกันใดๆ ไม่ว่าจะโดยชัดแจ้งหรือ และโดยนัยโปรแกรม รวมถึงการรับประกันโดยปริยายของความสามารถในการขายและความเหมาะสมสำหรับวัตถุประสงค์เฉพาะ และการรับประกันอื่นๆ"

อย่างไรก็ตาม ในปัจจุบัน ระบบ GNU หรือที่เรียกกันทั่วไปว่า GNU/Linux หรือเรียกง่ายๆ ว่า Linux นั้นมีอยู่ทั่วไป โดยเฉพาะอย่างยิ่งในตลาดเซิร์ฟเวอร์ และเป็นผลิตภัณฑ์ซอฟต์แวร์ที่สมบูรณ์ ประกอบด้วยโปรแกรมโครงการ GNU จำนวนมาก (โดยหลักคือยูทิลิตี้ระบบและ GNU toolchain) เคอร์เนล Linux - ส่วนหนึ่งของระบบที่รับผิดชอบในการเรียกใช้โปรแกรมอื่น ๆ รวมถึงไดรเวอร์อุปกรณ์และสิ่งที่คล้ายกัน - และโปรแกรมฟรีอื่น ๆ อีกมากมาย .

ดังนั้นในปัจจุบันจึงมีแนวโน้มที่องค์กรด้านไอทีขนาดใหญ่เช่น Intel, Oracle หรือ IBM พยายามสนับสนุนโครงการพัฒนาซอฟต์แวร์ฟรีโดยจ่ายงานของพนักงานในโครงการเหล่านี้เพื่อให้ระดับความรับผิดชอบของนักพัฒนาอยู่ในระดับสูง ทำไมพวกเขาทำเช่นนี้เพราะซอฟต์แวร์แบบเปิดและฟรีสามารถแข่งขันกับพวกเขาได้ คำตอบนั้นง่าย - พวกเขาเห็นว่าสิ่งนี้เป็นประโยชน์ซึ่งพวกเขาพยายามที่จะไม่พลาดเนื่องจากทุกวันมีโปรแกรมมากมายที่ใช้ซอฟต์แวร์โอเพ่นซอร์สปรากฏขึ้นซึ่งบางโปรแกรมสามารถกลายเป็นผลิตภัณฑ์เชิงพาณิชย์ที่แข็งแกร่งได้ในภายหลัง

ปัจจุบันมีใบอนุญาตหลักหลายใบที่ใช้สำหรับการแจกจ่ายซอฟต์แวร์ฟรี: AROS Public License, BSD License, CDDL, Common Public License, GNU Free Documentation License, GNU General Public License, GNU Lesser General Public License, MIT License, Mozilla Public License , Open Directory สิทธิ์ใช้งาน ฯลฯ สิทธิ์ใช้งานฟรีทั้งหมดไม่ทางใดก็ทางหนึ่งมีลักษณะตามหลักการของ copyleft (copyleft เป็นคำเล่นสำนวนของคำว่าลิขสิทธิ์) ในทางตรงกันข้ามแนวทางดั้งเดิมเกี่ยวกับลิขสิทธิ์ที่จำกัดเสรีภาพในการคัดลอกผลงาน หลักการ copyleft ใช้กฎหมายลิขสิทธิ์เพื่อให้แน่ใจว่าไม่มีใครสามารถจำกัดสิทธิ์ในการใช้ ดัดแปลง และแจกจ่ายทั้งตัวงานเองและงานตามนั้น แนวคิดของลิขสิทธิ์คือใครก็ตามที่แจกจ่ายโปรแกรมไม่ว่าจะมีการเปลี่ยนแปลงหรือไม่ก็ตามไม่มีสิทธิ์ที่จะจำกัดเสรีภาพในการเผยแพร่หรือแก้ไขเพิ่มเติม Copyleft รับประกันว่าผู้ใช้แต่ละคนมีอิสระในการกระทำของตน

จำนวนใบอนุญาตที่สอดคล้องกับคำจำกัดความของโอเพ่นซอร์ส (ซอฟต์แวร์เปิด) ในขณะนี้มีมากกว่าห้าสิบรายการ โอเพ่นซอร์สเป็นเครื่องหมายการค้าของ Open Source Initiative มีคณะกรรมการพิเศษที่ตัดสินใจว่าใบอนุญาตสามารถเรียกว่าโอเพ่นซอร์สได้หรือไม่ หนึ่งในเว็บไซต์ที่ใหญ่ที่สุดในโลกสำหรับนักพัฒนาโอเพ่นซอร์สคือพอร์ทัล SourceForge.net ที่มีชื่อเสียง บนเว็บไซต์นี้ นักพัฒนาสามารถโพสต์และร่วมพัฒนาโครงการซอฟต์แวร์ของตนได้ ปัจจุบันมีโครงการหลายแสนโครงการที่โฮสต์บน SourceForge.net และจำนวนผู้ใช้ที่ลงทะเบียนเกินหนึ่งล้านคน

แน่นอนว่าซอฟต์แวร์แบบเปิดและฟรีกำลังดึงดูดผู้ชมมากขึ้นเรื่อยๆ โปรแกรมโอเพ่นซอร์สนั้นค่อนข้างประสบความสำเร็จทั้งผู้ใช้ส่วนตัวและ และเชิงพาณิชย์รัฐและองค์กรสาธารณะ ซอฟต์แวร์ที่ใช้โอเพ่นซอร์สและซอฟต์แวร์ฟรีใช้เป็นการติดตั้งล่วงหน้าสำหรับแล็ปท็อปและเน็ตบุ๊กบางรุ่นจากผู้ผลิตหลายราย นอกจากนี้ ซอฟต์แวร์โอเพ่นซอร์สกำลังค่อยๆ พิชิตตลาดระบบอัตโนมัติสำหรับองค์กรขนาดเล็กและขนาดกลาง

การปรากฏตัวของโปรแกรมในคลาสนี้เกี่ยวข้องกับแนวคิดในการสร้างซอฟต์แวร์ที่ปราศจากข้อ จำกัด ในการหมุนเวียน ในปี 1998 ตามคำแนะนำของนักพัฒนาชาวอเมริกัน Bruce Perens และ Eric Raymond ได้มีการสร้าง Open Source Initiative

(ความคิดริเริ่มโอเพ่นซอร์ส, OSI) การเคลื่อนไหวนี้พัฒนาและเผยแพร่ "คำจำกัดความของซอฟต์แวร์โอเพ่นซอร์ส" รหัสโปรแกรม".

ใบอนุญาตซอฟต์แวร์โอเพ่นซอร์สให้อำนาจต่อไปนี้:

  • 1) การเข้าถึงซอร์สโค้ด
  • 2) เปลี่ยนโปรแกรมคอมพิวเตอร์
  • 3) เพื่อแจกจ่ายโปรแกรมที่แก้ไขภายใต้เงื่อนไขเดียวกันกับที่ซอฟต์แวร์ได้รับจากผู้รับอนุญาต;
  • 4) ผู้ได้รับอนุญาตให้ใช้โปรแกรมคอมพิวเตอร์ตามวัตถุประสงค์;
  • 5) สำหรับการแจกจ่ายเพิ่มเติมโดยผู้ใช้โปรแกรมโดยไม่ต้องจ่ายหักและค่าตอบแทน

สิทธิ์การใช้งานซอฟต์แวร์โอเพ่นซอร์สอาจรวมถึง:

  • 1) คำอธิบายการเปลี่ยนแปลงที่ทำโดยผู้ได้รับใบอนุญาตแต่ละราย
  • 2) การปฏิเสธที่จะให้การรับประกัน
  • 3) การปฏิเสธความรับผิดต่อความเสียหาย;
  • 4) การควบคุมปัญหาสิทธิบัตร;
  • 5) ข้อกำหนดเกี่ยวกับความเข้ากันได้ของใบอนุญาตนี้กับใบอนุญาตอื่น ๆ
  • 6) ระเบียบลิขสิทธิ์ในข้อความของใบอนุญาตแบบเปิด
  • 7) การบ่งชี้การเปลี่ยนแปลงที่เกิดขึ้นในรหัสเปิดที่ได้รับ
  • 8) บทบัญญัติเกี่ยวกับกฎหมายที่ใช้บังคับและศาลที่มีอำนาจ

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

ตั้งแต่เดือนมกราคม 2555 เป็นครั้งแรกในสหพันธรัฐรัสเซียที่มีการแนะนำแนวคิดของโปรแกรมโอเพ่นซอร์สเป็นซอฟต์แวร์ที่เผยแพร่ภายใต้เงื่อนไขของใบอนุญาตแบบง่าย (ใบอนุญาตที่ไม่ผูกขาด) หรือใบอนุญาตพิเศษซึ่งให้ผู้ใช้สามารถเข้าถึง ซอร์สโค้ดของโปรแกรม

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

แนวคิดของซอฟต์แวร์ฟรีมีพื้นฐานมาจาก เสรีภาพขั้นพื้นฐานสี่ประการ:

  • 1) เสรีภาพในการทำซ้ำบนคอมพิวเตอร์และเรียกใช้โปรแกรมเพื่อวัตถุประสงค์ใด ๆ
  • 2) อิสระในการศึกษาการทำงานของโปรแกรมและปรับให้เข้ากับความต้องการของผู้ใช้;
  • 3) เสรีภาพในการทำซ้ำและแจกจ่ายสำเนาซอฟต์แวร์เสรีที่ได้รับ
  • 4) อิสระในการปรับปรุงโปรแกรม เช่น แก้ไขและแจกจ่ายในรูปแบบดัดแปลง

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

ใบอนุญาตโอเพ่นซอร์สมีประเภทต่อไปนี้:

  • – ใบอนุญาตสาธารณะทั่วไป (GPL);
  • – ใบอนุญาตซอฟต์แวร์ Apache;
  • – ใบอนุญาต Berkeley Software Distribution (BSD);
  • – ได้รับอนุญาตจาก Massachusetts Institute of Technology (MIT);
  • – Mozilla Public License (MPL) เป็นต้น

ความหมายทั่วไปของ GPL, BSD, MIT คือการขยายอำนาจของผู้ใช้โปรแกรมและในขณะเดียวกันก็กำหนดภาระผูกพันบางอย่างที่ไม่ใช่ลักษณะของใบอนุญาตตามกฎหมายของสหพันธรัฐรัสเซียและต่างประเทศ แต่ในปัจจุบันการพัฒนาซอฟต์แวร์ดังกล่าวได้เริ่มได้รับการสนับสนุนในสหพันธรัฐรัสเซีย นอกจากนี้ แนวคิดการปฏิรูปการปกครองในสหพันธรัฐรัสเซียและโครงการเป้าหมายของรัฐบาลกลาง "Electronic Russia" ยังถูกนำมาใช้

มาดูลักษณะสำคัญของซอฟต์แวร์โอเพ่นซอร์สกัน

1. แจกฟรี

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

2. แหล่งที่มา

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

  • 3. ผลิตภัณฑ์รองข้อตกลงสิทธิ์ใช้งานควรให้สิทธิ์ในการแก้ไขและพัฒนาผลิตภัณฑ์ลอกเลียนแบบของตนเอง เพื่อแจกจ่ายซอฟต์แวร์ในเงื่อนไขเดียวกันกับสิทธิ์การใช้งานของโปรแกรมต้นฉบับ
  • 4. การเก็บรักษาซอร์สโค้ดของผู้แต่งข้อตกลงใบอนุญาตอาจจำกัดการจำหน่ายผลิตภัณฑ์ที่มีการแก้ไขซอร์สโค้ดโดยบุคคลที่สาม ข้อตกลงอาจอนุญาตให้มีการแจกจ่ายไฟล์ซอร์สโค้ดที่แนบมาเพื่อปรับเปลี่ยนโปรแกรมในขณะที่สร้าง ใบอนุญาตต้องให้สิทธิ์ในการเผยแพร่โปรแกรมของคุณเองที่สร้างขึ้นโดยการแก้ไขซอร์สโค้ด ข้อตกลงสิทธิ์ใช้งานอาจมีข้อกำหนดในการเปลี่ยนชื่อซอฟต์แวร์หรือหมายเลขเวอร์ชันของผลงานลอกเลียนแบบ
  • 5. ไม่มีข้อจำกัดสำหรับบุคคลหรือกลุ่มผู้ใช้ผู้สมัครทุกคนต้องมีข้อตกลงใบอนุญาต
  • 6. ไม่มีข้อจำกัดเกี่ยวกับขอบเขตข้อตกลงใบอนุญาตไม่ควรมีข้อ จำกัด ในการใช้โปรแกรมในพื้นที่เฉพาะของกิจกรรม เช่น การค้าหรือการวิจัยอื่น ๆ
  • 7. การกระจายใบอนุญาตสิทธิ์ที่แนบมากับโปรแกรมจะต้องนำไปใช้กับทุกคนที่ใช้งาน ไม่จำเป็นต้องมีใบอนุญาตเพิ่มเติมสำหรับสิ่งนี้
  • 8. ข้อตกลงใบอนุญาตไม่จำเป็นต้องเฉพาะเจาะจงกับบางส่วนของผลิตภัณฑ์สิทธิ์ที่ได้รับจากชุดซอฟต์แวร์จะนำไปใช้กับองค์ประกอบแต่ละส่วนของชุดซอฟต์แวร์ หากนำโปรแกรมมาจากการแจกจ่ายและใช้ภายนอก เงื่อนไขของข้อตกลงสิทธิ์การใช้งานของการจัดจำหน่ายจะมีผลกับโปรแกรม
  • 9. ข้อตกลงใบอนุญาตต้องไม่มีข้อจำกัดเกี่ยวกับซอฟต์แวร์อื่นๆ, เช่น. เครื่องมือซอฟต์แวร์ที่แจกจ่ายพร้อมกับซอฟต์แวร์ลิขสิทธิ์ ใบอนุญาตไม่ควรมีข้อกำหนดสำหรับการเปิดกว้างของเครื่องมือซอฟต์แวร์ที่ไม่ได้สร้างขึ้นภายใต้ข้อตกลงใบอนุญาตนี้
  • 10. ใบอนุญาตต้องเป็นกลางทางเทคโนโลยีข้อกำหนดสิทธิการใช้งานไม่สามารถขึ้นอยู่กับเทคโนโลยีและรูปแบบอินเทอร์เฟซแต่ละรายการได้

การปฏิบัติตามเงื่อนไขข้างต้นเมื่อทำข้อตกลงใบอนุญาตทำให้สามารถตัดสินโปรแกรมคอมพิวเตอร์ว่าเป็นซอฟต์แวร์โอเพ่นซอร์สได้

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

ในปี 2549 ในสหพันธรัฐรัสเซียตามคำสั่งฉบับที่ 83 ของกระทรวงสารสนเทศและการสื่อสารของสหพันธรัฐรัสเซียลงวันที่ 29 มิถุนายน 2549 "ในกิจกรรมของกระทรวงสารสนเทศและการสื่อสารของรัสเซียในปี 2549 เพื่อดำเนินการตามบทบัญญัติหลัก จากคำปราศรัยของประธานาธิบดีแห่งสหพันธรัฐรัสเซียต่อสมัชชาแห่งสหพันธรัฐรัสเซีย" แผนปฏิบัติการได้รับการพัฒนาเพื่อส่งเสริมการพัฒนาและการใช้งานซอฟต์แวร์ฟรีของหน่วยงานภาครัฐ (โอเพ่นซอร์ส) แผนมีกิจกรรมดังต่อไปนี้:

  • 1) การพัฒนาข้อกำหนดและคำแนะนำสำหรับการใช้มาตรฐานเปิดและข้อกำหนดในการพัฒนาโปรแกรมคอมพิวเตอร์สำหรับความต้องการของรัฐและเทศบาล
  • 2) การประเมินความคุ้มค่าของการนำ ISO/IEC 26300:2006 ไปใช้ (รูปแบบเอกสารแบบเปิดสำหรับการใช้งานในสำนักงาน)
  • 3) จัดระเบียบการมีส่วนร่วมของตัวแทนของการบริหารการสื่อสารของสหพันธรัฐรัสเซียในองค์กรระหว่างประเทศเพื่อการกำหนดมาตรฐานในด้านเทคโนโลยีสารสนเทศตลอดจนอำนวยความสะดวกและประสานงานการมีส่วนร่วมของตัวแทนของ บริษัท รัสเซียในองค์กรระหว่างประเทศเพื่อให้ได้มาตรฐาน (หากมีส่วนร่วมของ ไม่มีหน่วยงานของรัฐในองค์กรดังกล่าว);
  • 4) การพัฒนาและการดำเนินการตามขั้นตอนการได้รับ (รวมถึงการกำหนดขอบเขตและการประเมิน) และรูปแบบการจัดการสิทธิ์ในซอฟต์แวร์คอมพิวเตอร์ที่ลูกค้าได้รับอันเป็นผลมาจากการปฏิบัติงานเพื่อความต้องการของรัฐและเทศบาล
  • 5) ปรับปรุงกลไกการตรวจสอบสภาพการแข่งขันเพื่อควบคุมการให้เงื่อนไขตลาดที่เท่าเทียมกันแก่ผู้พัฒนาซอฟต์แวร์ต่างๆ
  • 6) การพัฒนาแนวคิดและแผนปฏิบัติการเพื่อเพิ่มระดับ อาชีวศึกษาและการฝึกอบรมผู้ใช้ในด้านเทคโนโลยีสารสนเทศและการสื่อสาร
  • 7) การพัฒนารายการประเภท (ความหลากหลาย) ของซอฟต์แวร์ฟรีสำหรับคอมพิวเตอร์ ความได้เปรียบและความถูกต้องของการใช้งานส่วนใหญ่ได้รับการพิสูจน์แล้วจากการปฏิบัติทั่วโลก และ (หรือ) ได้รับการยอมรับจากผู้เข้าร่วมตลาดจำนวนมาก เช่นเดียวกับ การพัฒนาตัวแยกประเภทอื่น ๆ เพื่อวัตถุประสงค์ต่าง ๆ รวมถึงเพื่อจุดประสงค์ด้านมาตรฐาน
  • 8) การพัฒนาแนวคิดและแผนปฏิบัติการสำหรับการพัฒนาในสหพันธรัฐรัสเซียรวมถึงความต้องการของรัฐและเทศบาลในรูปแบบการบริการที่มุ่งเน้นสำหรับการเผยแพร่โปรแกรมคอมพิวเตอร์
  • การต่อต้านการทุจริต
  • ความปลอดภัย;
  • การปกป้องผลประโยชน์ของชาติ
  • ความเป็นมิตรกับพลเมือง
  • ความสะดวกในการปรับตัว
  • ผลประโยชน์ทางเศรษฐกิจ

คุณภาพของโปรแกรมคอมพิวเตอร์นั้นเทียบเท่ากับโปรแกรมเชิงพาณิชย์ นี่เป็นเพราะความจริงที่ว่าซอฟต์แวร์นี้ได้รับการทดสอบ เปลี่ยนแปลง ปรับปรุงโดยทุกคน ดังนั้นจำนวนนักพัฒนาที่ทำงานเพื่อปรับปรุงโปรแกรมจึงเท่ากับพนักงานของนักพัฒนาซอฟต์แวร์โอเพนซอร์ซเชิงพาณิชย์ (และในบางกรณีก็เกินจำนวนของพวกเขาอย่างมาก) .

ในด้านบวก ซอฟต์แวร์ดังกล่าวไม่เพียงเผยแพร่สู่สาธารณะเท่านั้น แต่ยังเชื่อถือได้อีกด้วย และเสรีภาพในการสร้างสรรค์สำหรับผู้เขียนซอฟต์แวร์ดังกล่าวมีความสำคัญมากกว่าค่าตอบแทน แน่นอนว่าต้องเคารพสิทธิ์ที่ไม่ใช่ทรัพย์สินในใบอนุญาตดังกล่าว สำหรับผู้เขียนใบอนุญาตซอฟต์แวร์โอเพ่นซอร์สแบบกระจาย สิ่งสำคัญอย่างยิ่งคือการสังเกตสิทธิ์ที่ไม่ใช่ทรัพย์สิน เช่น การติดเครื่องหมายป้องกัน ปีที่พิมพ์ครั้งแรก และชื่อผู้เขียนหรือผู้ถือลิขสิทธิ์รายอื่น

ทั้งหมดนี้ช่วยให้เราสามารถพูดได้ว่าซอฟต์แวร์โอเพ่นซอร์สกำลังได้รับความนิยมอย่างมาก ไม่เพียงแต่บริษัทชั้นนำของโลก เช่น IBM และ Hewlett Packard เท่านั้น แต่ยังรวมถึง บริษัท รัสเซียเป็นหนึ่งในผู้ใช้และพัฒนาโปรแกรมเหล่านี้ รวมถึงสำหรับลูกค้าต่างประเทศด้วย

พระราชกฤษฎีกาของรัฐบาลสหพันธรัฐรัสเซียเมื่อวันที่ 18 ตุลาคม 2550 หมายเลข 1447-r กำหนดสิทธิ์ในการใช้ซอฟต์แวร์ใด ๆ ที่มีรหัสโอเพ่นซอร์สในโรงเรียนของสหพันธรัฐรัสเซีย ในปี 2552 Federal Bailiff Service รายงานเกี่ยวกับการเปิดตัวซอฟต์แวร์โอเพ่นซอร์ส - Open Office เพื่อดำเนินการตามนโยบายของรัฐในด้านการใช้ซอฟต์แวร์ฟรี "ในเดือนเมษายน - พฤษภาคม 2552 มีการประชุมทางวิดีโอกับหัวหน้าหน่วยงานในอาณาเขตของ Federal Bailiff Service of Russia โดยใช้ซอฟต์แวร์ฟรี

เพื่อที่จะโพสต์ข้อมูลบนเว็บไซต์อย่างเป็นทางการของสำนักงานกลางของ FSSP ของรัสเซียอย่างทันท่วงทีและสม่ำเสมอเพื่อแจ้งให้ประชาชนและองค์กรทราบอย่างเป็นระบบเกี่ยวกับกิจกรรมของ FSSP ฝ่ายเทคโนโลยีสารสนเทศได้ดำเนินงานเพื่อสรุปแพลตฟอร์มซอฟต์แวร์และการออกแบบเว็บไซต์ ซึ่งทำให้สามารถขยายฟังก์ชันการทำงานของไซต์ได้อย่างมีนัยสำคัญ เพิ่มเนื้อหาข้อมูลและการเข้าร่วม"

แนวคิดของการพัฒนาซอฟต์แวร์เสรีในสหพันธรัฐรัสเซียถือเป็นการสร้างผลิตภัณฑ์ต่อไปนี้ก่อนปี 2010:

  • 1) โซลูชันสำนักงานมาตรฐานแบบบูรณาการสำหรับข้าราชการและพนักงานภาครัฐ
  • 2) โซลูชันมาตรฐานสำหรับการตรวจสอบการทำงานของสถาบันการศึกษา
  • 3) ซอฟต์แวร์สำหรับจุดรวมการเข้าถึงอินเทอร์เน็ต
  • 4) ซอฟต์แวร์สำหรับเว็บไซต์อินเทอร์เน็ตของบริการสาธารณะ
  • 5) แพลตฟอร์มบูรณาการสำหรับวัตถุประสงค์รัฐบาลอิเล็กทรอนิกส์;
  • 6) โซลูชันที่ปลอดภัยสำหรับสิ่งอำนวยความสะดวกที่สำคัญ
  • 7) การพัฒนารูปแบบเชิงบริการสำหรับการเผยแพร่โปรแกรมคอมพิวเตอร์

ในปัจจุบันหลายจุดที่ระบุไว้ได้บรรลุผลแล้ว ดังนั้นข้อกำหนดเฉพาะของข้อตกลงใบอนุญาตสำหรับการใช้ซอฟต์แวร์โอเพ่นซอร์สจึงถูกกำหนดโดยขอบเขตของสิทธิ์เฉพาะตัวที่โอนไปยังผู้รับใบอนุญาต สิ่งสำคัญคือต้องสังเกตว่า ข้อตกลงใบอนุญาตไม่ส่งผลกระทบต่อสิทธิส่วนบุคคลที่ไม่ใช่ทรัพย์สินของผู้เขียนโปรแกรม แต่อย่างใด นอกจากนี้ยังปกป้องสิทธิดังกล่าวในระดับที่สูงขึ้น โปรแกรมเหล่านี้มีความน่าเชื่อถือและปลอดภัยมากกว่าเนื่องจากสามารถตรวจสอบรหัสโปรแกรมและหากจำเป็นให้ตั้งโปรแกรมใหม่ซึ่งอยู่ภายใต้กรอบของการดำเนินการตามหลักคำสอนด้านความปลอดภัยข้อมูลของสหพันธรัฐรัสเซียรวมถึงยุทธศาสตร์ความมั่นคงแห่งชาติของรัสเซีย สหพันธรัฐจนถึงปี 2020 เป็นภารกิจพื้นฐานในการสร้างหลักประกันความมั่นคงของชาติ ในยุทธศาสตร์ความมั่นคงแห่งชาติ วิธีการรับรองความมั่นคงของชาติ รวมถึงเทคโนโลยี ตลอดจนเทคนิค ซอฟต์แวร์ ภาษา กฎหมาย องค์กร รวมถึงช่องทางโทรคมนาคมที่ใช้ในระบบความมั่นคงแห่งชาติเพื่อรวบรวม จัดทำ ประมวลผล ส่งหรือรับข้อมูลเกี่ยวกับสถานะความมั่นคงของชาติและมาตรการเสริมสร้างความเข้มแข็ง

การใช้โปรแกรมโอเพ่นซอร์สในดินแดนของสหพันธรัฐรัสเซียจะไม่เพียงทำให้โปรแกรมคอมพิวเตอร์มีความหลากหลาย แต่ยังเพิ่มจำนวนผู้พัฒนาซึ่งจะช่วยลดจำนวนผู้ผูกขาด นอกจากนี้ยังเป็นสัญลักษณ์ของการพัฒนาปรากฏการณ์ใหม่เชิงคุณภาพในความสัมพันธ์ระหว่างผู้เขียนโปรแกรมคอมพิวเตอร์และผู้ใช้ซอฟต์แวร์โอเพ่นซอร์สในดินแดนของสหพันธรัฐรัสเซีย ปัจจัยบวกอีกประการหนึ่งคือความจริงที่ว่าคุณสมบัติอาณาเขตที่ใช้โดยกฎหมายสำหรับสิทธิพิเศษนั้นไม่มีอยู่ในโปรแกรมโอเพ่นซอร์ส ดังนั้นการใช้โปรแกรมประเภทดังกล่าวในดินแดนของสหพันธรัฐรัสเซียจะช่วยกำจัดการละเมิดลิขสิทธิ์จำนวนมาก

ด้วยการเปิดตัวมาตรฐานแห่งชาติของสหพันธรัฐรัสเซีย GOST R 54593-201 ในปี 2555 ซอฟต์แวร์ฟรีจึงเป็นแพลตฟอร์มที่ปลอดภัย เชื่อถือได้ และคุ้มค่าทางการเงินสำหรับการสร้าง ระบบข้อมูลในองค์กรและภาครัฐ ซอฟต์แวร์เสรีให้: ความเป็นอิสระทางเทคโนโลยีของการพัฒนาซอฟต์แวร์และการใช้งานจากผู้ผูกขาด; ความเป็นอิสระในการเลือกแพลตฟอร์มฮาร์ดแวร์ ต้นทุนเริ่มต้นต่ำของอุปกรณ์ การตรวจจับข้อบกพร่องในซอฟต์แวร์ตั้งแต่เนิ่นๆ และความสามารถในการแก้ไขได้อย่างรวดเร็ว ไม่มีการบังคับชำระเงินสำหรับสิทธิ์ในการใช้ผลิตภัณฑ์

ซอฟต์แวร์เสรีใช้หลักการ ระบบเปิดซึ่งปัจจุบันกระแสหลักในการพัฒนาของสาขาเทคโนโลยีสารสนเทศ ระบบ ตลอดจนเทคโนโลยีคอมพิวเตอร์ที่รองรับเทคโนโลยีเหล่านี้ อุดมการณ์ของระบบเปิดถูกนำมาใช้ในการพัฒนาล่าสุดโดยบริษัทชั้นนำทั้งหมด - ซัพพลายเออร์อุปกรณ์คอมพิวเตอร์ การส่งผ่านข้อมูล ซอฟต์แวร์ และการพัฒนาระบบสารสนเทศประยุกต์

ดังนั้นเรามาเปิดเผยพลังที่ถ่ายโอนภายใต้ใบอนุญาตประเภทต่างๆ สำหรับโปรแกรมคอมพิวเตอร์ด้วยรหัสโอเพ่นซอร์ส

  • ดู: มาตรฐานแห่งชาติของสหพันธรัฐรัสเซีย GOST R 54593 201 "เทคโนโลยีสารสนเทศ ซอฟต์แวร์เสรี บทบัญญัติทั่วไป" ซึ่งได้รับอนุมัติจากคำสั่งของกระทรวงอุตสาหกรรมและการค้าของสหพันธรัฐรัสเซียและหน่วยงานกำกับดูแลทางเทคนิคและมาตรวิทยาแห่งสหพันธรัฐลงวันที่ 6 ธันวาคม 2554 เลขที่ 718-st.
  • อนุมัติโดยประธานาธิบดีแห่งสหพันธรัฐรัสเซียเมื่อวันที่ 9 กันยายน 2543: ดูเว็บไซต์ของกระทรวงต่างประเทศรัสเซีย
  • คำสั่งของประธานาธิบดีแห่งสหพันธรัฐรัสเซียเมื่อวันที่ 12 พฤษภาคม 2552 ฉบับที่ 537 "ในยุทธศาสตร์ความมั่นคงแห่งชาติของสหพันธรัฐรัสเซียจนถึงปี 2563"

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

ใบอนุญาตแบบ "เปิด" ไม่จำเป็นต้องให้ซอฟต์แวร์ฟรีเสมอไป แต่โครงการโอเพ่นซอร์สที่ประสบความสำเร็จมากที่สุดหลายโครงการนั้นฟรี

ส่วนใหญ่ล้นหลาม เปิดโปรแกรมได้พร้อมกัน ฟรี(GNU GPL) และในทางกลับกัน เนื่องจากคำจำกัดความของโอเพ่นซอร์สและซอฟต์แวร์เสรีนั้นใกล้เคียงกัน และใบอนุญาตส่วนใหญ่ก็ตรงกันทั้งสองอย่าง

ความแตกต่างระหว่างการเคลื่อนไหว โอเพ่นซอร์สและ ซอฟต์แวร์ฟรีส่วนใหญ่เกี่ยวกับลำดับความสำคัญ ผู้สนับสนุนโอเพ่นซอร์สมุ่งเน้นไปที่ ประสิทธิภาพของโอเพ่นซอร์สโปรแกรมเป็นวิธีการพัฒนา ผู้เสนอซอฟต์แวร์เสรีดำเนินการจากการพิจารณาเชิงอุดมการณ์ และเชื่อว่าเป็นอย่างแม่นยำ สิทธิการกระจาย แก้ไข และศึกษาโปรแกรมเป็นข้อได้เปรียบหลัก ซอฟต์แวร์ฟรี.

ระบบปฏิบัติการ ไมโครซอฟท์ วินโดวส์

ข้าว. 39. โลโก้ OC Windows

MS Windows (อ่านว่า วินโดวส์) เป็นตระกูลระบบปฏิบัติการจากไมโครซอฟต์ หัวหน้าไมโครซอฟท์ คอร์ปอเรชั่น - บิลเกตส์.

ตั้งแต่ปี 1995 เป็นต้นมา Windows เป็นระบบปฏิบัติการที่ได้รับความนิยมสูงสุดในตลาดคอมพิวเตอร์ส่วนบุคคล ซึ่งเป็นมาตรฐานโดยพฤตินัย ภายในปี 2548 Microsoft Windows ได้รับการติดตั้งบนคอมพิวเตอร์ส่วนบุคคลมากกว่า 89%

อย่างไรก็ตาม ผู้ใช้จำนวนมากเลือกใช้ Windows เนื่องจากไม่คุ้นเคยกับทางเลือกอื่นๆ เช่น MacOS, Linux, BSD ในรัสเซียจนถึงต้นทศวรรษ 2000 คอมพิวเตอร์ส่วนบุคคลเกือบทั้งหมดขายพร้อมระบบปฏิบัติการที่ติดตั้งไว้ล่วงหน้า ระบบวินโดวส์. การต่อสู้กับการจำหน่ายผลิตภัณฑ์ซอฟต์แวร์เวอร์ชันละเมิดลิขสิทธิ์ได้นำไปสู่ความสนใจในระบบปฏิบัติการอื่นๆ ตัวอย่างเช่น เป็นไปได้ที่จะซื้อคอมพิวเตอร์ส่วนบุคคลที่ติดตั้งไว้ล่วงหน้า ฟรีระบบปฏิบัติการลินุกซ์.

ประวัติการเผยแพร่เวอร์ชัน Windows


วินโดวส์ 1.0 (1985)

1. วินโดวส์ 2.0 (1987)

2. วินโดวส์/386 (1987)

3. วินโดวส์ 3.0 (1990)

4. วินโดวส์ 3.1 (พ.ศ. 2535)

5. วินโดว์ เอ็นที 3.1 (1993)

6. วินโดว์ เอ็นที 3.5 (1994)

7. วินโดวส์ 95 (1995)

8. วินโดว์ เอ็นที 4.0 (1996)

9. วินโดวส์ 98 (1998)

10. วินโดวส์ 2000 (2000)

11 วินโดวส์ มี (2000)

12. วินโดว์ XP (2001)

13. วินโดว์ 2003 (2003)

14. วินโดว์ วิสต้า (2007)

15. ชื่อผลงาน Windows เวียนนา (2010)


ผลิตภัณฑ์ซอฟต์แวร์รวมและซอฟต์แวร์ประยุกต์

ระบบปฏิบัติการ Microsoft Windows ประกอบด้วย การใช้งานมาตรฐาน, เช่น เบราว์เซอร์ Internet Explorer, ไคลเอนต์จดหมาย Outlook Express, จานเสียง วินโดวส์มีเดียผู้เล่น.

มีการโต้เถียงกันมากมายเกี่ยวกับการรวมผลิตภัณฑ์มาตรฐานดังกล่าวไว้ในระบบปฏิบัติการ Windows เนื่องจากสิ่งนี้สร้างอุปสรรคร้ายแรงต่อการจัดจำหน่ายผลิตภัณฑ์คู่แข่ง

ข้าว. 40. โลโก้แพ็คเกจ MS Office

สำหรับ MS Windows นั้นสะดวกและเชี่ยวชาญโดยผู้ใช้ส่วนใหญ่ ชุดแอปพลิเคชัน Microsoft Office, รวมทั้ง:

โปรแกรมประมวลผลคำ เอ็มเอส เวิร์ด,

โปรเซสเซอร์สเปรดชีต เอ็มเอส เอ็กเซล,

ออแกไนเซอร์ เอ็มเอส เอาท์ลุค,

แอพลิเคชันสำหรับการเตรียมการนำเสนอ เอ็มเอส พาวเวอร์พอยต์,

แอปพลิเคชันจัดการฐานข้อมูล เอ็มเอส แอคเซส.

อย่าลืมว่าทั้ง Windows และแอปพลิเคชัน Windows ยอดนิยมส่วนใหญ่มีใบอนุญาตลิขสิทธิ์ เช่น เป็น ที่เป็นกรรมสิทธิ์โดย. ดังนั้นจะต้องซื้อสำเนาของโปรแกรมดังกล่าวแต่ละชุดด้วยเงิน ตัวอย่างเช่น ณ สิ้นปี 2549 ราคา Windows XP Home Edition Russian BOX (SP2) อยู่ที่ 185 ดอลลาร์ ส่วนซีดีภาษารัสเซียของ Office 2003 อยู่ที่ 322 ดอลลาร์

การใช้ซอฟต์แวร์ที่ไม่มีใบอนุญาต (ละเมิดลิขสิทธิ์) ที่ได้รับการคุ้มครองโดยใบอนุญาตลิขสิทธิ์ แสดงว่าคุณละเมิดกฎหมายลิขสิทธิ์

GNU/ระบบปฏิบัติการลินุกซ์

ข้าว. 41. โลโก้ของ GNU/Linux OS คือนกเพนกวินทักซ์

ระบบปฏิบัติการ GNU/Linux (ออกเสียงว่า "gnu linux") เป็นระบบปฏิบัติการที่เหมือน UNIX ฟรี โดยปกติแล้ว ด้วยเหตุผลทางประวัติศาสตร์และความกะทัดรัด ระบบนี้เรียกง่ายๆ ว่า "Linux" เป็นทางเลือกที่ทรงพลังที่สุดสำหรับ MS Windows ซึ่งเป็นที่นิยมในฐานะระบบปฏิบัติการเซิร์ฟเวอร์และได้รับความนิยมอย่างรวดเร็วในฐานะระบบปฏิบัติการเดสก์ท็อปในช่วงไม่กี่ปีที่ผ่านมาเนื่องจากการบังคับใช้ที่เพิ่มขึ้น การใช้งานที่ได้รับอนุญาต Windows OS โดย Microsoft ในเวอร์ชัน XP และ Vista

ระบบปฏิบัติการ GNU/Linux มักจะมีโปรแกรมที่เสริมระบบปฏิบัติการนี้ และโปรแกรมแอปพลิเคชันที่ทำให้เป็นสภาพแวดล้อมการทำงานแบบมัลติฟังก์ชั่นเต็มรูปแบบ

GNU/Linux ไม่เหมือนกับระบบปฏิบัติการอื่นๆ โดยส่วนใหญ่ไม่ได้มาพร้อมกับบันเดิลที่เป็น "ทางการ" ชุดเดียว GNU/Linux มีสิ่งที่เรียกว่าจำนวนมากแทน การกระจายซึ่งเชื่อมโยงโปรแกรม GNU กับเคอร์เนล Linux และโปรแกรมอื่นๆ การกระจายที่พบมากที่สุดในโลก:

อเมริกัน หมวกสีแดงและผู้สืบทอดของเขา เฟโดร่า คอร์;

ภาษาเยอรมัน ซูเซ่;

ภาษาฝรั่งเศส มันดริวา(อดีต แมนเดรก);

การกระจายระหว่างประเทศในระดับชาติ เดเบียน GNU/ลินุกซ์;

หนึ่งในการกระจายที่เก่าแก่ที่สุด สแลคแวร์;

การกระจายที่ค่อนข้างเล็กและกำลังพัฒนาอย่างแข็งขัน เจนทู;

การกระจายอายุน้อย แต่มีแนวโน้ม อูบุนตู ลินุกซ์.

ผู้สร้างเคอร์เนล Linux - ลินุส ทอร์วัลด์ส. GNU/Linux ไม่มีศูนย์การพัฒนาทางภูมิศาสตร์ ไม่มีองค์กรใดเป็นเจ้าของระบบนี้ ไม่แม้แต่คนเดียว จุดโฟกัส. โปรแกรมสำหรับ GNU/Linux เป็นผลมาจากโครงการนับพัน โครงการเหล่านี้บางโครงการเป็นแบบรวมศูนย์ บางโครงการกระจุกตัวอยู่ในบริษัท แต่ส่วนใหญ่จะรวบรวมโปรแกรมเมอร์จากทั่วโลกที่รู้จักกันผ่านการติดต่อทางจดหมายเท่านั้น ทุกคนสามารถสร้างโครงการของตนเองหรือเข้าร่วมกับโครงการที่มีอยู่ และหากสำเร็จ ผู้ใช้หลายล้านคนจะรู้จักผลงานดังกล่าว ผู้ใช้มีส่วนร่วมในการทดสอบซอฟต์แวร์ฟรี สื่อสารโดยตรงกับนักพัฒนา ซึ่งช่วยให้พวกเขาค้นหาและแก้ไขข้อบกพร่องและนำคุณสมบัติใหม่ไปใช้ได้อย่างรวดเร็ว

ในตลาดระบบปฏิบัติการเซิร์ฟเวอร์ในออสเตรเลีย Linux มีส่วนแบ่งไปแล้วประมาณ 30% ชาวออสเตรเลียตามมาด้วยชาวบราซิล รัฐบาลบราซิลได้ตัดสินใจเลิกใช้จ่ายเงินไปกับซอฟต์แวร์และย้ายจากผลิตภัณฑ์ของไมโครซอฟต์ไปใช้ระบบโอเพ่นซอร์ส โดยเฉพาะระบบปฏิบัติการลีนุกซ์ สาเหตุหลักของการเปลี่ยนแปลงคือเศรษฐกิจ ในประเทศของเราตลาด Linux ยังเล็กอยู่

ระบบไฟล์

ข้อมูลทั้งหมดในคอมพิวเตอร์จะถูกเก็บไว้ในไฟล์ซึ่งระบบปฏิบัติการใช้งานได้

ไฟล์(ไฟล์)- เป็นชื่อลำดับของไบต์การจัดเก็บถาวร ชนิดต่างๆข้อมูล.

ไฟล์ถูกจัดอยู่ใน ไดเร็กทอรีเรียกอีกอย่างว่าไดเร็กทอรีหรือโฟลเดอร์ แคตตาล็อกเป็นไฟล์ที่เก็บข้อมูลเกี่ยวกับไฟล์อื่น: ชื่อ, ขนาด, วันที่สร้าง, ที่อยู่ไฟล์บนดิสก์

ไดเร็กทอรีใด ๆ สามารถมีหมายเลขใดก็ได้ ไดเรกทอรีย่อยซึ่งแต่ละไฟล์สามารถจัดเก็บไฟล์และไดเร็กทอรีอื่นๆ

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

ไฟล์และไดเร็กทอรีเป็นอ็อบเจ็กต์ที่สำคัญที่สุดในระบบไฟล์ ระบบไฟล์- ข้อบังคับที่กำหนดวิธีการจัดระเบียบ การจัดเก็บ และการตั้งชื่อข้อมูลบนสื่อ กำหนดรูปแบบสำหรับการจัดเก็บไฟล์จริง ระบบไฟล์เฉพาะจะกำหนดขนาดของชื่อไฟล์ ขนาดไฟล์สูงสุดที่เป็นไปได้ ชุดแอตทริบิวต์ของไฟล์

วิธีการจัดข้อมูลเป็นไบต์เรียกว่า รูปแบบไฟล์. ในการอ่านไฟล์ เช่น สเปรดชีต คุณจำเป็นต้องรู้ว่าจำนวนไบต์แทนตัวเลข (สูตร ข้อความ) ในแต่ละเซลล์อย่างไร หากต้องการอ่านไฟล์แก้ไขข้อความ เราต้องรู้ว่าไบต์ใดแทนอักขระและฟอนต์หรือฟิลด์ใด และข้อมูลอื่นๆ

ไฟล์ทั้งหมดสามารถแบ่งออกเป็นสองส่วนตามเงื่อนไข - ข้อความและ ไบนารี่.

ไฟล์ข้อความ- ข้อมูลประเภทที่พบมากที่สุดในโลกคอมพิวเตอร์ ในการจัดเก็บอักขระแต่ละตัว ส่วนใหญ่มักจะจัดสรรหนึ่งไบต์ และการเข้ารหัสไฟล์ข้อความจะดำเนินการโดยใช้ตารางการเข้ารหัสพิเศษ

แต่สะอาด ไฟล์ข้อความมีน้อยลงเรื่อย ๆ ผู้คนต้องการให้เอกสารมีรูปภาพและไดอะแกรมและใช้ฟอนต์ต่างๆ ผลที่ได้คือรูปแบบต่างๆ ที่ปรากฏเป็นการผสมผสานระหว่างข้อมูลที่เป็นข้อความ กราฟิก และรูปแบบอื่นๆ

ไบนารีซึ่งแตกต่างจากข้อความมันไม่ง่ายที่จะดูและตามกฎแล้วไม่มีคำที่เราคุ้นเคยในคำเหล่านั้น - มีเพียงอักขระที่เข้าใจยากจำนวนมากเท่านั้น ไฟล์เหล่านี้ไม่ได้มีไว้เพื่อให้มนุษย์สามารถอ่านได้โดยตรง ตัวอย่างของไฟล์ไบนารี ได้แก่ โปรแกรมปฏิบัติการและไฟล์กราฟิก

แต่ละไฟล์บนดิสก์มีป้ายกำกับ ( ชื่อเต็ม) ซึ่งประกอบด้วย 2 ส่วนคือ ชื่อและ ส่วนขยายคั่นด้วยจุด

นามสกุลไฟล์- ลำดับอักขระเพิ่มเติมที่เพิ่มลงในชื่อไฟล์และมีวัตถุประสงค์เพื่อระบุประเภท (รูปแบบ) ของไฟล์ นี่เป็นวิธีหนึ่งที่ผู้ใช้หรือซอฟต์แวร์คอมพิวเตอร์สามารถกำหนดประเภทของข้อมูลที่จัดเก็บไว้ในไฟล์ได้

ในระบบปฏิบัติการรุ่นแรกๆ ความยาวของส่วนขยายถูกจำกัดไว้ที่สามอักขระ ในระบบปฏิบัติการสมัยใหม่ไม่มีข้อจำกัดนี้

ระบบปฏิบัติการหรือตัวจัดการไฟล์สามารถจับคู่นามสกุลไฟล์กับแอปพลิเคชันได้

เมื่อผู้ใช้เปิดไฟล์ที่มีนามสกุลที่ลงทะเบียนไว้ โปรแกรมที่เกี่ยวข้องกับนามสกุลนั้นจะเปิดขึ้นโดยอัตโนมัติ บางนามสกุลระบุว่าไฟล์นั้นเป็นโปรแกรม บ่อยครั้ง นามสกุลไฟล์จะแสดงให้ผู้ใช้เห็นพร้อมกับไอคอน

ไดรเวอร์

อุปกรณ์ต่างๆ สามารถเชื่อมต่อกับพีซีได้: การ์ดแสดงผล, การ์ดเสียง, เครื่องพิมพ์, สแกนเนอร์, เครื่องมือควบคุม, ดิสก์ไดรฟ์, กล้องดิจิทัล, โทรศัพท์มือถือ... แต่ละคนมีชุดคำสั่งของตัวเอง - "ภาษา" ของตัวเอง เพื่อให้ระบบปฏิบัติการเฉพาะสามารถควบคุมอุปกรณ์เฉพาะได้พวกเขาหันไปใช้ความช่วยเหลือของโปรแกรม "นักแปล" ที่รู้ภาษาคำสั่ง อุปกรณ์เฉพาะและในทางกลับกัน ภาษาของระบบปฏิบัติการเฉพาะที่อุปกรณ์นี้ควรใช้งานได้

โปรแกรมดังกล่าวเรียกว่า คนขับรถ(ไดรเวอร์) และมาพร้อมกับอุปกรณ์โดยผู้ผลิต โดยทั่วไปแล้วผู้ผลิตฮาร์ดแวร์จะโพสต์ไดรเวอร์อุปกรณ์ที่พวกเขาสร้างขึ้นบนเว็บไซต์ของตน

Peter Van Valkenburgh หัวหน้าฝ่ายวิจัยที่ Coin Center สมาชิกคณะกรรมการบริหารของ Zcash Foundation อธิบายว่าทำไม การพัฒนาซอฟต์แวร์โอเพ่นซอร์สมีความสำคัญต่อการสร้างความไว้วางใจและความปลอดภัยในเครือข่ายบล็อกเชน

รหัสคอมพิวเตอร์ที่อยู่เบื้องหลัง cryptocurrencies ที่สำคัญทั้งหมดและโครงการ open blockchain กำลังได้รับการพัฒนาเป็นซอฟต์แวร์โอเพ่นซอร์ส หน่วยงานกำกับดูแลและผู้กำหนดนโยบายที่พยายามเข้าใจว่า cryptocurrencies คืออะไร แต่ไม่คุ้นเคยกับซอฟต์แวร์ดังกล่าวอาจถูกหลอกให้เชื่อว่าระบบเหล่านี้ (และควร) ได้รับการพัฒนาโดยบริษัทการค้าหนึ่งแห่งหรือมากกว่า ในขณะที่ซอฟต์แวร์ที่รู้จักกันดีส่วนใหญ่ได้รับการพัฒนาด้วยวิธีนี้ (เช่น Windows ของ Microsoft หรือ RDBMS ของ Oracle) สิ่งต่างๆ ในโครงการโอเพ่นซอร์สจะแตกต่างกัน และความแตกต่างนี้สามารถและควรก่อตัวขึ้น ความคิดเห็นของประชาชน. ซอฟต์แวร์โอเพ่นซอร์สถูกสร้างขึ้นร่วมกัน แจกจ่ายอย่างเสรี เผยแพร่อย่างเปิดเผย และพัฒนาเป็นผลิตภัณฑ์ชุมชน ไม่ใช่ทรัพย์สินของบริษัทหรือบุคคลใดบริษัทหนึ่ง ในกรณีนี้ จะไม่มีการผูกขาด ไม่มีบริษัทหรือบุคคลใดบริษัทหนึ่งที่จะสร้างและขายซอฟต์แวร์และเป็นเจ้าของซอฟต์แวร์ เช่นเดียวกับที่ไม่มีบริษัทเดียวที่เป็นเจ้าของเครือข่าย bitcoin จึงไม่มีบริษัทเดียวที่ผลิตซอฟต์แวร์ที่ทำงานบนคอมพิวเตอร์ที่เชื่อมต่ออินเทอร์เน็ต และสร้างเครือข่ายขึ้นมา การกระจายอำนาจในลักษณะนี้นำมาซึ่งประโยชน์พื้นฐานบางอย่างที่อาจเข้าใจได้ยากสำหรับผู้ที่ไม่คุ้นเคยกับการพัฒนาซอฟต์แวร์ เพื่อให้เข้าใจถึงพลังและธรรมชาติของโอเพ่นซอร์สได้ดียิ่งขึ้น การมีข้อมูลเชิงลึกเกี่ยวกับซอฟต์แวร์โอเพ่นซอร์สที่ประสบความสำเร็จโดยเฉพาะสักชิ้นจะเป็นประโยชน์ เรากำลังพูดถึงระบบปฏิบัติการลีนุกซ์

เปิดแหล่งที่มาทุกที่

เป็นการยากที่จะคำนวณว่าคุณใช้ Linux กี่ครั้งต่อวัน เนื่องจากระบบปฏิบัติการนี้เป็นพื้นฐานของเซิร์ฟเวอร์ส่วนใหญ่บนอินเทอร์เน็ต เมื่อใดก็ตามที่คุณเยี่ยมชม Facebook, Google, Pinterest, Wikipedia และเว็บไซต์หลักอื่นๆ นับพัน บริการที่เว็บไซต์เหล่านี้ (แตกต่างกันมาก) มอบให้คุณ คุณกำลังติดต่อกับคอมพิวเตอร์ที่ทำงานบนระบบปฏิบัติการ Linux มากที่สุด ลินุกซ์สามารถพบได้ใกล้กว่ามาก เป็นไปได้มากว่าคุณจะมีมันอยู่ที่ปลายนิ้วของคุณ สมมติว่าระบบปฏิบัติการของสมาร์ทโฟน Android ใช้ Linux หากคุณมี Chromebook แสดงว่าคุณกำลังใช้แล็ปท็อปที่ใช้ Linux ระบบปฏิบัติการนี้ถูกนำมาใช้มากขึ้นในโทรทัศน์ เทอร์โมสตัท ระบบมัลติมีเดียในเครื่องบิน รถยนต์ ฯลฯ

ทำไมมันถึงน่าสนใจ? เนื่องจากลีนุกซ์ไม่ใช่ผลิตภัณฑ์ของโปรแกรมเมอร์คนเดียวหรือแม้แต่กลุ่มโปรแกรมเมอร์ ไม่เหมือนกับ MacOS หรือ Windows ตรงที่มันไม่ได้ถูกพัฒนาโดยบริษัทเดียวหรือหลายสิบบริษัท Linux มีผู้ร่วมให้ข้อมูลหลายพันคน ตามที่รายงานในปี 2558 โดย Linux Foundation (องค์กรไม่แสวงหาผลกำไรที่ส่งเสริมการพัฒนาระบบปฏิบัติการแบบเปิด) นักพัฒนาประมาณ 14,000 คนจากบริษัทต่างๆ กว่า 1,300 แห่งได้ให้ข้อมูลโค้ด ในปี 2558 เพียงปีเดียว นักพัฒนา 2,355 คนมีส่วนร่วมในการปรับปรุงโค้ดเป็นครั้งแรก ดังนั้นจากการคาดคะเนสามารถคำนวณได้ว่าภายในปี 2560 มีคนบริจาคประมาณ 18,000 คน และจำนวนนี้จะเพิ่มขึ้น

ใครจะคิดเมื่อห้าปีที่แล้ว (ในปี 1991) ว่าระบบปฏิบัติการระดับโลกสามารถหลอมรวมเป็นหนึ่งเดียวได้ราวกับมีเวทมนตร์จากเศษเสี้ยวของงานอิสระของนักพัฒนาหลายพันคนที่กระจายอยู่ทั่วโลกและเชื่อมโยงกันโดย หัวข้อผีของอินเทอร์เน็ต?

ประโยชน์ของโอเพ่นซอร์ส

ในหนังสือของเขา Raymond พูดถึงวิธีที่โอเพ่นซอร์สเป็นวิธีการปฏิวัติในการสร้างเทคโนโลยี ลีนุกซ์ซึ่งมีนักพัฒนาอิสระหลายพันคนทำงานร่วมกันในที่สาธารณะ เป็นตัวอย่างโมเดลโอเพ่นซอร์ส Cryptocurrencies เป็นไปตามรูปแบบเดียวกัน แต่เราจะพูดถึงเรื่องนี้ด้านล่าง

Raymond เน้นข้อดีหลายประการของโมเดลโอเพ่นซอร์ส สิ่งสำคัญในบริบทของการสนทนาของเรามีดังต่อไปนี้:

  • ซอฟต์แวร์ที่ดีทุกชิ้นเริ่มต้นจากความพึงพอใจของความปรารถนาส่วนตัวของผู้พัฒนานักพัฒนาโอเพ่นซอร์สส่วนใหญ่มีแรงจูงใจจากความต้องการใช้ผลิตภัณฑ์ที่พวกเขาสร้างขึ้นเป็นการส่วนตัว พวกเขาไม่ผูกพันตามสัญญาที่บังคับให้พวกเขาสร้างสิ่งหนึ่งให้อีกสิ่งหนึ่ง พวกเขามีความต้องการส่วนตัวที่พวกเขาตอบสนอง ดังนั้น แรงจูงใจที่แตกต่างกันเชิงคุณภาพจึงเกิดขึ้น ทำให้เกิดความรู้โดยละเอียดเกี่ยวกับปัญหา
  • โปรแกรมเมอร์ที่ดีรู้ว่าต้องเขียนอะไร ผู้ยิ่งใหญ่รู้ว่าควรเขียนอะไรใหม่ (และใช้ซ้ำ)เมื่อการพัฒนาเสร็จสิ้นอย่างเปิดเผย จะสามารถหลีกเลี่ยงความซ้ำซ้อนได้ และสามารถระบุรหัสที่มีปัญหา ซับซ้อน หรือซ้ำซ้อนและทำให้ง่ายขึ้นได้
  • เมื่อคุณหมดความสนใจในโปรแกรม หน้าที่สุดท้ายของคุณต่อโปรแกรมคือส่งต่อให้กับผู้สืบทอดที่มีความสามารถ ผู้คนเข้าและออกจากโครงการโอเพ่นซอร์สตามความสนใจและความเชี่ยวชาญของพวกเขา ไม่มีใครทำงานในโครงการที่ไม่น่าสนใจอีกต่อไป จิตใจที่สดชื่นเกิดขึ้นใหม่โดยเสนอมุมมองที่แตกต่างกันเกี่ยวกับปัญหาเก่าหรือมุมมองใหม่
  • การมองว่าผู้ใช้เป็นเพื่อนนักพัฒนาเป็นวิธีที่ง่ายที่สุดในการปรับปรุงโค้ดและดีบักซอฟต์แวร์อย่างมีประสิทธิภาพ ผู้ใช้โอเพ่นซอร์สจำนวนมากช่วยระบุปัญหาและแนะนำวิธีแก้ปัญหา เส้นแบ่งระหว่างผู้บริโภคและผู้ผลิตซอฟต์แวร์โอเพ่นซอร์สไม่ชัดเจน: การทำงานกับซอฟต์แวร์นั้นโปร่งใส ดำเนินการต่อหน้าสาธารณะชน และทุกคนมีส่วนร่วมในกระบวนการสร้าง
  • ด้วยฐานผู้ทดสอบเบต้าและนักพัฒนาที่ใหญ่พอ ปัญหาเกือบทั้งหมดจะผ่านการรับรองอย่างรวดเร็ว และทางออกของมันจะชัดเจนสำหรับใครบางคนอย่างแน่นอน สัจพจน์นี้มีชื่อว่า Linus Law ตามชื่อ Linus Torvalds ผู้สร้างเคอร์เนล Linux ซึ่งยังคงเป็นผู้พัฒนาหลักของระบบปฏิบัติการนี้มาเป็นเวลานาน เมื่อกระบวนการพัฒนาโค้ดถูกปิด นักพัฒนาจะเสี่ยงต่อการพลาดจุดอ่อนหรือไม่สังเกตเห็นข้อผิดพลาดบางอย่าง การพัฒนาในสภาพแวดล้อมของผู้ใช้ระดับสูงด้วยวิสัยทัศน์ที่ไม่เหมือนใครจะเพิ่มโอกาสที่ข้อบกพร่องจะถูกระบุและแก้ไข ทำให้ซอฟต์แวร์โอเพ่นซอร์สมีความปลอดภัยและยืดหยุ่นมากขึ้น

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

กฎหมายและซอฟต์แวร์ฟรี

กฎหมายปัจจุบันสนับสนุนและในบางกรณีสนับสนุนการพัฒนาซอฟต์แวร์โอเพ่นซอร์ส เช่นเดียวกับซอฟต์แวร์ทั้งหมด ได้รับการคุ้มครองโดยลิขสิทธิ์ แต่ผู้เขียนออกรหัสพร้อมสิทธิ์การใช้งานที่อนุญาตให้ทุกคนใช้และแก้ไขโดยไม่ได้รับอนุญาตเป็นการเฉพาะหรือมีการจ่ายเงินใด ๆ ให้กับผู้เขียน (นั่นคือ มีใบอนุญาตที่พัฒนาโดยสถาบันแมสซาชูเซตส์แห่ง เทคโนโลยี - เอ็มไอที).

ใบอนุญาตบางประเภทมีข้อกำหนดว่าซอฟต์แวร์อนุพันธ์จะออกภายใต้ข้อกำหนดเดียวกัน ด้วยโครงร่างนี้ ฐานโอเพ่นซอร์สจะเติบโตและแพร่กระจาย ปรากฏการณ์นี้เรียกว่า Free Software License หรือ LGPL-3 ซึ่งเป็น General Public License ที่น้อยกว่า

โอเพ่นซอร์สในโครงการ cryptocurrencies และโทเค็น

ลีนุกซ์อาจเป็นตัวอย่างที่ใหญ่ที่สุดและสำคัญที่สุดของโมเดลโอเพ่นซอร์ส แต่ก็มีตัวอย่างอื่นๆ ซึ่งรวมถึงโครงการ cryptocurrency และ blockchain ที่สำคัญทั้งหมด พวกเขาทั้งหมดสร้าง เครือข่ายคอมพิวเตอร์ช่วยให้ผู้เข้าร่วมสามารถบรรลุข้อตกลงเกี่ยวกับข้อมูลที่ใช้ร่วมกัน (บล็อกเชนสกุลเงินดิจิทัล)

ซอฟต์แวร์ที่อนุญาตให้ผู้เข้าร่วมเชื่อมต่อกับเครือข่ายเรียกว่าไคลเอนต์ และเป็นซอฟต์แวร์โอเพ่นซอร์ส บ่อยครั้ง ซอฟต์แวร์ไคลเอนต์ได้รับการพัฒนาโดยบุคคลที่ไม่เกี่ยวข้องหลายรายในฐานะซอฟต์แวร์เครือข่ายรุ่นธรรมดา (เช่น ที่เรียกว่าไคลเอนต์อ้างอิง) บนพื้นฐานของการขุด กระเป๋าเงิน การแลกเปลี่ยน หรือซอฟต์แวร์อื่น ๆ ที่เข้ากันได้กับเครือข่ายที่สามารถสร้างได้

ลูกค้า แกน bitcoin- ผลงานจากนักพัฒนาอิสระมากกว่า 450 คนที่มีส่วนร่วมในการพัฒนาโค้ดมากกว่า 15,000 ครั้ง ซอฟต์แวร์นี้มีให้ใช้งานฟรีและดัดแปลงตามใบอนุญาตซอฟต์แวร์เสรีของ MIT และประวัติการพัฒนาทั้งหมดสามารถดูได้ในที่เก็บข้อมูลสาธารณะบน Github - บริการคลาวด์ทำให้ทุกคนสามารถสร้างบัญชี อัปโหลดโค้ดใหม่ และติดตามการเปลี่ยนแปลงได้ หากพื้นที่เก็บข้อมูลที่คุณสร้างเปิดให้สาธารณะตรวจสอบ แสดงความคิดเห็น และเสนอแนะการเปลี่ยนแปลง คุณไม่จำเป็นต้องจ่ายเงินสำหรับบัญชี Github ด้วยซ้ำ

พื้นที่เก็บข้อมูลสาธารณะยังติดตามสิ่งที่เรียกว่าทางแยกของไคลเอนต์ดั้งเดิม Fork จะสร้างสำเนาของซอฟต์แวร์ต้นฉบับ ซึ่งสามารถแก้ไขเพื่อจุดประสงค์ใดวัตถุประสงค์หนึ่งได้โดยไม่ต้องเปลี่ยนที่เก็บข้อมูลดั้งเดิม นักพัฒนาแยกพื้นที่เก็บข้อมูล Bitcoin Core Github ได้อย่างอิสระเพื่อสร้างแอปพลิเคชันที่เข้ากันได้กับ bitcoin เฉพาะ (เช่นกระเป๋าเงินสมาร์ทโฟน) หรือ cryptocurrency ใหม่ที่ไม่รองรับเครือข่าย bitcoin อีกต่อไปและเกี่ยวข้องกับการสร้างเครือข่าย cryptocurrency ใหม่ (เช่น เคยเป็นด้วย Litecoin หรือ Zcash) จนถึงปัจจุบัน ไคลเอนต์ Bitcoin Core เดิมถูก Forked มากกว่า 10,000 ครั้ง และที่เก็บข้อมูลใหม่ที่เกิดขึ้นแสดงว่างานอนุพันธ์ยังคงดำเนินต่อไป

ขณะนี้มีพื้นที่เก็บข้อมูลอย่างน้อย 121 แห่งบน Ethereum ซึ่งแต่ละแห่งมุ่งเน้นไปที่ลักษณะเฉพาะของโครงการ (เช่น ภาษาโปรแกรมสำหรับเขียนสัญญาอัจฉริยะ เบราว์เซอร์แบบกราฟิกสำหรับการโต้ตอบของผู้ใช้ปลายทางกับเครือข่าย Ethereum ไคลเอ็นต์ที่เข้ากันได้สำหรับการเข้าร่วม เครือข่าย ฯลฯ ) มีโครงการอย่างน้อยแปดโครงการที่มุ่งเน้นไปที่การพัฒนาไคลเอนต์ที่รองรับ ethereum โดยมีนักพัฒนาอิสระหลายร้อยรายที่ทำงานบนไคลเอนต์ยอดนิยม (go-ethereum และ Parity) รหัส Ethereum และประวัติทั้งหมด รวมถึงรหัสและประวัติของ Bitcoin มีให้บริการแบบสาธารณะบน Github และที่เก็บข้อมูลเครือข่ายอื่น ๆ และรหัสทั้งหมดได้รับการเผยแพร่ภายใต้ใบอนุญาต LGPL-3 ซึ่งกำหนดให้ผลงานลอกเลียนแบบในอนาคตทั้งหมดได้รับการเผยแพร่ภายใต้ ใบอนุญาตเดียวกัน..

แม้แต่โครงการล่าสุดที่ริเริ่มโดยบริษัทสตาร์ทอัพเชิงพาณิชย์ก็แสดงให้เห็นถึงการยึดมั่นในลัทธิโอเพ่นซอร์ส บริษัท Zcash พัฒนาโปรโตคอล Zcash ผ่านพื้นที่เก็บข้อมูลสาธารณะ นักพัฒนานำหลายคนไม่ได้ทำงานให้กับบริษัท และองค์กรไม่แสวงหากำไรที่สร้างขึ้นตามวัตถุประสงค์ได้รับการเรียกร้องให้ทำให้แน่ใจว่ามีการเปลี่ยนแปลงอย่างค่อยเป็นค่อยไปจากการพัฒนาที่ขับเคลื่อนโดยบริษัทไปสู่การพัฒนาที่ขับเคลื่อนโดยชุมชน รหัสต้นฉบับ Zcash เผยแพร่ภายใต้ใบอนุญาตจากสถาบันเทคโนโลยีแมสซาชูเซตส์ ห้องปฏิบัติการโปรโตคอล ผู้พัฒนา Filecoin ตั้งใจที่จะสร้างโมเดลแบบเปิดที่คล้ายคลึงกัน และได้ทดสอบแล้วในโครงการ IPFS ของพวกเขา โดยทำงานกับโค้ดในที่เก็บแบบเปิดและเผยแพร่ภายใต้ใบอนุญาต MIT

เหตุใดโอเพ่นซอร์สจึงมีความสำคัญ

Cryptocurrencies และ open blockchains สามารถให้การทำงานที่จะได้รับการควบคุมหากมาจากบริษัทเดียว ผู้ออกสกุลเงินดิจิทัลแบบรวมศูนย์ เช่น Liberty Reserve หรือ E-gold เป็นบริการทางการเงินและต้องลงทะเบียนกับสำนักงานปราบปรามอาชญากรรมทางการเงินของกระทรวงการคลังสหรัฐฯ และได้รับใบอนุญาตในการโอนเงินในแต่ละรัฐ หากโทเค็นดังกล่าวได้รับการส่งเสริมในตลาดเพื่อดึงดูดนักลงทุน ก็สามารถเทียบได้กับ หลักทรัพย์ซึ่งในกรณีนี้จะต้องลงทะเบียนกับสำนักงานคณะกรรมการกำกับหลักทรัพย์และตลาดหลักทรัพย์ของสหรัฐอเมริกา ข้อจำกัดเหล่านี้สมเหตุสมผลเนื่องจากบริการแบบรวมศูนย์มีความเสี่ยงที่ฝ่ายที่เป็นศูนย์กลางของโครงการทั้งหมดจะไม่สามารถปฏิบัติตามสัญญาของตนได้โดยการทดสอบผลิตภัณฑ์อย่างเพียงพอและทำให้ปลอดภัย

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

ในความเป็นจริง โครงการโทเค็นที่ใช้รหัสกรรมสิทธิ์อาจกลายเป็นเพียงบริการรวมศูนย์ที่ซ่อนอยู่หลังคำสแลงมืออาชีพและ "บล็อกเชนซึ่งพูดพล่อยๆ" อย่างไรก็ตาม สำหรับโปรเจ็กต์ที่ “จริง” รหัสที่สร้างเครือข่ายแบบกระจายศูนย์ ทำให้ผู้เข้าร่วมไว้วางใจซึ่งกันและกัน มีแรงจูงใจร่วมกันและลงโทษนักต้มตุ๋น เป็นตัวกระจายอำนาจ กำลังได้รับการพัฒนาต่อหน้าทุกคนโดยผู้ที่ชื่นชอบหลายร้อยคน ทุกคนในโลกสามารถใช้และปรับเปลี่ยนได้ และเป็นอิสระจากผลประโยชน์ขององค์กรโดยสิ้นเชิง

มาร์ค โรเบิร์ตส์
ผู้อำนวยการฝ่ายบริหารผลิตภัณฑ์ (ผู้อำนวยการฝ่ายบริหารผลิตภัณฑ์)
ระบบซอฟต์แวร์ QNX
อีเมล: [ป้องกันอีเมล]

คำอธิบายประกอบ

บทความนี้มุ่งเน้นไปที่ประโยชน์ การพิจารณาเชิงกลยุทธ์ อุปสรรคและโอกาสที่เกี่ยวข้องกับการใช้ซอฟต์แวร์โอเพ่นซอร์สในการผลิตเชิงพาณิชย์ การใช้ Integrated Development Environment (IDE) ตามแพลตฟอร์ม Eclipse เป็นตัวอย่าง เราจะหารือเกี่ยวกับความแตกต่างระหว่างสิทธิ์การใช้งานซอร์สโค้ดซอฟต์แวร์แบบป้องกัน (ป้องกัน) และแบบไม่ป้องกัน (ไม่ป้องกัน) เมื่อรวมหรือเชื่อมโยงโอเพ่นซอร์สโค้ดกับซอร์สโค้ดปิด "กรรมสิทธิ์" มักจะต้องมีการดูแลเอาใจใส่อย่างเหมาะสม นอกจากนี้ยังมีประเด็นทางกฎหมายต่างๆ ที่ต้องระวัง เช่น การละเมิดสิทธิบัตรที่อาจเกิดขึ้นได้ นอกจากนี้ เราจะพยายามอธิบายว่าทำไมหลักการพื้นฐานของการใช้ซอฟต์แวร์โอเพ่นซอร์สในสภาพแวดล้อมเทคโนโลยีสารสนเทศ (IT) จึงใช้ไม่ได้กับผลิตภัณฑ์เชิงพาณิชย์สำหรับอุปกรณ์ฝังตัว

สภาพแวดล้อมการพัฒนา QNX Momentics เป็นตัวอย่างโอเพ่นซอร์ส

ย้อนกลับไปในปี พ.ศ. 2544 เมื่อบริษัทซอฟต์แวร์หลายแห่งประสบปัญหาเพื่อความอยู่รอดเมื่อเผชิญกับการล่มสลายโดยทั่วไปในตลาดหุ้นของบริษัทไอที โดยเฉพาะอย่างยิ่งที่เกี่ยวข้องกับธุรกิจอิเล็กทรอนิกส์บนอินเทอร์เน็ต QNX Software Systems ได้ตัดสินใจเชิงกลยุทธ์เพื่อเริ่มพัฒนาซอฟต์แวร์แบบบูรณาการใหม่ สภาพแวดล้อมการพัฒนา (IDE) สำหรับตลาด ระบบสมองกลฝังตัว บริษัทมีประสบการณ์ที่มั่นคงอยู่แล้วในการพัฒนาชุดเครื่องมือที่ใช้ในการพัฒนาอุปกรณ์ฝังตัว แต่ฝ่ายบริหารของบริษัทตระหนักว่าการสร้าง IDE จะช่วยให้พวกเขาอยู่บนจุดสูงสุดของคลื่นในสภาพแวดล้อมที่มีการแข่งขันสูง การตัดสินใจสร้าง IDE ยังได้รับแรงผลักดันจากการเปลี่ยนแปลงที่เน้นความต้องการของลูกค้า ในช่วงที่ธุรกิจตกต่ำ ลูกค้าที่ติดขัดเรื่องเงินสดเริ่มสนใจโซลูชันที่สามารถเพิ่มประสิทธิภาพการทำงานได้สูงสุดและทำให้พวกเขาทำงานคล่องตัวมากขึ้น (ยืดหยุ่น) ซึ่งจะปรับปรุงประสิทธิภาพทางเศรษฐกิจโดยรวม

สำหรับ QNX การพัฒนา IDE นั้นเป็น "การเดิมพันสำหรับอนาคต" เพราะในขณะนั้น ต้นทุนและความพยายามในการพัฒนาโครงการนั้นอยู่นอกเหนือเอื้อมสำหรับผู้จำหน่ายเครื่องมือระบบฝังตัวส่วนใหญ่ โชคดีที่ QNX ได้ทำงานอย่างใกล้ชิดกับ IBM ในส่วนต่าง ๆ ของตลาดอุปกรณ์ฝังตัว ผ่านการทำงานร่วมกันอย่างใกล้ชิด IBM ได้แบ่งปันกับ QNX แผนการเผยแพร่สภาพแวดล้อมการพัฒนาแบบบูรณาการแบบโอเพ่นซอร์ส ซึ่งต่อมาได้กลายเป็นพื้นฐานสำหรับแพลตฟอร์ม Eclipse

IBM เสนอให้ใช้ประสบการณ์ของ QNX เพื่อปรับเทคโนโลยี IDE ให้เข้ากับความต้องการของนักพัฒนาที่เกี่ยวข้องในการสร้างแอปพลิเคชันฝังตัวตามภาษา C/C++ ผู้เชี่ยวชาญของ QNX ได้ชี้ให้เห็นถึงแง่มุมที่น่าดึงดูดใจของการใช้โอเพ่นซอร์สโค้ดสำหรับ IDE แทบจะในทันที ตัวอย่างเช่น สำหรับสภาพแวดล้อมดังกล่าว จะเป็นไปได้:

  • ขจัดการพึ่งพาผู้จำหน่ายรายเดียว ซึ่งมักจะเกี่ยวข้องกับความต้องการใบอนุญาตแพลตฟอร์มหน้าต่าง
  • นำเสนอซอร์สโค้ดสำหรับปรับแต่งตามความต้องการของลูกค้า
  • ดึงดูดผู้เล่นในอุตสาหกรรมที่จริงจังให้สนับสนุนและสร้างระบบนิเวศของเทคโนโลยีเสริมและปลั๊กอิน
  • ให้บริการลูกค้าด้วยสถาปัตยกรรมที่มั่นคงซึ่งสามารถรองรับการสร้างความแตกต่างของผลิตภัณฑ์
  • ช่วยให้นักพัฒนาอุปกรณ์ฝังตัวสามารถใช้เวิร์กสเตชันมาตรฐานที่เหมาะสำหรับการทำงานกับแอปพลิเคชันเทคโนโลยีสารสนเทศ (ในแอปพลิเคชันที่หลากหลายที่สุด) เป็นแพลตฟอร์มการพัฒนา

ท้ายที่สุด มีความเป็นไปได้อีกประการหนึ่งที่แพลตฟอร์ม IDE สามารถติดตามและกลายเป็นมาตรฐานโดยพฤตินัย ทำให้ QNX สามารถใช้ประโยชน์จากระบบนิเวศขนาดใหญ่ของนักพัฒนาและเครื่องมือของบุคคลที่สามโดยใช้แพลตฟอร์มดังกล่าว

ก่อตั้งโครงการโอเพ่นซอร์ส Eclipse.org

ในเดือนพฤศจิกายน พ.ศ. 2544 Borland, IBM, Merant, QNX Software Systems, Red Hat และ SUSE ได้ก่อตั้ง Eclipse Consortium ในช่วงต้นปี 2547 คณะกรรมการสจ๊วตได้จัดระเบียบ Eclipse Consortium ใหม่เป็นองค์กรไม่แสวงหาผลกำไรที่เรียกว่า Eclipse Foundation

ตั้งแต่เริ่มต้น Eclipse เป็นโครงการโอเพ่นซอร์สอย่างแท้จริง โครงการนำเสนอทั้งเทคโนโลยีโอเพ่นซอร์สฟรีและการเข้าถึงชุมชนของนักพัฒนาที่มีการศึกษาและก้าวหน้าที่สุดในสาขาของตน ดังนั้น, เทคโนโลยีนี้กลายเป็นแพลตฟอร์มสากลสำหรับการรวมเครื่องมือการพัฒนาทุกประเภท มันขึ้นอยู่กับสถาปัตยกรรมแบบเปิดที่ขยายได้ และได้รับอนุญาตอย่างชัดเจนว่าเป็นผลิตภัณฑ์ที่ปลอดค่าลิขสิทธิ์และแจกจ่ายต่อได้อย่างอิสระ การมีส่วนร่วมของสมาชิกชุมชนในโครงการ Eclipse เป็นไปตามรูปแบบการพัฒนาซอฟต์แวร์โอเพ่นซอร์ส (OSS) มาตรฐาน แต่สมาชิกส่วนใหญ่ยังมีส่วนร่วมในการพัฒนาเชิงพาณิชย์ตามแพลตฟอร์ม Eclipse

โครงการจัดเก็บเครื่องมือ

ในเดือนธันวาคม 2544 QNX เริ่มสร้าง QNX® Neutrino® RTOS โดยใช้ Eclipse IDE วิสัยทัศน์ของบริษัทคือให้ IDE ใช้งานได้สูง เน้น C/C++ พร้อมเครื่องมือที่บูรณาการอย่างลึกซึ้งสำหรับการดีบัก การทำโปรไฟล์ การวิเคราะห์ และสร้างแอปพลิเคชันแบบฝังตัว ตั้งแต่เริ่มแรก ทีมงาน QNX ตั้งใจให้เป็น IDE อเนกประสงค์หลายภาษาที่รองรับแพลตฟอร์มเครื่องมือที่หลากหลาย ซึ่งรวมถึง:

  • แพลตฟอร์มเครื่องมือหลายตัว: Windows, Solaris, QNX Neutrino RTOS (การพัฒนาด้วยตนเอง);
  • สถาปัตยกรรมหลายเป้าหมาย: ARM, MIPS, PowerPC, SH-4, x86;
  • โปรแกรมภาษา C, C++, Java

ตั้งแต่นั้นมา IDE ก็เติบโตอย่างต่อเนื่องเพื่อรวมการสนับสนุนสำหรับแพลตฟอร์ม Linux และการสนับสนุนสถาปัตยกรรมตัวประมวลผลเพิ่มเติม รวมถึงตัวประมวลผล XScale

การดำเนินโครงการเปิดตัวในรูปแบบของ "การเขียนโปรแกรมมาก" บริษัทได้คัดเลือกทีมวิศวกรที่ดีที่สุด 12 ทีม พวกเขาได้รับห้องพิเศษ พวกเขาแยกตัวออกจากสิ่งรบกวนทั้งหมด โครงการมอบให้พวกเขาอย่างเต็มที่

กลุ่มได้รับอำนาจในการตัดสินใจที่จำเป็น มีการกำหนดตารางการทำงานที่รัดกุมและหลีกเลี่ยงความเสี่ยง โดยมีการเปิดตัวผลิตภัณฑ์เบต้าใน 16 สัปดาห์และเผยแพร่เชิงพาณิชย์ภายในวันที่ 4 กรกฎาคม 2545 กลุ่มได้พบกับทั้งหมด กำหนดเหตุการณ์สำคัญและเปิดตัวผลิตภัณฑ์ใหม่ - ขนานนาม QNX Momentics® IDE - ตามกำหนดเวลา แสดงให้เห็นถึงศักยภาพของซอฟต์แวร์โอเพ่นซอร์สเพื่อลดเวลาในการออกสู่ตลาด

จากแนวคิดสู่การส่งมอบผลิตภัณฑ์ - น้อยกว่า 7 เดือน

สร้างบนแพลตฟอร์ม Eclipse ทีมงาน QNX เสร็จสิ้น IDE ที่ทรงพลังและหลากหลายสำหรับการพัฒนาซอฟต์แวร์แบบฝังภายในหกเดือน IDE รองรับการพัฒนาข้ามแพลตฟอร์มสำหรับแพลตฟอร์มเครื่องมือและภาษาการเขียนโปรแกรมที่หลากหลาย และรองรับบอร์ดโปรเซสเซอร์เป้าหมายแบบฝังตัวที่ได้รับความนิยมมากที่สุด ด้วยแพลตฟอร์ม Eclipse ทำให้ QNX สามารถ:

  • ใช้คอมไพเลอร์ GNU และเครื่องมือบรรทัดคำสั่งสำหรับการพัฒนาข้ามสาย
  • ใช้การสนับสนุนปลั๊กอินของบริษัทอื่น เช่น IBM WebSphere สำหรับแอปพลิเคชัน Java แบบฝังตัวและ Rational ClearCase สำหรับการพัฒนาที่ขับเคลื่อนด้วยโมเดล
  • สร้างเครื่องมือเพิ่มเติมสำหรับการสร้างระบบ การจัดการอุปกรณ์เป้าหมาย การวิเคราะห์หน่วยความจำ ระบบโปรไฟล์และแอปพลิเคชัน ฯลฯ

บนมะเดื่อ รูปที่ 1 แสดงตัวอย่างว่าแพลตฟอร์ม Eclipse สามารถลดค่าใช้จ่ายในการสร้าง IDE ได้อย่างไร ทำให้บริษัทต่างๆ สามารถมุ่งเน้นไปที่ระดับบนของการพัฒนาที่สร้างนวัตกรรมที่แท้จริงได้ ตัวอย่างเช่น การใช้แพลตฟอร์ม Eclipse ทำให้ QNX สามารถสร้างเครื่องมือสร้างภาพที่เป็นนวัตกรรมใหม่ๆ ได้อย่างง่ายดาย ซึ่งช่วยให้คุณเจาะลึกเข้าไปในระบบฝังตัวและแสดงพฤติกรรมของระบบได้

ตอบแทนผลงานชุมชน

จุดแข็งของโครงการโอเพ่นซอร์สที่ประสบความสำเร็จนั้นอยู่ที่ ทำงานร่วมกันชุมชนนักพัฒนาและในการปรับปรุง codebase อย่างต่อเนื่อง หากบริษัทยอมรับและใช้ประโยชน์จากโอเพ่นซอร์สอย่างเหมาะสม บริษัทก็มีหน้าที่ต้องช่วยเหลือชุมชน ด้วยเหตุนี้ QNX จึงเข้ารับตำแหน่งผู้นำโครงการ Eclipse CDT ในเดือนมิถุนายน 2545

เป้าหมายของโครงการ Eclipse CDT (เครื่องมือพัฒนา C/C++) คือการสร้างชุดเครื่องมือภาษา C/C++ ที่ทำงานร่วมกันได้สำหรับแพลตฟอร์ม Eclipse Eclipse CDT ถูกวางตำแหน่งเป็นโครงการโอเพ่นซอร์ส โดยมีสิทธิ์การจัดการจาก Eclipse Corporation ในการเริ่มต้นโครงการ CDT QNX ได้บริจาคทรัพยากรการพัฒนาและซอร์สโค้ดสำหรับโครงการ QNX Momentics IDE Rational และ Red Hat ในฐานะสมาชิกของชุมชนได้ให้การสนับสนุนที่สำคัญสำหรับโครงการนี้ด้วย

ข้าว. 1. ด้วยแพลตฟอร์ม Eclipse ผู้จำหน่ายเครื่องมือสามารถมุ่งเน้นไปที่ระดับบนสุดของสแต็กงาน ซึ่งเป็นที่ที่นวัตกรรมที่แท้จริงถูกสร้างขึ้น

QNX ยังคงรักษาโครงการ CDT ต่อไป ซึ่งได้เติบโตจากโค้ดเพียง 80,000 บรรทัดในตอนแรกเป็นโค้ดมากกว่า 700,000 บรรทัดในปัจจุบัน ในช่วงต้นปี 2549 บันทึกความคืบหน้าของโครงการ Eclipse CDT ได้ประเมินการมีส่วนร่วมของ QNX ที่ 52% ถัดมาคือ IBM ที่มีส่วนร่วม 36% โครงการ CDT เป็นโครงการ Eclipse ที่ได้รับความนิยมเป็นอันดับสองรองจากแพลตฟอร์ม Eclipse

ฉันสามารถให้ "ของขวัญ" รหัสได้หรือไม่

อาจดูเหมือนว่า "บริจาค" รหัสของคุณ - หมายถึงการกระทำที่ขัดต่อสามัญสำนึก อย่างไรก็ตาม หากฟังก์ชันการทำงานของผลิตภัณฑ์ของคุณมีประโยชน์ต่อการใช้งาน ทำไมไม่สนับสนุนให้กับชุมชนผู้ใช้โอเพ่นซอร์ส เมื่อทำตามขั้นตอนนี้ เราจะได้ประโยชน์จากข้อเสนอการใช้งาน "มาตรฐาน" ดังกล่าว พร้อมกับประโยชน์ของประสบการณ์การสนับสนุนผลิตภัณฑ์ คุณจะสามารถได้รับประโยชน์จากการทำงานของชุมชนทั้งหมดที่มุ่งปรับปรุง codebase กลยุทธ์ดังกล่าวสามารถเพิ่มทรัพยากรของคุณเองสำหรับการวิจัยเพิ่มเติมที่มุ่งเน้นไปที่การสร้างนวัตกรรมและเพิ่มฟังก์ชันให้กับผลิตภัณฑ์ของคุณ

ยิ่งไปกว่านั้น คุณสามารถควบคุมทิศทางของแพลตฟอร์ม "มาตรฐาน" ได้ ซึ่งแน่นอนว่าได้รับจากการมีส่วนร่วมของคุณต่อชุมชน! หากคุณกำลังสนับสนุนโครงการ จงประพฤติตนเป็นพลเมืองที่ดีของชุมชน เคารพความคิดเห็นของผู้อื่น ชื่นชมผลงานและคำแนะนำของสมาชิกคนอื่นๆ อย่าคิดว่าจะมีใครพยายาม "ล้างกระเป๋าของคุณ" อันเป็นผลมาจากการใช้รหัสและควบคุมทิศทางการพัฒนาแพลตฟอร์มจากคุณ

ตัวอย่างเช่น กลยุทธ์ของ QNX Software Systems คือการใช้ประโยชน์จากการมีส่วนร่วมของ Eclipse ในขณะที่พัฒนาฟังก์ชันใหม่ที่เสียบผ่านจุดขยายมาตรฐานที่รวมอยู่ในแพลตฟอร์ม Eclipse และ CDT ด้วยเหตุนี้ QNX ตั้งใจที่จะยังคงเป็นสมาชิกของชุมชน Eclipse โดยใช้ประโยชน์จากโค้ดเบสที่มีอยู่และงานของบุคคลที่สาม (ปลั๊กอิน) ช่วยตอบสนองความต้องการที่แท้จริงของลูกค้าด้วยการสร้างส่วนขยายที่เป็นกรรมสิทธิ์ กลยุทธ์ที่อธิบายจะแสดงในรูปที่ 2.

ข้าว. 2. ด้วยผลงานของคุณ คุณสามารถมีส่วนร่วมในงานของชุมชนได้

สรุปผลประโยชน์

แพลตฟอร์มเครื่องมือที่ใช้ Eclipse เป็นประโยชน์ร่วมกันสำหรับทั้งผู้พัฒนาแอปพลิเคชัน เช่น QNX และลูกค้าที่ซื้อเครื่องมือแพลตฟอร์ม

นักพัฒนาซอฟต์แวร์ได้รับประโยชน์จากการลดเวลาในการนำสินค้าเข้าสู่ตลาดและความสามารถในการได้รับประโยชน์จากการวิจัยของผู้อื่น (ด้วยต้นทุนที่ต่ำ) ผลลัพธ์เหล่านี้อาจรวมถึงโค้ด "clean IP" คุณภาพสูงที่จัดหาโดยบริษัทที่มีชื่อเสียง เช่น IBM และ QNX ข้อดีอีกประการสำหรับนักพัฒนาคือเขาได้รับรูปแบบการออกใบอนุญาตที่เรียบง่ายและชัดเจน รวมถึงสิทธิ์ในเชิงพาณิชย์และการคุ้มครองสิทธิบัตรบางส่วน นอกจากนี้ นักพัฒนายังได้รับความสามารถในการทำงานบนแพลตฟอร์มระบบปฏิบัติการหลายระบบที่สนับสนุนโดย Eclipse ตลอดจนการเข้าถึงจุดส่วนขยายที่กำหนดไว้อย่างดีในโครงการ Eclipse

ลูกค้าที่ซื้อ IDE ที่ใช้ Eclipse จะได้รับประโยชน์จากแพลตฟอร์มเครื่องมือที่ออกแบบมาสำหรับการพัฒนาแอปพลิเคชันแบบฝังพร้อมการสนับสนุนการคอมไพล์ข้ามที่แข็งแกร่ง การดีบักที่ง่ายดาย และส่วนขยายการจัดการ ระบบเป้าหมาย. ทีมพัฒนาของลูกค้าจะพึงพอใจกับคุณสมบัติมากมายที่ทำให้ง่ายต่อการทำงาน เวลาที่จำเป็นสำหรับการฝึกอบรมเพิ่มเติมต่ำ ประสิทธิภาพที่ดีของผลิตภัณฑ์ และแพลตฟอร์มที่แข็งแกร่งที่ช่วยให้คุณทำงานในโครงการขนาดใหญ่ได้ ลูกค้าอาจได้รับประโยชน์จากแพลตฟอร์ม Eclipse ในแอปพลิเคชันของตนเอง (เช่น RCP, eRCP เป็นต้น)

อนาคตของ Eclipse Corporation

Eclipse Corporation เป็นชุมชนที่กระตือรือร้นและกระตือรือร้น โครงการใหม่ๆ เกิดขึ้นอย่างต่อเนื่อง สถาปัตยกรรมใหม่ๆ พร้อมใช้งานสำหรับบริษัทนวัตกรรมที่จัดตั้งขึ้น และแม้แต่บริษัทขนาดเล็กก็สามารถทำการค้าแพลตฟอร์ม Eclipse ได้โดยการสร้างปลั๊กอินใหม่ที่ขยายฟังก์ชันการทำงานที่มีอยู่ด้วยต้นทุนที่ต่ำที่สุด (ดูรูปที่ 3)

ข้าว. 3. Eclipse Corporation เป็นชุมชนนักพัฒนาปลั๊กอินที่มีชีวิตชีวาและเติบโตอย่างรวดเร็ว

การเปรียบเทียบใบอนุญาตโอเพ่นซอร์ส

ลิขสิทธิ์ซอฟต์แวร์โอเพ่นซอร์สไม่เท่ากันทั้งหมด QNX ดำเนินการอย่างรอบคอบด้วย Eclipse Public License ตัวเลือกนี้ได้รับแรงผลักดันส่วนหนึ่งจากความต้องการของลูกค้าที่ฝังตัว และส่วนหนึ่งมาจากความปรารถนาที่จะควบคุม (และใช้ประโยชน์จาก) เทคโนโลยีที่สร้างความแตกต่างให้กับผลิตภัณฑ์

Open Source Initiative ซึ่งเป็นองค์กรไม่แสวงหาผลกำไร () ได้ให้คำจำกัดความที่เป็นประโยชน์ 10 ประการเกี่ยวกับโอเพ่นซอร์ส ขณะนี้มีใบอนุญาตที่ได้รับการอนุมัติจาก OSI มากกว่า 50 รายการบนเว็บไซต์ รวมถึงใบอนุญาตสาธารณะ Eclipse ใบอนุญาตเหล่านี้อาจมีความแตกต่างที่สำคัญซึ่งควรเข้าใจอย่างชัดเจน ความแตกต่างเหล่านี้อาจส่งผลกระทบอย่างมากต่อทรัพย์สินทางปัญญา (IP) ของนักพัฒนาและความสามารถในการปกป้อง สิ่งนี้เป็นจริงที่สุดในกรณีของการใช้โอเพ่นซอร์ส (หรืองานลอกเลียนแบบจากโอเพ่นซอร์ส) ในอุปกรณ์ฝังตัว

ใบอนุญาตป้องกันและไม่ป้องกัน

ภายใต้เงื่อนไขของใบอนุญาตคุ้มครอง เช่น GPL v2 งานลอกเลียนแบบสามารถเผยแพร่พร้อมกับซอร์สโค้ดที่เกี่ยวข้องเท่านั้น ภายใต้เงื่อนไขของใบอนุญาตคุ้มครอง รับประกันว่าเมื่อซอร์สโค้ดถูกย้ายไปยังหมวดหมู่โอเพ่นซอร์ส รหัสนั้นจะยังคงอยู่ในหมวดหมู่นี้ในรุ่นต่อๆ ไปและผลิตภัณฑ์ต่อเนื่องทั้งหมด ดังที่เราจะอธิบายในภายหลัง ข้อกำหนดนี้นำไปสู่ปัญหาบางอย่างในกรณีของระบบฝังตัว

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

ความหมายโดย "ใบอนุญาตไวรัส"

บางคนเรียก GPL ว่า "ใบอนุญาตไวรัส" ชื่อนี้เกิดขึ้นเนื่องจากความไม่แน่นอนของคำจำกัดความทางกฎหมายของแนวคิดของ "การพัฒนาอนุพันธ์" ด้วยการตีความคำจำกัดความอย่างเข้มงวด ปรากฎว่าหากแม้แต่รหัสลิขสิทธิ์ GPL ชิ้นเล็กๆ ถูกฝังอยู่ในแอปพลิเคชันที่เป็นกรรมสิทธิ์ แอปพลิเคชันทั้งหมดจะต้องได้รับใบอนุญาตเป็น GPL การเปรียบเทียบกับไวรัสอยู่ในใจทันที

ปัญหาการชดเชย

เมื่อเร็ว ๆ นี้ ประเด็นการชดใช้ค่าเสียหายสำหรับการละเมิดทรัพย์สินทางปัญญา (IP Indemnification) ได้กลายเป็นหัวข้อหลักในการอภิปรายสำหรับนักพัฒนา ในการตอบสนอง ผู้จำหน่ายโอเพ่นซอร์สบางรายได้ประกาศว่าจะปกป้องลูกค้าจากการฟ้องร้องคดีละเมิดสิทธิบัตรหรือลิขสิทธิ์ และใบอนุญาตโอเพนซอร์สใหม่ล่าสุดระบุบทลงโทษสำหรับผู้ใช้ที่พยายามยืนยันสิทธิ์ในสิทธิบัตรของตนกับผู้ใช้โค้ดเบสรายอื่น

ปัญหาหลักที่เกิดขึ้นในเชิงพาณิชย์ของซอฟต์แวร์โอเพ่นซอร์ส

การเปรียบเทียบแอปพลิเคชันฝังตัวและไอที

ความสำเร็จของพื้นที่โอเพ่นซอร์สนั้นได้รับแรงหนุนจากการนำ Linux มาใช้โดยองค์กรด้านไอที ประโยชน์ของการใช้ Linux มาจากการรันบนฮาร์ดแวร์ที่ค่อนข้างเป็นเนื้อเดียวกันและเสถียร (โดยปกติคือตระกูล x86) และการใช้แพลตฟอร์มการประมวลผลที่ยืดหยุ่นและอุดมด้วยทรัพยากร

ด้วยซอฟต์แวร์แบบฝังตัว สิ่งต่างๆ จะแตกต่างไปจากเดิมอย่างสิ้นเชิง ซอฟต์แวร์ทำงานบนอุปกรณ์จำนวนมากพร้อมชุดคุณสมบัติคงที่ โดยใช้ฮาร์ดแวร์ที่หลากหลายพร้อมสถาปัตยกรรมที่หลากหลาย ผู้ออกแบบอุปกรณ์ฝังตัวมักจะใช้ความได้เปรียบในการแข่งขันกับชุดคุณสมบัติ ขนาด ประสิทธิภาพ ต้นทุน อายุการใช้งานแบตเตอรี่ ความน่าเชื่อถือ การทำงานร่วมกัน และความสามารถในการปรับขนาด คุณลักษณะที่แตกต่างเหล่านี้มักจะนำไปใช้ในซอฟต์แวร์ระดับต่ำ ซึ่งในกรณีของ Linux จำเป็นต้องเชื่อมโยงโดยตรงกับเคอร์เนลของระบบปฏิบัติการ การปรับแต่งซอฟต์แวร์ระดับต่ำตามความต้องการของลูกค้าถือเป็นเรื่องปกติ โดยไม่มีข้อยกเว้น ดังนั้นนักพัฒนามักจะได้รับฟังก์ชันที่ต้องการโดยการเปลี่ยนเคอร์เนลระบบปฏิบัติการ นอกจากนี้ยังใช้วิธีการเชื่อมโยงโดยตรงโดยการฝังลงในชิ้นส่วนโค้ดเพื่อลดต้นทุนในการสร้างไลบรารี เมื่อนำมารวมกัน แนวปฏิบัติเหล่านี้ทำให้การปกป้องรหัสกรรมสิทธิ์ภายใต้ใบอนุญาต เช่น GPL (สาธารณสมบัติ) เป็นเรื่องยากมาก

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

นอกจากนี้ ผลิตภัณฑ์ฝังตัวมักมีอายุการใช้งานยาวนานทั้งในการผลิตและการให้บริการ ผลิตภัณฑ์ฝังตัวที่อยู่ภายใต้เงื่อนไขการใช้งานแบบโอเพ่นซอร์สมีความเสี่ยงสูง รวมถึงการขาดการสนับสนุนด้านเทคนิคในระยะยาว ปัญหาด้านความปลอดภัยที่อาจเกิดขึ้น และการละเมิดทรัพย์สินทางปัญญา

ปัญหาการออกใบอนุญาต

ความไม่แน่นอนของสถานะทางกฎหมาย

แม้จะมีคำพูดปลอบโยนจากผู้สนับสนุนใบอนุญาตโอเพ่นซอร์สบางคน แต่ประเด็นสำคัญหลายประการที่นักพัฒนาระบบฝังตัวได้หยิบยกข้อกังวลคือยังไม่ได้รับการทดสอบอย่างละเอียดโดยศาล ดังที่ได้กล่าวไปแล้ว คำจำกัดความของ "งานลอกเลียนแบบ" เป็นกุญแจสำคัญในการบังคับใช้ข้อกำหนดสิทธิ์การใช้งานบางข้อ แม้ว่าบุคคลและองค์กรจำนวนมากที่ยอมรับข้อกำหนดการใช้งานโอเพนซอร์สจะมีความเข้าใจเพียงเล็กน้อยหรือไม่มีเลยในความหมายของคำนี้

วิธีแก้ปัญหาบางอย่างที่อนุญาตให้ผู้ค้าเชิงพาณิชย์ฝังไดรเวอร์ "กรรมสิทธิ์" ใน Linux (เช่น Loadable Kernel Modules) อาศัยการโต้แย้ง "เขาพูด เธอพูด" แทนที่จะเชื่อมโยงโดยตรงไปยังข้อความข้อตกลงสิทธิ์การใช้งาน ในความเป็นจริง ไดรเวอร์ดังกล่าวที่ใช้โมดูล LKM เป็นการหลีกเลี่ยงข้อกำหนดของใบอนุญาต GPL ที่อันตราย เราสามารถตีความกรณีในลักษณะที่ codebase ของ Linux สามารถนำเสนอว่าไร้ประโยชน์สำหรับคนส่วนใหญ่ การใช้งานจริงหากไม่มีไดรเวอร์ที่เป็น "กรรมสิทธิ์" บางตัวเหล่านี้ สถานการณ์นี้สามารถลดคุณค่าแนวคิดของใบอนุญาต GPL ได้อย่างมีประสิทธิภาพ

ขาดการชดเชยสำหรับการละเมิด IP

ในกรณีส่วนใหญ่ที่ใช้รหัสโอเพ่นซอร์ส มีความเป็นไปได้จริงที่คุณจะละเมิดสิทธิ์ในสิทธิบัตรของบุคคลอื่นโดยไม่ได้ตั้งใจ ใบอนุญาตโอเพ่นซอร์สไม่กี่ใบที่อ้างถึงสิทธิบัตรอย่างชัดเจน และใบอนุญาตโดยนัยไม่สามารถตัดสินได้ คุณต้องออกใบอนุญาตแยกต่างหากสำหรับสิทธิบัตรใดๆ ที่เกี่ยวข้องกับ ตัวอย่างเช่น ตัวแปลงสัญญาณโอเพ่นซอร์สที่ใช้อัลกอริทึม MP3 หรือโซลูชันที่เป็นกรรมสิทธิ์อื่นๆ ในขณะเดียวกัน เด็กเลว (รวม Microsoft) กำลังยุ่งอยู่กับการสร้างผลงานสิทธิบัตรที่ผู้เชี่ยวชาญหลายคนเชื่อว่าอาจถูกไล่ออกจากผู้สนับสนุนโอเพ่นซอร์ส

ใบอนุญาตบางใบอ้างอิงถึงสิทธิบัตรอย่างชัดเจน ตัวอย่างเช่น Eclipse Public License มีการกล่าวถึงสิทธิในสิทธิบัตรอย่างชัดเจน และมีข้อบทเกี่ยวกับบทลงโทษในกรณีที่มีคนพยายามยืนยันสิทธิ์ในสิทธิบัตรด้วยวิธีอื่น Eclipse Corporation ยังใช้ความพยายามอย่างมากในการตรวจสอบโค้ดและระบุแหล่งที่มาในแง่ของสิทธิ์ใช้งาน สิทธิบัตร หรือลิขสิทธิ์

ความพยายามเพิ่มเติมในการอนุรักษ์ IP

ในการใช้โอเพ่นซอร์ส บริษัทต้องใช้ความพยายามอย่างมากในด้านต่อไปนี้:

  • การจัดการการกระจายสินค้า
  • การจัดการใบอนุญาต
  • การแก้ไขข้อขัดแย้งทางกฎหมายในแง่ของภาระผูกพันของลูกค้า
  • ให้ความสำคัญกับประเด็นทางกฎหมาย: การรักษาความบริสุทธิ์ของสิทธิ์ IP, การตรวจสอบสิทธิ์ IP ของโอเพ่นซอร์ส, การกำหนดแหล่งที่มาของซอร์สโค้ด, การติดตามการเปลี่ยนแปลงในเวอร์ชันใบอนุญาต เช่น GPL v3 เป็นต้น

การยอมรับความต้องการของลูกค้า

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

ปัญหาที่เกี่ยวข้องกับ IP

ข้อกำหนดของใบอนุญาตโอเพนซอร์สของคุณมีผลกับทรัพย์สินทางปัญญาที่ทำให้ผลิตภัณฑ์ของคุณแตกต่างหรือไม่? ถ้าใช่ แสดงว่า IP ของคุณอยู่ในความเสี่ยง

หากระบบฝังตัวใช้ซอฟต์แวร์ของคุณเองและซอฟต์แวร์โอเพ่นซอร์สผสมกัน คุณต้องเข้าใจสาระสำคัญ ที่มา และความสัมพันธ์ของส่วนประกอบทั้งหมดของซอฟต์แวร์ฝังตัว หากปราศจากข้อมูลเชิงลึกในหัวข้อนี้ คุณอาจละเมิด IP ของผู้อื่นโดยไม่ได้ตั้งใจ หรือแม้แต่สูญเสียสิทธิ์ในซอฟต์แวร์ของคุณเอง

หากไม่มีใบอนุญาตสิทธิบัตรและการชดเชย ซอฟต์แวร์ระบบฝังตัวที่มีอายุการใช้งานยาวนาน ราคาขายที่ค่อนข้างสูงและปริมาณการขายของอุปกรณ์ฝังตัวที่มีฟังก์ชันคงที่ทำให้ระบบดังกล่าวเป็นเป้าหมายที่ชัดเจนสำหรับการเรียกร้องการละเมิดสิทธิบัตรโดย "เด็กเลว" และคู่แข่งรายใหญ่

จากตัวอย่างการใช้ QNX Momentics IDE แสดงให้เห็นว่าซอฟต์แวร์โอเพ่นซอร์สมีประโยชน์มากมายในทันที รวมถึงลดเวลาออกสู่ตลาด ลดต้นทุนการพัฒนา และมีอิสระมากขึ้นในการเพิ่มคุณสมบัติและนวัตกรรมให้กับผลิตภัณฑ์ของคุณ หากคุณนำเสนอซอฟต์แวร์ของคุณเป็นบริการที่ช่วยแก้ปัญหาของลูกค้า ลูกค้าจะไม่สนใจว่าคุณใช้ซอฟต์แวร์โอเพ่นซอร์สหรือไม่ พวกเขาเพียงแค่จ่ายเงินสำหรับคุณลักษณะที่พวกเขาต้องการเท่านั้น

อย่างไรก็ตาม คุณควรเข้าใจความแตกต่างระหว่างใบอนุญาตโอเพนซอร์สต่างๆ และเลือกใบอนุญาตที่เหมาะสมกับแอปพลิเคชันและความต้องการของลูกค้ามากที่สุด ยิ่งไปกว่านั้น เตรียมพร้อมที่จะรับผิดชอบภาระผูกพันด้านสิทธิ์การใช้งานของซอฟต์แวร์ที่คุณเลือก คุณควรทราบข้อกำหนด IP อื่นๆ (เช่น สิทธิบัตร) ที่เกี่ยวข้องกับรหัสโปรแกรม ระวัง codebase ที่ไม่แสดงข้อความเกี่ยวกับผลของการละเมิดทรัพย์สินทางปัญญา มองหา การออกแบบที่ดีขึ้นเมื่อมีการเสนอให้ชดใช้ค่าเสียหายที่อาจเกิดขึ้นและเมื่อมีข้อความบนหน้าจอแสดงเกี่ยวกับการบริจาคเงินเพื่อพัฒนาโค้ดเพื่อชดเชยค่าใช้จ่ายที่เกี่ยวข้องกับการละเมิดลิขสิทธิ์หรือสิทธิบัตร เป็นต้น นอกจากนี้ ตรวจสอบให้แน่ใจว่าซอฟต์แวร์โอเพ่นซอร์สที่คุณใช้สอดคล้องกับนโยบายทรัพย์สินทางปัญญาของคุณ และหลีกเลี่ยงใบอนุญาตป้องกันที่อาจบังคับให้คุณเปิดเผยรหัสเฉพาะส่วนของคุณ หากผลิตภัณฑ์ของคุณมีอยู่ในระบบ ให้พิจารณาเสนอข้อกำหนดสิทธิ์การใช้งานเชิงพาณิชย์สำหรับ IP ของคุณด้วย

การใช้โอเพ่นซอร์สในอุปกรณ์ฝังตัวก่อให้เกิดปัญหาที่ซับซ้อนมากกว่าการใช้ซอฟต์แวร์โอเพ่นซอร์สในแอปพลิเคชันด้านไอที เนื่องจากซอฟต์แวร์แบบแรกมีความเสี่ยงมากกว่า ก่อนตัดสินใจใช้ซอฟต์แวร์โอเพ่นซอร์สใดๆ ให้ประเมินต้นทุนการเป็นเจ้าของที่แท้จริง (TTCO) และความเหมาะสมกับโครงการของคุณ

สุดท้าย เข้าร่วมชุมชนของผู้ใช้โอเพ่นซอร์สและนักพัฒนาเพื่อรับคุณค่าและประโยชน์สูงสุดสำหรับตัวคุณเอง!



กำลังโหลด...
สูงสุด