martes , 25 junio 2019
Inicio / Blog / Unix: un sistema operativo sienta nuevos estándares

Unix: un sistema operativo sienta nuevos estándares

El desarrollo de Unix se cuenta sin lugar a dudas entre los grandes hitos de la historia de la informática. El sistema operativo introdujo conceptos fundamentales de la tecnología de la información como la estructura jerárquica de los sistemas de archivos, pero también sirvió como punto de partida para el desarrollo de otros sistemas, como los sistemas operativos propietarios de Apple macOs y iOS o el proyecto open source Linux, que a su vez ha dado pie al desarrollo de otros sistemas como Ubuntu, Debian o Android, el sistema operativo para dispositivos móviles. ¿Cómo se convirtió Unix en una de las aplicaciones más influyentes de la administración informática y por qué el equipo que lo desarrolló tuvo que plasmar sus primeras ideas en notas y pizarras?

Índice
Historia de Unix: todo comienza en Multics
Multics se convierte en Unix
Unix obtiene su propio lenguaje de programación
Poco exigente y open source: Unix conquista a los programadores
Los años 80: comercialización y “guerras Unix”
Unix entra en el entorno de servidor gracias al pingüino
¿Qué es Unix?
Unix: pieza clave en la historia de los sistemas operativos
Historia de Unix: todo comienza en Multics
Corría 1965 cuando un equipo de trabajo compuesto por empleados del MIT (Massachusetts Institute of Technology), de la General Electric y de los Laboratorios Bell (Bell Labs) de AT&T –desde 2016 incluida en el departamento de investigación y desarrollo de Nokia– presentó su idea de un nuevo sistema operativo en la Fall Joint Computer Conference (FJCC) en Las Vegas, EE.UU. Bautizado como Multiplexed Information and Computing Service (Multics), con este nuevo SO se perseguían unos principios completamente nuevos, dando especial relevancia al concepto del time sharing (tiempo compartido). Multics debía convertirse, así, en uno de los primeros sistemas que permitieran a varios usuarios trabajar simultáneamente en un ordenador. Esto sería posible compartiendo el tiempo de procesamiento de la CPU.

Para llevarlo a cabo, este grupo de trabajo necesitaba un ordenador que cumpliera una serie de requisitos. Por un lado, debía ostentar un juego de instrucciones bien estructurado que permitiera utilizar el lenguaje de programación PL/I de IBM para su desarrollo, tal como se había previsto; por el otro, debía soportar el futuro uso multiusuario y trabajar de forma asíncrona para que las pérdidas de rendimiento en la gestión de la memoria se mantuvieran lo más bajas posible. Esto llevó al equipo a decantarse por el GE-635 y más tarde por el GE-645 de General Electric. El desarrollo se llevó a cabo en el sistema multiusuario CTSS, que ya estaba operativo y había sido lanzado por el MIT a comienzos de la década de los sesenta. Sin embargo, los retrasos en el desarrollo del compilador PL/I, las estrecheces económicas, algunas diferencias internas y la presión creciente desde el exterior llevaron finalmente a los Laboratorios Bell a retirarse del proyecto en 1969.

Multics se convierte en Unix
Desarrollado en el MIT, cuando en 1970 el consorcio Honeywell International Inc compra la compañía General Electric, Multics pasa a distribuirse comercialmente en máquinas Honeywell-6180 hasta 1986. Pero a Ken Thompson, que en aquel momento era uno de los informáticos de los escindidos Laboratorios Bell, no le abandonaba la idea de un sistema multiusuario, de modo que, junto a Dennis Ritchie y un modesto equipo de AT&T, comienza a planificar un sistema propio basado en los principios de Multics. La búsqueda del equipamiento, sin embargo, se reveló al principio bastante difícil. Al oponerse los Laboratorios Bell a la compra del modelo de ordenador adecuado, los desarrolladores no tuvieron más remedio que anotar sus ideas y los avances en su sistema de archivos a papel y lápiz.

Finalmente, el proyecto consiguió un miniordenador PDP-7 de la empresa Digital Equipment Corporation (DEC). Con el tamaño de “solo” un armario ropero, este sistema informático funcionaba con el sistema operativo GECOS (General Electric Comprehensive Operating System), que a partir de entonces funcionó como plataforma de desarrollo. De su trabajo enseguida nacieron herramientas de software de tanto valor como un intérprete de comandos (sh), un editor (ed) y el sistema de archivos que ya existía en papel, aunque al principio aún en ensamblador, un lenguaje de programación simplificado. Como, a diferencia de Multics, el nuevo sistema operativo solo permitía el acceso a dos usuarios ejecutando un proceso cada uno al mismo tiempo, el equipo se inspiró en aquel para bautizarlo como Unics –la limitación de la longitud de los nombres en GECOS hizo el resto, convirtiéndose finalmente en Unix.

Unix obtiene su propio lenguaje de programación
Tras escribir Unix y otros programas elementales con el lenguaje ensamblador, el equipo de los Laboratorios Bell se dispuso a sustituir este lenguaje por una variante menos compleja. Sin embargo, la idea de desarrollar un compilador para el lenguaje IBM vigente se descartó al poco tiempo y, en lugar de ello, se comenzó a trabajar en un lenguaje nuevo muy orientado a PL/I, el lenguaje de Multics, y a BCPL (Basic Combined Programming Language) desarrollado en el MIT. Esto lleva a Ritchie y a su equipo a reescribir algunas de las herramientas de sistema en este lenguaje imperativo hasta que en 1970 obtienen un nuevo PDP-11 que les obliga a realizar otro giro de perspectiva: la nueva arquitectura de sistema no estaba, como la del PDP-7 y el lenguaje de programación B, orientada a palabras, sino a bytes.

Durante los dos años siguientes, los Laboratorios Bell desarrollaron el lenguaje C, que se convertiría en un memorable sucesor cuya sintaxis, entre otras cualidades, se haya presente en diversos lenguajes de programación modernos como la extensión C++, Java, JavaScript, PHP o Perl. Cuando en 1973 el lenguaje alcanzó la madurez suficiente, los desarrolladores comenzaron a escribir el núcleo completo de Unix en C, publicando el resultado a mediados de 1970. Como en aquel momento AT&T no podía comercializar software en su calidad de monopolista del sector de las telecomunicaciones bajo control estatal, la empresa puso Unix (entretanto en su versión 6 y funcionando como sistema multiusuario que permitía varios procesos en paralelo) a disposición de las universidades interesadas de forma gratuita junto a un compilador en C que permitía usar el sistema en casi todas las plataformas.

Poco exigente y open source: Unix conquista a los programadores
Con la concesión del software Unix a instituciones educativas comienza la marcha triunfal del nuevo sistema operativo, aunque al principio como un juguete para el gremio informático. Los procesos de trabajo cotidianos que se ejecutaban en los ordenadores mainframes de IBM y en máquinas PDP seguían basándose en los sistemas nativos RSX-11, RT-11 o IST, pero para los desarrolladores el valor del código fuente del kernel y de las diversas aplicaciones no residía solamente en su efecto didáctico. Las escasas exigencias de hardware y la comodidad de Unix invitaban a experimentar y a seguir desarrollando, siendo en la Universidad de California en Berkeley, donde Thompson había estudiado, el lugar en el que esto tuvo más resonancia. El hecho de que Thompson obtuviera una cátedra como profesor invitado en el recién creado departamento de informática en 1976 también desempeñó un papel decisivo.

Fue entonces cuando dos antiguos estudiantes de la Berkeley, Bill Joy y Chuck Haley, mejoraron, entre otras cosas, el sistema Pascal desarrollado por Thompson y programaron con ex, el predecesor de vi (que aún hoy forma parte de las instalaciones estándar de los sistemas similares a Unix), un editor de texto completamente nuevo. En 1977 y bajo la supervisión de Joy, aparece una variante modificada de Unix que contenía todas las mejoras y los cambios que se habían llevado a cabo hasta el momento: la Berkeley Software Distribution (BSD), como se llamó esta variante, que más adelante introduciría el protocolo de red TCP/IP en la familia Unix y por primera vez se correspondía con los principios de un sistema operativo libre (gracias a su propia licencia BSD), está considerada desde entonces como una de las variaciones más importantes de Unix.

Los años 80: comercialización y “guerras Unix”
En los años siguientes siguen apareciendo otras variaciones del sistema operativo, aunque el factor financiero comienza también a crecer en relevancia. Así, en 1979, Microsoft adquiere una licencia Unix V7 con el fin, entre otras cosas, de desarrollar portabilidades para procesadores Intel y Motorola. Solo un año después la compañía publica el software Xenix, que se esperaba que se convirtiera en el sistema operativo estándar para PC, pero que presentaba altos requisitos de hardware. Finalmente, Microsoft cedió su desarrollo al fabricante de software SCO (Santa Cruz Operation) para poder concentrarse en OS/2 y el desarrollo de MS-DOS.

Recién fundada su propia empresa, Sun Microsystems, Bill Joy se suma a la competición en 1982 con SunOs, un sistema propietario basado en BSD que se convertiría en el predecesor de Solaris y que estaba pensado específicamente para utilizarse en servidores y estaciones de trabajo.

Pero la verdadera guerra por el favor de los seguidores de Unix tuvo lugar entre AT&T, que entretanto ya había conseguido el permiso para comercializarlo, y la Universidad de Berkeley, que con BSD y el apoyo de un gran número de programadores, contaba con la ventaja de aportar innovaciones de gran valor. AT&T intentó primero conquistar el mercado con System III (1981) y, en especial, con el optimizado System V (1983), ambos basados en Unix V7, mientras que Berkeley publicó en paralelo 4.2BSD, para el cual se emitieron más de mil licencias en 18 meses. Con ello demostró superar en popularidad a System V, el cual, además de ser de pago, no contenía el Fast File System (FFS) ni soportaba redes (gracias al TCP/IP integrado) como sí hacía la variante de Berkeley.

Con el cuarto lanzamiento de System V en 1988, AT&T añade estas y otras características de BSD, de Xenix y de SunOs, lo que llevó a muchos usuarios a cambiar de bando.

Unix entra en el entorno de servidor gracias al pingüino
Mientras que los diversos sistemas Unix se disputaban el favor de la comunidad, Apple y Microsoft se enzarzaron en una competición dentro del sector del ordenador personal y más adelante también del entorno de servidor. Al tiempo que Microsoft se hacía con la carrera por el PC doméstico, con Linux aparece en 1991 un sistema basado en principios Unix que en los próximos años conquistaría el universo de los servidores. Con el paquete que formaban el software libre GNU y un kernel también de licencia libre, su desarrollador, Linus Torvalds, lograba dos cosas: cumplir su sueño de crear un sistema operativo open source capaz de competir con los demás y tocar la fibra sensible de su tiempo.

 

Para mayor informaciñon visita: https://www.ionos.es/digitalguide/servidores/know-how/unix-el-sistema-operativo-que-cambio-la-informatica/

Acerca de David

Compruebe también

¿Recuerdas el cubo 3d o las ventanas gelatinosas?, Compiz Fusion ha vuelto

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *