Que es un Sistema Operativo?

Un sistema operativo es un conjunto de programas especialmente hechos para la ejecución de varias tareas, en las que sirve de intermediario...

Administracion de Memoria

Se le llama administración de memoria a los diversos métodos y operaciones destinados a obtener la máxima utilidad y provecho de una mem...

Tipos de Memoria RAM

La memoria RAM es la memoria de almacenamiento temporal que almacena los programas y los datos que están siendo procesados, solamente durante el procesamiento. Es una memoria volátil...

Requerimientos Minimos de los Sistemas Operativos Actuales

Requierimientos de hardware para la instalacion de los sistemas operativos en nuestro equipo de computo...

21 octubre, 2014

Operaciones de Entrada /salida

En computación, entrada/salida, también abreviado E/S o I/O (del original en inglés input/output), es la colección de interfaces que usan las distintas unidades funcionales (subsistemas) de un sistema de procesamiento de información para comunicarse unas con otras, o las señales (información) enviadas a través de esas interfaces.

 Las entradas son las señales recibidas por la unidad, mientras que las salidas son las señales enviadas por ésta. El término puede ser usado para describir una acción; "realizar una entrada/salida" se refiere a ejecutar una operación de entrada o de salida.

Los dispositivos de E/S los usa una persona u otro sistema para comunicarse con una computadora. De hecho, a los teclados y ratones se los considera dispositivos de entrada de una computadora, mientras que los monitores e impresoras son vistos como dispositivos de salida de una computadora.



Los dispositivos típicos para la comunicación entre computadoras realizan las dos operaciones, tanto entrada como salida, y entre otros se encuentran los módems y tarjetas de red.

Esta última función es necesaria debido a la deferencia de velocidades entre los dispositivos y la CPU y a la independencia que debe existir entre los periféricos y la CPU (por ejemplo, suelen tener relojes diferentes).

Se define una transferencia elemental de información como la transmisión de una sola unidad de información (normalmente un byte) entre el procesador y el periférico o viceversa. Para efectuar una transferencia elemental de información son precisas las siguientes funciones:


  • Establecimiento de una comunicación física entre el procesador y el periférico para la transmisión de la unidad de información.
  • Control de los periféricos, en que se incluyen operaciones como prueba y modificación del estado del periférico.



Para realizar estas funciones la CPU gestionará las líneas de control necesarias.


  1. Definiremos una operación de E/S como el conjunto de acciones necesarias para la transferencia de un conjunto de datos (es decir, una transferencia completa de datos). Para la realización de una operación de E/S se deben efectuar las siguientes funciones:
  2. Recuento de las unidades de información transferidas (normalmente bytes) para reconocer el fin de operación.

Estructuras de Datos para Manejo de Dispositivos

Los procesos de usuario emiten peticiones de entrada/salida al sistema operativo. Cuando un proceso solicita una operación de E/S, el sistema operativo prepara dicha operación y bloquea al proceso hasta que se recibe una interrupción del controlador del dispositivo indicando que la operación está completa. Las peticiones se procesan de forma estructurada en las siguientes capas:

  • Manejadores de interrupción.
  • Manejadores de dispositivos o drivers.
  • Software de EIS independiente de los dispositivos. Este software está formado por la parte de alto nivel de los manejadores, el gestor de cache, el gestor de bloques y el servidor de archivos.
  • Interfaz del sistema operativo. Llamadas al sistema que usan las aplicaciones de usuario.


El sistema operativo estructura el software de gestión de E/S de esta forma para ofrecer a los usuarios una serie de servicios de E/S independientes de los dispositivos. Esta independencia implica que deben emplearse los mismos servicios y operaciones de E/S para leer datos de un disquete, de un disco duro, de un CD-ROM o de un teclado.


Manejadores de interrupción


Los manejadores de interrupción se encargan de tratar las interrupciones que generan los controla dores de dispositivos una vez que éstos están listos para la transferencia de datos o bien han leído o escrito los datos de memoria principal en caso de acceso directo a memoria. Para tratar dicha interrupción se ejecuta el correspondiente manejador de interrupción cuyo efecto es el de salvar los registros, comunicar el evento al manejador del dispositivo y restaurar la ejecución de un proceso (que no tiene por qué ser el interrumpido).

Los manejadores de interrupción suelen hacer algo más que comunicar el evento al manejador de dispositivo. Cuando una interrupción ocurre muy frecuentemente, caso del reloj, o cuando la cantidad de información a transferir es muy pequeña, caso del teclado, sería muy costoso comunicar siempre el evento al manejador de dispositivo asociado. En estos casos, el propio manejador de interrupción registra la ocurrencia del evento, bien mediante el incremento de una variable global para el reloj o la acumulación de caracteres en un buffer del teclado. La notificación al manejador se hace únicamente cada cierto número de ocurrencias del evento, en el caso del reloj, o activando unflag que indica que hay datos en el buffer del teclado.

Una de las funciones principales del sistema de E/S es la planificación de la E/S de los distintos componentes. Para ello se usan colas de peticiones para cada clase de dispositivo, de las que se extraen las peticiones de cada dispositivo en particular. Cada una de estas colas se ordena siguiendo una política de planificación, que puede ser distinta en cada nivel. Imagine el caso de LINUX, donde existe una cola global de peticiones de E/S, ordenadas en orden FIFO, para los discos instalados. Cuando un manejador de disco queda libre, busca la cola global para ver si hay peticiones para él y, si existen, las traslada a su cola de peticiones particular ordenadas según la política SCAN, por ejemplo. Este mecanismo permite optimizar la E/S al conceder a cada mecanismo la importancia que, ajuicio de los diseñadores del sistema operativo, se merece.


Mecanismos y Funciones de los Manejadores de Dispositivos

El controlador es el componente más importante desde el punto de vista del sistema operativo, ya que constituye la interfaz del dispositivo con el bus de la computadora y es el componente que se ve desde la CPU. El Sistema Operativo generalmente trabaja con el controlador y no con el dispositivo.

Los modelos más frecuentes de comunicación entre la cpu y los controladores son la interfaz entre el controlador y el dispositivo es con frecuencia de muy bajo nivel:

El controlador debe:

  • Convertir el flujo de bits en serie en un bloque de bytes.
  • Efectuar cualquier corrección de errores necesaria.


Cada controlador posee registros que utiliza para comunicarse con la cpu:

  • Pueden ser parte del espacio normal de direcciones de la memoria




Un controlador de dispositivo o unidad de E/S se encarga de controlar uno o más dispositivos del mismo tipo y de intercambiar información entre ellos y la memoria principal o unidad central de proceso de la computadora. El controlador debe encargarse además de sincronizar la velocidad del procesador con la del periférico y de detectar los posibles errores que se produzcan en el acceso a los periféricos. En el caso de un controlador de disco, éste debe encargarse de convertir un flujo de bits procedente del disco a un bloque de bytes detectando y corrigiendo, si es posible, los errores que se produzcan en esta transferencia. Una vez obtenido el bloque y comprobado que se encuentra libre de errores, deberá encargarse de transferirlo a memoria principal. La información entre los controladores de dispositivo y la unidad central de proceso o memoria principal se puede transferir mediante un programa que ejecuta continuamente y lee o escribe los datos del controlador.

El Sistema Operativo realiza la E/S al escribir comandos en los registros de los controladores;
Los parámetros de los comandos también se cargan en los registros de los controladores. Al aceptar el comando, la cpu puede dejar al controlador y dedicarse a otro trabajo. Al terminar el comando, el controlador provoca una interrupción para permitir que el Sistema Operativo:
-Obtenga el control de la CPU. -Verifique los resultados de la operación. La cpu obtiene los resultados y el estado del dispositivo al leer uno o más bytes de información de los registros del controlador.

Su programación se lleva a cabo mediante una interfaz de muy bajo nivel que proporciona acceso a una serie de registros del controlador, incluidos en el mapa de E/S de la computadora, que se pueden acceder mediante instrucciones de máquina de E/S.

Dispositivos y Manejadores de Dispositivos

 Se llama manejo de Entrada/Salida a la interfaz que realiza la computadora con los controladores con el objetivo de intercambiar o transmitir datos o señales, el computador para que pueda ejecutar estas acciones necesita hacer uso de registros o secciones que se encuentran definidos internamente en la memoria de la PC. Existe una gran variedad de dispositivos de E/S cada cual destinado a cumplir un objetivo especifico, como por ejemplo, transmitir o recibir datos tal es el caso del teclado, pantalla o impresora, entre muchos otros. Cabe mencionar que cualquiera que sea el dispositivo que se conecte con la computadora siempre estará regido por el S.O, a través de una parte electrónica-mecánica y una parte de software.



 En si cada dispositivo interfazado directamente con el computador debe ser controlado por ciertos programas llamados controladores los cuales tienen como finalidad establecer una comunicación perfecta entre estos dos para permitir el intercambio de información en tiempo real, evitando con ello conflictos internos lo cual provocaría en algún momento dado perdida de información, aunque actualmente algunos dispositivos ya tienen integrados en la misma placa el controlador correspondiente que le permite desempeñar dicha función.

 Todo el código que depende de los dispositivos aparece en los manejadores de dispositivos. Cada controlador posee uno o más registros de dispositivos:


  • Se utilizan para darle los comandos.
  • Los manejadores de dispositivos proveen estos comandos y verifican su ejecución adecuada.


 La labor de un manejador de dispositivos es la de:


  •  Aceptar las solicitudes abstractas que le hace el software independiente del dispositivo.
  •  Verificar la ejecución de dichas solicitudes.
  •  Si al recibir una solicitud el manejador está ocupado con otra solicitud, agregara la nueva solicitud a una cola de solicitudes pendientes.
  •  La solicitud de E/S, por ej. para un disco, se debe traducir de términos abstractos a términos concretos.

12 octubre, 2014

Requerimientos Minimos de Ubuntu 14.04.1 LTS


Requerimientos de Ubuntu 14.04 LTS 64 bits

  • 1 GHz Procesador (Intel Celeron o Mejor)
  • 1.5 GB RAM (Recomendado 2GB o superior)
  • 7 GB de espacio en disco duro libre para la instalación 
  • CD/DVD o puerto USB para el uso de multimedia
  • Acceso a Internet para la ayuda del sistema (para la instalación de actualizaciónes en el proceso).

Menús en la barra de título de las ventanas:


Los menús de las aplicaciones aparecen, por defecto, en el panel superior al pasar el cursor.

Se ha añadido la opción de poder tenerlos en la barra de título de la propia ventana con el mismo comportamiento. En la barra de título se ve el nombre de la aplicación de la ventana y aparecen los menús al pasar el cursor sobre ella.

Las ventanas maximizadas seguirán teniendo el menú en el panel superior.

Está muy bien conseguido y es muy funcional, implementándose muy bien cuando haces clic en la barra de título para mover la ventana.

Esta opción es más que interesante para aquellos que trabajamos con las ventanas desmaximizadas, al no tener que desplazar el cursor hacia el panel superior para abrir los menús.


Para activarla, abrimos "Configuración del sistema > Apariencia" y en la pestaña"Comportamiento", apartado "Mostrar los menús de las ventanas", seleccionamos "En la barra de título de cada ventana".



Pantalla de bloqueo:


Se ha unificado la apariencia y funcionalidad de la pantalla de bloqueo y la de inicio de sesión.

El bloqueo de pantalla se hace desde el "Indicador de Sesión del panel superior > Bloquear" o con la combinación de teclas Súper+L.

La nueva pantalla de bloqueo permite poder utilizar los iconos del panel superior (cambiar el volumen y el idioma del teclado, acceder al calendario y cerrar sesión o cambiar de usuario).

Además el cambio de pantalla es muy suave y rápido.



Ventanas sin bordes:


Las ventanas no tienen bordes, dando así una apariencia más pulida y cuidada, aunque en cuestiones de estética, ya sabemos todos que para gustos, los colores.

La decoración de las ventanas usa ahora CSS en GTK3, en vez de Compiz como en anteriores versiones. Esto hace que se pueda implementar bordes con anti-aliasing (elimina el efecto de "dientes de sierra") y además se obtiene un mejor rendimiento a la hora de mover las ventanas.

Pero como todo no podía ser tan "bonito", hay un contra y es que deja de ser posible cambiar los botones de cerrar, minimizar, ... a la derecha de la barra de título de las ventanas.



Minimizar ventanas desde el Lanzador (Launcher) o barra de lanzadores:


Ya podemos minimizar ventanas desde el lanzador de Unity seleccionando una simple opción de configuración de CompizConfig, sin tener que añadir un repositorio extra y esperar a que su mantenedor lo actualizara cada vez que se actualizaba la versión de Unity, como hacíamos en anteriores versiones de Ubuntu.

El creador del parche,Christopher Townsend, deja bien claro que será una opción sin soporte (unsupported) y no se realizarán actualizaciones, ni retoques: 
«Está bien gente, se que ha pasado mucho tiempo, pero vamos a implementar esto como una opción sin soporte que permitirá minimizar las aplicaciones con una sola ventana abierta al hacer clic en su icono».

Funciona bien, siempre y cuando haya solo una ventana abierta de la misma aplicación, ya que si hay varias, al hacer clic en el icono de la aplicación se verán dichas ventanas escaladas y si volvemos a hacer clic se minimizan ambas y el sistema se hace un lío y al final no sabe qué mostrar.

Para activar esta opción hay que tener instalado el Compizconfig Settings Manager (ccsm):
sudo apt-get install compizconfig-settings-manager
Una vez hecho, lo abrimos desde el Tablero (tecla Súper) escribiendo / buscando"compizconfig settings manager" o simplemente "ccsm", su abreviatura.

Vamos a "Ubuntu Unity plugin" y en la pestaña "Lanzador (Launcher)" activamos la opción"Minimize single window applications"



Tamaño de iconos en el Lanzador (Launcher)


Ya podemos poner el ancho de la barra más pequeño, hasta "16 px", desde "Configuración del sistema > Apariencia".



Volumen a más del 100%


En "Configuración del sistema > Sonido", vemos arriba que la barra de volumen llega solo al 100%. Si activamos la casilla de abajo "Permitir más del 100%", la barra de volumen aumentará considerablemente.

Esto es muy útil para los equipos que tengan altavoces o auriculares de "juguete".



Menús completos en aplicaciones de Gnome:


En aplicaciones de Gnome como Nautilus y Rhythmbox se habían creado unos botones en la propia ventana que daban acceso a los distintos menús.

Esto se ha revertido y han vuelto los menús completos "Archivo, Editar, Ver , ..."



Redimensión de ventanas en tiempo real:


En anteriores versiones al hacer clic y redimensionar las ventanas, aparecía un recuadro naranja simulando el nuevo tamaño y al soltar el clic la ventana se redimensionaba.

Ahora la redimensión es inmediata y a tiempo real.


Mejora de los drivers de nVidia para Linux


En Phoronix se publicaron diferentes informes de rendimiento comparando similares máquinas con Windows 8.1 y Ubuntu 14.04. La mejora de los drivers para Linux (sobretodo por parte de nVidia) han conseguido que el rendimiento de los juegos en Linux se equipare al de Windows 8.1, en algunos casos incluso mejorándolo.

En mi caso, tengo una antigua nVidia 9500 GT y tanto los drivers libres como los privativos han mejorado y noto un mejor rendimiento en ambos.


Pantallas retina:


Otras novedades atañen al soporte de pantallas con una gran densidad de píxeles (las llamadas “retina”).

Fuente: http://www.ubuntu-guia.com/2014/04/novedades-en-ubuntu-1404.html

Requerimientos Minimos para Windows 8



Windows 8.1


Si quieres ejecutar Windows 8.1 en tu PC, esto es lo que necesitas:
  • Procesador: 1 gigahercio (GHz) o más rápido, compatible con PAE, NX y SSE2 (más información)
  • RAM: 1 gigabyte (GB) (32 bits) o 2 GB (64 bits)
  • Espacio en el disco duro: 16 GB (32 bits) o 20 GB (64 bits)
  • Tarjeta gráfica: dispositivo gráfico Microsoft DirectX 9 con controlador WDDM
Si usas Windows 8, puedes obtener una actualización gratuita de Windows 8.1. Solo tienes que pulsar o hacer clic en el icono de la Tienda Windows de la pantalla de inicio. Cuando actualices a Windows 8.1 deberías conseguir la actualización automáticamente. En caso contrario, sigue estos pasos para obtenerla manualmente a través de Windows Update.

Requisitos adicionales para usar algunas características:

  • Para el uso táctil, necesitas una tableta o un monitor que sea compatible con la función Multitáctil (más información)
  • Para acceder a la Tienda Windows y descargar, ejecutar y acoplar apps, necesitas una conexión a Internet activa y una resolución de pantalla de al menos 1024 x 768
  • Para algunas características es necesaria una cuenta Microsoft
  • Acceso a Internet (pueden aplicarse tarifas adicionales del ISP)
  • Para un arranque seguro se requiere firmware compatible con UEFI v2.3.1 Errata B y con la entidad de certificación de Microsoft Windows en la base de datos de firmas UEFI
  • Es posible que algunos juegos y programas requieran tarjetas gráficas compatibles con DirectX 10 o superior para un rendimiento óptimo
  • Para ver DVDs se requiere un software de reproducción independiente (más información)
  • La licencia de Windows Media Center se vende por separado (más información)
  • BitLocker To Go requiere una unidad flash USB (solo para Windows 8.1 Pro)
  • BitLocker requiere el Módulo de plataforma segura (TPM) 1.2 o una unidad flash USB (solo para Windows 8.1 Pro)
  • Client Hyper-V requiere un sistema de 64 bits con servicios de traducción de direcciones de red de segundo nivel (SLAT) y 2 GB de RAM adicionales (solo paraWindows 8.1 Pro)
  • Se requiere un sintonizador de TV para reproducir y grabar programas de televisión en directo en Windows Media Center (solo para Windows 8.1 Pro Pack y Windows 8.1Media Center Pack)
  • Miracast requiere un adaptador de pantalla que sea compatible con el Modelo de controladores de pantalla de Windows (WDDM) 1.3 y un adaptador Wi-Fi que admita Wi-Fi Direct
  • La impresión directa por Wi-Fi requiere un adaptador Wi-Fi que admita Wi-Fi Direct y un dispositivo compatible con la impresión directa por Wi-Fi
  • El contenido gratuito de TV en Internet varía según el área geográfica; algún contenido puede requerir tarifas adicionales (solo para Windows 8.1 Pro Pack y Windows 8.1Media Center Pack)
  • Para instalar un sistema operativo de 64 bits en un equipo de 64 bits, el procesador debe ser compatible con CMPXCHG16b, PrefetchW y LAHF/SAHF
  • InstantGo solo funciona con equipos diseñados para el modo de espera conectado
Si tu equipo funciona actualmente con Windows 7 o Windows 8, puedes comprobar si satisface los requisitos ejecutando el Asistente para actualización. También te recomendamos que visites el sitio web del fabricante de tu equipo para obtener información sobre los controladores actualizados y la compatibilidad de hardware.


Windows 8


Si quieres ejecutar Windows 8 en tu PC, esto es lo que necesitas:
  • Procesador: 1 gigahercio (GHz) o más rápido, compatible con PAE, NX y SSE2 (más información)
  • RAM: 1 gigabyte (GB) (32 bits) o 2 GB (64 bits)
  • Espacio en el disco duro: 16 GB (32 bits) o 20 GB (64 bits)
  • Tarjeta gráfica: dispositivo gráfico Microsoft DirectX 9 con controlador WDDM

Requisitos adicionales para usar algunas características:

  • Para el uso táctil, necesitas una tableta o un monitor que sea compatible con la función Multitáctil (más información)
  • Para acceder a la Tienda Windows y descargar y ejecutar apps, necesitas una conexión a Internet activa y una resolución de pantalla de al menos 1024 x 768
  • Para acoplar apps, necesitas una resolución de pantalla de al menos 1366 x 768
  • Acceso a Internet (pueden aplicarse tarifas adicionales del ISP)
  • Para un arranque seguro se requiere firmware compatible con UEFI v2.3.1 Errata B y con la entidad de certificación de Microsoft Windows en la base de datos de firmas UEFI
  • Es posible que algunos juegos y programas requieran tarjetas gráficas compatibles con DirectX 10 o superior para un rendimiento óptimo
  • Para algunas características es necesaria una cuenta Microsoft
  • Para ver DVDs se requiere un software de reproducción independiente (más información)
  • La licencia de Windows Media Center se vende por separado (más información)
  • BitLocker To Go requiere una unidad flash USB (solo para Windows 8 Pro)
  • BitLocker requiere el Módulo de plataforma segura (TPM) 1.2 o una unidad flash USB (solo para Windows 8 Pro)
  • Client Hyper-V requiere un sistema de 64 bits con servicios de traducción de direcciones de red de segundo nivel (SLAT) y 2 GB de RAM adicionales (solo para Windows 8 Pro)
  • Se requiere un sintonizador de TV para reproducir y grabar programas de televisión en directo en Windows Media Center (solo para Windows 8 Pro Pack y Windows 8 Media Center Pack)
  • El contenido gratuito de TV en Internet varía según el área geográfica; algún contenido puede requerir tarifas adicionales (solo para Windows 8 Pro Pack y Windows 8 Media Center Pack)

Requerimientos Minimos para Windows 7


Requisitos del sistema de Windows 7


Si desea ejecutar Windows 7 en su equipo, necesitará:

  • Procesador de 32 bits (x86) o 64 bits (x64) a 1 gigahercio (GHz) o más.
  • Memoria RAM de 1 gigabyte (GB) (32 bits) o memoria RAM de 2 GB (64 bits).
  • Espacio disponible en disco rígido de 16 GB (32 bits) o 20 GB (64 bits).
  • Dispositivo gráfico DirectX 9 con controlador WDDM 1.0 o superior.


Requisitos adicionales para usar ciertas funciones:


  • Acceso a Internet (puede tener costes adicionales).
  • Según la resolución, la reproducción de vídeo puede requerir memoria adicional y hardware gráfico avanzado.
  • Es posible que algunos juegos y programas requieran tarjetas gráficas compatibles con DirectX 10 o superior para un rendimiento óptimo.
  • Para algunas funcionalidades de Windows Media Center, es posible que necesite un sintonizador de TV y hardware adicional.
  • Windows Touch y Tablet PCs requieren hardware específico.
  • Grupo Hogar requiere una red y equipos que ejecuten Windows 7.
  • Para la creación de DVD/CD se necesita una unidad óptica compatible.
  • BitLocker requiere el Módulo de plataforma segura (TPM) 1.2.
  • BitLocker To Go requiere una unidad flash USB.
  • Windows XP Mode requiere 1 GB adicional de memoria RAM y 15 GB adicionales de espacio disponible en disco duro.
  • Para escuchar música y sonidos se necesita una salida de audio.


La funcionalidad del producto y los gráficos pueden variar en función de la configuración del sistema. Algunas funciones pueden requerir hardware avanzado o adicional.


Equipos con procesadores de varios núcleos:
Windows 7 fue diseñado para trabajar con los procesadores actuales de varios núcleos. Todas las versiones de 32 bits de Windows 7 pueden admitir hasta 32 núcleos de procesadores, mientras que las versiones de 64 bits pueden admitir hasta 256 núcleos de procesadores.

Equipos con varios procesadores (CPU):
servidores comerciales, estaciones de trabajo y otros equipos de última generación pueden tener más de un procesador físico. Windows 7 Professional, Enterprise y Ultimate admiten dos procesadores físicos, lo que permite obtener el mejor rendimiento en estos equipos. Windows 7 Starter, Home Basic y Home Premium reconocerán solamente un procesador físico.