ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

SISTEMAS OPERATIVOS ADMINISTRACIÓN DE PROCESOS


Enviado por   •  30 de Mayo de 2022  •  Informes  •  1.374 Palabras (6 Páginas)  •  122 Visitas

Página 1 de 6

[pic 1]

[pic 2]           “Año del Bicentenario del Perú: 200 años de Independencia”

Universidad Nacional de Ucayali

FACULTAD INGENIERÍA DE SISTEMAS E INGENIERÍA DE CIVIL

ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS

SISTEMAS OPERATIVOS

ADMINISTRACIÓN DE PROCESOS

Docente: Mg. Maikel Fredy Mogollón Rojas

Ciclo: VII- B

Alumno:

EDER CRISTHIAN MORENO SILVA

Pucallpa-Perú

2021

ADMINISTRACION DE PROCESOS

PROCESOS

Un proceso es un programa en ejecución, incluyendo el valor del programa counter, los registros y las variables.

Conceptualmente, cada proceso tiene un hilo (thread) de ejecución que es visto como un CPU virtual.

El recurso procesador es alternado entre los diferentes procesos que existan en el sistema, dando la idea de que ejecutan en paralelo(multiprogramación).

Contador de programa

Cada proceso tiene su programa counter, y avanza cuando el proceso tiene asignado el recurso procesador. A su vez, a cada proceso se le asigna un número que lo identifica entre los demás: identificador de procesos.

[pic 3]

CREACIÓN DE PROCESOS

Los procesos de un sistema son creados a partir de otro proceso

Al creador se le domina padre y al nuevo hijo. Esto genera una jerarquía de procesos en el sistema.

Hay cuatro eventos principales que provocan la creación de procesos

  • El arranque del sistema
  • La ejecución, desde un proceso, de una llamada al sistema para la creación de procesos
  • Una petición del usuario para crear procesos
  • El inicio de un trabajo por lotes

En el diseño de sistema operativo se debe decidir, en el momento de creación de un nuevo proceso, cuales recursos compartirán el proceso padre e hijo. Las opciones son que compartan todo, algo o nada. También se debe determinar que sucede con los hijos cuando muere el padre. Puede morir también o cambiar de padre.

Una vez creado el nuevo proceso tendrán un hilo (programa counter) de ejecución propio. El sistema genera un nuevo PCB para el proceso creado.

Ejemplo: UNIX

Unix provee el sistema call fork para la creación de nuevos procesos, la invocación a esta función le retorna al padre el número de procesos id del hijo recién creado y al hijo valor 0. El hijo comienza su ejecución en el retorno de fork.

Además, se provee el sistema call exec que remplaza el espacio de memoria de proceso por uno nuevo.

[pic 4]

Terminación de procesos

Nada dura para siempre, ni siquiera los procesos. Tarde o temprano el proceso terminara, por lo general alguna de las siguientes condiciones:

  • Salida normal (voluntaria)
  • Salida por error (voluntaria)
  • Error Fatal (involuntaria)
  • Eliminado por otro proceso (involuntaria)

Cuando un compilador ha compilado el programa que recibe, ejecuta una llamada al sistema para indicar al sistema operativo que ha terminado.

La segunda razón de terminación es que el proceso descubra un error. Por ejemplo, si un usuario escribe el comando cc foo.c para copilar el programa foo.c y no existe dicho archivo, el compilador simplemente termina.

La tercera razón de terminación es un error fatal producido por el proceso, a menudo debido a un error del programa. Ejemplo incluye ejecutar una instrucción ilegal, hacer referencia a una parte de memoria no existente o la división entre cero.

La cuarta razón es que se ejecute una llamada al sistema e indique eliminar otros procesos. En Unix esta llamada es kill una función correspondiente en Win32 es terminateProcess. En ambos casos deben tener autorización necesaria para realizar la eliminación.

COMUNICACIÓN ENTRE PROCESOS

Con frecuencia los procesos necesitan comunicarse con otros procesos, por ende, existe la necesidad de comunicación de procesos de preferencia en una forma bien estructurada sin utilizar interrupciones.

Las tres cuestiones

  • La primera: como un proceso puede pasar información a otro
  • La segunda: dos o más procesos no se interpongan entre si
  • La tercera:  de obtener la secuencia apropiada cuando hay dependencias presentes: Si el proceso A produce datos y el proceso B los imprime, B tiene que esperar hasta A haya producido algunos datos antes de empezar a imprimir.

CONDICIONES DE CARRERA

El almacenamiento compartido puede estar en la memoria principal (posiblemente en una estructura de datos del kernel) o puede ser un archivo compartido; la ubicación de la memoria compartida no cambia la naturaleza de la comunicación o los problemas que surgen.

REGIONES CRITICAS

¿Cómo evitamos las condiciones de carrera?

Se puede formular de una manera abstracta. Parte del tiempo, un proceso está ocupado realizando cálculos internos y no producen condiciones de carrera.

Necesitamos cumplir con cuatro condiciones:

...

Descargar como (para miembros actualizados)  txt (9.1 Kb)   pdf (218.9 Kb)   docx (178.7 Kb)  
Leer 5 páginas más »
Disponible sólo en Clubensayos.com