Ingeniero

Solo disponible en BuenasTareas
  • Páginas : 26 (6468 palabras )
  • Descarga(s) : 18
  • Publicado : 31 de julio de 2010
Leer documento completo
Vista previa del texto
PROGRAMACION CONCURRENTE Y PARALELA Alegre Arauco Giover, Murrugarra Llerena Nils, Zaveleta Reyes Freddy CURSO: MODELOS DE LENGUAJE DE PROGRAMACIÓN UNIVERSIDAD NACIONAL DE TRUJILLO www.unitru.edu.pe Trujillo-Perú
RESUMEN
En diversos procesos computacionales es necesario aplicar diversos paradigmas de programación para enfocar el problema, es así que en algunas aplicaciones se necesita aplicarconcurrencia y paralelismos para aumentar la eficiencia y potencial de los programas. En este paper se va a desarrollar los principales conceptos de la programación concurrente y paralela, así como una introducción a la comunicación entre procesos y teoría de hilos. Así mismo se presentan los ejemplos clásicos en donde se aplican. Además se presentara una introducción a la programación paralela,dando los alcances teóricos fundamentales. Finalmente se presentan las conclusiones obtenidas

KEYWORDS: Sistema Operativo, POO, Modelos de Lenguajes de Programación, Acerca de Java. I. INTRODUCCION Actualmente observamos que el paradigma orientado a objetos, solo podemos ejecutar un equipo a la vez como máximo en cambio con la introducción de las hebras concurrentes(programación concurrente) oprocesos es posible que cada objeto se ejecute simultáneamente, esperando mensajes y respondiendo adecuadamente. Como siempre la principal razón para la investigación de la programación concurrente es que nos ofrece una manera diferente de conceptualizar la solución de un problema, una segunda razón es la de aprovechar el paralelismo del hardware subyacente para lograr una aceleración significativa.Para entender mejor este detalle un buen ejemplo de un programa concurrente es el navegador Web de modem. Un ejemplo de concurrencia en un navegador Web se produce cuando e navegador empieza a presentar una página aunque puede estar aun descargando varios archivos de gráficos o de imágenes. La página que estamos presentando es un recurso compartido que deben gestionar cooperativamente lasdiversas hebras involucradas en la descarga de todos los aspectos de una página. Las diversas hebras no pueden escribir todas en la pantalla simultáneamente, especialmente si la imagen o grafico descargado provoca el cambio de tamaño del espacio asignado a la visualización de la imagen, afectando así la distribución del texto. Mientras hacemos todo esto hay varios botones que siguen activos sobre los quepodemos hacer click particularmente el boton stop como una suerte de conclusión se observa en este paper que las hebras operan para llevar a cabo una tarea como la del ejemplo anterior así mismo se vera que los procesos deben tener acceso exclusivo aun recurso compartido como por ejemplo la visualización para evitar interferir unas con otras. II. CONCEPTOS: Ø PROGRAMA SECUENCIAL: Es aquel queespecifica la ejecución de una secuencia de instrucciones que comprenden el programa. Ø PROCESO: Es un programa en ejecución, tiene su propio estado independiente del estado de cualquier otro programa incluidos los del sistema operativo. Va acompañado de recursos como archivos, memoria, etc. Ø PROGRAMA CONCURRENTE: Es un programa diseñado para tener 2 o mas contextos de ejecución decimos que estetipo de programa es multihenbrado, porque tiene mas de un contexto de ejecución.

Ø PROGRAMA PARALELO: Es un programa concurrente en el que hay mas de un contexto de ejecución o hebra activo simultáneamente; desde un punto de vista semántica no hay diferencia entre un programa paralelo y concurrente. Ø PROGRAMA DISTRIBUIDO: Es un sistema diseñado para ejecutarse simultáneamente en una red deprocesadores autónomos, que no comparten la memoria principal, con cada programa en su procesador aparte. En un sistema operativo de multiprocesos el mismo programa lo pueden ejecutar múltiples procesos cada uno de ellos dando como resultado su propio estado o contexto de ejecución separado de los demás procesos. Ejm: En la edición de documentos o arhivos de un programa en cada instancia del editor...
tracking img