La Berkeley Software Distribution [ a ] ( BSD ), también conocida como Berkeley Unix , es un sistema operativo Unix descontinuado desarrollado y distribuido por el Computer Systems Research Group (CSRG) de la Universidad de California, Berkeley . Lanzado por primera vez en 1978, comenzó como una versión mejorada del Unix original de AT&T , desarrollado en Bell Labs , basado en el código fuente . Con el tiempo, BSD evolucionó hasta convertirse en un sistema operativo independiente y desempeñó un papel importante en la informática y en el desarrollo y la difusión de sistemas similares a Unix. [ 2 ] [ 3 ]
El desarrollo de BSD fue liderado inicialmente por Bill Joy , quien junto con Ozalp Babaoglu agregó capacidad de memoria virtual a Unix ejecutándose en una computadora VAX-11 . [ 3 ] Durante la década de 1980, BSD obtuvo una amplia adopción por parte de los proveedores de estaciones de trabajo en forma de distribuciones propietarias de Unix, como DEC con Ultrix y Sun Microsystems con SunOS , debido a su licencia permisiva y familiaridad entre los ingenieros. BSD también se convirtió en la variante de Unix más utilizada en instituciones académicas, donde se utilizó para el estudio de sistemas operativos. [ 2 ] El proyecto BSD recibió financiamiento de DARPA hasta 1988, [ 3 ] tiempo durante el cual BSD incorporó soporte para ARPANET y luego implementó el conjunto de protocolos TCP/IP , lanzado como parte de BSD NET/1 en 1988. [ 4 ] Para entonces, la base de código se había divergido significativamente del Unix original de AT&T, con estimaciones que sugieren que menos del 5% del código permaneció de AT&T. Como resultado, NET/1 se distribuyó sin requerir una licencia de origen de AT&T. [ 3 ] [ 4 ]
Berkeley finalizó su investigación sobre Unix en 1992, tras la reducción de fondos y las complicaciones derivadas de la demanda por derechos de autor de Unix . [ 3 ] A medida que el BSD original se volvía obsoleto, el término "BSD" pasó a referirse principalmente a sus descendientes de código abierto , incluidos FreeBSD , OpenBSD , NetBSD y DragonFly BSD , y derivados de esos proyectos, como TrueOS . El código derivado de BSD, junto con el código Mach , también formó la base de Darwin ; que, a su vez, se ha incorporado a los sistemas operativos propietarios de Apple , como macOS e iOS . [ 5 ] La pila de red de Windows NT 3.1 utilizaba una implementación TCP/IP derivada de BSD, y algunas utilidades de red basadas en BSD para esa pila también se proporcionan con Windows NT. [ 6 ] El código de los descendientes abiertos de BSD también se ha integrado en varias plataformas modernas, incluido el software del sistema para PlayStation 5 y otros dispositivos integrados o comerciales. [ 7 ]
Historia

Las primeras distribuciones de Unix de Bell Labs en la década de 1970 incluían el código fuente del sistema operativo, lo que permitía a los investigadores universitarios modificarlo y ampliarlo. El sistema operativo llegó a Berkeley en 1974, a petición del profesor de informática Bob Fabry, quien había formado parte del comité del programa del Simposio sobre Principios de Sistemas Operativos, donde se presentó Unix por primera vez. Se compró un PDP-11/45 para ejecutar el sistema, pero por razones presupuestarias, esta máquina se compartió con los grupos de matemáticas y estadística de Berkeley, que utilizaban RSTS , por lo que Unix solo funcionaba en la máquina ocho horas al día (a veces durante el día, a veces durante la noche). Un PDP-11/70 más grande se instaló en Berkeley al año siguiente, con fondos del proyecto de la base de datos Ingres . [ 8 ]
BSD nació como una variante de Unix que los programadores de la Universidad de California en Berkeley, inicialmente liderados por Bill Joy , comenzaron a desarrollar a finales de la década de 1970. Incluía características adicionales, que estaban entrelazadas con código propiedad de AT&T.
En 1975, Ken Thompson se tomó un año sabático de Bell Labs y llegó a Berkeley como profesor visitante. Ayudó a instalar la versión 6 de Unix y comenzó a trabajar en una implementación de Pascal para el sistema. Los estudiantes de posgrado Chuck Haley y Bill Joy mejoraron el Pascal de Thompson e implementaron un editor de texto mejorado, por ejemplo . [ 8 ] Otras universidades se interesaron en el software de Berkeley, y así, en 1977, Joy comenzó a compilar la primera Berkeley Software Distribution (1BSD), que se lanzó el 9 de marzo de 1978. [ 9 ] 1BSD era un complemento para la versión 6 de Unix, más que un sistema operativo completo por derecho propio. Se enviaron unas treinta copias. [ 8 ]
La segunda distribución de software de Berkeley (2BSD), publicada en mayo de 1979, [ 10 ] incluía versiones actualizadas del software 1BSD, así como dos nuevos programas de Joy que persisten en los sistemas Unix hasta el día de hoy: el editor de texto vi (una versión visual de ex ) y el intérprete de comandos C. Bill Joy distribuyó unas 75 copias de 2BSD. [ 8 ]

En 1978 se instaló un ordenador VAX en Berkeley, pero la adaptación de Unix a la arquitectura VAX, UNIX/32V , no aprovechó las capacidades de memoria virtual de VAX . El núcleo de 32V se reescribió en gran medida para incluir la implementación de memoria virtual del estudiante de posgrado de Berkeley, Özalp Babaoğlu , y a finales de 1979 se lanzó un sistema operativo completo que incluía el nuevo núcleo, adaptaciones de las utilidades de 2BSD a VAX y las utilidades de 32V, denominado 3BSD. 3BSD también se conocía como Virtual VAX/UNIX o VMUNIX (por Virtual Memory Unix), y las imágenes del núcleo BSD se denominaban normalmente así /vmunixhasta la versión 4.4BSD.

Tras el lanzamiento de 4.3BSD en junio de 1986, se decidió que BSD abandonaría la antigua plataforma VAX. La plataforma Power 6/32 (con nombre en clave "Tahoe"), desarrollada por Computer Consoles Inc., parecía prometedora en aquel momento, pero sus desarrolladores la abandonaron poco después. No obstante, la adaptación de 4.3BSD a Tahoe (junio de 1988) resultó valiosa, ya que permitió separar el código dependiente de la máquina del código independiente de la máquina en BSD, lo que mejoraría la portabilidad futura del sistema.
Además de la portabilidad, el CSRG trabajó en una implementación de la pila de protocolos de red OSI , mejoras al sistema de memoria virtual del núcleo y (con Van Jacobson de LBL ) nuevos algoritmos TCP/IP para adaptarse al crecimiento de Internet. [ 11 ]
Hasta entonces, todas las versiones de BSD utilizaban código Unix propietario de AT&T y, por lo tanto, estaban sujetas a una licencia de software de AT&T. Las licencias de código fuente se habían vuelto muy costosas y varias partes externas habían mostrado interés en una versión independiente del código de red, que se había desarrollado completamente fuera de AT&T y no estaría sujeta al requisito de licencia. Esto dio lugar a Networking Release 1 ( Net/1 ), que se puso a disposición de quienes no tenían licencia del código de AT&T y se podía redistribuir libremente bajo los términos de la licencia BSD . Se publicó en junio de 1989.
Tras Net/1, el desarrollador de BSD, Keith Bostic, propuso que más secciones del sistema BSD, ajenas a AT&T, se publicaran bajo la misma licencia que Net/1. Con este fin, inició un proyecto para reimplementar la mayoría de las utilidades estándar de Unix sin utilizar el código de AT&T. En dieciocho meses, todas las utilidades de AT&T habían sido reemplazadas y se determinó que solo quedaban unos pocos archivos de AT&T en el núcleo. Estos archivos fueron eliminados, y el resultado fue el lanzamiento en junio de 1991 de Networking Release 2 (Net/2), un sistema operativo casi completo y de libre distribución.
Net/2 sirvió de base para dos adaptaciones de BSD a la arquitectura Intel 80386 : el 386BSD gratuito de William y Lynne Jolitz , y el BSD/386 propietario (posteriormente renombrado BSD/OS) de Berkeley Software Design (BSDi). El 386BSD tuvo una corta vida, pero se convirtió en la base de código inicial de los proyectos NetBSD y FreeBSD , que se iniciaron poco después.
BSDi pronto se vio envuelta en problemas legales con Unix System Laboratories (USL), filial de AT&T, entonces propietaria de los derechos de autor de System V y de la marca registrada Unix. La demanda USL contra BSDi se presentó en 1992 y dio lugar a una orden judicial que suspendió la distribución de Net/2 hasta que se determinara la validez de las reclamaciones de derechos de autor de USL sobre el código fuente. La demanda ralentizó el desarrollo de los descendientes de software libre de BSD durante casi dos años mientras su estatus legal estaba en entredicho, y como resultado, los sistemas basados en el núcleo Linux , que no presentaban tal ambigüedad legal, ganaron mayor apoyo. La demanda se resolvió en enero de 1994, en gran medida a favor de Berkeley. De los 18.000 archivos de la distribución de Berkeley, solo tres tuvieron que ser eliminados y 70 modificados para mostrar los avisos de derechos de autor de USL. Otra condición del acuerdo fue que USL no presentaría más demandas contra usuarios y distribuidores del código propiedad de Berkeley en la próxima versión 4.4BSD. [ 12 ]
La última versión publicada por Berkeley fue 4.4BSD-Lite Release 2 en 1995 , tras lo cual se disolvió el CSRG y cesó el desarrollo de BSD en Berkeley. Desde entonces, se han mantenido varias variantes basadas directa o indirectamente en 4.4BSD-Lite (como FreeBSD , NetBSD , OpenBSD y DragonFly BSD ).
La naturaleza permisiva de la licencia BSD ha permitido que muchos otros sistemas operativos, tanto de código abierto como propietarios, incorporen código fuente BSD. Por ejemplo, Windows NT 3.1 utilizó código BSD en su implementación de TCP/IP [ 6 ] e incluye versiones recompiladas de las herramientas de red de línea de comandos de BSD desde Windows 2000. [ 13 ] Darwin , la base de macOS e iOS de Apple , se basa en 4.4BSD-Lite2 y FreeBSD. Varios sistemas operativos Unix comerciales, como Solaris , también incorporan código BSD.
Relación con Research Unix
A partir de la 8.ª edición, las versiones de Research Unix en Bell Labs tuvieron una estrecha relación con BSD. Esto comenzó cuando se utilizó 4.1cBSD para VAX como base para la 8.ª edición de Research Unix. Esta relación continuó en versiones posteriores, como la 9.ª edición, 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 del año 2000, Dennis Ritchie describió esta relación entre BSD y Research Unix: [ 14 ]
La octava edición de Research Unix partió (creo) de BSD 4.1c, pero con una enorme cantidad de código eliminado y reemplazado por el nuestro. Esto continuó con la novena y la décima edición. El conjunto de comandos de usuario común era, supongo, un poco más al estilo BSD que al estilo SysV, pero era bastante ecléctico.
Relación con el Sistema V
Eric S. Raymond resume la larga relación entre System V y BSD, afirmando: "La división era más o menos entre los de pelo largo y los de pelo corto; los programadores y la gente técnica tendían a alinearse con Berkeley y BSD, los tipos más orientados a los negocios con AT&T y System V". [ 15 ]
En 1989, David A. Curry escribió sobre las diferencias entre BSD y System V. Caracterizó a System V como a menudo considerado el "Unix estándar". Sin embargo, describió a BSD como más popular entre los centros informáticos universitarios y gubernamentales, debido a sus características y rendimiento avanzados: [ 16 ]
La mayoría de los centros informáticos universitarios y gubernamentales que utilizan UNIX usan Berkeley UNIX, en lugar de System V. Hay varias razones para esto, pero quizás las dos más importantes son que Berkeley UNIX proporciona capacidades de red que hasta hace poco (versión 3.0) no estaban disponibles en System V, y que Berkeley UNIX es mucho más adecuado para un entorno de investigación, que requiere un sistema de archivos más rápido, una mejor gestión de la memoria virtual y una mayor variedad de lenguajes de programación .
Tecnología
enchufes Berkeley



El Unix de Berkeley fue el primero en incluir bibliotecas que soportaban las pilas del Protocolo de Internet : los sockets de Berkeley . Una implementación en Unix del predecesor de IP, el NCP de ARPAnet , con clientes FTP y Telnet , se había producido en la Universidad de Illinois en 1975 y estaba disponible en Berkeley. [ 17 ] [ 18 ] Sin embargo, la escasez de memoria en el PDP-11 obligó a un diseño complejo y a problemas de rendimiento. [ 19 ]
Al integrar los sockets con los descriptores de archivo del sistema operativo Unix , leer y escribir datos en una red se volvió casi tan sencillo como acceder a un disco. El laboratorio de AT&T lanzó posteriormente su propia biblioteca STREAMS , que incorporaba 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 utilizaron para crear SunOS de Sun Microsystems , dando origen a la primera generación de estaciones de trabajo Unix populares.
Compatibilidad binaria
Algunos sistemas operativos BSD pueden ejecutar software nativo de otros sistemas operativos en la misma arquitectura , mediante una capa de compatibilidad binaria . Esto es mucho más sencillo y rápido que la emulación ; por ejemplo, permite que las aplicaciones diseñadas para Linux se ejecuten prácticamente a máxima velocidad. Esto hace que los sistemas BSD sean adecuados no solo para entornos de servidor, sino también para estaciones de trabajo, dada la creciente disponibilidad de software comercial o de código cerrado exclusivo para Linux. Además, permite a los administradores migrar aplicaciones comerciales antiguas, que quizás solo admitían variantes comerciales de Unix, a un sistema operativo más moderno, conservando la funcionalidad de dichas aplicaciones hasta que puedan ser reemplazadas por una alternativa mejor.
Estándares
Las variantes actuales del sistema operativo BSD son compatibles con muchos de los estándares comunes IEEE , ANSI , ISO y POSIX , a la vez que conservan la mayor parte del comportamiento tradicional de BSD. Al igual que AT&T Unix , el núcleo de BSD es monolítico , lo que significa que los controladores de dispositivos en el núcleo se ejecutan en modo privilegiado , como parte del núcleo del sistema operativo.
descendientes de BSD
Varios sistemas operativos se basan en BSD, entre ellos FreeBSD , OpenBSD , NetBSD , DragonFly BSD , MidnightBSD , MirOS BSD y GhostBSD . Tanto NetBSD como FreeBSD se crearon en 1993. Inicialmente derivaron de 386BSD (también conocido como "Jolix") y fusionaron el código fuente de 4.4BSD-Lite en 1994. OpenBSD se bifurcó de NetBSD en 1995, y DragonFly BSD se bifurcó de FreeBSD en 2003.
BSD también sirvió de base para varias versiones propietarias de Unix, como SunOS de Sun , DYNIX de Sequent , NeXTSTEP de NeXT , Ultrix de DEC y OSF/1 AXP (ahora Tru64 UNIX ). Posteriormente, NeXTSTEP se convirtió en la base de macOS de Apple Inc. y de sistemas operativos posteriores como iOS , que comparten Darwin, basado en BSD, como sistema operativo principal.
Véase también
Notas
Referencias
- ↑ "Por qué deberías usar una licencia estilo BSD para tu proyecto de código abierto" . El proyecto FreeBSD . BSD (Distribución Estándar de Berkeley) . Consultado el 3 de agosto de 2021 .
- 1 2 Levitt, Jason; Schuman, Evan (22 de junio de 1992). "Para BSD Unix, es Sayonara" . Open Systems Today .
- 1 2 3 4 5 Harding, Elizabeth U. (19 de octubre de 1992). "Pionero de Unix pone fin a la investigación de BSD" . Software Magazine .
- 1 2 "Una breve historia de Unix, BSD y FreeBSD" . minnie.tuhs.org . Consultado el 5 de diciembre de 2024 .
- ↑ "Guía de programación del kernel de Apple: Descripción general de BSD" . Consultado el 27 de marzo de 2021 .
- 1 2 Barr, Adam (19 de junio de 2001). "Microsoft, TCP/IP, código abierto y licencias" . Archivado del original el 14 de noviembre de 2005. Recuperado el 7 de junio de 2019 .
- ↑ "Núcleo" . Wiki de desarrolladores de PlayStation 5 .
- 1 2 3 4 Salus, Peter H. (2005). "Capítulo 7. BSD y el CSRG" . El demonio, el ñu y el pingüino . Groklaw . Archivado del original el 14 de junio de 2020. Recuperado el 6 de septiembre de 2017 .
- ↑ Salus (1994), pág. 142
- ↑ Toomey, Warren. "Detalles de los archivos PUPS" . tuhs.org . The Unix Heritage Society . Archivado del original el 9 de julio de 2006. Recuperado el 6 de octubre de 2010 .
- ↑ McKusick, MK; Karels, MJ; Sklower, Keith; Fall, Kevin; Teitelbaum, Marc; Bostic, Keith (1989). "Investigación actual del Grupo de Investigación de Sistemas Informáticos de Berkeley" (PDF) . Actas de la Conferencia de Primavera del Grupo Europeo de Usuarios de Unix .
- ↑ Eric S. Raymond. "El arte de la programación Unix: orígenes e historia de Unix, 1969-1995" . Archivado del original el 5 de octubre de 2014. Consultado el 18 de julio de 2014 .
- ↑ "Código BSD en Windows" . everything2.com . 20 de marzo de 2001. Archivado del original el 25 de agosto de 2008. Consultado el 20 de enero de 2009 .
- ↑ Dennis Ritchie (26 de octubre de 2000). "alt.folklore.computers: BSD (Dennis Ritchie)" . Archivado del original el 14 de julio de 2014. Recuperado el 3 de julio de 2014 .
- ↑ Raymond, Eric S. El arte de la programación Unix. 2003. pág. 38
- ↑ Curry, David. Uso de C en el sistema UNIX: Guía para la programación de sistemas. 1989. págs. 2–3
- ↑ Chesson, GL (1976). "El sistema Unix de red" . ACM SIGOPS Operating Systems Review . 9 (5): 60– 66. doi : 10.1145/1067629.806522 .
- ↑ RFC 681
- ↑ Quarterman, John S.; Silberschatz, Abraham; Peterson, James L. (diciembre de 1985). "4.2BSD y 4.3BSD como ejemplos del sistema Unix". Computing Surveys . 17 (4): 379– 418. CiteSeerX 10.1.1.117.9743 . doi : 10.1145/6041.6043 . S2CID 5700897 .
Bibliografía
- Marshall K. McKusick, Keith Bostic, Michael J. Karels, John S. Quartermain, El diseño e implementación del sistema operativo 4.4BSD (Addison Wesley, 1996; ISBN 978-0-201-54979-9)
- Marshall K. McKusick, George V. Neville-Neil, El diseño e implementación del sistema operativo FreeBSD (Addison Wesley, 2 de agosto de 2004; ISBN 978-0-201-70245-3)
- Samuel J. Leffler, Marshall K. McKusick, Michael J. Karels, John S. Quarterman , El diseño e implementación del sistema operativo UNIX 4.3BSD (Addison Wesley, noviembre de 1989; ISBN 978-0-201-06196-3)
- McKusick, Marshall Kirk (enero de 1999). «Veinte años de Berkeley Unix: de propiedad de AT&T a redistribuible libremente» . En DiBona, Chris; Ockman, Sam; Stone, Mark (eds.). Open Sources: Voices from the Revolution (primera ed.). O'Reilly. ISBN 978-1-56592-582-3.
- Peter H. Salus , El demonio, el GNU y el pingüino (Reed Media Services, 1 de septiembre de 2008; ISBN 978-0-9790342-3-7)
- Peter H. Salus , Un cuarto de siglo de UNIX (Addison Wesley, 1 de junio de 1994; ISBN 978-0-201-54777-1)
- Peter H. Salus , Lanzando la red (Addison-Wesley, marzo de 1995; ISBN 978-0-201-87674-1)
Enlaces externos
- Cronología de BSD y Research UNIX
- Historia de UNIX : Historia de UNIX y BSD mediante diagramas.
- Diseño e implementación del sistema operativo 4.4BSD
- El árbol de Unix: código fuente y manuales para versiones antiguas de Unix
- EuroBSDCon , un evento anual en Europa en septiembre, octubre o noviembre, fundado el 20 de junio de 2020 en Wayback Machine en 2001
- BSDCan , una conferencia que se celebra anualmente en Ottawa, Ontario , Canadá, en mayo desde 2004 y en junio desde 2015.
- AsiaBSDCon , una conferencia que se celebra anualmente en Tokio en marzo de cada año desde 2007.
- mdoc.su : URLs cortas para páginas de manual de FreeBSD, OpenBSD, NetBSD y DragonFly BSD ; un servicio web escrito en nginx.
- BXR.SU – Super User's BSD Cross Reference , un motor de búsqueda de código fuente del espacio de usuario y del kernel basado en OpenGrok y nginx.
- Distribución de software de Berkeley
- Software de 1977
- Productos y servicios descontinuados en 1995.
- Tecnología de centros de datos
- Sistemas operativos de software libre
- Software libre programado en C
- Familias de sistemas operativos
- Ciencia y tecnología en el Área de la Bahía de San Francisco
- Universidad de California, Berkeley