Sistema Operativo GNU/Linux Nivel básico Contexto histórico y generalidades de UNIX y GNU/Linux Ing. Luis Eduardo Sepúlveda R - Carlos Eduardo Gómez MSc. 2010 Contexto histórico y generalidades de Unix y GNU/Linux | Sistema Operativo GNU/Linux Nivel básico | 2010 Contexto histórico y generalidades de UNIX y GNU/Linux Para comprender adecuadamente los historia de GNU/Linux es conveniente conocer también la historia de Unix. Es importante aclarar que Unix es un sistema operativo multiplataforma, multitarea y multiusuario. A continuación se mencionan acontecimientos importantes relacionados con la evolución de estos sistemas. 1960 El Instituto Tecnológico de Massachusetts (MIT – por sus siglas en inglés), los Laboratorios Bell de AT&T y General Electric trabajaban en la creación de un sistema operativo experimental llamado MULTICS (Multiplexed Information and Computing Service),desarrollado para ejecutarse en una computadora central (mainframe) modelo GE-645. El objetivo principal era la construcción de un sistema operativo muy seguro. Un conjunto de los programadores del equipo de los laboratorios Bell, entre los Página 2 de 14 Contexto histórico y generalidades de Unix y GNU/Linux | Sistema Operativo GNU/Linux Nivel básico | 2010 que se destacan Ken Thompson, y Dennis Ritchie, trabajaron posteriormente con el lenguaje ensamblador de la computadora EC PDP-7. Esta experiencia, junto al trabajo que desarrolló para el proyecto Multics, condujo a Thompson a iniciar la creación de un nuevo sistema operativo para la DEC PDP-7. Iniciaron por la construcción del sistema operativo multitarea y el sistema de archivos; posteriormente agregaron un intérprete de órdenes y un pequeño conjunto de programas. El proyecto fue nombrado UNICS (Uniplexed Information and Computing System). Thompson y Ritchie lideraron un grupo de programadores, entre ellos a Rudd Canaday, en los laboratorios Bell, para desarrollar tanto el sistema de archivos como el sistema operativo multitarea en sí. A lo anterior, agregaron un intérprete de órdenes (o intérprete de comandos) y un pequeño conjunto de programas. El proyecto fue bautizado UNICS, como acrónimo Uniplexed Information and Computing System. Dada la popularidad que tuvo un juego de palabras que consideraba a UNICS un sistema MULTICS, se cambió el nombre a UNIX. 1970 Se habla oficialmente sobre el sistema operativo UNIX ejecutado en una PDP11/20. El sistema operativos y las aplicaciones que ejecutaba (procesador de palabras básicos) estaban escritos en lenguaje ensamblador. 1971 UNIX V1 (Primera edición) Thomson y Ritchie publicaron un manual de programación de UNIX (título original en inglés: "UNIX Programmer's Manual"). Página 3 de 14 Contexto histórico y generalidades de Unix y GNU/Linux | Sistema Operativo GNU/Linux Nivel básico | 2010 1972 Se tomó la decisión de escribir UNIX en lenguaje de programación C. UNIX se convirtió así en el primer sistema operativo escrito en lenguaje de alto nivel. Con este nuevo enfoque fue posible portar al sistema operativo a otras máquinas sin muchos cambios, solamente efectuando una nueva compilación en la máquina de destino. Gracias a esto la popularidad de UNIX creció y permitió asentar la "filosofía UNIX". Inicialmente UNIX fue considerado como un proyecto de investigación, hasta el punto de distribuirse de forma gratuita en algunas universidades, pero después la demanda del producto hizo que los laboratorios Bell iniciaran su distribución oficial. AT&T puso a UNIX a disposición de universidades y compañías, también al gobierno de los Estados Unidos, a través de licencias. Una de estas licencias fue otorgada al Departamento de Computación de la Universidad de California, con sede en Berkeley. UNIX V2 (segunda edición). 1973 UNIX V3 (Tercera edición). UNIX V4 (Cuarta edición). 1974 UNIX V5 (Quinta edición) Página 4 de 14 Contexto histórico y generalidades de Unix y GNU/Linux | Sistema Operativo GNU/Linux Nivel básico | 2010 1975 La Universidad de Berkeley desarrolló y publicó su propio adaptación de UNIX, conocida como Berkeley Software Distribution (BSD), que se convirtió en una fuerte competencia para la familia UNIX de AT&T. AT&T creó una división comercial denominada Unix Systems Laboratories para la explotación comercial del sistema operativo. UNIX V6 (Sexta edición) 1977 1 BSD 1978 2 BSD Aproximadamente 600 máquinas estaban ejecutándose con alguna de las distintas composiciones de UNIX. 1979 UNIX V7 (Séptima edición), la cual entra en circulación con gran aceptación. 3 BSD 1980 4 BSD 1981 Página 5 de 14 Contexto histórico y generalidades de Unix y GNU/Linux | Sistema Operativo GNU/Linux Nivel básico | 2010 AT&T inició el desarrollo de UNIX System III, basado en UNIX V7, como una variante de tinte comercial y así vendía el producto de manera directa. 4.1 BSD 1982 SunOS 1.0 Unix System IV 1983 AT&T decidió combinar varias versiones desarrolladas en distintas universidades y empresas, dando origen al Unix System V Release 1. Esta versión presentó características tales como el editor Vi y la biblioteca curses, desarrolladas por Berkeley Software Distribution. Richard Stallman crea el proyecto GNU, GNU es un acrónimo recursivo que significa GNU No es Unix (GNU is Not Unix). Fue iniciado con el objetivo de crear un sistema operativo completamente libre: el sistema GNU. 4.2 BSD. 1984 Unix System V release 2. 1985 Richard Stallman creó la Free Software Foundation (FSF o Fundación para el Software Libre) para proveer soportes logísticos, legales y financieros al proyecto GNU. Página 6 de 14 Contexto histórico y generalidades de Unix y GNU/Linux | Sistema Operativo GNU/Linux Nivel básico | 2010 1986 HP-UX 1.0 Basado en Unix System V release 2 IBM AIX/RT Basado en Unix System V release 2 4.3 BSD MACH 1.0 (Basado en 4.2 BSD) 1987 HP-UX 2.0 SGI IRIX 1.0 Unix System V release 3.2 MACH 2.0 1988 HP-UX 3.0 1989 Solaris 1.0 HP-UX 7.0 IBM AIX 3.0 Página 7 de 14 Contexto histórico y generalidades de Unix y GNU/Linux | Sistema Operativo GNU/Linux Nivel básico | 2010 1990 El sistema GNU ya tenía un editor de texto llamado Emacs, un exitoso compilador llamado GCC, y la mayor parte de las bibliotecas y utilidades que componen un sistema operativo UNIX típico. Pero faltaba un componente clave llamado núcleo (kernel en inglés). El Proyecto GNU inica el desarrollo de GNU Hurd, este último es un conjunto de programas servidores que simulan un núcleo Unix que establece la base del sistema operativo GNU. Este desarrollo obviamente está bajo la licencia GPL. Hurd intenta superar los núcleos tipo Unix en cuanto a funcionalidad, seguridad y estabilidad, aun manteniéndose compatible con ellos. Esto se logra gracias a que Hurd implementa la especificación POSIX. 1991 El estudiante de ciencias de la computación llamado Linus Torvalds desarrolló un núcleo para computadoras con arquitectura de procesador Intel x86 que incluía muchas de las funcionalidades de UNIX y lo lanzó en forma de código abierto en 1991, bajo el nombre de Linux. HP-UX 8.0 1992 El núcleo Linux fue combinado con el sistema GNU, resultando en un sistema operativo libre y completamente funcional. El Sistema Operativo formado por esta combinación es usualmente conocido como "GNU/Linux" o como una "distribución Linux" y existen diversas variantes o “distribuciones”. HP-UX 9.0 Página 8 de 14 Contexto histórico y generalidades de Unix y GNU/Linux | Sistema Operativo GNU/Linux Nivel básico | 2010 4.4 BSD 1993 La compañía Novell adquirió la división Unix Systems Laboratories de AT&T junto con su propiedad intelectual. Esto ocurrió en un momento delicado en el que Unix Systems Laboratories disputaba una demanda en los tribunales contra BSD por infracción de los derechos de copyright, revelación de secretos y violación de marca de mercado. BSD no solamente ganó el juicio sino que también se descubriendo que grandes porciones del código de BSD habían sido copiadas ilegalmente en UNIX System V. En realidad, la propiedad intelectual de Novell (recién adquirida de Unix Systems Laboratories) se reducía a unos pocos archivos fuente. La correspondiente contra-demanda acabó en un acuerdo extrajudicial cuyos términos permanecen bajo secreto a petición de Novell. NOVELL Unixware 1.0 IBM AIX 4.0 FreeBSD 1.0 (basado en 4.3 BSD) 1994 SCO Unix 3 1995 Página 9 de 14 Contexto histórico y generalidades de Unix y GNU/Linux | Sistema Operativo GNU/Linux Nivel básico | 2010 Novell vendió su división UNIX comercial (es decir, la antigua Unix Systems Laboratories) a Santa Cruz Operation (SCO) reservándose, aparentemente, algunos derechos de propiedad intelectual sobre el software. SCO continúa la comercialización de System V en su producto UnixWare, que durante cierto tiempo pasó a denominarse OpenUnix, aunque ha retomado de nuevo el nombre de UnixWare. HP-UX 10.0 NOVELL Unixware 2.0 SCO OpenServer 1997 HP-UX 11.0 BSD/OS 3.0 1998 SCO Unixware 7.0 BSD/OS 4.0 2001 GNU/Linux 2.4 IBM AIX 5.1 Página 10 de 14 Contexto histórico y generalidades de Unix y GNU/Linux | Sistema Operativo GNU/Linux Nivel básico | 2010 MAC OS X 10.0 SCO Open Unix 8.0 2002 MAC OS X 10.2 2003 GNU/Linux 2.6 HP-UX 11.2 MAC OS X 10.3 SGI IRIX 6.5.20 BSD/OS 5.0 SCO UnixWare 7.1.3 /OKP Solaris 9 X86 2004 HP-UX 11.11 AIX 5L v5.2 Página 11 de 14 Contexto histórico y generalidades de Unix y GNU/Linux | Sistema Operativo GNU/Linux Nivel básico | 2010 Solaris 10 FreeBSD 4.10 OpenBSD 3.5 Debian GNU/Hurd K6 2005 SCO UnixWare 7.1.4 Maintenance Pack 2 FreeBSD 4.11 Mac OS X 10.4 OpenBSD 3.8 Free BSD 6.0 NetBSD 3.0 HP-UX 11.23 2006 OpenBSD 4.0 GNU/Linux 2.6.19 Página 12 de 14 Contexto histórico y generalidades de Unix y GNU/Linux | Sistema Operativo GNU/Linux Nivel básico | 2010 Debian GNU/Hurd K14 2007 Minix 3 V3.1.3a AIX 6.1 HP-UX 11.23 11iV2 OpenServer 6 Mac OS X 10.5 iPhone OS 1.0 2008 Mac Os X 10.5.6 iPhone 2.2 FreeBSD 6.4 Solaris 10 update 6 2009 NetBSD 5.0.1 Mac OS X 10.6 Página 13 de 14 Contexto histórico y generalidades de Unix y GNU/Linux | Sistema Operativo GNU/Linux Nivel básico | 2010 FreeBSD 8.0 OpenBSD 4.6 Solaris 10 update 8 Linux 2.6.31 HP-UX 11.31 11iv3 update 5 OpenServer 6 Página 14 de 14