Download UNIX

Document related concepts
Transcript
UNIX
Unix
Linus Tovalrds (Linux)
Open Source
GNU
Nombre: Abraham Villantes Gómez
Grupo: 104A
08/09/2014
UNIX
UNIX
El origen del sistema UNIX está ligado al desarrollo de un proyecto iniciado en
1968. En aquel momento un grupo de investigadores de General Electric, AT&T
Bell y del MIT (Massachusets Institute of Technology, Instituto Tecnológico de
Massachessets) llevó a cabo el desarrollo de un sistema operativo en el que se
tuvieron en cuenta nuevos conceptos como la multimedia, la gestión de
archivos o la interacción con el usuario. El resultado de estas investigaciones
se bautizó como MULTICS (Multiplexed Information and Computing System,
Sistema Multiplexado de Información y Computación). El proyecto resultó ser
demasiado ambicioso, por lo que no llegó a buen fin y terminó abandonándose
después de sufrir varios contratiempos y retrasos. Más adelante, en 1970, el
nombre sufre una pequeña variación y pasa a llamarse UNIX, con el que se le
conoce actualmente.
Sin embargo, no fueron inútiles. Posteriormente la idea de este proyecto se
vuelve a retomar y conduce al desarrollo en 1969 del sistema operativo UNIX
por Ken Thomson, Dennis Ritchie y otros investigadores, algunos de ellos
integrantes del grupo de programadores que llevó a cabo el proyecto
MULTICS. La computadora sobre la que se implementó este novedoso sistema
operativo, al que se llamó UNICS, fue una DEC PDP-7.
El nombre que se le dio al sistema operativo es en realidad un juego de
palabras que se forma con las iníciales de Uniplexed Information and
Computing System (sistema multiplexado de información y computación),
haciendo referencia a su predecesor, MULTICS y teniendo en cuenta que en
esta ocasión el sistema operativo sólo podía soportar dos usuarios de forma
simultánea.
El código UNIX estaba inicialmente escrito en lenguaje ensamblador, esta
cuestión incidía negativamente en su portabilidad y que no tardó en
solucionarse.
Fue más tarde en 1973, cuando Dennis Ritchie, uno de los míticos creadores
del lenguaje C, llevó a cabo un proyecto en colaboración con Ken Thompson
con la intensión de reescribir el código UNIX en lenguaje C.
UNIX se convirtió así en el primer sistema operativo escrito en lenguaje de alto
nivel.
Este paso fue sin duda fundamental para su posterior desarrollo, pues hasta
entonces el código del sistema operativo resultaba muy dependiente del tipo de
máquina. Con este nuevo enfoque fue posible portar el sistema operativo a
otras máquinas con muy pocos cambios, simplemente efectuando una nueva
compilación en la máquina de destino.
Gracias a este paso la popularidad de UNIX creció y permitió asentar los
principales aspectos de lo que se llama la "filosofía UNIX" que es crear
programas rápidos, simples, con poca intervención por parte del usuario, o en
caso de necesitarla, esta se produzca al principio o lo más mínima posible que
en otras palabras seria que escribe programas que hagan una cosa y la hagan
bien, que trabajen en armonía con otros y que manejen flujos de texto.
Aunque inicialmente UNIX era considerado como un proyecto de investigación,
hasta el punto de distribuirse de forma gratuita entre los departamentos de
informática de algunas universidades, pronto la demanda del producto hizo que
los laboratorios Bell iniciaran su distribución oficial concediendo licencias a
distintos usuarios. Fue hacia 1974 cuando UNIX, ya en su cuarta edición,
comenzó a utilizarse de forma masiva en los laboratorios Bell.
Que ya después al paso del tiempo se fueron creando las familias Unix o los
sistemas operativos basados por Unix que son estas:






AT&T: la familia que tuvo su origen en el UNIX de AT&T. Considerada la
familia UNIX "pura" y original. Sus sistemas operativos más significativos
son UNIX System III y UNIX System V.
BSD: familia originada por el licenciamiento de UNIX a Berkely. BSD se
reescribió para no incorporar propiedad intelectual originaria de AT&T en
la versión 4. La primera implementación de los protocolos TCP/IP que
dieron origen a Internet son la pila (stack) TCP/IP BSD.
AIX: Esta familia surge por el licenciamiento de UNIX System III a IBM.
Xenix: familia derivada de la adquisición de los derechos originales de
AT&T primero por parte de Microsoft y de esta los vendió a SCO.
GNU: En 1983, Richard Stallman anunció el Proyecto GNU, un
ambicioso esfuerzo para crear un sistema similar a Unix, que pudiese
ser distribuido libremente. El software desarrollado por este proyecto por ejemplo, GNU Emacs y GCC - también han sido parte fundamental
de otros sistemas UNIX.
Linux: En 1991, cuando Linus Torvalds empezó a proponer el núcleo
Linux y a reunir colaboradores, las herramientas GNU eran la elección
perfecta. Al combinarse ambos elementos, conformaron la base del
sistema operativo (basado en POSIX) que hoy se conoce como
GNU/Linux. Las distribuciones basadas en el núcleo, el software GNU y
otros agregados entre las que se pueden mencionar a Slackware Linux,
Red Hat Linux y Debian GNU/Linux se han hecho populares tanto entre
los aficionados a la computación como en el mundo empresarial.
Obsérvese que Linux tiene un origen independiente, por lo que se
considera un 'clónico' de UNIX y no un UNIX en el sentido histórico.
Las interrelaciones entre estas familias son las siguientes, aproximadamente
en orden cronológico:







La familia BSD surge del licenciamiento del UNIX original de AT&T.
Xenix también surge por licenciamiento del UNIX original de AT&T,
aunque aún no era propiedad de SCO.
AIX surge por licenciamiento de UNIX System III, pero también incorpora
propiedad intelectual de BSD.
La familia original AT&T incorpora ilegalmente propiedad intelectual de
BSD en UNIX System III r3.
La familia AIX vuelve a incorporar propiedad intelectual de la familia
AT&T, esta vez procedente de UNIX System V.
Linux incorpora propiedad intelectual de BSD, gracias a que éste
también se libera con una licencia de código abierto denominada Opensource BSD.
Según SCO Group, Linux incorpora propiedad intelectual procedente de
AIX, gracias a la colaboración de IBM en la versión 2.4, mas aún no está
demostrado, hay un proceso judicial al respecto: Disputas de SCO sobre
Linux.
Linus Tovalrds (Linux)
A principios de los años noventa Linus Torvalds desarrolló un pequeño núcleo
de un sistema clónico de UNIX como parte de uno de sus proyectos de
investigación.
Era el origen de Linux. Cuando tuvo una versión suficientemente estable
comenzó a distribuirla bajo la licencia GPL y solicitó ayuda para probarlo y
mejorarlo.
Aquí muestra el mensaje que apareció en uno de los foros de discusión de
Usenet y con el cual Linus Torvalds animaba a la participación en el proyecto
Linux:
Do you pine for nice days of Minix 1.1, when men were and worte their own
device drivers? Are you without a nice project and just dying to cut your teeth on
a OS you try to modify for you needs? Are you finding it frustrating when
everything works on your OS? No more all-nighters to get nifty program
working? Then this post might be just for you.
Que en español dice: "¿Echa de menos aquellos maravillosos días de Minix
1.1, cuando los hombres eran hombres y escribían sus propios controladores
de dispositivos? ¿No tienen ningún proyecto interesante y se muere de ganas
por hincarle el diente a un sistema operativo que pueda modificar para ajustarlo
a sus propias necesidades? ¿Encuentra frustrante que todo funcione en su
sistema operativo? ¿Ya no pasa noches en vela intentando configurar un
ridículo programa? Entonces, este mensaje puede ser justamente para usted."
Desde entonces Linux ha evolucionado enormemente. El número de
computadoras que funcionan con el sistema operativo Linux ha aumentado
espectacularmente en los últimos años. Linux comenzó siendo un proyecto de
plataformas Intel 80386. En la actualidad, existen versiones para todas las
versiones de los procesadores Intel y AMD, Power PC, Sun, SPARC, etc. El
éxito de Linux se debe fundamentalmente a su distribución por Internet que le
ha permitido la incorporación de los desarrollos de la gente repartida por todo el
globo.
Actualmente Linux cuenta con los principales gestores de ventanas, múltiples
utilidades para Internet, compiladores, editores...
Linux se utiliza con éxito como servidor en numerosas empresas y
universidades de todo el mundo, y son muchísimos los usuarios particulares
que disponen de un sistema Linux en sus casas.
Open Source
Open Source significa “fuente abierta”, y fue inventado por Eric S.
Raymond, Bruce Perens y Tim O’Reilly (fundadores de la iniciativa Open
Source), en el año 1998. Este tipo de software nos brinda la oportunidad de
modificarlo además de ser utilizado, pues son programas de código abierto.
Se utilizó por primera vez en 1990 las comunidades de software libre, tratando
de usarlo como reemplazo al ambiguo nombre original en inglés del software
libre (free software). «Free» en inglés significa dos cosas distintas dependiendo
del contexto: gratuidad y libertad. Lo cual implica, para el caso que nos ocupa,
"software que podemos usar, escribir, modificar y redistribuir gratuitamente"
(software gratuito) y, además, software libre, según la acepción española
de libertad.
La expresión, para algunos, no resultó apropiada como reemplazo para el ya
tradicional free software, pues eliminaba la idea de libertad, confundida con la
simple gratuidad. No obstante continúa siendo ambivalente, puesto que se usa
en la actualidad por parte de programadores que no ofrecen software libre
pero, en cambio, sí ofrecen el código fuente de los programas para su revisión
o modificación previamente autorizada por parte de sus pares académicos.
Dada la ausencia de tal ambigüedad en la lengua española, el término software
libre es adecuado para referirse a programas que se ofrecen con total libertad
de modificación, uso y distribución bajo la regla implícita de no modificar dichas
libertades hacia el futuro. De hecho en inglés también se usa el término "libre
software" para evitar ambigüedades semánticas.
Desde el punto de vista de una "traducción estrictamente literal", el significado
textual de "código abierto" es que "se puede examinar el código fuente", por lo
que puede ser interpretado como un término más débil y flexible que el
del software libre. Sin embargo, ambos movimientos reconocen el mismo
conjunto de licencias y mantienen principios equivalentes.
Sin embargo, hay que diferenciar los programas de código abierto, que dan a
los usuarios la libertad de mejorarlos, de los programas que simplemente
tienen el código fuente disponible, previa restricciones sobre su uso o
modificación.
En la actualidad el código abierto se utiliza para definir un movimiento nuevo de
software (la Iniciativa Open Source), diferente al movimiento del software libre,
incompatible con este último desde el punto de vista filosófico, y
completamente equivalente desde el punto de vista práctico, de hecho, ambos
movimientos trabajan juntos en el desarrollo práctico de proyectos.
La idea bajo el concepto de código abierto es sencilla: cuando los
programadores (en Internet) pueden leer, modificar y redistribuir el código
fuente de un programa, éste evoluciona, se desarrolla y mejora. Los usuarios lo
adaptan a sus necesidades, corrigen sus errores con un tiempo de espera
menor a la aplicada en el desarrollo de software convencional o cerrado, dando
como resultado la producción de un mejor software.
Entre 1998 y 2000 se observó un gran crecimiento en la popularidad de cada
software como Microsoft entre otras mas pero en especial con GNU/Linux y de
la formación de muchas empresas "pro software de código abierto". El
movimiento también capturó la atención de la principal industria del software,
llevando al software de código abierto las ofertas de compañías de software
consolidadas como Sun Microsystems con StarOffice e IBM con OpenAFS.
Proyecto GNU
En los primeros tiempos de UNIX se empleaba en entornos educacionales y de
investigación.
Las leyes norteamericanas impedían a AT&T participar en el mercado de las
computadoras, por lo que cedía gratuitamente su sistema UNIX a las
universidades y algunas empresas.
Además de versiones binarias del sistema se distribuía el código fuente
completo, lo que permitía que cualquier programador pudiera incorporar sus
propias modificaciones al sistema.
Cuando UNIX comenzó a cobrar importancia en el mercado de las
computadoras AT&T inició su distribución comercial.
A partir de ese momento el código fuente dejó de incluirse junto al resto del
sistema. Esto significó la pérdida de una fuente de ayuda inestimable en la
explicación de las tecnologías de sistemas operativos en las universidades.
Por ello Andrew Tannenbaum decidió programar su propio clónico de UNIX, al
que llamó Minix. Su objetivo era servir como base para las explicaciones en sus
clases en la universidad.
Por tanto no debía ser excesivamente complejo, pero tendría que incorporar las
últimas novedades de la tecnología. Además era conveniente que los
estudiantes pudieran disponer de él para instalarlo en sus casas, y así poder
realizar experimentos sin necesidad de contar con una estación de trabajo.
En aquella época las computadoras personales más difundidas eran IBM PC,
que por aquel entonces ni siquiera incorporaban disco duro. Las primeras
versiones de Minix cabían en uno o dos floppy y podían ser ejecutadas desde
cualquier PC.
Por supuesto, otro de los problemas de la comercialización de UNIX era que
dejaba de ser gratuito y a partir de entonces las organizaciones que desearan
utilizarlo deberían pagar por él.
Esto fue el detonante del proyecto GNU.
El proyecto GNU es un intento de escribir un sistema operativo portable,
avanzado, gratuito y de código fuente público, y de aspecto idéntico a UNIX.
La palabra portable quiere decir que debe poder ejecutarse en cualquier tipo de
plataforma, y no sólo en PCs con procesador Intel.
Los programas del proyecto GNU se distribuyen una licencia especial,
denominada GPL (General Public License, Licencia Pública General), que
garantiza que los usuarios finales del programa puedan realizar copias del
mismo sin ningún tipo de restricción.
Permite además que puedan efectuar modificaciones al código fuente, siempre
y cuando preserven el copyright del programa original.
El proyecto GNU se está llevando a cabo por multitud de empresas y miles de
voluntarios en todo el mundo. La red Internet ha permitido difundir los
programas del proyecto y a su vez facilitados su creación.
Las herramientas del proyecto GNU no tienen nada que envidiar a los
programas comerciales y en muchos casos los superan en calidad. Millones de
usuarios las utilizan en su trabajo diario. Y todo ello, completamente libre.
El proyecto GNU. En los primeros tiempos de UNIX éste se empleaba en
entornos educacionales y de investigación.