martes, 17 de noviembre de 2009

Preguntas frecuentes sobre GNU/Linux


¿Por qué lo llaman GNU/Linux y no Linux?
La mayoría de las distribuciones de sistemas operativos basados en Linux como núcleo son básicamente versiones modificadas del sistema operativo GNU. Empezamos desarrollando GNU en 1984, años antes de que Linus Torvalds comenzase a escribir su núcleo. Nuestro objetivo era desarrollar un sistema operativo libre completo. Por supuesto, no desarrollamos todas las partes por nuestra cuenta; pero lo encaminamos. Desarrollamos la mayoría de los componentes principales, conformando la contribución singular más grande de todo el sistema. La visión básica también fue nuestra.

En base a lo justo, deberíamos tener por lo menos una mención equivalente.

¿Por qué es importante el nombre?
Aunque los programadores de Linux, el núcleo, están contribuyendo a la comunidad de software libre, muchos de ellos no se preocupan por la libertad. Las personas que piensan que el sistema entero es Linux tienden a confundirse y asignar a esos desarrolladores un rol en la historia de nuestra comunidad que en realidad no interpretan. Luego, les dan un peso extraordinario a los puntos de vista de esos programadores.

¿Cómo sucedió que la mayoría de las personas llaman al sistema «Linux»?
Llamar al sistema «Linux» es una confusión que se ha expandido más rápido que la información que la corrige.

Las personas que combinaron a Linux con el sistema GNU no siempre fueron conscientes de que a eso sumaba su actividad. Concentraron su atención en la parte que conformaba Linux y no se dieron cuenta que una mayor parte de la combinación era GNU. Lo comenzaron llamando «Linux» aún aunque ese nombre no encajaba con lo que tenían. Nos tomó unos pocos años darnos cuenta del problema que esto representaba y pedirle a las personas que corrigieran la práctica. En ese momento, la confusión había obtenido una gran ventaja.

La mayoría de las personas que llaman «Linux» al sistema nunca escucharon decir por qué esa no es la forma correcta. Vieron a otros usando ese nombre y asumieron que debía estar bien. El nombre «Linux» también difunde una imagen falsa del origen del sistema, dado que las personas tienden a suponer que la historia del sistema fue tal como para encajar en ese nombre. Por ejemplo, suelen creer que su desarrollo lo comenzó Linus Torvalds en 1991. Esta imagen falsa tiende a reforzar la idea que el sistema debería ser llamado «Linux».

Muchas de las preguntas de este documento representan los intentos de las personas de justificar el nombre que están acostumbradas a usar.

¿Deberíamos decir siempre «GNU/Linux» en lugar de «Linux»?
No siempre; sólo cuando esté hablando del sistema entero. Cuando se refiera específicamente al núcleo, debería llamarlo «Linux», el nombre que eligió su programador.

Cuando las personas llaman «Linux» al sistema entero, consecuentemente llaman a todo el sistema por el mismo nombre que al núcleo. Esto causa muchos tipos de confusión, porque sólo los expertos pueden decir si una afirmación es sobre el núcleo o el sistema entero. Llamando «GNU/Linux» a todo el sistema, y llamando «Linux» al núcleo usted evita la ambigüedad.

¿Habría logrado Linux el mismo éxito si no hubiese existido GNU?
En un mundo alternativo, en el cual no existiese nada como el sistema GNU/Linux, y probablemente ningún sistema operativo libre. Nadie intentó desarrollar un sistema operativo libre en los años 80 excepto el Proyecto GNU y, más adelante, Berkeley CSRG; al cual el Proyecto GNU le pidió específicamente que comenzara a liberar su código.

Linus Torvalds fue influenciado parcialmente por una charla sobre GNU en Finlandia en 1990. Es posible que aún sin esta influencia él podría haber escrito un núcleo similar a Unix, pero probablemente no hubiese sido software libre. Linux se hizo libre en 1992 cuando Linus lo publicó bajo la GPL de GNU.

Aún si Torvalds hubiese publicado Linux bajo alguna otra licencia de software libre, un núcleo libre por su cuenta no hubiera sido una gran diferencia para el mundo. La importancia de Linux vino de su inclusión en un entorno más grande, un sistema operativo libre completo: GNU/Linux.

¿No sería mejor para la comunidad si no dividieran a la gente con esta petición?
Cuando le pedimos a la gente que diga «GNU/Linux», no la estamos dividiendo. Le estamos pidiendo que den crédito al Proyecto GNU por el sistema operativo GNU. Esto no critica ni desplaza a nadie.

Sin embargo, existen personas a quienes no les gusta que lo digamos. Algunas veces esas personas como respuesta nos ignoran. En ocasiones son tan groseras que uno se pregunta si están tratando de intimidarnos para que callemos. No nos silencia, pero sí tiende a dividir a la comunidad, por lo que esperamos que las pueda convencer a que lo dejen de hacer.

Sin embargo, ésta es sólo una causa secundaria de división en nuestra comunidad. La división más grande en la comunidad es entre las personas que aprecian el software libre como una cuestión social y ética y consideran al software privativo un problema social (impulsores del movimiento por el software libre); y aquellos que citan sólo beneficios prácticos y presentan al software libre sólo como un modelo de desarrollo eficiente (el movimiento del código abierto).

Este desacuerdo no es sólo una cuestión de nombres, es una cuestión de valores básicos diferentes. Es esencial para la comunidad el ver y pensar sobre este desacuerdo. Los nombres «software libre» y «código abierto» son los pilares de las dos posiciones.

El desacuerdo sobre los valores se alinea parcialmente con la cantidad de atención que prestan las personas al rol del Proyecto GNU en nuestra comunidad. Las personas que valoran la libertad son más propensas a llamar al sistema «GNU/Linux», y las personas que aprenden que el sistema es «GNU/Linux» son más propensas a prestar atención a nuestros argumentos filosóficos por la libertad y la comunidad (lo que constituye la razón por la cual la elección del nombre para el sistema marca una diferencia real para la sociedad). Sin embargo, el desacuerdo probablemente existiría incluso si todos supieran el origen real del sistema y su nombre debido, porque el asunto es uno importante. Sólo puede desaparecer si los que valoramos la libertad persuadimos a todos (lo que no será fácil) o somos derrotados completamente (esperemos que no).

¿No apoya el proyecto GNU el derecho a la libertad de expresión de cada uno para llamar al sistema de la manera que cada individuo elija?
Sí. De hecho, creemos que tiene el derecho de libertad de expresión para llamar al sistema operativo por cualquier nombre que desee. Les pedimos a las personas que lo llamen GNU/Linux por el asunto de hacer justicia para el Proyecto GNU, para promover los valores de libertad que promulga GNU y para informar a los demás que fueron los valores de libertad los que dieron vida al sistema.
Como todos saben el rol de GNU en el desarrollo del sistema, ¿no se sobrentiende a «GNU/» en el nombre sin decirlo?
La experiencia muestra que los usuarios del sistema y el público usuario de computadoras en general no suelen conocer nada del sistema GNU. La mayoría de los artículos sobre el sistema no mencionan el nombre «GNU», o los ideales que GNU defiende.

Las personas que lo dicen son probablemente informáticos que piensan en los informáticos que conocen. Los informáticos tienen conocimiento sobre GNU, pero muchos tienen una idea completamente equivocada de lo que es GNU. Por ejemplo, muchos piensan que es una colección de herramientas, o un proyecto para desarrollar herramientas.

La redacción de esta pregunta, que es típica, ilustra otro malentendido común. Hablar del «rol de GNU» en el desarrollo de algo, asume que GNU es un grupo de personas. GNU es un sistema operativo. Tendría sentido hablar sobre el rol del Proyecto GNU en tal o cual actividad, pero no de GNU.

Como conozco el rol de GNU en este sistema, ¿por qué importa el nombre que use?
Si sus palabras no reflejan su conocimiento, no le enseña a los demás. La mayoría de las personas que han oído sobre el sistema GNU/Linux creen que es «Linux», que lo empezó Linus Torvalds y que pretendía ser de «código abierto». Si usted no les dice, ¿quién lo hará?
¿No es lo mismo abreviar «GNU/Linux» a «Linux» que abreviar «Microsoft Windows» a «Windows»?
Es útil acortar un nombre frecuentemente usado, pero no si la abreviación lleva a malinterpretar.

Casi todos en los países desarrollados realmente saben que el sistema «Windows» está hecho por Microsoft, por lo que acortar «Microsoft Windows» a «Windows» no lleva a malinterpretar a nadie sobre la naturaleza y el origen de ese sistema. Acortar «GNU/Linux» a «Linux» sí muestra una idea errónea acerca de dónde proviene el sistema.

La pregunta en sí misma lleva a la malinterpretación porque GNU y Microsoft no son el mismo tipo de cosa. Microsoft es una compañía, GNU es un sistema operativo.

¿No es GNU una colección de herramientas de programación que fueron incluidas en Linux?
Las personas que creen que Linux es un sistema operativo entero; si escuchan GNU de algún modo, a menudo obtienen una idea errónea de qué es GNU. Pueden creer que GNU es el nombre de una colección de programas, a menudo dicen «herramientas de programación», dado que algunas de nuestras herramientas de programación se hicieron populares por su cuenta. La idea de que «GNU» es el nombre de un sistema operativo es difícil de insertar en un marco conceptual en el que ese sistema operativo es señalado como «Linux».

El Proyecto GNU se llamó así luego del sistema operativo GNU, es el proyecto para desarrollar el sistema GNU.

Desarrollamos programas como GCC, Emacs de GNU, GAS, GLIBC, BASH, etcétera, porque los necesitábamos para el sistema operativo GNU. GCC, la colección de compiladores de GNU (del inglés GNU Compiler Collection) es el compilador que escribimos para el sistema operativo GNU. Nosotros, los que trabajamos en el Proyecto GNU, también desarrollamos Ghostscript, GNUCash, GNU Chess y también GNOME para el sistema GNU.

¿Cuál es la diferencia entre un sistema operativo y un núcleo?
Un sistema operativo, como usamos el término, significa una colección de programas que son suficientes para usar la computadora para una realizar una variedad de trabajos. Un sistema operativo de propósito general, para ser completo, debería manejar todos los trabajos que diversos usuarios pueden querer realizar.

El núcleo es uno de los programas en un sistema operativo, el programa que distribuye los recursos de la máquina a los otros programas que estén ejecutándose. El núcleo también se encarga de iniciar y parar otros programas.

Para confundir el asunto, algunas personas usan el término «sistema operativo» para decir «núcleo». Ambos usos del término provienen de hace unos cuantos años. El uso de «sistema operativo» para referirse al «núcleo» es visto en varios libros de texto sobre diseño de sistemas, volviendo a los años 80. Al mismo tiempo, en los años 80, se entendía que el «sistema operativo Unix» incluía todos los programas del sistema, y la versión de Unix de Berkeley incluso incluía juegos. Como pretendíamos que GNU fuera un sistema operativo similar a Unix, usamos el término «sistema operativo» en el mismo sentido.

La mayoría del tiempo, cuando las personas hablan del «sistema operativo Linux» están usando «sistema operativo» en el mismo sentido que nosotros: se refieren a la colección completa de programas. Si eso es a lo que usted se refiere, llámelo «GNU/Linux», por favor. Si sólo se refiere al núcleo, entonces el nombre correcto para eso es «Linux», pero diga también «núcleo» para evitar la ambigüedad sobre el cuerpo de software al que se refiriere, por favor.

Si prefiere usar algún otro término como «distribución de sistema» para la colección entera de programas, en vez de «sistema operativo», está bien. Entonces, hablaría de distribuciones de sistema GNU/Linux.

¿Es el núcleo de un sistema como los cimientos de una casa?, ¿cómo una casa puede estar casi completa cuando no tiene cimientos?
Un núcleo no es demasiado parecido a los cimientos de una casa, porque construir un sistema operativo no es demasiado parecido a construir una casa.

Una casa se construye de montones de pequeñas partes generales que son cortadas y puestas juntas en un sitio. Tienen que ser puestas juntas de abajo a arriba. Por ende, cuando los cimientos no han sido construidos, no existe parte sustancial construida; todo lo que tiene es un hoyo en el suelo.

En cambio, un sistema operativo consiste en componentes complejos poco acoplados que pueden desarrollarse en cualquier orden. Cuando se tienen desarrollados la mayor parte de los componentes, la mayoría del trabajo está hecho. Esto es mucho más parecido a la Estación Espacial Internacional que a una casa. Si la mayoría de los módulos de la estación espacial estuviesen en órbita y conectados pero esperando un módulo vital, ese hubiera sido el sistema GNU en 1992.

¿No es el núcleo el cerebro del sistema?
Un sistema computacional no se parece mucho al cuerpo humano, y ninguna parte tiene un papel similar al del cerebro en un humano.
¿No es escribir el núcleo la mayor parte del trabajo en un sistema operativo?
No, muchos componentes conllevan un gran trabajo.
Estamos llamando al sistema entero y después el núcleo, Linux. ¿No es normal nombrar al sistema operativo después de un núcleo?
Esa práctica parece ser bastante inusual, no podemos encontrar otros ejemplos que no sean el mal uso del nombre «Linux». Normalmente, un sistema operativo se desarrolla en un solo proyecto unificado, y los desarrolladores eligen un nombre para el sistema como un todo. Usualmente, el núcleo no tiene un nombre propio; en cambio, las personas dicen «el núcleo tal y tal» o «el núcleo de tal y tal».

Dado que esas dos construcciones son usadas como sinónimos, la expresión «el núcleo Linux» puede ser malentendida fácilmente refiriéndose a «el núcleo de Linux»; e implicando que Linux debe ser más que un núcleo. Puede evitar la posibilidad de este malentendido diciendo o escribiendo «el núcleo, Linux» o «Linux, el núcleo».

El problema con «GNU/Linux» es que es demasiado largo. ¿Qué hay de recomendar un nombre más corto?
Por un momento intentamos el nombre «LiGNUx», que combina las palabras «GNU» y «Linux». La reacción fue desastrosa. Las personas aceptan mucho mejor «GNU/Linux».

El nombre legítimo más corto para este sistema es «GNU», pero lo llamamos «GNU/Linux» por las razones dadas debajo.

Como Linux es una contribución secundaria, ¿sería falso a los hechos llamar al sistema simplemente «GNU»?
No sería falso a los hechos, pero no es lo mejor que se puede hacer. He aquí las razones por las que llamamos a esa versión del sistema «GNU/Linux» en lugar de sólo «GNU»:
  • No es exactamente GNU, tiene un núcleo distinto (eso es, Linux). Distinguir GNU/Linux de GNU es útil.
  • Sería descortés pedirle a las personas que paren de darle crédito alguno a Linus Torvalds. El escribió en efecto un componente importante del sistema. Queremos obtener crédito por comenzar y sustentar el desarrollo del sistema, pero esto no significa que deberíamos tratar a Linus del mismo modo que nos tratan aquellos que llaman «Linux» al sistema. Estamos en gran desacuerdo con sus visiones políticas, pero tratamos a ese desacuerdo honorablemente y abiertamente, mas que tratar de quitarle el crédito por su contribución al sistema.
  • Como muchas personas conocen el sistema como «Linux», si decimos «GNU» pueden simplemente no reconocer que estamos hablando del mismo sistema. Si decimos «GNU/Linux», pueden hacer una conexión con lo que han oído.
Si tuviera que pagar una tarifa si uso «Linux» en el nombre de un producto, y eso correspondería también si digo «GNU/Linux», ¿Está mal si uso «GNU» sin «Linux» para ahorrarme el coste?
No hay nada incorrecto en llamar «GNU» al sistema; básicamente, eso es lo que es. Es bueno darle a Linus Torvalds una parte del crédito, pero no tiene obligación de pagar por el privilegio de hacerlo.

Entonces, si quiere referirse al sistema simplemente como «GNU», para evitar el pago de regalías por llamarlo «Linux», no lo criticaremos.

Por: Richard Stallman

http://es.wikipedia.org/wiki/GNU/Linux


lunes, 16 de noviembre de 2009

GNU/Linux

GNU/Linux (Linux) es uno de los términos empleados para referirse al sistema operativo libre similar a Unix que utiliza el núcleo Linux y herramientas de sistema GNU. Su desarrollo es uno de los ejemplos más prominentes de software libre; todo el código fuente puede ser utilizado, modificado y redistribuido libremente por cualquiera bajo los términos de la GPL (Licencia Pública General de GNU) y otras licencias libres.
A pesar de que Linux sólo es el núcleo de este sistema operativo una parte significativa de la comunidad, así como muchos medios generales y especializados, prefieren utilizar dicho término. Para más información consulte la sección "Denominación GNU/Linux" o el artículo "Controversia por la denominación GNU/Linux".
Las variantes de este sistema se denominan distribuciones y su objetivo es ofrecer una edición que cumpla con las necesidades de determinado grupo de usuarios.
Algunas distribuciones son especialmente conocidas por su uso en servidores y supercomputadoras. No obstante, es posible instalar GNU/Linux en una amplia variedad de hardware como computadoras de escritorio y portátiles.
En el caso de computadoras de bolsillo, teléfonos móviles, dispositivos empotrados, videoconsolas y otros, puede darse el caso en que las partes de GNU se remplacen por alternativas más adecuadas. Para saber más sobre las arquitecturas soportadas, lea el artículo "Portabilidad del núcleo Linux y arquitecturas soportadas".

Aplicaciones

En entornos de escritorio, GNU/Linux ofrece una interfaz gráfica alternativa a la tradicional interfaz de línea de comandos de Unix. Existen en la actualidad numerosas aplicaciones gráficas que ofrecen la funcionalidad que está permitiendo que GNU/Linux se adapte como herramienta de escritorio.
Muchas distribuciones permiten el arranque del sistema directamente desde un CD/DVD (llamados LiveCD) sin modificar el disco duro del ordenador en el que se ejecuta. Para este tipo de distribuciones, en general, los archivos de imagen (archivos ISO) están disponibles en Internet para su descarga.
Otras posibilidades incluyen iniciar el arranque desde una red, desde un disco flexible o disquete o desde unidades de almacenamiento USB.

Como sistema de programación

La colección de utilidades para la programación de GNU es con diferencia la familia de compiladores más utilizada en este sistema operativo. Tiene capacidad para compilar C, C++, Java, Ada, entre otros muchos lenguajes. Además soporta diversas arquitecturas mediante la compilación cruzada, lo que hace que sea un entorno adecuado para desarrollos heterogéneos.
Hay varios entornos de desarrollo integrados disponibles para GNU/Linux incluyendo, Anjuta, KDevelop, Ultimate++, Code::Blocks, NetBeans IDE y Eclipse. También existen editores extensibles como Emacs o Vim. GNU/Linux también dispone de capacidades para lenguajes de guión (script), aparte de los clásicos lenguajes de programación de shell, o el de procesado de textos por patrones y expresiones regulares llamado awk, la mayoría de las distribuciones tienen instalado Python, Perl, PHP y Ruby.

Denominación GNU/Linux

Parte de la comunidad y numerosos medios prefieren denominar a este sistema operativo como Linux, aunque GNU/Linux (con las variantes GNU con Linux y GNU+Linux) es la denominación defendida por el Proyecto GNU y la FSF junto con otros desarrolladores y usuarios para el sistema operativo que utiliza el núcleo Linux en conjunto con las aplicaciones de sistema creadas por el proyecto GNU y por muchos otros proyectos de software.
Desde 1984, Richard Stallman y muchos voluntarios están intentando crear un sistema operativo libre con un funcionamiento similar al UNIX, recreando todos los componentes necesarios para tener un sistema operativo funcional. A comienzos de los años 90, unos seis años desde el inicio del proyecto, GNU tenía muchas herramientas importantes listas, como editores de texto, compiladores, depuradores, intérpretes de comandos de ordenes etc, excepto por el componente central: el núcleo.
GNU tenía su propio proyecto de núcleo, llamado Hurd. Sin embargo, su desarrollo no continuó como se esperaba al aparecer el núcleo Linux. De esta forma se completaron los requisitos mínimos y surgió el sistema operativo GNU que utilizaba el núcleo Linux.
El principal argumento de los defensores de la denominación GNU/Linux es resolver la posible confusión que se puede dar entre el núcleo (Linux) y gran parte de las herramientas básicas del resto del sistema operativo (GNU). Además, también se espera que, con el uso del nombre GNU, se dé al proyecto GNU el reconocimiento por haber creado las herramientas de sistema imprescindibles para ser un sistema operativo compatible con UNIX, y se destaque la cualidad de estar compuesto sólo por software libre. La primera distribución que incluyó el GNU en su nombre fue Yggdrasyl en 1992, donde aparecía como Linux/GNU/X. La FSF denominó a este sistema "Linux" hasta al menos junio de 1994 y recién a partir de enero de 1995 empezó a llamarlo "GNU/Linux" (también GNU+Linux y lignux, términos que han caido en desuso a instancias del propio Stallman).
GNU
/
Linux
GNU
+
Linux
Algunas distribuciones apoyan esta denominación, e incluyen GNU/Linux en sus nombres, como Debian GNU/Linux o GNU/LinEx, mientras que otras, como Slackware, Gentoo o Ubuntu, eligen denominarse basadas en Linux.
En ocasiones, el proyecto KDE ha utilizado una tercera denominación: GNU/Linux/X para enfatizar los tres proyectos sobre los que se apoya su entorno de escritorio.

Unix SO

Unix (registrado oficialmente como UNIX®) es un sistema operativo portable, multitarea y multiusuario; desarrollado, en principio, en 1969 por un grupo de empleados de los laboratorios Bell de AT&T, entre los que figuran Ken Thompson, Dennis Ritchie y Douglas McIlroy. 
Hasta 2009, el propietario de la marca UNIX® es The Open Group, un consorcio de normalización industrial. Sólo los sistemas totalmente compatibles y que se encuentran certificados por la especificación Single UNIX Specification pueden ser denominados "UNIX®" (otros reciben la denominación "similar a un sistema Unix" o "similar a Unix").
Durante fines de la década de 1970 y principios de la década de 1980, la influencia de Unix en círculos académicos indujo a su adopción en masa (principalmente la variante BSD, que había surgido en la Universidad de California, Berkeley) en varias compañías que se iniciaban por aquel entonces, siendo la más destacada Sun Microsystems. Hoy en día, junto a los sistemas Unix certificados, también se pueden encontrar sistemas similares a Unix, como Linux y los derivados de BSD.
En ocasiones, el término "Unix tradicional" suele emplearse para describir a Unix o a un sistema operativo que cuenta con las características de UNIX Versión 7 o UNIX System V.


Familias

Como se puede deducir de esta breve reseña histórica, existen varias familias del sistema operativo UNIX, que han evolucionado de manera independiente a lo largo de los años. Cada familia se distingue no tanto por sus diferencias técnicas como por sus diferencias en propiedad intelectual. Se observa que todas las familias se han visto contaminadas, directa o indirectamente, por otras familias.

Pantalla de Sun OS/Solaris


SunOS/Solaris

SunOS fue la versión del sistema operativo Unix desarrollada por Sun Microsystems para sus estaciones de trabajo y servidores hasta el principio de los años 1990. Ésta estaba basada en los UNIX BSD con algunos añadidos de los System V UNIX en versiones posteriores.
SunOS 1.0 estaba basada básicamente en BSD 4.1 y se publicó en 1982. SunOS 2.0, que salió en 1985, usaba BSD 4.2 como una base e introducía una capa de sistema de ficheros virtual (VFS) y el protocolo NFS. SunOS 3.0 coincidía con el lanzamiento de la serie Sun-3 en 1986 e incorporaba varias utilidades de System V. SunOS 4.0, que salió en 1989, migró a la base de BSD 4.3, introdujo un nuevo sistema de memoria virtual, enlazamiento dinámico y una implementación de la arquitectura System V STREAMS I/O.

Versiones

Versión de SunOS
Fecha de salida
Código base
Descripción
Sun UNIX 0.7
1982
UniSoft UNIX v7
Combinado con el sistema Sun-1 basado en 68000
SunOS 1.0
1983
4.1BSD
Incluye soporte para los sistemas Sun-1 and Sun-2 basados en 68010
SunOS 1.1[2]
Abril de 1984

SunOS 1.2
Enero de 1985

SunOS 2.0
Mayo de 1985
4.2BSD
Introdujo la capa del VFS y el protocolo NFS.
SunOS 3.0
Febrero de 1986
4.2BSD + System V IPC
Coincidió con el lanzamiento de la serie Sun-3 basada en 68020. Cinta de System V opcional con utilidades y librerías de desarrollo.
SunOS 3.2
Septiembre de 1986
SunOS 3.0 con cosas de 4.3BSD
Primero en tener soporte para la serie Sun-4.
SunOS 3.5
Enero de 1988

SunOS 4.0
Diciembre de 1988
4.3BSD con System V IPC
Nuevos sistemas de memoria virtual, enlazado dinámico y STREAMS E/S de System V. Soporte para Sun386i.
SunOS 4.0.1
1988

SunOS 4.0.2
Septiembre de 1989
Sólo Sun386i
SunOS 4.0.3
Mayo de 1989

SunOS 4.0.3c
Junio de 1989
Sólo SPARCstation 1 (Sun-4c)
SunOS 4.1
Marzo de 1990

SunOS 4.1e
Abril de 1991
Sólo Sun-4e
SunOS 4.1.1
Marzo de 1990
Mezclado con OpenWindows 2.0
SunOS 4.1.1B
Febrero de 1991

SunOS 4.1.1.1
Julio de 1991

SunOS 4.1.1_U1
Noviembre de 1991
Sólo Sun-3/3x
SunOS 4.1.2
Diciembre de 1991
Suporte para sistemas multiprocesador (SPARCserver 600MP); primer lanzamiento sólo en CD-ROM.
SunOS 4.1.3
Aug 1992

SunOS 4.1.3C
Noviembre de 1993
Sólo SPARCclassic/SPARCstation LX
SunOS 4.1.3_U1
Diciembre de 1993

SunOS 4.1.3_U1B
Febrero de 1994
La versión más antigua para la cual estuvieron disponibles parches para el efecto 2000.
SunOS 4.1.4
Noviembre de 1994
Última versión de SunOS 4



Pantallas Mac OS X Snow Leopard (10.6.2)


Sistema Operativo Mac OS X

Mac OS X es una línea de sistemas operativos computacionales desarrollada, comercializada y vendida por Apple Inc.
Se basa en Unix y usa una interfaz gráfica desarrollada por Apple llamada Aqua, que se inspira libremente en la interfaz de Mac OS Classic. El gestor de ventanas X11, característico en la familia de sistemas Unix, y Java se usan sólo para compatibilidad con software no nativo de Mac.

Perspectiva general

Apple decidió reemplazar el sistema operativo Mac OS 9 con uno nuevo basado en NeXTSTEP, porque Classic carecía de características requeridas en un sistema operativo contemporáneo. El sistema operativo NeXTSTEP fue desarrollando por la empresa NeXT, la cual fue adquirida por Apple.
Mac OS X Server fue lanzado en el año 1999 y se diferencia por incorporar diferentes herramientas administrativas para la gestión de redes y servicios de red.
Este sistema tiene a su vez un subsistema llamdo Darwin (bajo APSL, una licencia open source) que proporciona a Mac OS X prestaciones modernas, como la memoria protegida, la multitarea por desalojo o expulsiva, la gestión avanzada de memoria y el multiproceso simétrico. Sin embargo, las capas superiores del sistema (por ejemplo el subsistema gráfico en general) son código cerrado.
Mac OS X incorpora diferentes tecnologías: Quartz Extreme, Core Image, Core Audio, Core Video, OpenGL y QuickTime entre otras.

Entornos de desarrollo

  • Cocoa, la nueva interfaz de programación orientada a objetos de Mac OS X (heredada de OpenStep). Como lenguaje de programación utiliza Objective-C, aunque también es accesible desde otros lenguajes como Java.
  • Classic, la interfaz de programación nativa de Mac OS Classic. Es una interfaz programable en C y Pascal. Necesita de un simulador de Mac OS 9 para poder ejecutar estos binarios en Mac OS X. Esta interfaz ya no está disponible en la nueva familia de Macintosh basados en procesadores Intel.
  • Carbon, una adaptación de la interfaz de programación Classic para poder compilar las aplicaciones en binarios que se ejecutan en Mac OS X sin emulación, con objeto de facilitar la transición de los programas originalmente creados para Mac OS 9.
  • Una interfaz BSD compatible con POSIX y UNIX®.
En el 2006 Apple decidió migrar sus máquinas desde el procesador PowerPC a procesadores Intel, con lo que introdujeron los llamados binarios universales, es decir, aplicaciones que contienen el código binario de ambas plataformas para su ejecución transparente.
Además, en el 2006 Apple empezó a introducir aplicaciones de 64 bits, lo cual ha dado lugar a que una aplicación Mac OS X pueda tener hasta cuatro binarios distintos: 32 bits PowerPC, 64 bits PowerPC, 32 bits Intel y 64 bits Intel.

Versiones

La letra X se corresponde con el número romano 10 y continua con la numeración de los sistemas operativos previos de Mac OS Classic, como Mac OS 8 y Mac OS 9. Pese a que oficialmente se lee como diez algunas personas lo leen como la letra X. Una de las razones para esta interpretación es que tradicionalmente los sistemas operativos basados en Unix se nombran con la X al final (ejemplos: AIX, IRIX, Linux, Minix, Ultrix, Xenix, HP-UX). Otra razón es la tendencia de Apple de referirse a sus versiones específicas como (por ejemplo) "Mac OS X versión 10.5".
Las diferentes versiones de Mac OS X van apodadas con los nombres de grandes felinos en inglés. Antes de su lanzamiento, la versión 10.0 tenía como nombre de proyecto interno en Apple Cheetah (Guepardo), del mismo modo que la versión 10.1 fue apodada Puma. La versión 10.2 fue llamada Jaguar publicitariamente, y de esta versión en adelante se han seguido haciendo públicos estos nombres siendo Panther el de la versión 10.3, Tiger el de la 10.4, Leopard el de la 10.5 y Snow Leopard el de la 10.6, Apple tiene también registrados los nombres de Lynx (Lince) y Cougar (Puma) para su futuro uso.
Apple fue denunciada por una cadena de tiendas de ordenadores llamada TigerDirect por el uso del nombre "Tiger", pero el 19 de mayo de 2005 la Corte Federal de Florida determinó que Apple no infringía la marca registrada de TigerDirect.
La página web de Apple y los diferentes medios escritos se refieren a los lanzamientos específicos de Mac OS X en cualquiera de las cuatro siguientes formas:
  • Mac OS X v10.4, mostrando el número de versión.
  • Mac OS X Tiger, mostrando el nombre de la versión.
  • Mac OS X v10.4 "Tiger", mostrando tanto el número como el nombre de la versión (Apple suele omitir las comillas).
  • "Tiger", simplemente con el nombre de la versión y obviando todo lo demás.
A nivel interno, Apple utiliza un número de compilación (builds) para identificar cada versión desarrollada de Mac OS X. Según sus directivas, las primeras versiones en desarrollo de sus productos se designan como 1A1. Las revisiones menores de éstas son 1A2, 1A3, 1A4...; la primera revisión mayor en el desarrollo es la 1B1 (y sus revisiones menores serían 1B2, 1B3...), la siguiente 1C1, y así siguiendo el mismo patrón. Cuando se alcanza cierto punto de desarrollo la siguiente revisión mayor puede dar el salto de la serie 1_ a la 2A1, y así. Por poner un ejemplo, la primera build de Panther (10.3) fue la 7A1, y la primera versión que se hizo pública fue la 7B85; siendo la última la 7W98 (Mac OS X versión 10.3.9). Tras esto, la próxima build de OS X fue la 8A1, y la versión dio el salto a la 10.4 (cuando una build es elegida para ser lanzada públicamente se le asigna un número de versión).

Mac OS X v10.1 (Puma)

Antes de que terminase el año, el 25 de septiembre de 2001, Apple lanzó esta nueva versión que incrementaba el rendimiento del sistema a la vez que incorporaba algunas nuevas características tales como la reproducción de DVD. Dada la pésima reputación de la versión 10.0, Apple lanzó la 10.1 en forma de un CD de actualización gratuito para sus usuarios, además de los 129$ que costaba para los usuarios que seguían utilizando Mac OS 9. Esto ocasionó algunos quebraderos de cabeza a Apple cuando descubrió que los CD de actualización podían ser utilizados también para hacer instalaciones completas en sistemas con Mac OS 9 con tan sólo eliminar un determinado archivo.

Mac OS X v10.2 (Jaguar)

El 25 de agosto de 2002, Apple prosiguió con la andadura de su sistema operativo con el lanzamiento de Mac OS X v10.2 "Jaguar" (la primera versión que utilizó publicitariamente su felino seudónimo), y que contaba con un nuevo incremento en su rendimiento, un nuevo y depurado aspecto y más de 150 mejoras que incluyen:
  • Mayor soporte para redes de Microsoft Windows.
  • Quartz Extreme para que la composición de gráficos sea procesada directamente por la tarjeta de vídeo.
  • Un filtro adaptativo contra spam.
  • Apple Address Book para almacenar la información de contactos.
  • Sistema de red Rendezvous (una implementación de Apple de Zeroconf; renombrada a Bonjour por problemas legales en la versión 10.4).
  • iChat: Un programa de chateo con soporte de AOL Instant Messenger.
  • Un renovado Finder con búsquedas integradas en cada ventana.
  • Docenas de nuevas características del Apple Universal Access.
  • Sherlock 3: Servicios web.
  • CUPS (Common Unix Printing System): que permite el uso de drivers GIMP-print, hpijs y demás para impresoras no soportadas oficialmente.
En el Reino Unido no se utilizó oficialmente el nombre de Jaguar para referirse a Mac OS X v10.2 para evitar entrar en conflicto con el fabricante de automóviles Jaguar, aunque la caja y los CD siguieron conservando el logo con piel de Jaguar.

Mac OS X v10.3 (Panther)

Mac OS X v10.3 "Panther" se lanzó el 24 de octubre de 2003. Además de tener un rendimiento mucho mayor, incorporó la mayor actualización en el interfaz de usuario, y tantas o más mejoras que Jaguar el año anterior. Por otra parte, en esta versión dejaron de soportarse algunos modelos antiguos G3.
Las nuevas mejoras de Panther incluyen:
  • Finder actualizado, que incorpora una interfaz metálica y búsqueda rápida.
  • Exposé: una nueva forma de manipular ventanas.
  • Cambio rápido de usuarios: que permite tener sesiones con diferentes usuarios abiertas al mismo tiempo y pasar de una a otra rápidamente.
  • iChat AV que añade soporte para videoconferencia a iChat.
  • Renderización mejorada de PDF.
  • Soporte integrado de fax.
  • Interoperatibilidad con Microsoft Windows mucho mayor.
  • FileVault: Sistema de cifrado en tiempo real del directorio privado de cada usuario.
  • Incremento de velocidad en todo el sistema con un mayor soporte para los G5.

Mac OS X v10.4 (Tiger)

Artículo principal: Mac OS X v10.4
Mac OS X v10.4 "Tiger" se puso a la venta el 29 de abril de 2005. Contiene más de 200 nuevas mejoras, pero como sucedió con el lanzamiento de Panther, algunas máquinas antiguas han dejado de ser soportadas; en particular, cualquier equipo Apple que no cuente con conexión FireWire no está ya soportado en Tiger. Algunas de las nuevas características de Tiger son:
  • Spotlight: Un sistema de búsqueda basado en contenidos y metadatos.
  • Dashboard: Dashboard en un conjunto de miniaplicaciones, denominadas en el campo de la informática widgets, las cuales permiten realizar tareas comunes y ofrecen acceso instantáneo a la información.
  • iChat: Una nueva versión de este programa que soporta el códec de vídeo H.264 para la realización de vídeoconferencias de hasta 4 personas. Además, también permite realizar audioconferencias de hasta 10 personas.
  • QuickTime 7: La nueva versión incluye soporte para H.264 y una interfaz completamente rediseñada.
  • Safari: Esta nueva versión del navegador por defecto del sistema incorpora soporte para RSS, mayor velocidad y seguridad, etc.
  • Automator: Sistema que permite llevar a cabo de forma eficaz y sencilla toda clase de tareas manuales y repetitivas de forma automática y sin necesidad de conocimientos de programación.
  • Core Image y Core Video: Tecnologías avanzadas de procesamiento de imágenes en tiempo real.
  • Soporte de memoria de 64 bits para los nuevos G5, usando el sistema LP64.
  • Utilidades Unix actualizadas, como cp y rsync, que pueden preservar los metadatos en HFS Plus y resource fork.
  • Sistema extendido de permisos usando listas de control de acceso.
Como curiosidad cabe comentar que Apple dispone a partir de Tiger, de una versión "paralela" compilada para procesadores Intel, si bien, teóricamente, sólo podrá instalarse bajo ciertas restricciones de hardware y en procesadores con soporte SSE3.
Esta versión apareció en forma oficial el día 10 de enero del 2006 con los primeros equipos "Mac Intel": El iMac Core Duo (ex iMac G5), Mac mini Core Solo y Core Duo (ex Mac mini G4) además de los nuevos portátiles denominados MacBook y MacBook Pro, ambos equipados con procesadores Intel Core Duo. También han existido versiones para G4 de este sistema operativo, incluida al menos en los últimos PowerBook G4 a la venta.

Mac OS X v10.5 (Leopard)

Artículo principal: Mac OS X v10.5
Estos son los diez puntos principales que destaca Apple:
  • Time Machine: La posibilidad de poder volver en el tiempo a una versión especifica de los contenidos de una carpeta, del disco duro completo, de un sólo archivo, de un álbum de fotos en iPhoto, etc.
  • Mail 3: La tercera versión de este programa de correo electrónico de Apple ahora incluye Notas y To-Dos (listas de cosas por hacer), así como variadas plantillas para enviar email HTML.
  • iChat: Incluye iconos animados y conversaciones por pestañas. Además de funciones adicionales para los vídeochats, presentar vídeos y compartir el escritorio.
  • Spaces: Despliega múltiples escritorios virtuales.
  • Dashboard: Trae una herramienta llamada Dashcode para crear Widgets fácilmente. Adicionalmente Safari tiene un botón "Webclip" que permitirá tomar cualquier fragmento de una página que se esté viendo y convertirla en un Widget.
  • Spotlight: Incluye búsquedas avanzadas, Quick Look (previsualizaciones en vivo), y la posibilidad de buscar en varios computadores Mac en red (si la opción "Compartir Archivos" está habilitada). Además, las ventanas de Finder y Spotlight se han unificado.
  • iCal: Incluye varias mejoras, especialmente en el ámbito de los calendarios grupales.
  • Accesibilidad: Más mejoras en las funciones de accesibilidad para que "todos puedan usar un Mac". La mayor de ellas siendo un gran avance en las funciones de texto-a-voz con una nueva voz sintetizada llamada Alex, que incluso puede hablar claramente a altas velocidades. Además, trae soporte para pantallas Braille.
  • 64-bit: Tiger fue el primer sistema operativo de Apple en empezar a sacarle provecho al poder de los procesadores de 64-bit. Leopard da el próximo salto entregando más partes optimizadas del sistema operativo, así como la capacidad de que otras capas del sistema (y no solo la capa UNIX) puedan hacer uso de masivas cantidades de memoria.
  • Core Animation: Así como Core Video, Core Image y Core Audio simplificaban que cualquier desarrollador le sacara el máximo provecho a funciones de vídeo, 2D y audio, respectivamente, ahora Core Animation hace lo mismo con animaciones — lo que significa que junto con Leopard llegará una generación de aplicaciones llenas de efectos 3D. Ahora los efectos 3D en la interfaz no son de uso exclusivo del sistema operativo o de quienes sepan usar OpenGL. Según Apple, estos nuevos efectos incluidos correrán sobre cualquier Mac vendido en los últimos 2 años

Mac OS X v10.6 (Snow Leopard)

Artículo principal: Mac OS X v10.6
Mac OS X 10.6 Snow Leopard es el nuevo sistema operativo de Apple. Snow Leopard está a la venta, por 29 € para los usuarios de Leopard y por 169 € el Mac Box Set (Mac OS X Snow Leopard, iLife '09 y iWork '09) para los poseedores de un ordenador con Mac OS X Tiger, en el Apple Store (incluyendo gastos de envío) y en los distribuidores Apple autorizados. Ya han sido lanzados ordenadores Apple con Snow Leopard ya instalado. Las mejoras incluidas en esta versión son:
  • Nuevo exposé integrado en el Dock.
  • Innovación en caracteres chinos pudiendo usar el touchpad para insertarlos.
  • Ajuste automático de la zona horaria.
  • Mejoras en la selección de texto en PDF.
  • Soporte para conectarse a los servidores Microsoft Exchange 2007 en las aplicaciones de Agenda (Address Book), Mail e iCal.
  • Tiempos de instalación menores y menor uso de espacio de disco duro
  • Soporte para 16 TB teóricos de RAM a través de mayor desarrollo de tecnologías de núcleos de 64 bits.
  • Grand Central: una tecnología de programación paralela que permite usar las ventajas de los procesadores multinúcleo y optimizar la ejecución de aplicaciones de Mac OS X. que busca que el sistema operativo tome mayor ventaja de las CPUs de multinúcleo
  • QuickTime X que tendrá soporte optimizado para codecs actuales
  • OpenCL (Open Computing Language): que permitirá a los desarrolladores programar aplicaciones que utilicen la unidad de procesamiento gráfico (GPU) para usos no gráficos.
  • Un núcleo de 64 bits que proveerá de un ambiente completo de 64 bits para las aplicaciones, junto con soporte de 32 bits para las Macs más antiguas. Esto permitirá hasta un máximo teórico de 16TB de memoria RAM.

Pantallas de Windows 7


Características

Windows 7 incluye numerosas actualizaciones, entre las que se encuentran avances en reconocimiento de voz, táctil y escritura, soporte para discos virtuales, mejor desempeño en procesadores multi-núcleo, mejor arranque y mejoras en el núcleo. Al inicio tiene cuatro puntos de los colores de Windows (Rojo, Azul, Verde y Amarillo) giran en el centro de la pantalla para formar el logo de Windows y dice "Iniciando Windows"

Windows Explorer

  • Bibliotecas: Las "Bibliotecas" son carpetas virtuales que agregan el contenido de varias carpetas y las muestran en una sola. Por ejemplo las carpetas agregadas en la librería "Vídeos" por defecto son: "Vídeos Personales" (antes "Mis Vídeos") y "Vídeos Públicos" aunque se pueden agregar más manualmente. Sirven para clasificar los diferentes tipos de archivos (Documentos, Música, Vídeos, Fotos).
  • Aero Shake Cuando se tiene varias ventanas abiertas, al seleccionar una y agitarla, las otras ventanas abiertas se minimizan, al repetir esta acción, las ventanas vuelven a su ubicación anterior.
  • La barra lateral de Windows o más conocida como Windows Sidebar se ha eliminado y ahora los gadgets pueden ubicarse libremente en cualquier lugar del escritorio, ya sea en lado derecho, izquierdo, arriba ó abajo.

Barra de tareas

  • La barra de tareas fue rediseñada haciéndola más ancha y los botones de las ventanas ya no traen texto, sino únicamente el icono de la aplicación. Estos cambios se hacen para mejorar el desempeño en sistemas de pantalla táctil. Los íconos se han integrado con el inicio rápido, y ahora las ventanas abiertas se muestran agrupadas en ese único icono con un borde indicando que están abiertas. Los accesos directos sin abrir no tienen un borde.
  • Aero Peek: Las previsualizaciones incluídas desde Windows Vista se han mejorado pasando a ser más interactivas y útiles. Cuando se posa el mouse sobre una aplicación abierta éste muestra una previsualización de la ventana donde muestra el nombre, la previsualización y la opción de cerrarla, además, si se pone el ratón sobre la previsualización, se obtiene una mirada a pantalla completa y al quitarlo se regresa al punto anterior. Además se incorporó esta misma característica a Windows Flip.
  • Jump List: Haciendo clic derecho a cualquier aplicación de la barra de tareas aparece una "Jump List" (Lista de saltos) en donde se pueden hacer tareas sencillas de acuerdo a la aplicación, por ejemplo, abrir documentos recientes de Office, abrir pestañas recientes de Internet Explorer, escoger listas de reproducción en el Media Player, cambiar el estado en Windows Live Messenger, etc.
  • Barra Mostrar Escritorio: Esta nueva barra trae un pequeño rectángulo en la esquina derecha que reemplaza el icono en inicio rápido de versiones anteriores. Este nuevo "rectángulo" permite que al poner el puntero sobre él, haga que las ventanas se pongan 100% transparentes, esto sirve para poder ver el escritorio de manera rápida, ver gadgets u otras cosas, o también simplemente se le puede dar clic y minimizar todas las ventanas.

Multimedia 

Windows 7 incluye consigo Windows Media Center y Windows Media Player 12.

Interfaz 

El equipo de desarrollo de la interfaz Ribbon de Microsoft Office 2007 formó parte activa en el rediseño de algunos programas y características de Windows 7, incluyendo dicha interfaz en las herramientas Paint y Wordpad.

Multitáctil 

El 27 de mayo de 2008, Steve Ballmer y Bill Gates en la conferencia "D6: All Things Digital" dieron a conocer la nueva interfaz multitáctil llamándola "sólo una pequeña parte" de lo que vendrá con Windows 7. Más tarde Julie Larson Green, vicepresidente corporativa, mostró posibles usos, como hacer dibujos en Paint, agrandar o reducir fotos y recorrer un mapa en Internet, arrastrar y abrir elementos, simplemente con toques en la pantalla.
"Hoy en día la mayoría de los ordenadores son usados gracias a la interacción mouse-teclado", dijo Bill Gates, presidente de Microsoft. "En los próximos años, el papel de la voz, la visión, la tinta -todos ellos- será enorme", afirmó.

Modo XP 

Windows 7 permite integrarse con la nueva versión Windows Virtual PC, que permite ejecutar un equipo virtual Windows XP en forma transparente para el usuario (la aplicación dentro de la máquina virtualizada se ve como otra opción en el menú de Windows 7 y su ejecución es directa, sin pasar por el menú de inicio del XP virtualizado). Si bien Microsoft ya había liberado MED-V dentro de su paquete MDOP que cumple la misma función en entornos Hyper-V, esta es una solución orientada a usuarios avanzados y pequeñas empresas que no necesitan de herramientas para administración centralizada. Esta funcionalidad se debe descargar de forma independiente en el sitio de Microsoft (aunque sólo corresponde a las ediciones Professional, Ultimate y Enterprise de Windows 7). Asimismo, el modo XP requiere de procesadores con capacidad de virtualización, a diferencia del tradicional Virtual PC 2007 o Virtual PC 2008.

Compatibilidad 

Las versiones cliente de Windows 7 serán lanzadas en versiones para arquitectura 32 bits y 64 bits en las ediciones Home Basic, Home Premium, Professional y Ultimate. No obstante, las versiones servidor de este producto serán lanzadas exclusivamente para arquitectura 64 bits.
Esto significa que, las versiones cliente de 32 bits aún soportarán programas Windows 16 bits y MS-DOS. Y las versiones 64 bits (incluyendo todas las versiones de servidor), soportarán tanto programas de 32 como de 64 bits.

Otras características 

Microsoft ha decidido no incluir los programas Windows Mail, Windows Movie Maker y Windows Photo Gallery en Windows 7, poniéndolos a disposición a modo de descarga en el conocido paquete de servicios en red, Windows Live Essentials. Esto se ha decidido para facilitar las actualizaciones de estos programas, aligerar el sistema operativo, dejar escoger al usuario las aplicaciones que quiere tener en su equipo y evitar futuras demandas por monopolio.

Seguridad

Una de las principales críticas que con frecuencia reciben los sistemas operativos Windows es la debilidad del sistema en lo que a seguridad se refiere y el alto índice de vulnerabilidades críticas. El propio Bill Gates, fundador de Microsoft, ha asegurado en repetidas ocasiones que la seguridad es objetivo primordial para su empresa.
Partiendo de la base de que no existe un sistema completamente libre de errores, las críticas se centran en la lentitud con la que la empresa reacciona ante un problema de seguridad que pueden llegar a meses o incluso años de diferencia desde que se avisa de la vulnerabilidad hasta que se publica un parche.
En algunos casos la falta de respuesta por parte de Microsoft ha provocodo que se desarrollen parches que arreglan problemas de seguridad hechos por terceros.
Uno de los pilares en que se basa la seguridad de los productos Windows es la seguridad por ocultación, en general, un aspecto característico del software propietario que sin embargo parece ser uno de los responsables de la debilidad de este sistema operativo ya que, la propia seguridad por ocultación, constituye una infracción del "principio de Kerckhoffs", el cual afirma que la seguridad de un sistema reside en su diseño y no en una supuesta ignorancia del diseño por parte del atacante.

Desarrollo

El desarrollo de este sistema operativo comenzó inmediatamente después del lanzamiento de Windows Vista. El 20 de julio de 2007, se reveló que este sistema operativo es llamado internamente por Microsoft como la versión "7". Hasta el momento, la compañía declaró que Windows 7 tendrá soporte para plataformas de 32 bits y 64 bits, aunque la versión para servidor (que sucedería a Windows Server 2008) será exclusivamente de 64 bits. Se espera que este Sistema Operativo sea una dura competencia para Mac OS X Snow Leopard de Apple.Inc.
El 13 de octubre de 2008 fue anunciado que "Windows 7" además de haber sido uno de los tantos nombres código, sería el nombre oficial de este nuevo sistema operativo. Mike Nash dijo que esto se debía a que con Windows 7 se "apunta a la simplicidad, y el nombre debe reflejarlo".
Ya para el 7 de enero de 2009, la versión beta se publicó para suscriptores de Technet y MSDN. El 9 de enero, se habilitó brevemente al público general mediante descarga directa en la página oficial, pero hubo problemas con los servidores que obligaron a retirar la posibilidad de descarga hasta horas más tarde después de añadir más servidores y, además, cambiaron el límite de 2,5 millones de personas como disculpa por el problema del retraso, el nuevo límite fue hasta el 10 de febrero del 2009.
El 5 de mayo se liberó la versión Release Candidate en 5 idiomas, entre ellos el español. Estuvo disponible para descarga hasta el 20 de agosto de 2009.
El 2 de junio Microsoft anunció que la salida mundial de Windows 7 tendría lugar el 22 de octubre.
El 24 de julio, los directvos de Microsoft, Steve Ballmer y Steven Sinofsky anunciaron la finalización del proceso de desarrollo con la compilación de la versión RTM, destinada a la distribución de Windows.
Otro asunto presente en el desarrollo de este sistema, gracias a los comentarios de los usuarios, fue el minimizar la intrusión habilitando la personalización del Control de Cuentas de Usuario, ya que éste fue considerado como molesto en Windows Vista debido a sus constantes alertas en simples acciones, como el mantenimiento usando funciones propias del equipo.
En una carta escrita por el vicepresidente de Microsoft Corporation, Bill Veghte, se mencionan apartes sobre la visión que se tuvo para Windows 7:
Hemos aprendido mucho a través de los comentarios que ustedes han compartido con nosotros acerca de Windows Vista, y esa retroalimentación juega un papel importante en nuestro trabajo para Windows 7. Nos han dicho que desean una programación más estructurada y predecible para la liberación de Windows... ...nuestro enfoque hacia Windows 7 es basarnos en la misma arquitectura de fondo de Windows Vista Service Pack 1, de manera que las inversiones que ustedes y nuestros socios han realizado en Windows Vista continúen redituando con Windows 7. Nuestro objetivo es asegurar que el proceso de migración de Windows Vista a Windows 7 sea transparente.

Windows 7

Windows 7 es la más reciente versión de Microsoft Windows, un sistema operativo producido por Microsoft Corporation para uso en PC, incluyendo equipos de escritorio en hogares y oficinas, equipos portátiles, "tablet PC", "netbooks" y equipos media center. El desarrollo de Windows 7 se completó el 22 de julio de 2009, siendo entonces confirmada su fecha de venta oficial para el 22 de octubre de 2009. Su equivalente para servidores, Windows Server 2008 R2, será lanzado al mismo tiempo.
A diferencia de su antecesor, Windows 7 es una actualización incremental del núcleo NT 6.0, lo que tiene como fin el mantener cierto grado de compatibilidad con aplicaciones y hardware en los que Windows Vista ya era compatible. Las metas de desarrollo para Windows 7 fueron el mejorar su interfaz para hacerla más amigable al usuario e incluir nuevas características que permitieran hacer tareas de una manera más fácil y rápida, al mismo tiempo en que se realizarían esfuerzos para lograr un sistema más ligero, estable y rápido.
Diversas presentaciones dadas por la compañía en el 2008 se enfocaron en demostrar capacidades multitáctiles, una interfaz rediseñada junto con una nueva barra de tareas y un sistema de redes domésticas denominado Grupo en el Hogar, además de mejoras de rendimiento.

Línea de tiempo de Microsoft Windows

Fechas de lanzamiento Nombre del producto Versión actual / Build Notas Ultimo IE
Noviembre 1985 Windows 1.01 1.01 No compatible -
Noviembre 1987 Windows 2.03 2.03 No compatible -
Mayo 1988 Windows 2.10 2.10 No compatible. Windows/286 y /386 editions -
Marzo 1989 Windows 2.11 2.11 No compatible. Windows/286 y /386 editions -
Mayo 1990 Windows 3.0 3.0 No compatible -
Marzo 1992 Windows 3.1x 3.1 No compatible 5
Octubre 1992 Windows For Workgroups 3.1 3.1 No compatible 5
Julio 1993 Windows NT 3.1 NT 3.1 No compatible 5
Diciembre 1993 Windows For Workgroups 3.11 3.11 No compatible 5
Enero 1994 Windows 3.2 (publicado en chino simplificado) 3.2 No compatible 5
Septiembre 1994 Windows NT 3.5 NT 3.5 No compatible 5
Mayo 1995 Windows NT 3.51 NT 3.51 No compatible 5
Agosto 1995 Windows 95 4.0.950 No compatible 5.5
Julio 1996 Windows NT 4.0 NT 4.0.1381 No compatible 6
Junio 1998 Windows 98 4.10.1998 No compatible 6
Mayo 1999 Windows 98 SE 4.10.2222 No compatible 6
Febrero 2000 Windows 2000 NT 5.0.2195 Soporte extendido hasta el 13 de julio de 2010, 6
Septiembre 2000 Windows Me 4.90.3000 No compatible 6
Octubre 2001 Windows XP NT 5.1.2600 Soporte extendido hasta el 8 de abril de 2014 para SP3 y 13 de julio de 2010 para SP2. (RTM y SP1 no compatibles). 8
Marzo 2003 Windows XP 64-bit Edition (IA-64) NT 5.2.3790 No compatible 6
Abril 2003 Windows Server 2003 NT 5.2.3790 Actual para SP1, R2, SP2 (RTM no compatible). 8
Abril 2005 Windows XP Professional x64 Edition NT 5.2.3790 Actual 8
Julio 2006 Windows Fundamentals for Legacy PCs NT 5.1.2600 Actual 8
Noviembre 2006 (licencias por volumen)
Enero 2007 (retail)
Windows Vista NT 6.0.6002 Actual. Versión cambiada a NT 6.0.6001 con el Service Pack 1 (4 de febrero de 2008) y a NT 6.0.6002 con el Service Pack 2 (28 de abril de 2009). 8
Julio 2007 Windows Home Server NT 5.2.4500 Actual 8
Febrero 2008 Windows Server 2008 NT 6.0.6002 Actual. Versión cambiada a NT 6.0.6002 con el Service Pack 2 (28 de abril de 2009). 8
Octubre 2009 Windows 7 y Windows Server 2008 R2 NT 6.1.7600 Actual 8
2012 Windows 8 Desconocido Próximamente

Microsoft Windows

Microsoft Windows es una familia de sistemas operativos desarrollados y comercializados por Microsoft. Existen versiones para hogares, empresas, servidores y dispositivos móviles, como computadores de bolsillo y teléfonos inteligentes. Hay variantes para procesadores de 16, 32 y 64 bits.
Incorpora diversas aplicaciones como Internet Explorer, el Reproductor de Windows Media, Windows Defender, Windows Media Center, WordPad entre otros y diversas aplicaciones que fueron retiradas en Windows 7, tales como: Windows Movie Maker, Windows Mail, Windows Messenger y la Galeria Fotografica de Windows.
Desde hace muchos años es el sistema operativo más difundido y usado del mundo; de hecho la mayoría de los programas (tanto comerciales como gratuitos y libres) se desarrolla originalmente para este sistema. En julio del 2009, Windows tenia aproximadamente el 86% de la cuota de mercado de los sistemas operativos.
Windows 7 es la versión más reciente para computadoras personales, Windows Server 2008 para servidores y Windows Mobile 6.5 en los dispositivos móviles.

Sistemas Operativos mas conocidos

Entre los sistemas operativos mas conocidos tenemos los de las siguientes compañias:
  • Microsoft
  • Apple Inc
  • Sun MicroSystems
  • UNIX
  • Google
Entre otros, pero esos son los mas conocidos o populares, tenemos una gran cantidad de sistemas operativos basados en nucleo UNIX; la mayoria de ellos son de libre distribucion como Ubuntu,Kubuntu,Fedora,Android,etc pero hay otros que no son como el Mac OS X y los sistemas operativos que usa la compañia Red Hat para sus servidores.

Manejo de recursos

  • Centralizado: Si permite utilizar los recursos de una sola computadora.
  • Distribuido: Si permite utilizar los recursos (memoria, CPU, disco, periféricos... ) de más de una computadora al mismo tiempo.


Administración de usuarios

  • Monousuario: Si sólo permite ejecutar los programas de un usuario al mismo tiempo.
  • Multiusuario: Si permite que varios usuarios ejecuten simultáneamente sus programas, accediendo a la vez a los recursos de la computadora. Normalmente estos sistemas operativos utilizan métodos de protección de datos, de manera que un programa no pueda usar o cambiar los datos de otro usuario.

Características

Administración de tareas

  • Monotarea: Solamente puede ejecutar un proceso (aparte de los procesos del propio S.O.) en un momento dado. Una vez que empieza a ejecutar un proceso, continuará haciéndolo hasta su finalización y/o interrupción.
  • Multitarea: Es capaz de ejecutar varios procesos al mismo tiempo. Este tipo de S.O. normalmente asigna los recursos disponibles (CPU, memoria, periféricos) de forma alternada a los procesos que los solicitan, de manera que el usuario percibe que todos funcionan a la vez, de forma concurrente

 

Gestor de recursos

Como gestor de recursos, el Sistema Operativo administra
  • La CPU (Unidad Central de Proceso, donde está alojado el microprocesador).
  • Los dispositivos de E/S (entrada y salida)
  • La memoria principal (o de acceso directo).
  • Los discos (o memoria secundaria).
  • Los procesos (o programas en ejecución).
  • y en general todos los recursos del sistema.

Programas de sistema

Son aplicaciones de utilidad que se suministran con el SO pero no forman parte de él. Ofrecen un entorno útil para el desarrollo y ejecución de programas, siendo algunas de las tareas que realizan:
  • Manipulación y modificación de archivos.
  • Información del estado del sistema.
  • Soporte a lenguajes de programación.
  • Comunicaciones.

Sistema de comunicaciones

Para mantener las comunicaciones con otros sistemas es necesario poder controlar el envío y recepción de información a través de las interfaces de red. También hay que crear y mantener puntos de comunicación que sirvan a las aplicaciones para enviar y recibir información, y crear y mantener conexiones virtuales entre aplicaciones que están ejecutándose localmente y otras que lo hacen remotamente.


Sistemas de protección

Mecanismo que controla el acceso de los programas o los usuarios a los recursos del sistema. El SO se encarga de:
  • Distinguir entre uso autorizado y no autorizado.
  • Especificar los controles de seguridad a realizar.
  • Forzar el uso de estos mecanismos de protección.

Sistema de archivos

Los archivos son colecciones de información relacionada, definidas por sus creadores. Éstos almacenan programas (en código fuente y objeto) y datos tales como imágenes, textos, información de bases de datos, etc. El SO es responsable de:
  • Construir y eliminar archivos y directorios.
  • Ofrecer funciones para manipular archivos y directorios.
  • Establecer la correspondencia entre archivos y unidades de almacenamiento.
  • Realizar copias de seguridad de archivos.
Existen diferentes Sistemas de Archivos, es decir, existen diferentes formas de organizar la información que se almacena en las memorias (normalmente discos) de los ordenadores. Por ejemplo, existen los sistemas de archivos FAT, FAT32, EXT2, NTFS...
Desde el punto de vista del usuario estas diferencias pueden parecer insignificantes a primera vista, sin embargo, existen diferencias muy importantes. Por ejemplo, los sistemas de ficheros FAT32 y NTFS , que se utilizan fundamentalmente en sistemas operativos de Microsoft, tienen una gran diferencia para un usuario que utilice una base de datos con bastante información ya que el tamaño máximo de un fichero con un Sistema de Archivos FAT32 está limitado a 4 gigabytes sin embargo en un sistema NTFS el tamaño es considerablemente mayor.


El sistema de E/S

Consiste en un sistema de almacenamiento temporal (caché), una interfaz de manejadores de dispositivos y otra para dispositivos concretos. El sistema operativo debe gestionar el almacenamiento temporal de E/S y servir las interrupciones de los dispositivos de E/S.


Gestión del almacenamiento secundario

Un sistema de almacenamiento secundario es necesario, ya que la memoria principal (almacenamiento primario) es volátil y además muy pequeña para almacenar todos los programas y datos. También es necesario mantener los datos que no convenga mantener en la memoria principal. El SO se encarga de:
  • Planificar los discos.
  • Gestionar el espacio libre.
  • Asignar el almacenamiento.


Gestión de la memoria principal

La Memoria (informática) es una gran tabla de palabras o bytes que se referencian cada una mediante una dirección única. Este almacén de datos de rápido accesos es compartido por la CPU y los dispositivos de E/S, es volátil y pierde su contenido en los fallos del sistema. El SO es el responsable de:
  • Conocer qué partes de la memoria están utilizadas y por quién.
  • Decidir qué procesos se cargarán en memoria cuando haya espacio disponible.
  • Asignar y reclamar espacio de memoria cuando sea necesario.

Componentes de un sistema operativo

Gestión de procesos

Un proceso es simplemente, un programa en ejecución que necesita recursos para realizar su tarea: tiempo de CPU, memoria, archivos y dispositivos de E/S. El SO es el responsable de:
  • Crear y destruir los procesos.
  • Parar y reanudar los procesos.
  • Ofrecer mecanismos para que se comuniquen y sincronicen.
La gestión de procesos podría ser similar al trabajo de oficina. Se puede tener una lista de tareas a realizar y a estas fijarles prioridades alta, media, baja por ejemplo. Debemos comenzar haciendo las tareas de prioridad alta primero y cuando se terminen seguir con las de prioridad media y después las de baja. Una vez realizada la tarea se tacha. Esto puede traer un problema que las tareas de baja prioridad pueden que nunca lleguen a ejecutarse. y permanezcan en la lista para siempre. Para solucionar esto, se puede asignar alta prioridad a las tareas más antiguas.

 

Importancia de las excepciones

El mecanismo de tratamiento de las excepciones es esencial para impedir, junto a los modos de ejecución de la CPU y los mecanismos de protección de la memoria, que las aplicaciones realicen operaciones que no les están permitidas. En cualquier caso, el tratamiento específico de una excepción lo realiza el SO.
Como en el caso de las interrupciones, el hardware se limita a dejar el control al SO, y éste es el que trata la situación como convenga.
Es bastante frecuente que el tratamiento de una excepción no retorne al programa que se estaba ejecutando cuando se produjo la excepción, sino que el SO aborte la ejecución de ese programa. Este factor depende de la pericia del programador para controlar la excepción adecuadamente.

Clases de excepciones

Las instrucciones de un programa pueden estar mal construidas por diversas razones:
  • El código de operación puede ser incorrecto.
  • Se intenta realizar alguna operación no definida, como dividir por cero.
  • La instrucción puede no estar permitida en el modo de ejecución actual.
  • La dirección de algún operando puede ser incorrecta o se intenta violar alguno de sus permisos de uso.


Excepciones

Cuando la CPU intenta ejecutar una instrucción incorrectamente construida, la unidad de control lanza una excepción para permitir al SO ejecutar el tratamiento adecuado. Al contrario que en una interrupción, la instrucción en curso es abortada. Las excepciones al igual que las interrupciones deben estar identificadas.


Importancia de las interrupciones

El mecanismo de tratamiento de las interrupciones permite al SO utilizar la CPU en servicio de una aplicación, mientras otra permanece a la espera de que concluya una operación en un dispositivo de E/S.
El hardware se encarga de avisar al SO cuando el dispositivo de E/S ha terminado y el SO puede intervenir entonces, si es conveniente, para hacer que el programa que estaba esperando por el dispositivo, se continúe ejecutando.
En ciertos intervalos de tiempo puede convenir no aceptar señales de interrupción. Por ello las interrupciones pueden inhibirse por programa (aunque esto no deben poder hacerlo las mismas).

Tratamiento de las interrupciones

Una interrupción se trata en todo caso, después de terminar la ejecución de la instrucción en curso.
El tratamiento depende de cuál sea el dispositivo de E/S que ha causado la interrupción, ante la cual debe poder identificar el dispositivo que la ha causado.



Interrupciones y excepciones

El SO ocupa una posición intermedia entre los programas de aplicación y el hardware. No se limita a utilizar el hardware a petición de las aplicaciones ya que hay situaciones en las que es el hardware el que necesita que se ejecute código del SO. En tales situaciones el hardware debe poder llamar al sistema, pudiendo deberse estas llamadas a dos condiciones:
  • Algún dispositivo de E/S necesita atención.
  • Se ha producido una situación de error al intentar ejecutar una instrucción del programa (normalmente de la aplicación).
En ambos casos, la acción realizada no está ordenada por el programa de aplicación, es decir, no figura en el programa.
Según los dos casos anteriores tenemos las interrupciones y la excepciones:
  • Interrupción: señal que envía un dispositivo de E/S a la CPU para indicar que la operación de la que se estaba ocupando, ya ha terminado.
  • Excepción: una situación de error detectada por la CPU mientras ejecutaba una instrucción, que requiere tratamiento por parte del SO.

Bibliotecas de interfaz de llamadas al sistema

Las llamadas al sistema no siempre tienen una expresión sencilla en los lenguajes de alto nivel, por ello se crean las bibliotecas de interfaz, que son bibliotecas de funciones que pueden usarse para efectuar llamadas al sistema. Las hay para distintos lenguajes de programación.
La aplicación llama a una función de la biblioteca de interfaz (mediante una llamada normal) y esa función es la que realmente hace la llamada al sistema.


Llamadas al Sistema

Una aplicación, normalmente no sabe dónde está situada la rutina de servicio de la llamada. Por lo que si ésta se codifica como una llamada de función, cualquier cambio en el SO haría que hubiera que reconstruir la aplicación.
Pero lo más importante es que una llamada de función no cambia el modo de ejecución de la CPU. Con lo que hay que conseguir llamar a la rutina de servicio, sin tener que conocer su ubicación, y hacer que se fuerce un cambio de modo de operación de la CPU en la llamada (y la recuperación del modo anterior en el retorno).
Esto se hace utilizando instrucciones máquina diseñadas específicamente para este cometido, distintas de las que se usan para las llamadas de función.


Modos de ejecución en un CPU

Las aplicaciones no deben poder usar todas las instrucciones de la CPU. No obstante el SO, tiene que poder utilizar todo el juego de instrucciones del CPU. Por ello, una CPU debe tener (al menos) dos modos de operación diferentes:
  • Modo usuario: el CPU podrá ejecutar sólo las instrucciones del juego restringido de las aplicaciones.
  • Modo supervisor: la CPU debe poder ejecutar el juego completo de instrucciones.

Llamadas al Sistema Operativo

Definición breve: llamadas que ejecutan los programas de aplicación para pedir algún servicio al SO.
Cada SO implementa un conjunto propio de llamadas al sistema. Ese conjunto de llamadas es el interfaz del SO frente a las aplicaciones. Constituyen el lenguaje que deben usar las aplicaciones para comunicarse con el SO. Por ello si cambiamos de SO, y abrimos un programa diseñado para trabajar sobre el anterior, en general el programa no funcionará, a no ser que el nuevo SO tenga la misma interfaz. Para ello:
  • Las llamadas correspondientes deben tener el mismo formato.
  • Cada llamada al nuevo SO tiene que dar los mismos resultados que la correspondiente del anterior.

Sistemas Operativos Multiprogramados

Surge un nuevo avance en el hardware: el hardware con protección de memoria. Lo que ofrece nuevas soluciones a los problemas de rendimiento:
  • Se solapa el cálculo de unos trabajos con la entrada/salida de otros trabajos.
  • Se pueden mantener en memoria varios programas.
  • Se asigna el uso de la CPU a los diferentes programas en memoria.
Debido a los cambios anteriores, se producen cambios en el monitor residente, con lo que éste debe abordar nuevas tareas, naciendo lo que se denomina como Sistemas Operativos multiprogramados, los cuales cumplen con las siguientes funciones:
  • Administrar la memoria.
  • Gestionar el uso de la CPU (planificación).
  • Administrar el uso de los dispositivos de E/S.
Cuando desempeña esas tareas, el monitor residente se transforma en un sistema operativo multiprogramado.