14 คะแนน โดย GN⁺ 2025-03-25 | 2 ความคิดเห็น | แชร์ทาง WhatsApp
  • โอเพนซอร์สเมื่อ 20~30 ปีก่อนมีความหมายถึง เสรีภาพ และ ความเป็นอิสระทางเทคนิค
  • ในเวลานั้น Windows และ Unix เชิงพาณิชย์ครองตลาด แต่ Linux และ BSD คือทางเลือกเพื่อเสรีภาพ
  • ปัจจุบันโอเพนซอร์สกลายเป็นกระแสหลักแล้ว แต่กำลังเกิดปัญหา monoculture (วัฒนธรรมแบบเดี่ยว)
    • การพัฒนาที่เน้นเครื่องมือเป็นศูนย์กลาง → หมกมุ่นกับเครื่องมือมากกว่านวัตกรรม
    • เทคโนโลยีใหม่ถูกให้ความสำคัญมากกว่าความปลอดภัย

ปัญหาในปัจจุบัน

  • ความเสถียรกำลังหายไป
    • "ค่อยไปแก้ในเวอร์ชันถัดไป"
    • "ถ้าล่มก็แค่รีสตาร์ตอัตโนมัติ"
    • ประสิทธิภาพถูกให้ความสำคัญมากกว่าการหลีกเลี่ยงระบบล่ม
  • แม้ Rust จะมี memory safety แต่ก็หมดความหมายเมื่อมีการใช้ฟังก์ชันที่ไม่ปลอดภัย
โฆษณา

ทางออกที่ BSD มอบให้

  • BSD มอบ ความสม่ำเสมอและความเสถียร
  • ปรัชญาของระบบ BSD
    • เคอร์เนลและเครื่องมือฝั่งผู้ใช้ถูกพัฒนาโดยทีมเดียวกัน → รับประกันความสม่ำเสมอ
    • มีเอกสารที่ยอดเยี่ยม (โดยเฉพาะ OpenBSD)
    • ทำโค้ดให้ง่ายขึ้น → เสริมความปลอดภัย
    • พัฒนาแบบค่อยเป็นค่อยไป (Evolution) ไม่ใช่การเปลี่ยนแปลงแบบหักดิบ

BSD หลัก ๆ และจุดเด่น

FreeBSD

  • ระบบอเนกประสงค์ – เน้นประสิทธิภาพและความเสถียร
  • มี HardenedBSD ซึ่งเป็นรุ่นที่เสริมความปลอดภัย
  • ZFS, boot environment, การแยก OS ออกจากแพ็กเกจ
  • Jail container (เริ่มใช้ในปี 2000) – มาก่อน Linux cgroups 10 ปี
  • ใช้งานใน Netflix, PlayStation, MacOS เป็นต้น

OpenBSD

  • เน้นความปลอดภัยและความถูกต้องของโค้ด
  • มีกลไกความปลอดภัยอย่าง pledge(), unveil()
  • เป็นต้นทางของ OpenSSH และเครื่องมือความปลอดภัยอีกหลายตัว
  • พัฒนาโดยให้ทีมเป็นศูนย์กลาง – ไม่หวั่นไหวตามความต้องการของผู้ใช้

NetBSD

  • "Of course it runs NetBSD!" – ทำงานได้บนแพลตฟอร์มที่หลากหลาย
  • รองรับมากกว่า 50 สถาปัตยกรรม
  • ให้ความสำคัญกับคุณภาพโค้ดและความเข้ากันได้
  • ทำงานได้อย่างเสถียรบนฮาร์ดแวร์เก่า เช่น อุปกรณ์ฝังตัว
โฆษณา

ข้อดีในการใช้งาน BSD จริง

  • ความเสถียรและความปลอดภัยที่ดีกว่า – ระบบ BSD มีความเสถียรและปลอดภัยสูง
  • ดูแลระบบได้ง่าย – อัปเกรดแล้วระบบไม่พัง
  • เผชิญช่องโหว่ความปลอดภัยทั่วไปน้อยกว่า – "บน OpenBSD ปัญหานี้ถูกแก้ไปแล้วตั้งแต่ 20 ปีก่อน"
  • คงชื่อ network interface แบบสม่ำเสมอix0 จะไม่เปลี่ยนเป็นชื่ออย่าง enx3e3300c9e14e หรือ enp10s0f0np0
  • ภาระระบบที่ต่ำของ FreeBSD – บนฮาร์ดแวร์เดียวกันมีโหลดต่ำกว่า Linux
  • ประสิทธิภาพการจัดการ I/O ที่ยอดเยี่ยมของ FreeBSD – เคยพบว่า ใช้เวลาน้อยลง 70% บนฮาร์ดแวร์เดียวกัน
  • ประสบการณ์ผู้ใช้ที่ดีขึ้นของ FreeBSD – ให้การตอบสนองที่เร็วและสม่ำเสมอกว่า
  • การรับประกันการรองรับระยะยาวของ NetBSD – "ไม่ต้องกังวล – แพลตฟอร์มนี้จะได้รับการรองรับไปอีกนาน"

เหตุผลที่ควรเลือก BSD ในปี 2025

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

บทสรุป

  • BSD คือทางเลือกที่มอบ เสรีภาพ, ความเสถียร, และ ความปลอดภัย
  • ขอแนะนำให้ลองสัมผัสปรัชญาของ BSD แทนการไหลไปตามกระแสเทคโนโลยีใหม่

แนะนำการบรรยาย

  • นี่คือสรุปของการบรรยายใน OSDay 2025 โดยในการบรรยาย 25 นาทีจะพูดถึงภาพรวมมากกว่ารายละเอียด
  • ผู้บรรยาย Stefano Marinelli เป็นผู้ก่อตั้งและบาริสตาของ BSD Cafe และเป็นผู้ใช้ Linux มาตั้งแต่ปี 1996
  • เริ่มสำรวจระบบ BSD ตั้งแต่ปี 2002 – จุดเริ่มต้นคือ FreeBSD Handbook
  • สไลด์บรรยาย
  • วิดีโอบรรยาย

2 ความคิดเห็น

 
picopress 2025-03-25

ถึงอย่างนั้น ในแง่ของ ecosystem แล้ว Linux ก็น่าจะยังได้เปรียบอยู่ดี..

 
GN⁺ 2025-03-25
ความคิดเห็นจาก Lobste.rs
  • draga79 (ผู้เขียน)
    • เวลาพรีเซนต์มีเพียง 25 นาที จึงสรุปเนื้อหาให้กระชับให้เหมาะกับบรรยากาศงานประชุมโอเพนซอร์สทั่วไป
    • เป้าหมายคือทำให้ผู้คนสนใจ BSD จากมุมมองเชิงปรัชญามากกว่ารายละเอียดทางเทคนิค
  • jmmv
    • เห็นด้วยกับแนวโน้มที่ใช้ Linux, Docker, Kubernetes เพียงเพราะ "ทุกคนใช้กัน"
    • ชี้ว่าปัญหาคือ Docker กลายเป็นมาตรฐานไปแล้ว ทั้งที่ไม่ได้เป็นทางออกที่ดีที่สุดเสมอไป
    • แม้จะพยายามแก้ปัญหาการดีพลอยและการปฏิบัติการที่ซับซ้อน แต่ถ้าอธิบายแนวทางอื่นก็มักยากที่จะทำให้คนเข้าใจ
  • dijit
    • ไม่เห็นด้วยกับวิธีคิดที่ว่า "ต้องใช้แค่ AWS กับ ECS เท่านั้น"
    • การปรับทุกอย่างให้เข้ากับสภาพแวดล้อมแบบนั้นมีแต่จะเป็นประโยชน์กับ Amazon และจำกัดเสรีภาพของผู้ใช้
  • radmind
    • Docker สะดวกสำหรับการเก็บการตั้งค่าระบบ แต่ไม่ใช่คำตอบที่สมบูรณ์แบบ
    • เครื่องเสมือนก็เป็นทางเลือกที่ยอดเยี่ยม และสงสัยว่าถ้าจะใช้ BSD เป็นระบบปฏิบัติการเรียลไทม์ BSD ตัวไหนจะเหมาะที่สุด
  • sjamaan
    • การใช้คอนเทนเนอร์ถูกมองว่าเป็นเรื่องปกติเกินไป และเพิ่มความซับซ้อน
    • เครื่องมืออย่าง GitLab หรือ Sentry รันได้ยากหากไม่มีคอนเทนเนอร์ และสิ่งนี้ทำให้เกิดปัญหาในสภาพแวดล้อมที่ไม่ใช่ BSD
  • jbauer
    • ใช้ OpenBSD บนเซิร์ฟเวอร์และโน้ตบุ๊กมา 5 ปีแล้ว — เสถียรมากและเข้าใจได้ตรงไปตรงมา
    • ซอฟต์แวร์ที่มีมาให้ในระบบยอดเยี่ยมมาก จึงแทบไม่ต้องติดตั้งแพ็กเกจจากภายนอกเลย
    • มองว่าเป็นระบบตระกูล Unix ที่มีคุณภาพดีที่สุด
  • reezer
    • การเหมารวมเกี่ยวกับ BSD เป็นเรื่องไม่เหมาะสม
    • ภาพจำตายตัวว่า FreeBSD เหมาะกับงานทั่วไป, OpenBSD เหมาะกับความปลอดภัย, NetBSD เหมาะกับความเข้ากันได้นั้นไม่ถูกต้อง
    • BSD ทำงานได้ดีจริงในสภาพแวดล้อมที่หลากหลาย
  • ploum
    • FreeBSD ให้ทั้งประสิทธิภาพและความเสถียร
    • OpenBSD ให้ทั้งความเข้าใจในโค้ดและความปลอดภัย
    • Linux ให้สภาพแวดล้อมเดสก์ท็อปที่ใช้งานง่าย
  • elobdog
    • OpenBSD มีประสิทธิภาพมากสำหรับไฟร์วอลล์และบริการเครือข่าย
    • โค้ดกระชับ อ่านง่าย และมีบั๊กน้อย
    • ท่าทีแบบ "ไปทำการบ้านมาก่อน" ที่เจอบ่อยในชุมชนโอเพนซอร์สกลับมีประโยชน์ในสภาพแวดล้อมแบบมืออาชีพ
  • cryptix
    • ใช้ FreeBSD ต่อเพราะเอกสารประกอบและคุณภาพซอฟต์แวร์ยอดเยี่ยม
    • อยากหลีกเลี่ยงการจัดการการตั้งค่าที่ซับซ้อน
  • jitl
    • เมื่อก่อนเคยใช้ FreeBSD, OpenBSD และ Linux ผสมกัน แต่ตอนนี้ Docker กับ Linux มีประสิทธิภาพมากกว่า
    • อย่างไรก็ตาม สำหรับอุปกรณ์เครือข่ายหรือแอปพลายแอนซ์บางประเภท BSD อาจเหมาะกว่า
  • david_chisnall
    • ทั้ง OpenBSD และ FreeBSD รองรับคอนเทนเนอร์
    • FreeBSD มีการแยกคอนเทนเนอร์ผ่านเครื่องมืออย่าง runj, ocirun
    • จัดการเครือข่ายได้ผ่านปลั๊กอิน CNI — ใช้งานร่วมกับ Podman และ containerd ได้
  • asynts
    • มีประสบการณ์การพัฒนาบน DragonflyBSD ที่แย่มาก — ระบบบิลด์ไม่เสถียรและช้า
    • ไม่คิดจะกลับไปใช้ระบบ BSD อีก
  • johnklos
    • ระบบบิลด์ของ NetBSD เรียบง่ายมากและใช้งานง่าย
    • คอมไพล์เคอร์เนลได้ด้วยคำสั่งบรรทัดเดียว
  • posix_cowboy
    • pf (packet filter) เป็นหนึ่งในเหตุผลที่ควรเลือก BSD
    • โหลดรายการอนุญาต/บล็อกจากไฟล์ข้อความได้อย่างง่ายดาย
  • meerm
    • มีประสบการณ์ที่ดีกับ DragonflyBSD — ถ้ามีโอกาสได้ลองใช้ก็ขอแนะนำ