This is default featured slide 1 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.This theme is Bloggerized by Lasantha Bandara - Premiumbloggertemplates.com.

This is default featured slide 2 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.This theme is Bloggerized by Lasantha Bandara - Premiumbloggertemplates.com.

This is default featured slide 3 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.This theme is Bloggerized by Lasantha Bandara - Premiumbloggertemplates.com.

This is default featured slide 4 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.This theme is Bloggerized by Lasantha Bandara - Premiumbloggertemplates.com.

This is default featured slide 5 title

Go to Blogger edit html and find these sentences.Now replace these sentences with your own descriptions.This theme is Bloggerized by Lasantha Bandara - Premiumbloggertemplates.com.

sábado, 2 de mayo de 2015

Investigaciones

Investigación realizada de los sistemas que las empresas están utilizando.

NOMBRE DE EMPRESAS VISITADAS

Cellcomp
 











Súper Repuestos












visión mundial 









instituto nacional de el Transito 












ciber  web@r Corporacion 









EMPRESA CELLCOMP
Windows 8
Utilizan Windows 8 su mayor diferencia con las versiones anteriores de Windows  es que representa cambios en el menú de inicio, en la interacción y  la conectividad. Esta diseñado para funcionar en dispositivos móviles

Software propietario, por que pagaron para uso de la empresa
Las actualizaciones son automáticas
Beneficios que les brinda
·         mas rendimiento
·         es un poco más rápido
 Posibilidades de cambiar o remplazar este sistema operativo, considerablemente no lo harían por costumbre de Microsoft y por su confiablidad que representa para la empresa.

EMPRESA SUPER REPUESTO
 Windows  7
Nosotros usamos  un Windows  S400 de IBM nuestro propio sistema  pero es más un Software  creado para nuestra empresa.
 Las actualizaciones  se realizan desde el departamento  de informática.
Beneficio que obtienen de este sistema, es que  todo está en el inventario
·         compilación
·         envíos entre almacenes,
·         la base de datos
·         de clientes en fin de todo
En lo cual lo seguiríamos manteniendo por seguridad y también que al cambiarlo nos tocaría invertir en capacitaciones para el personal y saldría muy caro entonces no lo cambiaríamos

EMPRESA: VISION MUNDIAL (ONG)
Utilizamos el Windows 8 y se llama SINGLE ECP también  NUESTRA NIÑES donde se registran niños RC y no RC
Software propietario
nuestro sistema se actualiza cada dos meces más que todo  SINGLE ECP porque en este se realizan entradas y salidas de datos entonces la oficina regional se encarga  de estar actualizando periódicamente el sistema , el de NUESTRA NIÑES solo soledad mantenimiento
SINGLE ECP  beneficio que tenemos es:
·         que podemos ingresar el cien por ciento de niños patrocinados

NUESTRA NIÑES el beneficio que nos da es:
· es que podemos sacar información concreta ya que en este va todos los mecanismos de CICB, CAJ, CIC, ETC                                                                                                                                                                                      
posibilidades de cambiarlos solo se consideraría el de NUESTRA NIÑES, SINGLE ESTEP no porque es un alineamiento, estándar que está estipulado dentro de Visión Mundial, es el que se maneja.

EMPRESA: INSTITUTO NACIONAL DEL TRANSITO
Windows 10
Sistema propietario
Las actualizaciones se realizan cada mes
Beneficios
·         mas rápido
·         capacidad de almacenamiento mayor

No se considera cambiarlo por que uno se enfoca en el sistema que ya se tiene, a un que en este tiempo no sería complicado cambiarlo por que se pasa en un disco, solo que tendremos que hacer otra adaptación, pero hasta ahorita estamos un poco avanzados con Windows 10

EMPRESA: CIBER WEB@R CORPORACION
Windows 7, 8 y 8.1
No es un sistema libre
Las actualizaciones no realizan
Beneficios
·         la mayoría de los usuarios los utilizan
·         mayor conocimientos en sus herramientas
·    facilidad

No consideran cambiarlo porque Windows todos lo conocen y tienen mayor facilidad en sus herramientas





SISTEMAS OPERATIVOS IDENTIFICADOS
Software propietario
Windows 7
Windows 8
Windows 8.1
Windows 10

Windows 7:
 Es la versión más reciente de Microsoft Windows, línea de sistemas operativos producida por Microsoft Corporación. Esta versión está diseñada para uso en PC, incluyendo equipos de escritorio en hogares y oficinas, equipos portátiles, Tablet PC, netbooks y equipos media center

  Ventajas:
-El Windows 7 tiene una velocidad de arranque muy mejorada.
-Permite trabajar con varios monitores conectados de una manera muy eficiente.
- Mantiene la compatibilidad con todos los programas que utilizan Windows XP.

Desventajas:
- Su precio, dependiendo de la versión, es bastante elevado.
- No trae soporte o compatibilidad con los drivers y dispositivos actuales.
- Escasa información acerca del mismo.

Windows 8.1:
Gracias a una barra de tareas mejorada a la que se puede acceder desde cualquier pantalla, es posible cambiar fácilmente entre apps modernas y de escritorio.
Pantalla Inicio mejorada
Ahora su escritorio es más fácil de controlar e incluye mejoras en la visibilidad de la app, funciones de mouse y la posibilidad de realizar búsquedas o de apagar el dispositivo de forma inmediata; todo ello desde la pantalla Inicio.
Búsqueda mejorada
El nuevo sistema de búsqueda inteligente de Bing le permite buscar simultáneamente en su equipo, en OneDrive, en la web e incluso en las aplicaciones de la Tienda Windows, por lo que puede encontrar antes lo que busca.
El escritorio que le resulta familiar mejorado
El nuevo Windows le permite arrancar directamente en el escritorio con el que está familiarizado, y que incluye el botón Inicio, para que pueda comenzar a trabajar con los métodos de trabajo habituales

Diferencias de Windows 8 con Windows 7 y otros sistemas anteriores
Windows 8 está enfocado para ser usado en dispositivos portables como teléfonos Smartphone y tabletas, un mercado en el que las versiones anteriores de Windows no eran funcionales.
Estos equipos no poseen ratón ni muchas veces teclados físicos, por lo que se introduce una interface llamada Modern UI, que rompe con todo lo que estábamos acostumbrados desde el primer Windows.

La llegada de Windows 8.1, representa un gran paso adelante en la evolución del nuevo sistema operativo multidispositivo de Microsoft, ya que corrige y, sobre todo, añade muchas capacidades nuevas tanto al entorno de ModernUI como al escritorio.
Ciertamente las diferencias con la versión 8.0 no se puede detallar en un solo artículo y, por ejemplo, la descripción de las capacidades de configuración del nuevo panel de control está dando para una serie de post en XatakaWindows.
Pero si quiero hacer una semblanza de las novedades que más me han llamado la atención, desde el punto de vista del usuario final, en su día a día.


Windows 10 es la versión más reciente del sistema operativo desarrollado por Microsoft. Será el sucesor de Windows 8 y 8.1. El sistema operativo se anuncia sólo dos años después del lanzamiento de Windows 8, en octubre de 2012, una versión que supuso un cambio radical respecto a las anteriores de Windows y que ha tenido durante este tiempo una recepción mixta por parte de los usuarios y las empresas.

Novedades
   Como SO base para distintos dispositivos como PC, desktoptablets, Xbox y Windows Phone.
   Regreso del Menú Inicio, la mitad derecha de este podrá mostrar algunas apps modernas con posibilidad de expandirse para todas las instaladas; además estas apps se mostrarán como ventanas en la interfaz.
   Múltiples escritorios, con animaciones.
   DirectX 12HYPERLINK "http://es.wikipedia.org/wiki/Windows_10" \l "cite_note-5" 5 , que proporcionará mejoras de rendimiento y optimizará el consumo energético.
   Calculadora mejorada con conversión de monedas.






Tareas ex-aula

entre las tareas ex-aula tenemos:

1-La arquitectura de Von Newman
2-Seguridad y puevas de Software

en el cual estas dos tareas se muestras en el menu de Tareas ex-aula

3-Glosario de términos y esquemas de llaves

Casos de estudio resueltos

Guías de Trabajo resueltas

Guia de travajo 1:

1)- Problemas clásicos de comunicación y sincronización
La interacción entre procesos se plantea en una serie de situaciones clásicas de comunicación y Sincronización. Estas situaciones, junto con sus problemas, se describen a continuación para demostrar la necesidad de comunicar y sincronizar procesos.




Problema de Procesos concurrentes
 Modelos
*       Multiprogramación con un único procesador
*       Concurrencia aparentemente simultanea
*       Multiprocesador
*       Se comparte la memoria principal
*       Multicomputador (distribuido)

*       Máquina de memoria distribuida


Razones para la concurrencia:


*       Facilitar la programación (modularidad, comodidad)
*      Uso interactivo a múltiples usuarios trabajando a la vez desde
*      varios terminales
*      uso eficiente de la CPU
*       Acelerar los cálculos
Problema: Sección crítica
Éste es uno de los problemas que con mayor frecuencia aparece cuando se ejecutan procesos concurrentes tanto si son cooperantes como independientes. Considérese un sistema compuesto por n procesos  en el que cada uno tiene un fragmento de código, que se denomina
Sección crítica.
Solución:
Para resolver el problema de la sección crítica es necesario utilizar algún mecanismo de sincronización que permita a los procesos cooperar entre ellos sin problemas. Este mecanismo debe proteger el código de la sección crítica y su funcionamiento básico es el siguiente.

-Cada proceso debe solicitar permiso para entrar en la sección crítica mediante algún fragmento de código, que se denomina de forma genérica entrada en la sección crítica.

-Cuando un proceso sale de la sección crítica debe indicarlo mediante otro fragmento de código, que se denomina salida de la sección crítica. Este fragmento permitirá que otros procesos entren a ejecutar el código de la sección crítica.
Cualquier solución que se utilice para resolver este problema debe cumplir los tres requisitos siguientes:

*      Exclusión mutua: si un proceso está ejecutando código de la sección crítica, ningún otro proceso lo podrá hacer.
*      Progreso: si ningún proceso está ejecutando dentro de la sección crítica, la decisión de qué proceso entra en la sección se hará sobre los procesos que desean entrar. Los procesos que no quieren entrar no pueden formar parte de esta decisión. Además, esta decisión debe realizarse en tiempo finito.
*      Espera acotada: debe haber un límite en el número de veces que se permite que los demás procesos entren a ejecutar código de la sección crítica después de que un proceso haya efectuado una solicitud de entrada y antes de que se conceda la suya.











Ejemplo1:
El SO asigna PID. Acciones:
Lee el ultimo PID
Incrementa el valor

Almacena el nuevo PID

Problema: lectores-escritores

En este problema existe un determinado objeto, que puede ser un archivo, un registro dentro de un archivo, etc., que va a ser utilizado y compartido por una serie de procesos concurrentes. Algunos de estos procesos sólo van a acceder al objeto sin modificarlo, mientras que otros van a acceder al objeto para modificar su contenido. Esta actualización implica leerlo, modificar su contenido y escribirlo. A los primeros procesos se les denomina lectores y a los segundos se les denomina escritores. En este tipo de problemas existe una serie de restricciones que han de seguirse:








-Sólo se permite que un escritor tenga acceso al objeto al mismo tiempo. Mientras el escritor esté accediendo al objeto, ningún otro proceso lector ni escritor podrá acceder a él.


-Se permite, sin embargo, que múltiples lectores tengan acceso al objeto, ya que ellos nunca van a modificar el contenido del mismo.
En este tipo de problemas es necesario disponer de servicios de sincronización que permitan a los procesos lectores y escritores sincronizarse adecuadamente en el acceso al objeto.

Características de este Problema:
*      Algunos procesos acceden sin modificarlo (lectores)
*       Algunos procesos acceden para modificarlo (escritores)
*       Restricciones en estos problemas:
*       1 escritor exclusivamente
*       Múltiples lectores
*       Se requieren servicios de sincronización para que lectores y escritores se sincronicen en el acceso al recurso

Solución:
En esta clase de problemas es necesario disponer de algún mecanismo de comunicación que permita a los procesos productor y consumidor intercambiar información. Ambos procesos, además, deben sincronizar su acceso al mecanismo de comunicación para que la interacción entre ellos no sea problemática: cuando el mecanismo de comunicación se llene, el proceso productor se deberá quedar bloqueado hasta que haya hueco para seguir insertando elementos.
A su vez, el proceso consumidor deberá quedarse bloqueado cuando el mecanismo de comunicación este vacío, ya que en este caso no podrá continuar su ejecución al no disponer de información a consumir. Por tanto, este tipo de problema requiere servicios para que los procesos puedan comunicarse y servicios para

Problema: Comunicación cliente-servidor
En el modelo cliente-servidor, los procesos llamados servidores ofrecen una serie de servicios a otros procesos que se denominan clientes. El proceso servidor puede residir en la misma máquina que el cliente o en una distinta, en cuyo caso la comunicación deberá realizarse a través de una red de interconexión. Muchas aplicaciones y servicios de red, como el correo electrónico y la transferencia de archivos, se basan en este modelo.

Los procesos servidores ofrecen una serie de servicios a otros
Procesos clientes

*       Servidor local
*       Reside en la misma máquina que el cliente
*      Comunicación basada en memoria compartida o archivos
*       Servidor remoto
*       Reside en distinta maquina
*       Comunicación a través de una red de interconexión: paso de
*      Mensajes
Ejemplo:

Problema productor-consumidor

Paradigma de los procesos cooperantes: el proceso productor genera información (bloque de disco, mensaje de red, caracteres de teclado, etc.) que es utilizada por
el proceso consumidor (aplicación o SO)- o a la inversa.

Problema entere Mutex y variables condicionales

Los mutex y las variables condicionales son mecanismos especialmente concebidos para la sincronización de procesos ligeros. Un mutex es el mecanismo de sincronización de procesos ligeros más sencillo y eficiente.

EJEMPLO 1
El siguiente segmento de seudocódigo utiliza un mutex para proteger el acceso a una sección
crítica.
lock(m); /* solicita la entrada en la sección crítica */
< sección crítica >
unlock(m); /* salida de la sección crítica */







EJEMPLO 2
lock(m);
/* Código de la sección crítica */
while (condición == FALSE)
c_wait(c, m);
/* resto de la sección crítica */
unlock(m);


Problema de Interbloqueos

Un interbloqueo supone un bloqueo permanente de un conjunto de procesos que compiten por recursos o bien se comunican o sincronizan entre sí. Los interbloqueos que aparecen cuando se utilizan mecanismos de comunicación y sincronización se deben a un mal uso de los mismos. A continuación se van a presentar ejemplos de mala utilización de mecanismos de comunicación y Sincronización que llevan a los procesos a un estado de interbloqueo.

Ejemplo1:
Considérese en primer lugar una situación en la que se utilizan dos semáforos P y Q, ambos con un valor inicial 1. Si dos procesos utilizan estos dos semáforos de la siguiente manera se puede producir un interbloqueo.


Proceso A           Proceso B
wait(P);     wait(Q);
wait(Q);     wait(P);
.... ....
signal(P);  signal(Q);
signal(Q);  signal(P);
Solución:
Para modernizar los interbloqueos se suele recurrir a la construcción de un grafo de asignación de recursos. En este grafo existen dos tipo de nodos: lo procesos se representan mediante cuadrados y los recursos mediante círculos

2)-Mecanismo de sincronización entre procesos
En muchos casos, los procesos se reúnen para realizar tareas en conjunto, a este tipo de relación se le llama procesos cooperativos. Para lograr la comunicación, los procesos deben sincronizarse, de no ser así pueden ocurrir problemas no deseados. La sincronización es la transmisión y recepción de señales que tiene por objeto llevar a cabo el trabajo de un grupo de procesos cooperativos.
Es la coordinación y cooperación de un conjunto de procesos para asegurar la comparación de recursos de cómputo. La sincronización entre procesos es necesaria para prevenir y/o corregir errores de sincronización debidos al acceso concurrente a recursos compartidos, tales como estructuras de datos o dispositivos de E/S, de procesos contendientes. La sincronización entre procesos también permite intercambiar señales de tiempo (ARRANQUE/PARADA) entre procesos cooperantes para garantizar las relaciones específicas de precedencia impuestas por el problema que se resuelve.
Para que los procesos puedan sincronizarse es necesario disponer de servicios que permitan bloquear o suspender bajo determinadas circunstancias la ejecución de un proceso. Los principales mecanismos de sincronización que

Ofrecen los sistemas operativos son:

*       Señales
*       Tuberías
*       Semáforos
*       Mutex y variables condicionales
*       Paso de mensajes










Mecanismo de sincronización entre Tuberías (pipes)
Una tubería es un mecanismo de comunicación y sincronización. Desde el punto de vista de su utilización, es como un seu-doarchivo mantenido por el sistema operativo. Conceptualmente, cada proceso ve la tubería como un conducto con dos extremos, uno de los cuales se utiliza para escribir o insertar datos y el otro para extraer o leer datos de la tubería. La escritura se realiza mediante el servicio que se utiliza para escribir datos en un archivo. De igual forma, la lectura se lleva a cabo mediante el servicio que se emplea para leer de un archivo.

Semáforos.

Mecanismo de sincronización entre Semáforos
Un semáforo es un mecanismo de sincronización que se utiliza generalmente en sistemas con memoria compartida, bien sea un monoprocesador o un multiprocesador. Su uso en un multicomputador depende del sistema operativo en particular. Un semáforo es un objeto con un valor entero al que se le puede asignar un valor inicial no negativo y al que sólo se puede acceder utilizando dos operaciones atómicas: wait y signal (también llamadas down o up, respectivamente).

Mecanismo de sincronización entre Mutex.
Los mutex y las variables condicionales son mecanismos especialmente concebidos para la sincronización de procesos ligeros. Un mutex es el mecanismo de sincronización de procesos ligeros más sencillo y eficiente. Los mutex se emplean para obtener acceso exclusivo a recursos compartidos y para asegurar la exclusión mutua sobre secciones críticas.

Mecanismo de sincronización entre Interbloqueo.
Un interbloqueo supone un bloqueo permanente de un conjunto de procesos que compiten por recursos o bien se comunican o sincronizan entre sí. Los interbloqueos que aparecen cuando se utilizan mecanismos de comunicación y sincronización se deben a un mal uso de los mismos.

Mecanismo de sincronización entre Cerrojo de espera ocupada

Con TestAndSet podemos construir un mecanismo de sincronización denominado cerrojo de espera ocupada (spin lock). Cuando un proceso no puede entrar en su SC espera en un bucle. El problema del mecanismo es que la espera no está acotada. En monoprocesadores, un proceso con un cerrojo de espera ocupada no puede ceder la CPU, ¿por qué? Paso de mensajes

Mecanismo de sincronización entre Paso de Mensaje
La comunicación entre procesos (IPC-Inter- Process Comunication) mediante paso de mensajes es necesaria cuando los procesos no comparten memoria común (nocomparten variables comunes).

Comunicación indirecta
Los mensajes se dirigen/se reciben de un buzón (o también denominado puerto). Cada buzón tiene un identificador único. P y Q deben compartir el buzón Propiedades del enlace: Asociado con muchos procesos. Varios enlaces por par de procesos. Unidireccional o bidireccional. Varios procesos comparten enlace quién lee un mensaje

El paso de mensajes puede producir fallos, son necesarios los mecanismos para recuperarnos de ellos, denominados gestión de condiciones de excepción.

*      Terminación de procesos -Qué ocurre si proceso termina antes de procesar mensaje
Perdida de mensaj

3)-¿Qué es POSIX?  ¿Cómo se relaciona con la comunicación y sincronización de procesos?
POSIX: es el acrónimo de Portable Operating System Interface, y X viene de UNIX como seña de identidad de la API.
El término fue sugerido por Richard Stallman en la década de 1980, respuesta a la demanda de la IEEE, que buscaba un nombre fácil de recordar. La traducción del acrónimo es "Interfaz de Sistema Operativo Portable".
Una serie de pruebas acompañan al estándar POSIX. Son llamadas "PCTS" en alusión al acrónimo "Posix Conformance Test Suite". Desde que la IEEE empezó a cobrar altos precios por la documentación de POSIX y se ha negado a publicar los estándares, ha aumentado el uso del modelo Single Unix Specification. Este modelo es abierto, acepta entradas de todo el mundo y está libremente disponible en Internet. Fue creado por The Open Group.
POSIX es el estándar de interfaz de sistemas operativos portables de IEEE basado en el sistema operativo UNIX. Aunque UNIX era prácticamente un estándar industrial, había bastantes diferencias entre las distintas implementaciones de UNIX, lo que provocaba que las aplicaciones no se pudieran transportar fácilmente entre distintas plataformas UNIX.
El POSIX Se trata de un estándar que intenta asegurar la portabilidad entre diferentes sistemas operativos. Dentro del estándar se especifica el comportamiento de las expresiones regulares y de las herramientas más comunes que las usan.
Se relaciona de la siguiente forma
Sincronización de procesos. Define funciones para permitir la sincronización de procesos a través de semáforos contadores.
Memoria compartida. Tienen espacios de direccionamiento que son independientes entre sí. Sin embargo, muchas aplicaciones de tiempo real (y también muchas que no son de tiempo real) necesitan compartir grandes cantidades de datos de una manera eficiente.
Señales de tiempo real. Permite notificar eventos que ocurren en el sistema, pero no es completamente satisfactorio para aplicaciones de tiempo real.
Las señales no se almacenan en colas y, por tanto, algunos eventos se pueden perder. Las señales no están priorizadas, y esto implica tiempos de respuesta más largos para eventos urgentes.

Guia de trabajo 2:

Arquitectura de Memoria :
L   la memoria es la parte del ordenador en la que se guardan o almacenan los programas (las instrucciones y los datos). Sin una memoria de la que los procesadores leyeran o escribieran la información, no habría ordenadores digitales de programa almacenado (como son los actuales desde EDVANC desde 1945).
Por una parte tenemos que la velocidad de ejecución de los programas es muy dependiente de la velocidad a la que se pueden transferir los datos entre la CPU y la memoria. Por otra parte también es importante disponer de una gran cantidad de memoria para facilitar la ejecución de programas que son grandes o que trabajan con gran cantidad de datos.
Por esto idealmente, la memoria debería de ser rápida, grande y barata. Como cabría esperar, hay un compromiso entre estas tres características de la memoria que mantienen las siguientes relaciones:
·         A menor tiempo de acceso → mayor coste por bit.
·         A mayor capacidad → menor coste por bit.
·         A mayor capacidad → mayor tiempo de acceso.


















Diferencia entre Memoria RAM, ROM Y PROM


La Memoria RAM es la que todos conocemos, pues es la memoria de acceso aleatorio o directo; es decir, el tiempo de acceso a una celda de la memoria no depende de la ubicación física de la misma (se tarda el mismo tiempo en acceder a cualquier celda dentro de la memoria). Son llamadas también memorias temporales o memorias de lectura y escritura.
En este tipo particular de Memoria es posible leer y escribir a voluntad. La Memoria RAM está destinada a contener los programas cambiantes del usuario y los datos que se vayan necesitando durante la ejecución y reutilizable, y su inconveniente radica en la volatilidad al contratarse el suministro de corriente; si se pierde la alimentación eléctrica, la información presente en la memoria también se pierde.

Por este motivo, surge la necesidad de una memoria que permanentemente, guarde los archivos y programas del usuario que son necesarios para mantener el buen funcionamiento del sistema que en se ejecute en la misma.
La Memoria ROM nace por esta necesidad, con la característica principal de ser una memoria de sólo lectura, y por lo tanto, permanente que sólo permite la lectura del usuario y no puede ser reescrita.

Por esta característica, la Memoria ROM se utiliza para la gestión del proceso de arranque, el chequeo inicial del sistema, carga del sistema operativo y diversas rutinas de control de dispositivos de entrada/salida que suelen ser las tareas encargadas a los programas grabados en la Memoria ROM. Estos programas (utilidades) forman la llamada BIOS del Sistema.
Entonces, en conclusión:
La Memoria RAM puede leer/escribir sobre sí misma por lo que, es la memoria que utilizamos para los programas y aplicaciones que utilizamos día a día
La Memoria ROM como caso contrario, sólo puede leer y es la memoria que se usa para el BIOS del Sistema.

EPROM = Electronically Programable Read Only Memory (Memoria Solo para Lectura que Tu puedes Programar de forma Electrónica) Esta memoria es una memoria híbrida entre la RAM y la ROM. Con un software y hardware especial puedes grabar/borrar información dentro de ella (usualmente una cantidad limitada de veces) pero igual que la ROM, si la dejas sin energía, el programa o los datos que grabaste no se borrarán por ello.



Que es una Memoria Virtual
La memoria virtual es una técnica de gestión de la memoria que permite que el sistema operativo disponga, tanto para el software de usuario como para sí mismo, de mayor cantidad de memoria que esté disponible físicamente. La mayoría de los ordenadores tienen cuatro tipos de memoria: registros en la CPU, la memoria caché (tanto dentro como fuera del CPU), la memoria RAM y el disco duro. En ese orden, van de menor capacidad y mayor velocidad a mayor capacidad y menor velocidad.
Muchas aplicaciones requieren acceso a más información (código y datos) que la que se puede mantener en memoria física. Esto es así sobre todo cuando el sistema operativo permite múltiples procesos y aplicaciones ejecutándose simultáneamente. Una solución al problema de necesitar mayor cantidad de memoria de la que se posee consiste en que las aplicaciones mantengan parte de su información en disco, moviéndola a la memoria principal cuando sea necesario. Hay varias formas de hacer esto.

Una opción es que la aplicación misma sea responsable de decidir qué información será guardada en cada sitio (segmentación), y de traerla y llevarla. La desventaja de esto, además de la dificultad en el diseño e implementación del programa, es que es muy probable que los intereses sobre la memoria de dos o varios programas generen conflictos entre sí: cada programador podría realizar su diseño teniendo en cuenta que es el único programa ejecutándose en el sistema. La alternativa es usar memoria virtual, donde la combinación entre hardware especial y el sistema operativo hace uso de la memoria principal y la secundaria para hacer parecer que el ordenador tiene mucha más memoria principal (RAM) que la que realmente posee. Este método es invisible a los procesos. La cantidad de memoria máxima que se puede hacer ver que hay tiene que ver con las características del procesador. Por ejemplo, en un sistema de 32 bits, el máximo es 232, lo que da 4096 Megabytes (4 Gigabytes). Todo esto hace el trabajo del programador de aplicaciones mucho más fácil, al poder ignorar completamente la necesidad de mover datos entre los distintos espacios de memoria. Aunque la memoria virtual podría estar implementada por el software del sistema operativo, en la práctica casi siempre se usa una combinación de hardware y software, dado el esfuerzo extra que implicaría para el procesador.


Que es una unidad de manejo de memoria

unidad de manejo de memoria (Lat.) (MMU, del inglés Memory Management Unit) es un dispositivo de Hardware formado por un grupo de circuitos integrados, responsable del manejo de los accesos a la memoria por parte de la Unidad de Procesamiento Central (CPU).

Entre las funciones de este dispositivo se encuentran la traducción de las direcciones lógicas (o virtuales) a direcciones físicas (o reales), la protección de la memoria, el control de caché y, en arquitecturas de computadoras más simples (especialmente en sistemas de 8 bits), Bank switching.
Cuando la CPU intenta acceder a una dirección de memoria lógica, la MMU realiza una búsqueda en una memoria caché especial llamada Buffer de Traducción Adelantada (TLB, Translation Lookaside Buffer), que mantiene la parte de la tabla de páginas usada hace menos tiempo. En esta memoria se mantienen entradas de la tabla de páginas (llamadas PTE por sus siglas en inglés, Page Table Entry), donde se pueden rescatar las direcciones físicas correspondientes a algunas direcciones lógicas, de forma directa. Cuando la dirección requerida por la CPU se encuentra en el TLB, su traducción a dirección real o física es entregada, en lo que se conoce como 'acierto en el TLB' ('TLB hit'). En otro caso, cuando la dirección buscada no se encuentra en el TLB (fallo en el TLB), el procesador busca en la tabla de páginas del proceso utilizando el número de página como entrada a la misma. En la entrada de la tabla de páginas del proceso se encuentra un bit de presencia, que indica si la página buscada está en memoria principal. Si el bit de presencia está activado, se carga esta PTE en el TLB y se devuelve la dirección física. En caso contrario, se informa al sistema operativo de la situación, mediante un fallo de página. Es el sistema operativo el encargado de realizar los ajustes necesarios (esto es, cargar la página en memoria física) usando uno de los Algoritmos de reemplazo de páginas, para continuar con la ejecución desde la instrucción que causó el fallo.

Un beneficio fundamental de la MMU es la posibilidad de implementar protección de memoria, evitando que los programas accedan a porciones de memoria prohibidas. Por ejemplo se puede evitar que un programa acceda o modifique sectores de memoria de otros programas.




El Sistema Operativo y el Manejo de Archivos
Sistema Operativo:
Un Sistema Operativo es el software encargado de ejercer el control y coordinar el uso del hardware entre diferentes programas de aplicación y los diferentes usuarios. Es un administrador de los recursos de hardware del sistema en una definición informal es un sistema que consiste en ofrecer una distribución ordenada y controlada de los procesadores, memorias y dispositivos de E/S entre los diversos programas que compiten por ellos. A pesar de que todos nosotros usamos sistemas operativos casi a diario, es difícil definir qué es un sistema operativo. En parte, esto se debe a que los  sistemas operativos realizan dos funciones diferentes. Proveer una máquina virtual, es decir, un ambiente en el cual el usuario pueda ejecutar programas de manera conveniente, protegiéndolo delos detalles y complejidades del hardware. Administrar eficientemente los recursos del computador.



Una de las principales funciones de un Sistema Operativo es la administración del almacenamiento de información, para lo cual es necesario contar con un “Sistema de Archivos”. Con este término se hace referencia, por un lado, a los mecanismos y estructuras que el sistema operativo utiliza para organizar la información en medios físicos tales como discos y diskettes (aspecto físico del sistema de archivos), y por otro a la visión que es ofrecida al usuario para permitir la manipulación de la información almacenada (una abstracción, o perspectiva lógica del sistema de archivos).

Servicios POSIX Relacionados con Memoria Compartida
Memoria compartida. Tienen espacios de direccionamiento que son independientes entre sí. Sin embargo, muchas aplicaciones de tiempo real (y también muchas que no son de tiempo real) necesitan compartir grandes cantidades de datos de una manera eficiente.
Señales de tiempo real. Permite notificar eventos que ocurren en el sistema, pero no es completamente satisfactorio para aplicaciones de tiempo real. Las señales no se almacenan en colas y, por tanto, algunos eventos se pueden perder. Las señales no están priorizadas, y esto implica tiempos de respuesta más largos para eventos urgentes.
Comunicación de procesos. Se especifica un mecanismo sencillo de colas de mensajes para la comunicación entre procesos. Las colas de mensajes están identificadas por un nombre perteneciente a un espacio de nombres dependiente de la implementación.
Entrada/Salida Asíncrona. Define funciones que permiten solapar el procesado de aplicaciones con las operaciones de entrada/salida.


3- ¿Qué es Memoria Real?

La memoria real o principal es en donde son ejecutados los programas y procesos de una computadora y es el espacio real que existe en memoria para que se ejecuten los procesos.
Por lo general esta memoria es de mayor costo que la memoria secundaria, pero el acceso a la información contenida en ella es de más rápido acceso.  Solo la memoria cache es más rápida que la principal, pero su costo es a su vez mayor.
Cuando no existe memoria virtual no hay diferenciación entre el espacio de direcciones y la memoria real; el espacio de direcciones que puede ser usado en los programas tiene idéntico tamaño al espacio de memoria real posible. Si se utiliza memoria virtual, el espacio de direcciones disponibles para los programas es aquel determinado por el tamaño de la memoria virtual implementada y no el espacio de direcciones provisto por la memoria real disponible (el espacio de la memoria virtual será mayor que el de la memoria real).
La organización y administración de la “memoria principal”, “memoria primaria” o “memoria real” de un sistema ha sido y es uno de los factores más importantes en el diseño de los S. O. (Ver la figura 3.2.1)
        Los términos “memoria” “almacenamiento” se consideran equivalentes.
        Los programas y datos deben estar en el almacenamiento principal para:
  • Poderlos ejecutar.
  • Referenciarlos directamente