Monografias.com > Computación > Programación
Descargar Imprimir Comentar Ver trabajos relacionados

Procesos concurrentes




Enviado por Pablo Turmero



Partes: 1, 2

    Monografias.com

    Contenido
    Concepto de procesos
    Planificación de procesos
    Operaciones sobre Procesos
    Cooperación de Procesos
    Comunicación entre procesos

    Monografias.com

    Programación Concurrente
    Virtualmente todos los sistemas de tiempo-real son inherentemente concurrentes – los dispositivos operan en paralelo en el mundo real.

    Programación concurrente es el nombre dado a las técnicas y notación de programación para expresar "paralelismo" potencial y resolver la sincronización y los problemas de comunicación.
    En la programacion concurrente solo se cuenta con un procesador. El tiempo de CPU se reparte entre varios procesos.
    El paralelismo implica que existen varios procesadores en el sistema. La programacion paralela implica dividir la ejecucion de un programa en distintos modulos los cuales se ejecutaran en distintos procesadores.

    Monografias.com

    Paralelismo entre CPU y Dispositivos de E/S
    CPU Dispositivo de E/S
    Inicia operacion
    de E/S Peticion de proceso de
    E/S
    Finalizacion de Senal
    Interrupcion de fin de E/S
    E/S termina
    Continua con
    mas peticiones

    Monografias.com

    Sistema de Reservacion de Linea Aerea
    P
    P
    P
    P
    P
    Data Base
    VDU
    VDU
    VDU
    VDU

    Monografias.com

    Terminología
    Un programa concurrente es convencionalmente visto como una colección de procesos secuenciales autónomos que se ejecutan (lógicamente) en paralelo.
    Los lenguajes de programación concurrente incorporan, explícita o implícitamente, la noción de proceso; cada proceso tiene un simple hilo de control.
    La implementación actual (i.e. ejecución) de una colección de procesos usualmente toma una de estas tres formas:
    Multiprogramación
    ejecución de múltiples procesos en un solo procesador.
    Multiprocesamiento
    ejecución de múltiples procesos en un sistema multiprocesador donde hay acceso a memoria compartida.
    Programación Distribuida
    ejecución de múltiples procesos en varios procesadores los cuales no comparten memoria.

    Monografias.com

    Concepto de Proceso
    Un sistema operativo ejecuta una variedad de programas:
    Sistema Batch: jobs
    Sistemas de tiempo compartido: programas de usuario o tareas
    Proceso – un programa en ejecución; la ejecucución del proceso debe progresar de manera secuencial.
    Un proceso incluye:
    program counter
    stack
    data section

    Monografias.com

    Nuevo: El proceso es creado.
    Ejecución: Se ejecutan instrucciónes.
    Espera: El proceso esta en espera por la ocurrencia de algún evento.
    Listo: El proceso esta esperando a que le asignen el procesador.
    Terminado: El proceso finaliza su ejecución.
    Diagrama de estados de los procesos.
    Estados de los procesos

    Monografias.com

    Información asociada con cada proceso:

    Estado del proceso
    Program counter
    Registros del CPU
    Información de planificación del CPU
    Memoria
    Información para administración
    Información de estatus de E/S
    Process Control Block

    Partes: 1, 2

    Página siguiente 

    Nota al lector: es posible que esta página no contenga todos los componentes del trabajo original (pies de página, avanzadas formulas matemáticas, esquemas o tablas complejas, etc.). Recuerde que para ver el trabajo en su versión original completa, puede descargarlo desde el menú superior.

    Todos los documentos disponibles en este sitio expresan los puntos de vista de sus respectivos autores y no de Monografias.com. El objetivo de Monografias.com es poner el conocimiento a disposición de toda su comunidad. Queda bajo la responsabilidad de cada lector el eventual uso que se le de a esta información. Asimismo, es obligatoria la cita del autor del contenido y de Monografias.com como fuentes de información.

    Categorias
    Newsletter