Berkeley Software Distribution

Berkeley Software Distribution, o Berkeley Standard Distribution (BSD), en español, Distribución de software Berkeley) fue un sistema operativo derivado de Unix que nace a partir de los aportes realizados a ese sistema por la Universidad de California en Berkeley.

En los primeros años del sistema Unix sus creadores, los Laboratorios Bell de la compañía AT&T, autorizaron a la Universidad de California en Berkeley y a otras universidades, a utilizar el código fuente y adaptarlo a sus necesidades. Durante los años 1970 y 1980 Berkeley utilizó el sistema para sus investigaciones en materia de sistemas operativos. Cuando AT&T retiró el permiso de uso a la universidad por motivos comerciales, la universidad promovió la creación de una versión inspirada en el sistema Unix utilizando los aportes que ellos habían realizado, permitiendo luego su distribución con fines académicos y al cabo de algún tiempo reduciendo al mínimo las restricciones referente a su copia, distribución o modificación.

BSD inicialmente se llamó Berkeley Unix porque estaba basado en el código fuente del Unix original desarrollado en Bell Labs. En la década de 1980, BSD fue ampliamente adoptado por los proveedores de estaciones de trabajo en forma de variantes patentadas de Unix como DEC Ultrix y SunOS de Sun Microsystems, debido a su concesión de licencias permisivas y familiaridad con muchos fundadores e ingenieros de empresas de tecnología.

Aunque estos derivados de BSD patentados fueron reemplazados en gran medida en la década de 1990 por UNIX SVR4 y OSF/1, las versiones posteriores proporcionaron la base para varios sistemas operativos de código abierto, incluidos SunOS, FreeBSD, NetBSD, OpenBSD, DragonFly BSD, Darwin y TrueOS. Estos, a su vez, han sido utilizados por sistemas operativos propietarios, incluidos los macOS y iOS de Apple, que se derivaron de ellos, y Microsoft Windows, que usaba (al menos) parte de su código TCP/IP, que era legal. El código de FreeBSD también se utilizó para crear el sistema operativo para la PlayStation 4 y Nintendo Switch. 

BSD también ha hecho grandes contribuciones en el campo de los sistemas operativos en general, como por ejemplo:

 El manejo de memoria virtual paginado por demanda.
 El control de trabajos.
 El Fast FileSystem.
 El protocolo de sockets TCP/IP que forman la base del Internet (casi todas las implementaciones de TCP derivan de la 4.4 BSD-Lite).

Historia 

Las primeras distribuciones de Unix de los laboratorios Bell en los años 70 incluían el código fuente del sistema operativo, permitiendo a los desarrolladores de las universidades modificar y extender Unix. 

El primer sistema Unix de Berkeley fue el PDP-11, que fue instalado en 1974, y fue utilizado desde entonces por el departamento de ciencia computacional para sus investigaciones.
Otras universidades empezaron a interesarse en el software de Berkeley, y por ello en 1977 Bill Joy, entonces un estudiante de grado en Berkeley, grabó y envió cintas del primer Berkeley Software Distribution (BSD).

Relación con Research Unix 
A partir de la 8a Edición de Unix, las versiones de Research Unix en Bell Labs tenían una estrecha relación con BSD. Esto comenzó cuando se utilizó 4.1cBSD para VAX como base para la Version 8 Unix. Esto continuó en versiones posteriores, como la Version 9 Unix, que incorporó código fuente y mejoras de 4.3BSD.

El resultado fue que estas últimas versiones de Research Unix estaban más cerca de BSD que de System V.
En una publicación de Usenet de 2000, Dennis Ritchie describió esta relación entre BSD y Research Unix

Relación con UNIX System V 
Eric S. Raymond resume la relación de larga data entre System V y BSD, afirmando: "La división era aproximadamente entre los de pelo largo y los de pelo corto; los programadores y los técnicos tendían a alinearse con Berkeley y BSD, los tipos más orientados a los negocios con AT&T y System V."

En 1989, David A. Curry escribió sobre las diferencias entre BSD y System V. Caracterizó a System V como a menudo considerado como el "Unix estándar". Sin embargo, describió a BSD como más popular entre los centros informáticos universitarios y gubernamentales, debido a sus funciones y rendimiento avanzados:

Tecnología
Sockets de Berkeley

El Unix de Berkeley fue el primer Unix en incluir bibliotecas compatibles con la arquitectura de Internet Protocol: Berkeley sockets. Una implementación de Unix del predecesor de IP, el NCP de ARPAnet, con clientes FTP y Telnet fue producido en la Universidad de Illinois en 1975, y estaba disponible en Berkeley. Sin embargo, la escasez de memoria en el PDP-11 forzó un diseño complicado y problemas de rendimiento.

Al integrar sockets con los descriptores de archivos del sistema operativo Unix, se volvió casi tan fácil leer y escribir datos a través de una red como acceder a un disco. El laboratorio de AT&T finalmente lanzó su propia biblioteca STREAMS, que incorporó gran parte de la misma funcionalidad en una pila de software con una arquitectura diferente, pero la amplia distribución de la biblioteca de sockets existente redujo el impacto de la nueva API. Las primeras versiones de BSD se usaron para formar SunOS de Sun Microsystems, fundando la primera ola de estaciones de trabajo Unix populares.

Compatibilidad binaria
Algunos sistemas operativos BSD pueden ejecutar software nativo de varios otros sistemas operativos en la misma arquitectura informática, utilizando una capa de compatibilidad binaria. Esto es mucho más simple y rápido que emular; por ejemplo, permite que las aplicaciones diseñadas para Linux se ejecuten efectivamente a toda velocidad. Esto hace que los BSD no solo sean adecuados para entornos de servidor, sino también para estaciones de trabajo, dada la creciente disponibilidad de software comercial o de código cerrado solo para Linux. Esto también permite a los administradores migrar aplicaciones comerciales heredadas, que pueden haber admitido solo variantes comerciales de Unix, a un sistema operativo más moderno, conservando la funcionalidad de dichas aplicaciones hasta que puedan ser reemplazadas por una mejor alternativa.

Estándares
Las variantes actuales del sistema operativo BSD son compatibles con muchos de los  estándares de IEEE, ANSI, ISO y POSIX, manteniendo la mayor parte del comportamiento tradicional de BSD. Al igual que UNIX System V, el kernel BSD es monolítico, lo que significa que los controladores de dispositivos en el kernel se ejecutan en modo privilegiado, como parte del núcleo del sistema operativo.

 Descendientes de BSD 

Varios sistemas operativos se basan en BSD, incluidos FreeBSD, OpenBSD, NetBSD, MidnightBSD, MirOS BSD, GhostBSD, Darwin y DragonFly BSD.
Tanto NetBSD como FreeBSD se crearon en 1993. Inicialmente se derivaron de 386BSD (también conocido como Jolix) y fusionaron el código fuente 4.4BSD-Lite en 1994. 
OpenBSD se bifurcó de NetBSD en 1995 y DragonFly BSD se bifurcó de FreeBSD en 2003.
BSD también se usó como base para varias versiones propietarias de Unix, como Sun OS de Sun, DYNIX de Sequent, NeXTSTEP de NeXT, Ultrix de DEC y OSF/1 AXP (ahora Tru64 UNIX). NeXTSTEP luego se convirtió en la base para macOS de Apple Inc..

 Referencias 

 Bibliografía 
 Samuel J. Leffler, Marshall K. McKusick, Michael J. Karels, John S. Quarterman, The Design and Implementation of the 4.3BSD UNIX Operating System (Addison Wesley, November, 1989; ISBN 978-0-201-06196-3)
 Marshall K. McKusick, Keith Bostic, Michael J. Karels, John S. Quartermain, The Design and Implementation of the 4.4BSD Operating System (Addison Wesley, 1996; ISBN 978-0-201-54979-9)
 Marshall K. McKusick, George V. Neville-Neil, The Design and Implementation of the FreeBSD Operating System (Addison Wesley, August 2, 2004; ISBN 978-0-201-70245-3)

 Bibliografía adicional 
 
 Peter H. Salus, The Daemon, the GNU & The Penguin (Reed Media Services, September 1, 2008; ) 
 Peter H. Salus, A Quarter Century of UNIX (Addison Wesley, June 1, 1994; ) 
 Peter H. Salus, Casting the Net'' (Addison-Wesley, March 1995; )

Véase también 

 Licencia BSD
 Anexo:Distribuciones BSD
 BSD Daemon (Beastie)
 NeXTStep
 FreeBSD
 NetBSD
 OpenBSD
 DragonFlyBSD
Lumina (entorno de escritorio)
Unix wars (Guerras Unix)

Enlaces externos 
 TUHS, The UNIX Heritage Society contiene documentación y el código fuente de numerosas versiones antiguas de UNIX (tanto de ATT como BSD y variantes).
 FreeBSD en español