s.o. conceptos

Páginas: 22 (5326 palabras) Publicado: 25 de septiembre de 2013
Procesos Concurrentes
Programas, Procesos y Procesadores
Supóngase el siguiente código de programa:
a  =  x  +  y
b  =  z  +  1
c  =  a  -  b
w  =  c  +  1
Se dispone de múltiples unidades funcionales que permiten sumar y restar.
La instrucción c = a - b no puede efectuarse antes de asignar valores a a y b. Así mismo w = c + 1 no se puede realizar hasta que se conozca el valor de c. Encambio a = x + y y b = z + 1 son independientes y pueden realizarse de forma concurrente. Se ve que hay restricciones de precedencia entre las distintas instrucciones.
Se pretende ejecutar concurrentemente las instrucciones de forma que no varíen sus resultados.
Un proceso es una secuencia de acciones llevadas a cabo mediante una serie de instrucciones escritas en un determinado lenguaje (unprograma), y su resultado final consiste en proveer alguna función del sistema. Un procesador es un elemento físico capaz de ejecutar programas. Así una CPU es un procesador que ejecuta instrucciones de lenguaje máquina.
La concurrencia puede verse como la activación de varios procesos (esto es, la ejecución de varios programas) a la vez.
Un proceso puede involucrar la ejecución de más de unprograma. Recíprocamente un determinado programa o rutina pueden estar involucrados en más de un proceso. Suponiendo que haya tantos procesadores como procesos ello no reviste, desde el punto de vista lógico, dificultad alguna. Si como es más habitual, hay menos procesadores que procesos, puede obtenerse una concurrencia aparente conmutando los procesadores de un programa a otro. Si este proceso deconmutación se realiza a intervalos de tiempo suficientemente cortos, el sistema aparentará un comportamiento concurrente al ser analizado.
El no determinismo puede ser descrito aquí en base a los procesos. Si estos son secuencias de acciones que pueden ser interrumpidas al ser ejecutadas, el no determinismo viene reflejado por el orden impredecible en el cual pueden darse las interrupciones y elorden desconocido a priori en el que se llevarán acabo las diferentes secuencias de acciones.
Un proceso es dinámico, un programa es una secuencia de instrucciones y es en si mismo estático.
El no-determinismo y la concurrencia pueden describirse en términos de interrupciones de procesos entre acciones y de conmutación de procesadores entre procesos.
Interacción Entre Procesos Concurrentes.Comunicación y Colaboración Entre Ellos
Los procesos en un ordenador no actúan aisladamente, si no que por un lado deben cooperar o colaborar entre si, con el fin de poder ejecutar las tareas propuestas. Por otro lado existe una competencia por el uso de los procesadores, la memoria o los ficheros. Estas dos actividades necesitan de una comunicación entre procesos. Vemos las áreas en que laconcurrencia se puede desglosar.
El Problema de la Región Crítica
Considérese un sistema que consta de n procesos en cooperación. Cada proceso tiene un segmento de código denominado región crítica en el que puede estar leyendo variables comunes, actualizando una tabla, escribiendo sobre un fichero, etc. La característica relevante del sistema es que cuando un proceso está ejecutando en su región crítica,ningún otro proceso esta autorizado a hacerlo. Así la ejecución de procesos en regiones críticas es mutuamente excluyente en el tiempo. El problema de la región crítica consiste en diseñar un protocolo que puedan utilizar los procesos para cooperar. Cada proceso debe solicitar permiso para entrar en su región crítica.
Una solución al problema de la sección crítica. Debe satisfacer:
1. Exclusiónmutua. Si un proceso está ejecutando en su región crítica, entonces ningún otro proceso puede estar ejecutando en su región crítica.
2. Progresión. Si no hay procesos ejecutándose en su región crítica y hay otros que quieren entrar en su región crítica, entonces sólo podrán hacerlo aquellos que no realicen operaciones residuales de su presencia anterior en su región crítica.
3. Espera limitada....
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Reemplazo s.o.
  • tipos de s.o
  • Clasificación de S.O
  • sistemas S.O.
  • Seguridad y s.o
  • Historia s.o
  • S.o. linux
  • Historia s.o

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS