Archivo | Sistemas Operativos RSS feed for this section

Samsung S8500 Wave

23 Nov

El Samsung S8500 Wave es otro móvil de Samsung con pantalla táctil super AMOLED de 3,3 pulgadas. Por el momento no se sabe su fecha exacta de salida al mercado ni el precio. Las principales características del Samsung S8500 Wave son: 1) GSM, 3G y WiFi 2) Cámara de 5MP 3) GPS

Administración de la Memoria

23 Nov

En esta sección se describirán las técnicas más usuales en el manejo de memoria, revisando los conceptos relevantes. Se abarcarán los esquemas de manejo simple de memoria real, la multiprogramación en memoria real con sus variantes, el concepto de `overlays’, la multiprogramación con intercambio y los esquemas de manejo de memoria virtual.

Panorama general

Un vistazo al material que se va a cubrir en esta sección se muestra en la figura 4.1. Es una gráfica en donde se especifican, en términos generales, los conceptos más importantes en cuanto a las técnicas empleadas en el manejo de memoria.

Manejo de memoria en sistemas monousuario sin intercambio

Este esquema se usa principalmente en sistemas monousuario y monotarea, como son las computadoras personales con DOS. Bajo este esquema, la memoria real es tomada para almacenar el programa que se esté ejecutando en un momento dado, con la visible desventaja de que si se está limitado a la cantidad de RAM disponible únicamente. La organización física bajo este esquema es muy simple: El sistema operativo se ubica en las localidades superiores o inferiores de la memoria, seguido por algunos manejadores de dispositivos («drivers»). Esto deja un espacio contiguo de memoria disponible que es tomado por los programas del usuario, dejando generalmente la ubicación de la pila («stack») al último, con el objetivo de que ésta pueda crecer hasta el máximo posible. Estas diferentes opciones se pueden ver en la figura 4.2. Como es obvio, bajo estos esquemas no se requieren algoritmos sofisticados para asignar la memoria a los diferentes procesos, ya que éstos son ejecutados secuencialmente conforme van terminando.

Multiprogramación en memoria real

En los 60’s, las empresas e instituciones que habían invertido grandes sumas en la compra de equipo de cómputo se dieron cuenta rápidamente que los sistemas en lote invertían una gran cantidad de tiempo en operaciones de entrada y salida, donde la intervención de la unidad central de procesamiento era prácticamente nula, y se comenzaron a preguntar cómo hacer que se mantuviera más tiempo ocupada. Fue así como nació el concepto de multiprogramación, el cual consiste en la idea de poner en la memoria física más de un proceso al mismo tiempo, de manera que si el que se está ejecutando en este momento entraba en un periodo de entrada/salida, se podía tomar otro proceso para que usara la unidad central de procesamiento. De esta forma, la memoria física se dividía en secciones de tamaño suficiente para contener a varios programas.

De esta manera, si un sistema gastaba en promedio 60% de su tiempo en entrada/salida por proceso, se podía aprovechar más el CPU. Anterior a esto, el CPU se mantenía ese mismo porcentaje ocioso; con la nueva técnica, el tiempo promedio ocioso disminuye de la siguiente forma. Llámese al tiempo promedio que el CPU está ocupado `grado de multiprogramación’. Si el sistema tuviese un solo proceso siempre, y éste gastara 60% en entrada/salida, el grado de multiprogramación sería 1 – 60% = 40% = 0.4. Con dos procesos, para que el CPU esté ocioso se necesita que ambos procesos necesiten estar haciendo entrada/salida, es decir, suponiendo que son independientes, la probabilidad de que ambos estén en entrada/salida es el producto de sus probabilidades, es decir, 0.6×0.6 = 0.36. Ahora, el grado de multiprogramación es 1 – (probabilidad de que ambos procesos estén haciendo entrada/salida) = 1 – 0.36 = 0.64.

Como se ve, el sistema mejora su uso de CPU en un 24% al aumentar de uno a dos procesos. Para tres procesos el grado de multiprogramación es 1 – (0.6) 3 = 0.784, es decir, el sistema está ocupado el 78.4% del tiempo. La fórmula del grado de multiprogramación, aunque es muy idealista, pudo servir de guía para planear un posible crecimiento con la compra de memoria real, es decir, para obtener el punto en que la adición de procesos a RAM ya no incrementa el uso de CPU.

Dentro del esquema de multiprogramación en memoria real surgieron dos problemas interesantes: la protección y la relocalización.

El problema de la relocalización

Este problema no es exclusivo de la multiprogramación en memoria real, sino que se presentó aquí pero se sigue presentando en los esquemas de memoria virtual también. Este problema consiste en que los programas que necesitan cargarse a memoria real ya están compilados y ligados, de manera que internamente contienen una serie de referencias a direcciones de instrucciones, rutinas y procedimientos que ya no son válidas en el espacio de direcciones de memoria real de la sección en la que se carga el programa. Esto es, cuando se compiló el programa se definieron o resolvieron las direcciones de memoria de acuerdo a la sección de ese momento, pero si el programa se carga en otro día en una sección diferente, las direcciones reales ya no coinciden. En este caso, el manejador de memoria puede solucionar el problema de dos maneras: de manera ` estática’ o de manera `dinámica’. La solución `estática’ consiste en que todas las direcciones del programa se vuelvan a recalcular al momento en que el programa se carga a memoria, esto es, prácticamente se vuelve a recompilar el programa. La solución `dinámica’ consiste en tener un registro que guarde la dirección base de la sección que va a contener al programa. Cada vez que el programa haga una referencia a una dirección de memoria, se le suma el registro base para encontrar la dirección real. Por ejemplo, suponga que el programa es cargado en una sección que comienza en la dirección 100. El programa hará referencias a las direcciones 50,52,54. Pero el contenido de esas direcciones no es el deseado, sino las direcciones 150, 152 y 154, ya que ahí comienza el programa. La suma de 100 + 50 + etcétera se hacen al tiempo de ejecución. La primera solución vale más la pena que la segunda si el programa contiene ciclos y es largo, ya que consumirá menos tiempo en la resolución inicial que la segunda solución en las resoluciones en línea.

El problema de la protección

Este problema se refiere a que, una vez que un programa ha sido cargado a memoria en algún segmento en particular, nada le impide al programador que intente direccionar (por error o deliberadamente) localidades de memoria menores que el límite inferior de su programa o superiores a la dirección mayor; es decir, quiere referenciar localidades fuera de su espacio de direcciones. Obviamente, este es un problema de protección, ya que no es legal leer o escribir en áreas de otros programas.

La solución a este problema también puede ser el uso de un registro base y un registro límite. El registro base contiene la dirección del comienzo de la sección que contiene al programa, mientras que el límite contiene la dirección donde termina. Cada vez que el programa hace una referencia a memoria sé checa si cae en el rango de los registros y si es así se envía un mensaje de error y se aborta el programa.

Particiones fijas o particiones variables

En el esquema de la multiprogramación en memoria real se manejan dos alternativas para asignarle a cada programa su partición correspondiente: particiones de tamaño fijo o particiones de tamaño variable. La alternativa más simple son las particiones fijas. Dichas particiones se crean cuando se enciende el equipo y permanecerán con los tamaños iniciales hasta que el equipo se apague. Es una alternativa muy vieja, quien hacía la división de particiones era el operador analizando los tamaños estimados de los trabajos de todo el día. Por ejemplo, si el sistema tenía 512 kilobytes de RAM, podía asignar 64 k para el sistema operativo, una partición más de 64 k, otra de 128k y una mayor de 256 k. Esto era muy simple, pero inflexible, ya que si surgían trabajos urgentes, por ejemplo, de 400k, tenían que esperar a otro día o reparticionar, inicializando el equipo desde cero. La otra alternativa, que surgió después y como necesidad de mejorar la alternativa anterior, era crear particiones contiguas de tamaño variable. Para esto, el sistema tenía que mantener ya una estructura de datos suficiente para saber en dónde habían huecos disponibles de RAM y de dónde a dónde había particiones ocupadas por programas en ejecución. Así, cuando un programa requería ser cargado a RAM, el sistema analizaba los huecos para saber si había alguno de tamaño suficiente para el programa que quería entrar, si era así, le asignaba el espacio. Si no, intentaba relocalizar los programas existentes con el propósito de hacer contiguo todo el espacio ocupado, así como todo el espacio libre y así obtener un hueco de tamaño suficiente. Si aún así el programa no cabía, entonces lo bloqueaba y tomaba otro. El proceso con el cual se juntan los huecos o los espacios ocupados se le llama `compactación’. El lector se habrá dado cuenta ya de que surgen varios problemas con los esquemas de particiones fijas y particiones variables: ¿En base a qué criterio se elige el mejor tamaño de partición para un programa? Por ejemplo, si el sistema tiene dos huecos, uno de 18k y otro de 24 k para un proceso que desea 20 k, ¿Cual se le asigna? Existen varios algoritmos para darle respuesta a la pregunta anterior, los cuales se enumeran y describen enseguida.

o Primer Ajuste: Se asigna el primer hueco que sea mayor al tamaño deseado.

o Mejor Ajuste: Se asigna el hueco cuyo tamaño exceda en la menor cantidad al tamaño deseado. Requiere de una búsqueda exhaustiva.

o Peor Ajuste: Se asigna el hueco cuyo tamaño exceda en la mayor cantidad al tamaño deseado. Requiere también de una búsqueda exhaustiva.

o El Siguiente Ajuste: Es igual que el `primer ajuste’ con la diferencia que se deja un apuntador al lugar en donde se asignó el último hueco para realizar la siguiente búsqueda a partir de él.

o Ajuste Rápido: Se mantienen listas ligadas separadas de acuerdo a los tamaños de los huecos, para así buscarle a los procesos un hueco más rápido en la cola correspondiente.

Otro problema que se vislumbra desde aquí es que, una vez asignado un hueco, por ejemplo, con «el peor ajuste», puede ser que el proceso requiriera 12 kilobytes y que el hueco asignado fuera de 64 kilobytes, por lo cual el proceso va a desperdiciar una gran cantidad de memoria dentro de su partición, a lo cual se le llama `fragmentación interna’.

Por otro lado, conforme el sistema va avanzando en el día, finalizando procesos y comenzando otros, la memoria se va configurando como una secuencia contigua de huecos y de lugares asignados, provocando que existan huecos, por ejemplo, de 12 k, 28k y 30 k, que sumados dan 70k, pero que si en ese momento llega un proceso pidiéndolos, no se le pueden asignar ya que no son localidades contiguas de memoria (a menos que se realice la compactación). Al hecho de que aparezcan huecos no contiguos de memoria se le llama `fragmentación externa’.

De cualquier manera, la multiprogramación fue un avance significativo para el mejor aprovechamiento de la unidad central de procesamiento y de la memoria misma, así como dio pie para que surgieran los problemas de asignación de memoria, protección y relocalización, entre otros.

Los overlays

Una vez que surgió la multiprogramación, los usuarios comenzaron a explorar la forma de ejecutar grandes cantidades de código en áreas de memoria muy pequeñas, auxiliados por algunas llamadas al sistema operativo. Es así como nacen los `overlays’.

Esta técnica consiste en que el programador divide lógicamente un programa muy grande en secciones que puedan almacenarse en las particiones de RAM. Al final de cada sección del programa (o en otros lugares necesarios) el programador insertaba una o varias llamadas al sistema con el fin de descargar la sección presente de RAM y cargar otra, que en ese momento residía en disco duro u otro medio de almacenamiento secundario. Aunque esta técnica era eficaz (porque resolvía el problema) no era eficiente (ya que no lo resolvía de la mejor manera). Esta solución requería que el programador tuviera un conocimiento muy profundo del equipo de cómputo y de las llamadas al sistema operativo. Otra desventaja era la portabilidad de un sistema a otro: las llamadas cambiaban, los tamaños de particiones también. Resumiendo, con esta técnica se podían ejecutar programas más grandes que las particiones de RAM, donde la división del código corría a cuenta del programador y el control a cuenta del sistema operativo.

Multiprogramación en memoria virtual

La necesidad cada vez más imperiosa de ejecutar programas grandes y el crecimiento en poder de las unidades centrales de procesamiento empujaron a los diseñadores de los sistemas operativos a implantar un mecanismo para ejecutar automáticamente programas más grandes que la memoria real disponible, esto es, de ofrecer «memoria virtual».

La memoria virtual se llama así porque el programador ve una cantidad de memoria mucho mayor que la real, y en realidad se trata de la suma de la memoria de almacenamiento primario y una cantidad determinada de almacenamiento secundario. El sistema operativo, en su módulo de manejo de memoria, se encarga de intercambiar programas enteros, segmentos o páginas entre la memoria real y el medio de almacenamiento secundario. Si lo que se intercambia son procesos enteros, se habla entonces de multiprogramación en memoria real, pero si lo que se intercambian son segmentos o páginas, se puede hablar de multiprogramación con memoria virtual.

La memoria virtual se apoya en varias técnicas interesantes para lograr su objetivo. Una de las teorías más fuertes es la del «conjunto de trabajo», la cual se refiere a que un programa o proceso no está usando todo su espacio de direcciones en todo momento, sino que existen un conjunto de localidades activas que conforman el «conjunto de trabajo». Si se logra que las páginas o segmentos que contienen al conjunto de trabajo estén siempre en RAM, entonces el programa se desempeñará muy bien.

Otro factor importante es si los programas exhiben un fenómeno llamado «localidad», lo cual quiere decir que algunos programas tienden a usar mucho las instrucciones que están cercanas a la localidad de la instrucción que se está ejecutando actualmente.

Paginación pura

La paginación pura en el manejo de memoria consiste en que el sistema operativo divide dinámicamente los programas en unidades de tamaño fijo (generalmente múltiplos de 1 kilobyte) los cuales va a manipular de RAM a disco y viceversa. Al proceso de intercambiar páginas, segmentos o programas completos entre RAM y disco se le conoce como «intercambio» o «swapping». En la paginación, se debe cuidar el tamaño de las páginas, ya que si éstas son muy pequeñas el control por parte del sistema operativo para saber cuáles están en RAM y cuales en disco, sus direcciones reales, etc.; crece y provoca mucha «sobrecarga» (overhead). Por otro lado, si las páginas son muy grandes, el overhead disminuye pero entonces puede ocurrir que se desperdicie memoria en procesos pequeños. Debe haber un equilibrio.

Uno de los aspectos más importantes de la paginación, así como de cualquier esquema de memoria virtual, es la forma de traducir una dirección virtual a dirección real. Para explicarlo, obsérvese la figura 4.3.

Como se observa, una dirección virtual «v» = (b, d) está formada por un número de página virtual «b» y un desplazamiento «d». Por ejemplo, si el sistema ofrece un espacio de direcciones virtuales de 64 kilobytes, con páginas de 4 kilobytes y la RAM sólo es de 32 kilobytes, entonces tenemos 16 páginas virtuales y 8 reales. La tabla de direcciones virtuales contiene 16 entradas, una por cada página virtual. En cada entrada, o registro de la tabla de direcciones virtuales se almacenan varios datos: si la página está en disco o en memoria, quién es el dueño de la página, si la página ha sido modificada o es de lectura nada mas, etc. Pero el dato que nos interesa ahora es el número de página real que le corresponde a la página virtual. Obviamente, de las 16 virtuales, sólo ocho tendrán un valor de control que dice que la página está cargada en RAM, así como la dirección real de la página, denotada en la figura 4.3 como b». Por ejemplo, supóngase que para la página virtual número 14 la tabla dice que, efectivamente está cargada y es la página real 2 (dirección de memoria 8192). Una vez encontrada la página real, se le suma el desplazamiento, que es la dirección que deseamos dentro de la página buscada (b’ + d).

 

Cuando se está buscando una página cualquiera y ésta no está cargada, surge lo que se llama un «fallo de página» (page fault). Esto es caro para el manejador de memoria, ya que tiene que realizar una serie de pasos extra para poder resolver la dirección deseada y darle su contenido a quien lo pide. Primero, se detecta que la página no está presente y entonces se busca en la tabla la dirección de esta página en disco. Una vez localizada en disco se intenta cargar en alguna página libre de RAM. Si no hay páginas libres se tiene que escoger alguna para enviarla hacia el disco. Una vez escogida y enviada a disco, se marca su valor de control en la tabla de direcciones virtuales para indicar que ya no está en RAM, mientras que la página deseada se carga en RAM y se marca su valor para indicar que ahora ya está en RAM. Todo este procedimiento es caro, ya que se sabe que los accesos a disco duro son del orden de decenas de veces más lentos que en RAM. En el ejemplo anterior se mencionó que cuando se necesita descargar una página de RAM hacia disco se debe de hacer una elección. Para realizar esta elección existen varios algoritmos, los cuales se describen enseguida.

• La primera en entrar, primera en salir: Se escoge la página que haya entrado primero y esté cargada en RAM. Se necesita que en los valores de control se guarde un dato de tiempo. No es eficiente porque no aprovecha ninguna característica de ningún sistema. Es justa e imparcial.

• La no usada recientemente: Se escoge la página que no haya sido usada (referenciada) en el ciclo anterior. Pretende aprovechar el hecho de la localidad en el conjunto de trabajo.

• La usada menos recientemente: Es parecida a la anterior, pero escoge la página que se usó hace más tiempo, pretendiendo que como ya tiene mucho sin usarse es muy probable que siga sin usarse en los próximos ciclos. Necesita de una búsqueda exhaustiva.

• La no usada frecuentemente: Este algoritmo toma en cuenta no tanto el tiempo, sino el número de referencias. En este caso cualquier página que se use muy poco, menos veces que alguna otra.

• La menos frecuentemente usada: Es parecida a la anterior, pero aquí se busca en forma exhaustiva aquella página que se ha usado menos que todas las demás.

• En forma aleatoria: Elige cualquier página sin aprovechar nada. Es justa e imparcial, pero ineficiente.

Otro dato interesante de la paginación es que ya no se requiere que los programas estén ubicados en zonas de memoria adyacente, ya que las páginas pueden estar ubicadas en cualquier lugar de la memoria RAM.

Procesos

23 Nov

Conceptos

23 Nov

La interfaz entre el sistema operativo y los programas del usuario se define como el conjunto de «instrucciones ampliadas» que proporciona el sistema operativo. Estas instrucciones ampliadas se conocen como llamadas al sistema. Estas crean, eliminan y utilizan varios objetos del software, controlados por el sistema operativo.

Los más importantes son los procesos y archivos.

Un poco de Historia…

23 Nov

Las computadoras de 1960, no poseían programas que ayudaran a gestionar su funcionamiento. A esta organización se le llamó Sistema Monolítico y facilitaran el trabajo a los usuarios. De hecho, tampoco existían lenguajes de alto nivel que permitieran al programador sortear las limitaciones de la computadora a la que programaba. Si el usuario quería leer un archivo, debía escribir el mismo las rutinas para poner en marcha el motor de la unidad de cintas, buscar la información, comprobar que no existían errores. Además, todo ello debía realizarse en el código binario del procesador con el que estuviera trabajando.

Conforme se mejoraban los circuitos electrónicos, se fueron añadiendo facilidades vía grupos de programas que permitían organizar la ejecución de los procesos, así como el almacenamiento de los datos. De esta manera nacieron los Sistemas de Procesamiento por Lotes [Batch]. Los archivos BAT del MS-DOS son herederos directos de esta tecnología.

A finales de los años 60, dentro del mundo universitario en Estados Unidos de América se diseño el primer Sistema Operativo moderno: Multics. Este sistema permitía un uso racional de los recursos de la computadora, automatizando el sistema de archivos, la gestión de procesos y permitiendo el trabajo de «múltiples» usuarios en una misma máquina.

Posteriormente se crearon otros Sistemas Operativos, pero el más importante fue UNIX. Este, era descendiente directo de Multics, y fue implementado por primera vez para una computadora PDP-7 en 1969. Una característica que los distinguió desde el principio es que no depende de la máquina en la que funciona. Sólo una pequeñísima parte de su código está en ensamblador, y el resto en lenguaje C, por lo que se extendió muy rápidamente a distintas máquinas. Actualmente domina el mercado de Minis y Super Computadoras.

Estos Sistemas Operativos, que funcionaban en las antiguas y costosísimas computadoras, debían permitir el uso de varias personas simultáneamente para aprovechar al máximo el rendimiento de la máquina. Se establecía una estructura en la que la computadora era el centro y, alrededor suyo, se establecían múltiples terminales sin capacidad de proceso. A estos Sistemas Operativos se les llamó de Tiempo Compartido.

Posteriormente, con el abaratamiento de los circuitos electrónicos, se comenzaron a fabricar Micro Computadoras para uso personal. En 1980, IBM lanzó su popularísima PC que incorporaba la primera versión del MS-DOS.

Con la aparición de computadoras personales, se crearon los Sistemas Operativos monousuario. MS-DOS es un claro exponente, ya que sólo puede trabajar un usuario a la vez. Por ello, este sistema no es más que una simplificación de los anteriores.

Al desarrollarse las comunicaciones y fabricarse redes de computadoras, se tuvo que diseñar otro tipo de Sistema Operativo para gestionar la red. Ahora, debido a los avances en velocidad y calidad de transmisión de las telecomunicaciones, el establecimiento de redes de computadoras privadas, las computadoras multiproceso y al inmenso parque mundial de computadoras, se está diseñando una nueva arquitectura de Sistema Operativo. En ella, el mismo Sistema Operativo se encuentra distribuido por diversas máquinas para aprovechar al máximo los recursos globales del sistema.

¿Cansado de los Windows y Linux de siempre?

23 Nov

Si la respuesta es afirmativa, prepárate a sumergirte en el mundo diferente los sistemas operativos online, también llamados WebOS y que se separan radicalmente del concepto tradicional de sistema operativo. Los límites entre un verdadero sistema operativo y el conjunto de aplicaciones que representan una plataforma WebOS se mantienen difusos, según el diseño del que se hable en un momento determinado, pero en general, vamos a tratar a todos como si representaran un modelo genuino de soporte de software vital para lograr la comunicación eficaz entre la máquina y el usuario.

El futuro viene marcado por la frase «en la nube»

La característica principal estos sistemas radica en que la plataforma interactúa con el usuario a través del navegador Web y no depende del sistema operativo. Su objetivo clave se dirige a conseguir un funcionamiento basado en “la nube”, es decir, en relacionarse con el exterior mediante la interfaz del navegador y donde todo se realiza de forma remota a través de la conexión a Internet. El poder de procesamiento es ejercido por el servidor del otro lado y el usuario sólo recibe los resultados en su terminal.

El potencial de este tipo de sistemas puede llegara ser enorme, tanto en compatibilidad como en potencia de cálculo. Sucede que actualmente se encuentran en fase de desarrollo y no hay acuerdo en la dirección que deben tomar estos sistemas operativos. Cada equipo trata de imponer su filosofía y los diseños se diversifican sin encontrar un conjunto pionero que logre avanzar en la dirección más eficiente. Vamos a comprobar la cantidad de opciones que existen y su representatividad en el mundo digital.

Comparación de Sistemas Operativos

23 Nov

A continuación se compara la información general, técnica y el ambiente gráfico de algunos sistemas operativos.

Sistema operativo Windows 7 Windows Vista Windows XP Windows 2000 Mac OS X Mac OS Debian GNU/Linux Fedora (Linux) SUSE Linux Mandriva Linux FreeBSD OpenBSD Solaris Plan 9
Creador Microsoft Microsoft Microsoft Microsoft Apple Apple Proyecto Debian Proyecto Fedora SuSE Mandriva (empresa) Universidad de California Theo de Raadt Sun Bell Labs
Año de primera distribución 2009 2007 2001 2000 2001 1984 1993 2003 1994 1998 1993 1996 1989 1993
Aspectos generales
Última versión estable 6.1 build 7600 6.0 build 6000 Service Pack 2 5.1 build 2600 con Service Pack 3 5.0 con Service Pack 4 Mac OS X v10.6 («Snow Leopard») 9.2 5.0 Lenny 11 11.1 2010.0 Adelie 7 4.0 10 Fourth Edition
Costo U$S 199.99 (Home Premium) 299.99 (Professional) 319.99 (Ultimate) U$S 90 (Home Basic) 179 (Home Premium) 229 (Business) 349 (Ultimate) 143,526€ $2 152.89 MX (Home)
217,593€ $3 263.895 MX(Pro)
? 29€ o preinstalado Gratuito hasta 7.5.5, 9.2 cuesta 15,60€ para dueños de Mac OS X Gratuito Gratuito Gratuito Gratuito Gratuito Gratuito Gratuito Gratuito
Licencia No Libre No Libre No Libre No Libre No Libre
Parcialmente software libre
No Libre Libre: GPL Libre: GPL Libre: GPL Libre: GPL Libre: BSD Libre: BSD No Libre
Semilibre: CDDL
Libre: LPL
Tipo de usuario Hogar, negocios y redes Hogar, negocios y redes Hogar, negocios y redes Negocios Hogar, diseño, negocios, servidores y redes Hogar, diseño, negocios Hogar, ciencia, servidores, redes, negocios Hogar, ciencia, servidores Hogar, ciencia, servidores Hogar, ciencia, servidores, redes, negocios, empresas, Estaciones de trabajo , escritorio Servidores Servidores Servidores, negocios Estaciones de trabajo, servidores, embebido HPC
Aspectos técnicos
Tipo de núcleo Híbrido Híbrido Híbrido Híbrido Mach (Micronúcleo) Ninguno/Micronúcleo Monolítico Monolítico Monolítico Monolítico Monolítico Monolítico Monolítico Monolítico
Arquitecturas de procesador soportadas Intel x86, Intel x86 64, Intel IA64 Intel x86, Intel x86 64, Intel IA64 Intel x86, Intel x86 64, Intel IA64 Intel x86 Intel x86 64, PowerPC PowerPC Intel x86, Intel IA64, AMD64, DEC Alpha, ARM, HP PA-RISC, MIPS (big endian), MIPS (little endian), PowerPC, IMB S/390, Sparc Intel x86, AMD64, PowerPC Intel x86, AMD64, PowerPC Intel x86, AMD64, PowerPC Intel x86, AMD64, DEC Alpha, ARMISH, HP300, HP PA, Landisk, Luna-88k, Mac68k, PowerPC, Motorola VME 68k, Motorola VME 88k, SGI, Sparc, UltraSparc, VAX, Zaurus Intel x86, AMD64, Sparc, UltraSparc, PowerPC (sólo en versión 2.5.1), Sun4d, Sun4m Intel IA32, PowerPC, ARM, DEC Alpha, MIPS, Sparc, Motorola 68000
Sistema de archivos por defecto NTFS NTFS NTFS NTFS/FAT32 HFS+/UFS HFS/HFS+ ext3 ext4 ReiserFS ext4 Berkeley FFS Berkeley FFS UFS/ZFS fossil/venti, 9P2000, kfs, ext2, FAT, ISO 9660
Soporte de sistemas de archivo de 16 bits No No No ? ? ? ? ?
Soporte de sistemas de archivo de 32 bits
Soporte de sistemas de archivo de 64 bits Si Si Si No No ? ? ?
Herramienta de actualización por defecto Windows Update Windows Update Windows Update Windows Update Software Update Software Update apt yum YaST urpmi y RPMDrake Fuentes Fuentes pkgadd replica/pull
Aspectos gráficos
Entorno gráfico Basado en el núcleo Basado en el núcleo Basado en el núcleo Basado en el núcleo Basado en el núcleo (Quartz) Basado en el núcleo Aplicación: X Window System Aplicación: X Window System Aplicación: X Window System Aplicación: X Window System Aplicación: X Window System Aplicación: X Window System Aplicación: X Window System Aplicación: rio
Sistema de ventanas por defecto Standard Windows Standard Windows Standard Windows Standard Windows OS X Finder Macintosh Finder GNOME GNOME KDE KDE y GNOME ? N/A CDE o GNOME rio
Estilo de Interfaz gráfica de usuario Aero Aero Estilo Luna Estilo clásico interfaz Aqua Platinum Metacity Metacity con tema ClearLooks kwin con tema plastik Metacity con tema La ora ? fvwm dtwm con CDE, Metacity con GNOME rio

Nuevo sistema operativo iOS 4.2 ‎

23 Nov

Apple lanzó su nuevo sistema operativo que implementa la función AirPrint . Además, otra de  sus características es que dará capacidades multitarea a la famosa iPad. Te decimos todas sus novedades.

Uno de los famosos inconvenientes del iPad, es que no pueden realizar varias actividades simultáneas. Esta versión de software soluciona el problema permitiendo que el usuario pueda saltar de una tarea a otra sin problema. Cabe destacar que la mayoría de tabletas tenían esta característica con anterioridad.

Otra de las novedades importantes de esta actualización es el Game Center que permite a los usuarios del iPad, iPhone e iPod touch desafiar y jugar con amigos o enlazar automáticamente con nuevos contrincantes.


AirPlay es una nueva capacidad para transmitir o hacer stream de música, video y fotos, de manera inalámbrica, desde el iPad, iPhone e iPod touch hacia el Apple TV, transformado así el Apple TV en un magnífico accesorio para el iPad, iPhone e iPod touch. Por su parte, AirPrint es una arquitectura de impresión vía Wi-Fi de próxima generación que simplifica extraordinariamente las tareas de impresión, eliminando por completo los drivers de impresora. Entre las primeras impresoras con capacidad AirPrint, listas para soportar la impresión directa desde dispositivos con iOS, se encuentran las HP Photosmart, HP LaserJet Pro y HP Officejet.

La actualización iOS 4.2 está disponible desde hoy para descargar en el iPad, iPhone e iPod touch sincronizando el dispositivo con iTunes 10.1. iOS 4.2 es compatible con iPad, iPhone 3G, iPhone 3GS, iPhone 4, con la segunda y tercera generación del iPod touch (modelos de finales de 2009 con 32GB o 64GB) y con el nuevo iPod touch.

Windows cumple 25 años

23 Nov


Fue el 20 de noviembre de 1985 cuando Microsoft lanzó la primera versión de su sistema operativo Windows. Para muchos, esta fecha supone todo un hito en la historia de la Informática, pues marcó la forma de vender computadoras y también de cosechar enemigos. Al día de hoy, Windows está presente en 92.5% de todas las computadoras del mundo.

El primero en llegar fue Windows 1.0, al que le siguió Windows/286 y, después en 1987, el Windows/386, que ofrecía opciones multitarea, interacción con varias aplicaciones, memoria extendida y mejores gráficos. Para algunos usuarios, fue cuando empezó la desilusión: Windows propuso DriveSpace, una aplicación de compresión de archivos, que acababa consumiendo tanta memoria como prometía ahorrar, poniendo las cosas muy difíciles a quienes deseaban abrir simultáneamente más de dos programas.

En los años 90, llegó Windows 3.0, que logró vender 10 millones de copias. Después llegaron Windows 95 y 98, que figuran ya como auténticos clásicos en el mundo de la informática.

A pesar del éxito de estas dos versions, en el año 2000 Microsoft lanzó Windows Millenium Edition, al que ya se le considera como uno de los peores sistemas operativos de la historia de la compañía. Presentaba problemas en la instalación, el procesamiento y la desinstalación.

Pero en el 2001, Microsoft vuelve a coronarse con el que sigue siendo su producto más vendido y utilizado: Windows XP, un sistema que todavía se mantiene en el 58% de las PC de todo el mundo.

Después llegó Windows Vista, que volvió a decepcionar a muchos por su inestabilidad y sus múltiples e incomprensibles requerimientos técnicos. Aún así, vendió más de 100 millones de copias durante el primer año.

Y la más reciente, el Windows 7, que ha logrado alentar a muchos a seguir fiel a la marca, gracias a que compuso muchas de las fallas de los sistemas anteriores y logró crear una excelente comunicación con internet.

En todos estos años, como es de suponerse, figuran demandas por monopolio, querellas con Apple y la llegada de muchos jugadores nuevos que siguen intentando quitarle a Windows la mayor parte del mercado de sistemas operatives que aún tiene.

Tipos de Sistemas Operativos

23 Nov

Un sistema Operativo (SO) es en sí mismo un programa de computadora. Sin embargo, es un programa muy especial, quizá el más complejo e importante en una computadora. El SO despierta a la computadora y hace que reconozca a la CPU, la memoria, el tecla do, el sistema de vídeo y las unidades de disco.

Además, proporciona la facilidad para que los usuarios se comuniquen con la computadora y sirve de plataforma a partir de la cual se corran programas de aplicación.

Los sistemas operativos más conocidos son los siguientes:

1) DOS: El famoso DOS, que quiere decir Disk Operating System (sistema operativo de disco), es más conocido por los nombres de PC-DOS y MS-DOS. MS-DOS fue hecho por la compañía de software Microsoft y es en esencia el mismo SO que el PC-DOS.

La razón de su continua popularidad se debe al aplastante volumen de software disponible y a la base instalada de computadoras con procesador Intel.

Cuando Intel liberó el 80286, DOS se hizo tan popular y firme en el mercado que DOS y las aplicaciones DOS representaron la mayoría del mercado de software para PC. En aquel tiempo, la compatibilidad IBM, fue una necesidad para que los productos tuvieran éxito, y la «compatibilidad IBM» significaba computadoras que corrieran DOS tan bien como las computadoras IBM lo hacían.

Aún con los nuevos sistemas operativos que han salido al mercado, todavía el DOS es un sólido contendiente en la guerra de los SO.

2) Windows 3.1: Microsoft tomo una decisión, hacer un sistema operativo que tuviera una interfaz gráfica amigable para el usuario, y como resultado obtuvo Windows. Este sistema muestra íconos en la pantalla que representan diferentes archivos o programas, a los cuales se puede accesar al darles doble click con el puntero del mouse. Todas las aplicaciones elaboradas para Windows se parecen, por lo que es muy fácil aprender a usar nuevo software una vez aprendido las bases.

3) Windows 95: En 1995, Microsoft introdujo una nueva y mejorada versión del Windows 3.1. Las mejoras de este SO incluyen soporte multitareas y arquitectura de 32 bits, permitiendo así correr mejores aplicaciónes para mejorar la eficacia del trabajo.

4) Windows NT: Esta versión de Windows se especializa en las redes y servidores. Con este SO se puede interactuar de forma eficaz entre dos o más computadoras.

5) OS/2: Este SO fue hecho por IBM. Tiene soporte de 32 bits y su interfaz es muy buena. El problema que presenta este sistema operativo es que no se le ha dad el apoyo que se merece en cuanto a aplicaciones se refiere. Es decir, no se han creado muchas aplicaciones que aprovechen las características de el SO, ya que la mayoría del mercado de software ha sido monopolizado por Windows.

6) Mac OS: Las computadoras Macintosh no serían tan populares como lo son si no tuvieran el Mac OS como sistema operativo de planta. Este sistema operativo es tan amigable para el usuario que cualquier persona puede aprender a usarlo en muy poco tiempo. Por otro lado, es muy bueno para organizar archivos y usarlos de manera eficaz. Este fue creado por Apple Computer, Inc.

7) UNIX: El sistema operativo UNIX fue creado por los laboratorios Bell de AT&T en 1969 y es ahora usado como una de las bases para la supercarretera de la información. Unix es un SO multiusuario y multitarea, que corre en diferentes computadoras, desde supercomputadoras, Mainframes, Minicomputadoras, computadoras personales y estaciones de trabajo. Esto quiere decir que muchos usuarios puede estar usando una misma computadora por medio de terminales o usar muchas de ellas.

BIBLIOGRAFIA

Computer Concepts, June Jamrich Parsosns, Brief Edition, ITP.

Página en Internet: http://itesocci.gdl.iteso.mx/%7Eia27563/index.html