Herramientas de usuario

Herramientas del sitio


unix-historia

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Próxima revisión
Revisión previa
unix-historia [2012/09/11 03:25] – creado lmateuunix-historia [2014/09/29 00:05] (actual) – [Historia de Unix] lmateu
Línea 5: Línea 5:
  
 Fue desarrollado en 1969 por un grupo de empleados de AT&T Fue desarrollado en 1969 por un grupo de empleados de AT&T
-en Bell Labs: Ken Thompson, Dennis Ritchie, Brian Kernighan.+en Bell Labs: Ken Thompson, Dennis Ritchie, Doug McIlroy y Brian Kernighan entre otros.
 Aunque fue escrito inicialmente en assembler su fortaleza Aunque fue escrito inicialmente en assembler su fortaleza
-radicaba en que fue portado a un lenguaje de alto nivel: C.+radicaba en que fue re-escrito en un lenguaje de alto nivel: C.
 Esto lo hacía fácilmente portable de una máquina a otra. Esto lo hacía fácilmente portable de una máquina a otra.
 Además permitió que se desarrollara más rápido y a menor costo Además permitió que se desarrollara más rápido y a menor costo
Línea 16: Línea 16:
 en un proyecto de investigación de Bell Labs.  Por ello en un proyecto de investigación de Bell Labs.  Por ello
 hasta la versión 7 de Unix se licenció con código fuente a las hasta la versión 7 de Unix se licenció con código fuente a las
-universidades, en particular la Universidad de Berkeley cuya +universidades, en particular la Universidad de Berkeley cuya 
-contribución más notable fue el stack TCP/IP.+contribución más notable fue el stack TCP/IP.  La universidad 
 +de Berkeley desarrolló su propia versión que llegó a ser 
 +conocida como Unix BSD (de Berkeley Software Distribution). 
 +Muchos comandos y utilitarios de Unix vienen de BSD. 
 +BSD se usó en innumerables universidades en máquinas 
 +VAX de Digital.  El estar presente en las universidades fue 
 +un aspecto clave en el desarrollo de Unix porque esto 
 +le aseguró un basto número de profesionales altamente capacitados. 
 + 
 +Uno de los líderes de BSD fue Bill Joy, quien fundó Sun Microsystems 
 +en 1982.  A la larga las estaciones de trabajo de Sun reemplazarían 
 +a los VAX de Digital en las universidades.
  
 En 1983, un nuevo juicio anti-monopolio dividió AT&T en En 1983, un nuevo juicio anti-monopolio dividió AT&T en
 2 empresas y por fin pudo comercializar Unix.  De ahí 2 empresas y por fin pudo comercializar Unix.  De ahí
-nacieron Unix System III y Unix System V.  Muchas fabricantes +nacieron Unix System III y Unix System V.  Muchos fabricantes 
-de maquinas compraron la licencia y lo comercializaron+de máquinas compraron la licencia y lo comercializaron
 con distintos nombres: HP-UX de HP, AIX de IBM, Xenix de con distintos nombres: HP-UX de HP, AIX de IBM, Xenix de
-Microsoft, +Microsoft, Digital Unix, Solaris de Sun, etc.  Esto llevó a 
 +muchas incompatibilidades entre las distintas versiones 
 +debilitando su posición en el mercado. 
 + 
 +En 1983 Richard Stallman fundó la GNU con el propósito de 
 +desarrollar una versión gratuita de Unix.  El proyecto 
 +logró implementar prácticamente todos los comandos, 
 +incluso de mejor calidad.  Pero fracasó en el núcleo 
 +(llamado Hurd). 
 + 
 +En 1991 Linus Torvalds desarrolló Linux como un núcleo de Unix gratuito 
 +específico para máquinas x86.  Linux y las herramientas de la GNU corriendo 
 +en máquinas x86 terminaron por desplazar a las estaciones Sun en las universidades. 
 + 
 +Lo que más complicó el desarrollo de Unix fue la ausencia de estándares. 
 +Sin duda el esfuerzo más importante es el de la alianza 
 +[[http://es.wikipedia.org/wiki/POSIX|POSIX]]. 
 + 
 +==== La filosofía de Unix ==== 
 + 
 +Doug McIlroy escribió: 
 + 
 +//"This is the Unix philosophy: Write programs that do one thing and 
 +do it well. Write programs to work together. Write programs to handle 
 +text streams, because that is a universal interface."// 
 + 
 +Más principios de la filosofía de Unix se pueden encontrar en: 
 +[[http://en.wikipedia.org/wiki/Unix_philosophy]]. 
 + 
 +==== El manual de Unix ==== 
 + 
 +Una de las características que fortaleció Unix es que el sistema incluye 
 +un manual de referencia accesible desde cualquier terminal, algo no muy 
 +habitual en la época.  El manual se descompone en distintas secciones: 
 + 
 +  - sección 1: comandos y utilitarios de Unix (ls, cp, man, sh, etc.).  Estos son ejecutados como procesos de Unix. 
 +  - sección 2: llamadas al sistema (open, read, write, fork, exec, etc.).  Estas son funciones que pueden invocarse desde C pero que son implementadas en el núcleo de Unix. 
 +  - sección 3: funciones de biblioteca (getchar, fread, malloc, free, etc.).  Estas son funciones que pueden invocarse desde C y que son implementada en bibliotecas y por lo tando es código que se añade a los procesos. 
 +  - sección 4: describe archivos especiales (/dev/tty1, /dev/mouse, etc.). 
 +  - sección 5: describe formatos de archivos (/etc/passwd, /etc/group) 
 +  - sección 7: describe los estándares relacionados con Unix. 
 +  - sección 8: describe los comandos de administración de Unix a los que solo la cuenta root tiene acceso. 
 + 
 +Más información se puede encontrar en [[http://man7.org/linux/man-pages]]. 
 +Lo más relevante es que en todo momento se puede obtener información de un comando/función con: 
 + 
 +  % man ls 
 +  % man read 
 + 
 +A veces hay nombres que aparecen en varias secciones.  Si uno conoce a qué sección pertenece el nombre 
 +que busca se puede usar opcionalmente la sección: 
 + 
 +  % man 2 open 
 +  ... 
 + 
 +Busca open entre las llamadas de sistema.  Otros ejemplos:
  
 +  % man 1 ls
 +  ...
 +  % man 3 printf
 +  ...
  
unix-historia.1347333926.txt.gz · Última modificación: 2012/09/11 03:25 por lmateu