Introducción a FreeBSD Resumen: ● Historia de FreeBSD ● Organización ¿Qué es FreeBSD? ● ● Un sistema operativo de tipo Unix Un proyecto para desarrollar este sistema operativo ¿Que es un sistema operativo? Conjunto de programas que gestiona el hardware y provee recursos a las aplicaciones – Gestión de procesos – Gestión de memoria – Sistemas de ficheros – Acceso a redes – Seguridad – Rendimiento 1969 - Unix ● Proyecto privado de Ken thompson para jugar a Space travel en un PDP-7 que no se usaba. – Capacidades principales: ● ● ● Reescrito en C en 1972 Se distribuia el código fuente Tenía capacidades disponibles solo en sistemas mucho más caros. Ej: Procesos simultaneos PDP 7 1969 - Unix ● Que deseaban sus autores: – “La potencia del sistema proviene más de la relación entre los programas que de los programas mismos.” Ken Thompson – “Lo que queriamos no era solo un buen entorno en el que programar, sino un sistema en el que se fomente el compañerismo. […] [Esto] no era solo para escribir programas en una terminal en vez de tarjetas perforadas, sino para fomentar la comunicación cercana.” Dennis Ritchie Berkeley – Primeros años 1973 – Bob Fabry descubre Unix 1974 – Llegada de la primera versión de Unix funcionando sobre un PDP-11. 1975 – Año sabático de Thompson en Berkeley 1975 – Bill Joy toma contacto con el sistema 1977 - 1BSD Recopilado por Bill Joy – Principales caracteristicas: ● ● – Editor ex Compilador de Pascal Distribuido el 4 de Marzo de 1978 Mayo 1979 – 2BSD y 3BSD 2BSD: – Evolución de 1BSD con 3 programas nuevos que escribió Bill Joy: ● ● ● – El editor vi La C shell Termcap Distribuido en Mayo de 1979 3BSD: – Port a VAX – Distribuido en Diciembre de 1979 1979 - DARPA ● Problemas con hardware obsoleto ● Se decide estandarizar a nivel de SO ● Se elige Unix como Estándar – Bob Fabry propone una versión mejorada. 1980 - Berkeley ● Sale la versión 4BSD en Octubre: – Compilador LISP – Sistema de ficheros más rápido – Job control – Procesado de mail ● Criticado por su velocidad. ● Reforma del copyright Junio - 1981 ● 4.1BSD – Mejora de rendimiento – Problemas legales con nombre 5BSD Agosto 1983 – 4.2BSD ● Contrato 5 veces mayor con DARPA – Sistema de ficheros más rápido – Mejor gestión de memoria – Mejor IPC – Soporte de red ARPAnet (TCP/IP) – Fecha de entrega: primavera de 1983 ● Bill Joy lo deja en 1982 ● 3 releases intermedias ● Gran popularidad 1983 - Ampliación ● Caso anti-monopolio contra AT&T ● Fundación del proyecto GNU 4.3BSD ● Problemas de velocidad en 4.2BSD ● Problemas legales con BBN sobre TCP/IP Versión final en 1986 4.3BSD – Networking Release 1 ● Primera versión completamente libre ● Versión final en Junio de 1989 4.3BSD - Reno ● Continuación del desarrollo de 4.2BSD – VM basado en Mach – NFS compatible con el de Sun Versión final a principios de 1990 1989 - 1991 ● Tim Berners Lee crea la “World Wide Web” – Escrito en 1990 sobre NextSTEP – Publicado el 1 de Agosto de 1991 en alt.hypertext – Publica la primera imagen de la WWW 4.3BSD – Networking Release 2 ● ● Reescritura del sistema – Userland 18 meses – Primer desarrollo a través de internet Faltaban 6 ficheros para terminarlo – 6 meses después Bill Jolitz lo completa – Nace 386/BSD – Nacen un tiempo después NetBSD y FreeBSD Versión final en Junio de 1991 1991 - Linux ● ● Sale la primera versión del kernel de linux Linus diría en una entrevista algún tiempo después: – “If 386BSD had been available when I started on Linux, Linux would probably never had happened.” El Juicio ● BSDi empieza a vender Unix ● USL demanda a BSDi ● USL demanda a Berkeley ● Berkeley demanda a USL Acuerdo en enero de 1994. Eliminar 3 ficheros de 18.000 y algún pequeño cambio en otros. Junio de 1994 – 4.4BSD ● ● Dos nuevas versiones – 4.4BSD-Lite – 4.4BSD-Encumbered Los derivados deben empezar desde aquí – Se causa un pequeño retraso FreeBSD Distribución en CD por Walnuk Creek – Primera versión en Diciembre de 1993 Reescritura desde 4.4BSD – Versión 2.0 en Noviembre de 1994. FreeBSD ● Muy popular entre ISPs – ● Base para productos/appliances/empotrados – ● Yahoo!, Verio, ISC... Juniper JunOS, Nokia, Mac OS X Centrado entorno a Rendimiento, redes y seguridad FreeBSD ● Comunidad muy activa – Más de 300 desarrolladores ● Muy buena documentación ● Más de 22.000 aplicaciones FreeBSD Foundation ● Organización sin ánimo de lucro ● Desarrollo pagado – Propiedad intelectual, contratos, legal – Recoger dinero – Pagar eventos (EuroBSDCon, BSDCan..) – Compras de hardware – Acuerdos de I+D Recursos ● Páginas web – FreeBSD.org – Wiki.FreeBSD.org – Forum.freebsd.org ● Listas de correo ● IRC – Efnet – freenode Necesidades del proyecto ● Hardware, especialmente en racks ● Ancho de banda en cantidades inmensas ● Ayudas en viajes ● Salarios, contratos, Distribución del trabajo ● Core Team (9, cada 4 años) ● Commiters (doc, src) ● Release Engeniering ● Security team ● FreeBSD Foundation ● Administradores de SVN, web, mail Releases ● Procesos de testing ● Varios branches simultaneos ● Concepto de -STABLE y -CURRENT