2 Τί, ένα αληθινό UNIX®;

Τα BSD λειτουργικά συστήματα δεν είναι κλώνοι, αλλά open source προϊόντα που έχουν βγει από το Πειραματικό UNIX® λειτουργικό σύστημα της AT&T, που είναι επίσης πρόγονος του μοντέρνου UNIX System V. Αυτό ίσως σας προκαλέσει έκπληξη. Πώς μπορεί κάτι τέτοιο να γίνει, αφού η AT&T δεν έχει διανείμει ποτέ τον κώδικά της σαν open source;

Είναι αλήθεια ότι το AT&T UNIX δεν είναι open source, και κατά μια έννοια, αν είμαστε αυστηροί με το θέμα των πνευματικών δικαιωμάτων, το BSD σίγουρα δεν είναι UNIX, αλλά από την άλλη, η ίδια η AT&T έχει ενσωματώσει κώδικα από άλλες ομάδες ανάπτυξης, με μια από τις πιο σημαντικές να είναι η Ομάδα Έρευνας της Επιστήμης των Υπολογιστών του Πανεπιστημίου της California, Berkeley, CA (Computer Sciences Research Group (CSRG), University of California, Berkeley, CA). Ξεκινώντας το 1976, η CSRG ξεκίνησε να διανέμει tapes με το λογισμικό τους, αποκαλώντας το Berkeley Software Distribution ή απλώς BSD.

Οι αρχικές εκδόσεις του BSD αποτελούνταν κυρίως από προγράμματα για χρήστες, αλλά αυτό άλλαξε δραματικά όταν η CSRG έκλεισε ένα συμβόλαιο με την Defense Advanced Projects Research Agency (DARPA) για να αναβαθμίσει τα πρωτόκολλα επικοινωνίας του δικτύου της DARPA, του ARPANET. Τα νέα πρωτόκολλα ήταν γνωστά ως Internet Protocols, αργότερα TCP/IP παίρνοντας το όνομά τους από τα δύο πιο σημαντικά πρωτόκολλα Η πρώτη ευρέως γνωστή υλοποίηση ήταν μέρος του 4.2BSD, που ανακοινώθηκε το 1982.

Κατά τη διάρκεια της δεκαετίας του 80 αναπτύχθηκε ένα πλήθος εταιρειών που διέθεταν σταθμούς εργασίας. Πολλές προτίμησαν να αγοράσουν την άδεια του UNIX αντί να αναπτύξουν δικά τους λειτουργικά συστήματα. Συγκεκριμένα, η Sun Microsystems αγόρασε την άδεια του UNIX και ανέπτυξε μια έκδοση του 4.2BSD την οποία ονόμασε SunOS. Όταν και η ίδια η AT&T μπόρεσε, άρχισε να πουλά το UNIX με μια έκδοση περιορισμένων δυνατοτήτων που λεγόταν System III, την οποία γρήγορα ακολούθησε το System V. Η βάση πηγαίου κώδικα του System V δεν περιείχε κώδικα δικτύωσης, οπότε όλες οι υλοποιήσεις περιείχαν επιπλέον λογισμικό από το BSD, συμπεριλαμβανομένου του λογισμικού TCP/IP, αλλά και προγράμματα όπως τον φλοιό csh και τον επεξεργαστή κειμένου vi. Συνολικά, αυτές οι βελτιώσεις ήταν γνωστές σαν οι Επεκτάσεις Berkeley.

Τα tapes του BSD περιείχαν πηγαίο κώδικα της AT&T κι έτσι απαιτούσαν μια άδεια πηγαίου κώδικα του UNIX. Μέχρι το 1990, η χρηματοδότηση της CSRG τέλειωνε, και πήγαινε για κλείσιμο. Κάποια μέλη της ομάδας αποφάσισαν να διανείμουν τον BSD κώδικα, που ήταν Open Source, χωρίς τα κομμάτια του εμπορικού AT&T κώδικα. Αυτό έγινε τελικά με την Networking Tape 2, γνωστή και ως Net/2. Η Net/2 δεν ήταν ένα ολοκληρωμένο λειτουργικό σύστημα. Περίπου 20% από τον κώδικα του πυρήνα έλειπε. Ένα από τα μέλη της CSRG, ο William F. Jolitz, έγραψε τον υπόλοιπο κώδικα που έλειπε και τον έδωσε νωρίς το 1992 με όνομα 386BSD. Την ίδια στιγμή, μια άλλη ομάδα από πρώην μέλη της CSRG ίδρυσε μια εμπορική εταιρεία με όνομα Berkeley Software Design Inc. και εξέδωσε μια πειραματική έκδοση ενός λειτουργικού συστήματος που λεγόταν BSD/386, το οποίο ήταν βασισμένο στον ίδιο πηγαίο κώδικα. Το όνομα του λειτουργικού συστήματος άλλαξε αργότερα σε BSD/OS.

Το 386BSD ποτέ δεν έγινε ένα σταθερό λειτουργικό σύστημα. Αντί γι αυτό, δύο άλλες ομάδες ξεπήδησαν από αυτό το 1993. Η ομάδα του NetBSD και η ομάδα του FreeBSD. Οι δυο ομάδες αρχικά ξεχώρισαν επειδή είχαν διαφορετική υπομονή όσον αφορά σε κάποιες βελτιώσεις στο 386BSD. Η ομάδα του NetBSD ξεκίνησε στην αρχή της χρονιάς, και η πρώτη έκδοση του FreeBSD δεν ήταν έτοιμη μέχρι το τέλος της χρονιάς. Στο μεταξύ η βάση του πηγαίου κώδικα είχε πλέον τόσες διαφορές που ήταν δύσκολο να ενωθεί η μια με με την άλλη ομάδα. Επιπλέον, οι δυο ομάδες είχαν και διαφορετικούς στόχους όπως θα δούμε παρακάτω. Το 1996 δημιουργήθηκε το OpenBSD από το NetBSD και το 2003 δημιουργήθηκε το DragonFlyBSD από το FreeBSD.

Αυτό το κείμενο, και άλλα κείμενα, μπορεί να βρεθεί στο ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

Για ερωτήσεις σχετικά με το FreeBSD, διαβάστε την τεκμηρίωση πριν να επικοινωνήσετε με την <questions@FreeBSD.org>.
Για ερωτήσεις σχετικά με αυτή την τεκμηρίωση, στείλτε e-mail στην <doc@FreeBSD.org>.