ในแวดวงระบบปฏิบัติการ ชื่อของ "Berkeley Software Distribution" หรือ BSD อาจเป็นชื่อ ระบบปฏิบัติการ (OS) ที่หลายคนอาจไม่คุ้นหูมากนัก เพราะคนทั่วไปก็คงจะคุ้นชื่อกับ ระบบปฏิบัติการ Windows, macOS และ Linux กันเป็นส่วนใหญ่ แต่ในบทความนี้เราจะมากล่าวถึงระบบปฏิบัติการ Berkeley Software Distribution หรือ BSD
BSD เป็นระบบปฏิบัติการที่มีความน่าสนใจ และเป็นรากฐานที่นำไปสู่การพัฒนา ระบบปฏิบัติการอีกหลายตัว ไม่ว่าจะเป็น FreeBSD, OpenBSD หรือ NetBSD
บทความนี้จะแนะนำว่า Berkeley Software Distribution คืออะไร ? และทำไมมันถึงมีบทบาทสำคัญในโลกของการพัฒนาซอฟต์แวร์ที่เราใช้งานกันอยู่ในปัจจุบัน ...
BSD ย่อมาจาก Berkeley Software Distribution หรือที่รู้จักกันในชื่อ Berkeley Unix หรือ BSD Unix เป็นระบบปฏิบัติการยูนิกซ์ที่ปัจจุบันถูกยกเลิกการพัฒนาไปแล้ว เดิมทีเป็นระบบปฏิบัติการที่กลุ่มวิจัยระบบคอมพิวเตอร์ของมหาวิทยาลัยแคลิฟอร์เนีย เบิร์กลีย์ ได้พัฒนาขึ้นมาตั้งแต่ปี ค.ศ. 1973 (พ.ศ. 2516)
การพัฒนา BSD เริ่มต้นขึ้นจากความต้องการที่จะเพิ่มความสามารถในการจัดการหน่วยความจำเสมือนให้กับระบบปฏิบัติการ Unix ที่ทำงานบนคอมพิวเตอร์ VAX-11 ในช่วงทศวรรษ ค.ศ. 1980 (พ.ศ. 2523) BSD ถูกนำมาใช้อย่างแพร่หลายโดยผู้จำหน่ายเครื่อง WorkStation แบบกรรมสิทธิ์ เช่น DEC Ultrix และ Sun Microsystems SunOS มันกลายเป็นระบบปฏิบัติการ Unix ที่ได้รับความนิยมมากที่สุดในมหาวิทยาลัย
แม้จะยุติการพัฒนาไปนานแล้ว แต่คำว่า "BSD" ในปัจจุบันยังถูกใช้กับทายาทของระบบปฏิบัติการที่ เปิดเผยซอร์สโค้ด (Open-Source) หลายตัว ไม่ว่าจะเป็น FreeBSD, OpenBSD, NetBSD และ DragonFly BSD นอกจากนี้ โค้ด BSD ยังเป็นพื้นฐานสำหรับ Darwin และ TrueOS สิ่งเหล่านี้ใช้ถูกในระบบปฏิบัติการที่เป็นแบบกรรมสิทธิ์ อย่าง macOS และ iOS ของ Apple และ Window ของ Microsoft ซึ่งใช้ส่วนหนึ่งของโค้ด TCP/IP จาก BSD หรือจะในระบบปฏิบัติการของเครื่องเกมรุ่นใหม่อย่าง PlayStation 5 ก็พัฒนาจากรากฐานของ BSD เช่นกัน
ภาพจาก : https://en.wikipedia.org/wiki/Berkeley_Software_Distribution
เรื่องนี้ต้องเริ่มที่ Unix ซึ่งเป็นระบบปฏิบัติการที่บริษัท AT&T ที่อยู่ในเครือของบริษัท Bell ได้พัฒนาขึ้นมาที่ Bell Lab เริ่มพัฒนาขึ้นมาในช่วงปี ค.ศ. 1960 (พ.ศ. 2503) เมื่อสองนักพัฒนาที่เป็นแกนนำในโครงการได้เปิดตัวเอกสารในระหว่างงานสัมมนาในปี ค.ศ. 1973 (พ.ศ. 2516) มีหลายฝ่ายที่แสดงความสนใจต้องการระบบปฏิบัติการตัวนี้ไปทดลองใช้งาน
อย่างไรก็ตาม ด้วยข้อจำกัดทางการค้าของ AT&T ทำให้ Bell ไม่สามารถแสวงหากำไรจาก Unix ได้ เพื่อหลีกเลี่ยงข้อจำกัดดังกล่าว Bell ได้ตัดสินใจเผยแพร่ Unix ในรูปแบบของการแจกจ่าย Source Code และคิดค่าลิขสิทธิ์ในการนำไปใช้แทน มหาวิทยาลัยแคลิฟอร์เนีย เบิร์กลีย์ เป็นหนึ่งในมหาลัยที่ตอบรับข้อเสนอดังกล่าว
ในปี ค.ศ. 1975 (พ.ศ. 2518) Ken Thompson วิศวกรหลักที่ดูแลการพัฒนา Unix ได้ขอพักงานจากบริษัท Bell เพื่อทำงานเป็นศาสตราจารย์รับเชิญที่มหาวิทยาลัยแคลิฟอร์เนีย เบิร์กลีย์ เขาได้ติดตั้ง Unix เวอร์ชัน 6 มีการนำ Pascal เข้ามาใช้งานภายในระบบ ต่อมาเขาได้ร่วมมือกับกลุ่มนักวิจัย (Computer Systems Research Group (CSRG)), Chuck Haley และ Bill Joy นักศึกษาระดับบัณฑิตศึกษา (ที่ต่อมาได้ก่อตั้งบริษัท Sun Microsystems) เข้ามาช่วยปรับปรุง Pascal และระบบแก้ไขข้อความให้ทำงานได้ดียิ่งขึ้น นอกจากนี้ ยังเพิ่มเครื่องมือที่มีประโยชน์ และหลายอย่างที่สำคัญ รวมถึงการจัดการหน่วยความจำเสมือน และเครือข่าย TCP/IP ด้วยการดัดแปลง และเพิ่มเติมโค้ดเดิมของ AT&T
มหาลัยอื่น ๆ ที่ได้เห็นก็ให้ความสนใจซอฟต์แวร์ของเบิร์กลีย์ ในปี ค.ศ. 1977 (พ.ศ. 2520) Bill Joy จึงได้เริ่มแจกจ่ายมันออกไปเป็นครั้งแรก โดยใช้ชื่อว่า Berkeley Software Distribution (1BSD) และเปิดตัวมันในฐานะของ ส่วนขยาย (Extension) สำหรับ Unix เวอร์ชัน 6 หรือใหม่กว่า ซึ่งได้มีการเผยแพร่ออกไปประมาณ 30 ชุด
การเผยแพร่ของ Berkeley Software Distribution (2BSD) รอบที่สอง เกิดขึ้นในเดือนพฤษภาคม ค.ศ. 1979 (พ.ศ. 2522) โดยมีการอัปเดตเพิ่มโปรแกรมใหม่เข้ามาสองตัวจากฝีมือของ Bill Joy ซึ่งยังคงถูกใช้มาในระบบ Unix จนถึงปัจจุบันนี้ นั่นก็คือ โปรแกรมแก้ไขข้อความ "Vi Text Editor" และ "C Shell" เวอร์ชันนี้มีการเผยแพร่ออกไปประมาณ 75 ชุด
ในช่วงปี ค.ศ. 1978 (พ.ศ. 2521) มหาวิทยาลัยแคลิฟอร์เนีย เบิร์กลีย์ ได้นำคอมพิวเตอร์ VAX มาติดตั้ง แต่ทว่าการพอร์ตระบบปฏิบัติการ Unix ไปยังสถาปัตยกรรม VAX ที่เป็น UNIX/32V ไม่ได้ใช้ประโยชน์จากความสามารถหน่วยความจำเสมือนของ VAX จึงมีการเขียนโค้ด Kernel ตัว 32V ขึ้นมาใหม่ จากนั้นก็ได้นำมันมาใส่ไว้ใน Berkeley Software Distribution (3BSD) หรือที่รู้จักกันในชื่ออื่นด้วยว่า Virtual VAX/UNIX และ VMUNIX
หลังจากที่ 4.3BSD ถูกปล่อยออกมาในเดือนมิถุนายน ค.ศ. 1986 (พ.ศ. 2529) มีการตัดสินใจว่า BSD จะย้ายออกจากแพลตฟอร์ม VAX ที่เริ่มเก่าไป แพลตฟอร์ม Power 6/32 (ชื่อรหัส "Tahoe") ที่พัฒนาโดย Computer Consoles Inc. ดูมีแนวโน้มในเวลานั้น แต่ก็ถูกละทิ้งโดยนักพัฒนาในเวลาไม่นาน อย่างไรก็ตาม การพอร์ต 4.3BSD-Tahoe ที่เกิดขึ้นในเดือนมิถุนายน ค.ศ. 1988 (พ.ศ. 2531) ได้พิสูจน์ให้เห็นว่ามันเป็นสิ่งที่มีประโยชน์ เนื่องจากมันได้นำไปสู่การแยกโค้ดที่ขึ้นอยู่กับเครื่อง และโค้ดที่ไม่ขึ้นอยู่กับเครื่องใน BSD ซึ่งจะช่วยปรับปรุงความสามารถของระบบพกพาในอนาคต
นอกจากความสามารถในการพกพาแล้ว CSRG ยังได้นำสแต็ค โปรโตคอล (Protocol) เครือข่าย Open Systems Interconnection (OSI) มาใช้งาน, ปรับปรุงระบบหน่วยความจำเสมือนของ Kernel และพัฒนาอัลกอริทึม TCP/IP ใหม่เพื่อรองรับการเติบโตของอินเทอร์เน็ต
จนถึงเวอร์ชันนี้ ทุกเวอร์ชันของ BSD ยังคงใช้โค้ด Unix ที่เป็นกรรมสิทธิ์ของ AT&T และยังต้องมีใบอนุญาตซอฟต์แวร์ของ AT&T ที่มีค่าใช้สูงมาก ทำให้เกิดไอเดียที่จะพัฒนาโค้ดเครือข่ายแยกออกมาต่างหาก โดยไม่ใช้โค้ดที่มีกรรมสิทธิ์ของ AT&T ขึ้นมา และสามารถแจกจ่ายเพื่อใช้งานต่อได้ฟรีโดยไม่มีค่าใช้จ่าย จนเกิดเป็น Networking Release 1 (Net/1) เปิดตัวในเดือนมิถุนายน ค.ศ. 1989 (พ.ศ. 2532)
การมาของ Net/1 ทำให้เกิดโครงการพัฒนายูทิลิตี้มาตรฐานของ Unix ขึ้นมาใหม่โดยไม่ใช้โค้ดของ AT&T ภายในระยะเวลาเพียง 18 เดือน ยูทิลิตี้ของ AT&T ทั้งหมดได้ถูกแทนที่ เหลือไฟล์ของ AT&T เพียงไม่กี่ไฟล์ที่ยังคงอยู่ใน Kernel เปิดตัวออกมาเป็น Networking Release 2 (Net/2) ในเดือนมิถุนายน ค.ศ. 1991 (พ.ศ. 2534)
Net/2 ประกอบด้วย BSD 2 เวอร์ชัน เวอร์ชันฟรีสำหรับสถาปัตยกรรม Intel 80386 ใช้ชื่อว่า 386BSD ที่พัฒนาโดย William และ Lynne Jolitz และเวอร์ชันที่มีกรรมสิทธิ์ที่ชื่อว่า BSD/386 ซึ่งตอนหลังเปลี่ยนชื่อเป็น BSD/OS ที่พัฒนาโดย Berkeley Software Design (BSDi) อย่างไรก็ตาม 386BSD มีอายุค่อนข้างสั้น แต่มันก็กลายเป็นโค้ดเริ่มต้นให้กับโครงการ NetBSD และ FreeBSD ที่ถูกพัฒนาขึ้นในภายหลัง
4.4BSD-Lite Release 2 เป็นเวอร์ชันสุดท้ายจากเบิร์กลีย์ ปล่อยออกมาในปี ค.ศ. 1995 (พ.ศ. 2538) หลังจากนั้น CSRG ก็ถูกยุบ และการพัฒนา BSD ที่เบิร์กลีย์ก็ยุติลงตั้งแต่นั้นเป็นต้นมา อย่างไรก็ตาม มีการสืบทอดทาบยาทแยกออกเป็นโครงการหลายโครงการ เช่น FreeBSD, NetBSD, OpenBSD และ DragonFly BSD
ภาพจาก : https://www.debugpoint.com/freebsd-14-features/
ด้วยคุณสมบัติที่ยืดหยุ่นของสิทธิ์ในการใช้ BSD ทำให้มันถูกนำไปใช้ในระบบปฏิบัติการอื่น ๆ อีกหลายตัว เช่น Microsoft ใช้โค้ด BSD ในการนำ TCP/IP มาใช้, Darwin ซึ่งเป็นพื้นฐานของ macOS และ iOS ของ Apple ใช้ 4.4BSD-Lite2 เป็นต้น
Linux เป็นระบบปฏิบัติการที่สร้างขึ้นใหม่จากศูนย์โดยอาศัยแรงบันดาลใจจากระบบปฏิบัติการ Unix แต่ BSD นั้นเป็นระบบปฏิบัติการที่ถูกพัฒนาสืบทอดต่อมาจาก Unix โดยตรง ซึ่ง BSD นั้นเป็นระบบที่ล้าสมัยไปแล้ว เหลือไว้เพียง FreeBSD และอื่น ๆ ที่ยังเป็นผู้สืบทอด
ภาพจาก : https://www.wikiwand.com/en/articles/History_of_the_Berkeley_Software_Distribution
FreeBSD เป็นระบบปฏิบัติการที่คล้ายกับ Unix แต่ก็เช่นเดียวกันกับ Linux มันไม่ได้รับการรับรองว่าเป็น UNIX ที่เป็นตัวพิมพ์ใหญ่
UNIX (ตัวพิมพ์ใหญ่) เป็นเครื่องหมายการค้า ปัจจุบันเป็นเจ้าของโดย Open Group ซึ่งเป็นกลุ่มของบริษัท และองค์กรต่าง ๆ เช่น NASA, กระทรวงกลาโหมสหรัฐฯ, IBM, HP, และอื่น ๆ ส่วน "unix" หรือ "Unix" มักถูกใช้เป็นชื่อทั่วไปสำหรับซอฟต์แวร์คอมพิวเตอร์ที่มีความคล้ายคลึงกับ UNIX
ความแตกต่างที่สำคัญคือ FreeBSD มี Kernel ของตัวเอง ไม่ได้ใช้ Kernel ของ Linux เราอาจรันซอฟต์แวร์ของ Linux บน FreeBSD ได้ แต่ต้องมีการเตรียมความพร้อมเพิ่มเติม เช่น การใช้ Docker Images หรือการติดตั้ง "Linux Compatibility Layer"
คุณสมบัติด้านความปลอดภัยค่อนข้างสูงมาก
งานบางประเภท ทำงานบนเครือข่าย และใช้ทรัพยากรได้มีประสิทธิภาพกว่า
เอกสารประกอบสำหรับระบบ BSD ได้รับการชื่นชมในเรื่องความชัดเจน และครบถ้วน ทำให้ง่ายต่อผู้ใช้ในการหาข้อมูล
|
แอดมินสายเปื่อย ชอบลองอะไรใหม่ไปเรื่อยๆ รักแมว และเสียงเพลงเป็นพิเศษ |