Programacion Concurrente
  Cuestionario 1
 


Cuestionario 1
1.      ¿Cuál es la ventaja de la concurrencia en los sistemas monoprocesador?
      -Velocidad de ejecución y solución de problemas concurrentes
      -Aprovechamiento del CPU, y procesador
 
2.      ¿Cuáles son las diferencias entre programación concurrente, paralela y distribuida?
      -Concurrente: conjunto de instrucciones que se pueden ejecutar al mismo tiempo
      -Paralela: tipo de programación concurrente para sistemas multiprocesador
      -Distribuida: tipo de programación paralela para sistemas distribuidos
 
3.      ¿Cuáles son las diferencias entre multiprogramación, multiproceso y procesamiento distribuido?
      -multiprogramación: gestion de varios procesos en sistemas monoprocesador
      -multiproceso: gestion de varios procesos en sistemas multiprocesador
      -procesamiento distribuido: gestion de varios procesos en procesadores separados, cada uno con su memoria local
 
4.      ¿Cuáles son los dos problemas principales inherentes a la programación concurrente?
      -Exclusion mutua
      -Condicion de sincronización
 
5.      ¿Qué es una sección crítica?
      -La región donde se encuentra un recurso que comparten dos o mas procesos
 
6.      ¿Cuáles son las características de un programa concurrente?
      -Orden parcial
      -Indeterminismo
 
7. ¿Qué se entiende por un programa concurrente correcto?
      Debe de cumplir las siguientes reglas:
 
      Propiedades de seguridad (controla): Exclusion mutua
                                                                           Condiciones de sincronizacion
                                                                           Interbloqueo
 
      Propiedades de viveza (controla): Interbloqueo activo
                                                                   Inanicion
 
Problemas
1. Usando las condiciones de Bernstein, construir el grafo de precedencia del siguiente trozo de código y el programa concurrente correspondiente usando el par cobegin/coend.
 
S1: cuad := x*x;
S2: m1 := a*cuad;
S3: m2 := b*x;
S4: z := m1 + m2;
S5: y := z + c;
 
S1->S3
S1->S4
S1->S5
S2->S3
S2->S5
S3->S5
 
  s1 s2 s3 s4 s5
s1 - NO SI SI SI
s2 - - SI NO SI
s3 - - - NO SI
s4 - - - - NO
s5 - - - - -
 
 
 
2. Construir dos programas concurrentes que se correspondan con los de la siguiente figura utilizando el par cobegin/coend.

s1
   cobegin
   s5
      begin
      s2
         cobegin
         s3
         s4
         coend
      end
   coend
s6
       s1
   cobegin
   s3
      begin
      s2
         begin
         s4
             cobegin
             s5
             s6
             coend
         end
      end
coend
s7


 
 
 
 
 
 
   
 
Este sitio web fue creado de forma gratuita con PaginaWebGratis.es. ¿Quieres también tu sitio web propio?
Registrarse gratis