Вы находитесь на странице: 1из 13

INSTITUTO TECNOLGICO DE DURANGO

INGENIERIA EN SISTEAS COMPUTACIONALES SISTEMAS OPERATIVOS

TRABAJO DE UNIDAD:

-ADMINISTRACIN DE PROCESOS Y DEL PROCESADOR

MAESTRO:JOS RAMN VALDEZ GUTIRREZ

ALUMNOS: GALDINO URBINA PALOMARES

23 DE JUNIO DE 2011

Sistemas Operativos Administracin de procesos y del Procesador

Tabla de Contenido
Introduccion................................................................................................................................... 3 1Concepto de Proceso.................................................................................................................... 4 2 Estados y Transiciones de los procesos ........................................................................................ 4 3Procesos Ligeros (hilos o hebras) .................................................................................................. 5 4Concurrencia y Secuenciabilidad .................................................................................................. 5   4.1 Exclusion mutua de secciones criticas .......................................................................... 5 4.2 Sincronizacion de procesos SC ..................................................................................... 6

4.2.1 Mecanismos de semaforos .................................................................................................... 7 4.2.2 Mecanismo de Monitores ...................................................................................................... 7 4.3 Interbloqueo .............................................................................................................. 8 4.3.1 Prevencion.................................................................................................. 8 4.3.3 Recuperacion .............................................................................................. 8 5 Niveles Objetivos y criterios de Planificacion ............................................................................... 9 6 tecnicas de administracion del planificador ............................................................................... 10 6.1 FIFO .......................................................................................................................... 10 6.2 SJF ............................................................................................................................ 10 6.3 RR ............................................................................................................................. 11 6.4 Queves multi-level .................................................................................................... 11 6.5 Multi-level feddback queves ..................................................................................... 11 Conclusiones ................................................................................................................................ 12 Bibliografia................................................................................................................................... 13

Galdino Urbina Palomares 07041286

Pgina 2

Sistemas Operativos Administracin de procesos y del Procesador

Introduccin
En los sistemas operativos multiprogramados surge el concepto de proceso, asociado a la ejecucin de un programa. En general, un proceso es un flujo de ejecucin, representado bsicamente por un contador de programa, y su contexto de ejecucin, que puede ser ms o menos amplio. As, un proceso incluye en su contexto el estado de la pila, el estado de la memoria y el estado de la E/S, mientras que unthread tpico tiene como contexto propio poco ms que la pila. En algunos sistemas es posible determinar el contexto propio de un proceso en el momento de su creacin, como ocurre con la llamada al sistema clone () de Linux. En adelante, sin perder generalidad, utilizaremos siempre el trmino proceso, independientemente de cul sea su contexto.

Uno de los objetivos del sistema operativo es la representacin de los procesos y el soporte de los cambios de contexto entre procesos, que posibilitan la comparticin del recurso CPU. El acceso a otros recursos compartidos y la comunicacin entre procesos relacionados (por ejemplo, de una misma aplicacin) hacen necesaria la utilizacin de mecanismos de sincronizacin dentro del sistema operativo. Tpicamente, un proceso requiere la CPU durante un periodo de tiempo, realiza alguna operacin de E/S, y vuelve a requerir la CPU, repitindose este ciclo hasta la finalizacin del programa. El proceso pasa por diversos estados entre los que se definen transiciones, como representa, en su forma ms sencilla.

Cada vez que un proceso pasa al estado preparado, est compitiendo por el recurso CPU. Un segundo objetivo del sistema operativo multiprogramados es la planificacin del uso del (de los) recurso(s) de proceso. Los criterios que se siguen para la planificacin y las polticas que se usan se estudiarn ms adelante en el desarrollo de la presente investigacin.

Para realizar el estudio de dichas polticas se realiza una sintetizada referencia a la representacin de los procesos, para luego definir hilos de ejecucin o threads, estableciendo diferencias entre procesos y hilos de ejecucin, sus ventajas desventajas, estados, sincronizacin y tipos, para luego empezar a estudiar el fenmeno de la sincronizacin de procesos, estableciendo su definicin y caractersticas, se esboza la definicin, modelo, propiedades de la seccin critica, as como la descripcin detallada de algunos de los principales modelos de sincronizacin tales como el de exclusin mutua (mutex),semforos y monitores, el interbloqueo estableciendo su definicin, caractersticas, condiciones necesarias y suficientes para su existencia, en cuanto a su deteccin y recuperacin, finalmente se estudia las tcnicas de administracin del planifica

Galdino Urbina Palomares 07041286

Pgina 3

Sistemas Operativos Administracin de procesos y del Procesador

2.1 Concepto de proceso

Un programa, es un conjunto de instrucciones que pueden ser ejecutadas por el procesador, cuando este programa se ejecuta de manera individual en el procesador, se le conoce como proceso o tarea. El conjunto de instrucciones que se han de ejecutar en el proceso, se le llama traza del proceso. En los sistemas operativos multihilos, un proceso, puede tener al mismo tiempo, diferentes hilos ejecutndose al mismo tiempo. (Deitel, 1993)

2.2 Estados y transiciones de los procesos

Estados y transiciones de los procesos: De nulo a nuevo:Se crea un nuevo hilo, que ejecutar un programa. De nuevo a listo:Cuando el sistema operativo, detecte que puede manejar otro hilo, permitir queste pase al estado listo. De listo a ejecucin:Cuando el sistema operativo, puede ejecutar otro proceso, selecciona alguno de los hilos que estn en estado listo. De ejecucin ha Terminado:Cuando el hilo termina su tarea, entonces pasa a este estado. De ejecucin a listo Cuando un hilo en ejecucin, tarda demasiado en terminar, entonces el sistema operativo manda una seal para terminar su ejecucin. De ejecucin ha bloqueado:Si un hilo pide al sistema operativo un recurso, por el cual debe de esperar, entonces se bloquea el hilo. (Silberschatz, 1994)

Galdino Urbina Palomares 07041286

Pgina 4

Sistemas Operativos Administracin de procesos y del Procesador

3 Procesos ligeros (Hilos o hebras).

Un proceso ligero, o thread, es un programa en ejecucin (flujo de ejecucin) que comparte la imagen de memoria y otras informaciones con otros procesos ligeros. Un proceso ligero se define corno una funcin cuya ejecucin se puede lanzar en paralelo con otras... (Silberschatz, 1994)

4 Concurrencia y secuenciabilidad.

Los procesos son concurrentes si existen simultneamente. Cuando dos o ms procesos llegan al mismo tiempo a ejecutarse, se dice que se ha presentado una concurrencia de procesos. Es importante mencionar que para que dos o ms procesos sean concurrentes, es necesario que tengan alguna relacin entre ellos. La concurrencia es la propiedad de los sistemas que permiten que mltiples procesos sean ejecutados al mismo tiempo, y que potencialmente puedan interactuar entre s.

4.1 Exclusin mutua secciones crticas.

de

Los algoritmos de exclusin mutua se usan en programacin concurrente para evitar el uso simultneo de recursos comunes, como variables globales, por fragmentos de cdigo conocidos como secciones crticas. La mayor parte de estos recursos son las seales, contadores, colas y otros datos que se emplean en la comunicacin entre el cdigo que se ejecuta cuando se da servicio a una interrupcin y el cdigo que se ejecuta el resto del tiempo. (Wikipedia)

Galdino Urbina Palomares 07041286

Pgina 5

Sistemas Operativos Administracin de procesos y del Procesador

4.2 Sincronizacin procesos en S.C.

de

Sincronizacin de hilos (procesos) Todos los hilos comparten el mismo espacio de direcciones y otros recursos como pueden ser archivos abiertos. Cualquier modificacin de un recurso desde un hilo afecta al entorno del resto de los hilos del mismo proceso. Por lo tanto, es necesario sincronizar la actividad de los distintos hilos para que no interfieran unos con otros o corrompan estructuras de datos. Una ventaja de la programacin multihilo es que los programas operan con mayor velocidad en sistemas de computadores con mltiples CPUs (sistemas multiprocesador o a travs de grupo de mquinas) ya que los hilos del programa se prestan verdaderamente para la ejecucin concurrente. En tal caso el programador necesita ser cuidadoso para evitar condiciones de carrera (problema que sucede cuando diferentes hilos o procesos alteran datos que otros tambin estn usando), y otros comportamientos no intuitivos. Los hilos generalmente requieren reunirse para procesar los datos en el orden correcto. Es posible que los hilos requieran de operaciones atmicas para impedir que los datos comunes sean cambiados o ledos mientras estn siendo modificados, para lo que usualmente se utilizan los semforos. El descuido de esto puede generar interbloqueo. (sincronizacin., 2011)

Galdino Urbina Palomares 07041286

Pgina 6

Sistemas Operativos Administracin de procesos y del Procesador 4.2.1 Mecanismo de semforos.


Las diversas soluciones hardware al problema de la seccin critica, basadas en las instrucciones TestAndSet () y Swap (), son complicadas de utilizar por los programadores de aplicaciones. Para superar esta dificultad, podemos usar una herramienta de sincronizacin denominada semforo. Un semforo S es una variable entera a la que, dejando aparte la inicializacin, solo se accede mediante dos operaciones atmicasestndar: wait () y signal (). Originalmente, la operacin wait () se denominaba P (del termino holands proberen, probar); mientras que signal ( ) denominaba originalmente V (verhogen, incrementar). La definicin de wait () es la que sigue:

(woodhull, 1998)

4.2.2 Mecanismo de monitores.

Aunque los semforos proporcionan un mecanismo adecuado y efectivo para el proceso de sincronizacin, un uso incorrecto de los mismos puede dar lugar a errores de temporizacin que son difciles de detectar, dado que estos errores solo ocurren si tienen lugar algunas secuencias de ejecucin concretas y estas secuencias no siempre se producen. Hemos visto un ejemplo de dichos errores en el uso de contadores en la solucin del problema productor-consumidor. En ese ejemplo, el problema de temporizacin se produca raras veces, e incluso entonces el valor del contador pareca ser razonable: lo que pasaba es que difera en 1 del valor correcto. Pero aunque el valor pareciera correcto, no era aceptable y es por esta razn semforos. que se introdujeron los

Galdino Urbina Palomares 07041286

Pgina 7

Sistemas Operativos Administracin de procesos y del Procesador .4.3 Interbloqueo (DeadLock).


Un interbloqueo supone un bloqueo permanente de un conjunto de procesos que compiten por recursos o bien se comunican o sincronizan entre s. Los interbloqueos aparecen cuando se utilizan mecanismos de comunicacin y sincronizacin, se deben a un mal uso de los mismos.(Wikipedia)

2.4.3.1 Prevencin.
Se refiere a disear un Sistema Operativo para prevenir que surja el interbloqueo en el mismo. De tal manera que nunca se lleguen a cumplir ninguna de las siguientes condiciones: exclusin mutua, garantizar que un proceso no este bloqueado si retiene algn recurso, permitir que el Sistema Operativo pueda relevar los recursos a procesos bloqueados y la espera circular, las cuales propician el interbloqueo.(Wikipedia)

2.4.3.3 Recuperacin.
Se refiere a realizar la recuperacin de un sistema despus de un interbloqueo, para llevarla a cabo es necesario conocer los procesos que produjeron dicho interbloqueo y posteriormente se realiza alguna de las siguientes formas de intentar el proceso de recuperacin de un interbloqueo, que son la terminacin de procesos y la expropiacin de recursos. Cabe mencionar que al aplicar cualquiera de las dos formas se debe tener cuidado de no provocar una inanicin de procesos. (Wikipedia)

Galdino Urbina Palomares 07041286

Pgina 8

Sistemas Operativos Administracin de procesos y del Procesador

5 Niveles, objetivos y criterios de planificacin.

En pocas pasadas de los sistemas de procesamiento por lotes, con una entrada en forma de imgenes de tarjetas en una cinta magntica, el algoritmo de planificacin era sencillo: solo haba que ejecutar el siguiente trabajo en la cinta. En los sistemas de multiusuario de tiempo compartido, que se combinaban con un fondo de trabajos procesados en lote, el algoritmo era ms complejo. En forma invariable, existan varios usuarios en espera de servicio y podan existir tambin otros trabajos para ser procesados en lote. Incluso en los sistemas puros de tiempo compartido existen con frecuencia los trabajos colaterales, como el sistema de correo electrnico, que a menudo se ejecuta todo el tiempo para enviar o recibir correo o noticias

Concepto de Planificacin
La planificacin hace referencia a un conjunto de polticas y mecanismos incorporados al sistema operativo que gobiernan el orden en que se ejecutan los trabajos que deben ser cumplimentados por el sistema informtico. El objetivo principal de la planificacin es optimizar el rendimiento del sistema y proporcionar un buen servicio a todos los procesos que se encuentren en el. En general, la planificacin trata de cubrir los siguientes objetivos: y Planificacin. y Mxima capacidad de ejecucin y Mximonmero de usuarios interactivos. y Predecibilidad. y Minimizacin de la sobrecarga. y Equilibrio en el uso de recursos. y Seguridad de las prioridades. . y Evitar la postergacin indefinida. (Wikipedia)

Objetivo

de

la

Planificacin

Galdino Urbina Palomares 07041286

Pgina 9

Sistemas Operativos Administracin de procesos y del Procesador

6 Tcnicas de administracin del planificador.

Se refieren a los diferentes algoritmos que puede utilizar el planificador para asignar recursos del procesador para la ejecucin de procesos en base al tipo de proceso, tiempo de ejecucin, prioridad, etc. Hay dos tipos de tcnicas de administracin, los algoritmos apropiativos, en los que un proceso se ejecuta hasta que termina o hasta que este se bloquea, y los no apropiativos, en los que un proceso en ejecucin puede interrumpirse y pasarse a una cola de procesos listos que se est ejecutando puede ser interrumpido y pasado a cola de listos si el sistema operativo lo considera prudente. Entre los algoritmos apropiativos est: Round Robin (planificacin por turno circular).Entre los algoritmos no apropiativos est: FCFS (primero en llegar primero en atender).Entre los algoritmos que pueden ser apropiativos y no apropiativos en base a distintas condiciones estn: SJF y prioridades (colas multinivel y colas multinivel realimentadas). Por sus siglas en ingls para First Input First Output (primeras entradas, primeras salidas), se refiere al algoritmo de planificacin, que consiste en ordenar los procesos en una cola y ejecutarlos en base a como se van presentando, es decir, lo primero que entra en una cola,es lo primero que sale de ella. Por sus siglas en ingls para Shortest-Job-First (el proceso ms corto primero), se refiere al algoritmo de planificacin, en el que cuando se inicia el planificador, basndose en la prioridad deprocesos, elige el de menor duracin para ejecutarlo primero.

FIFO:

SJF:

Galdino Urbina Palomares 07041286

Pgina 10

Sistemas Operativos Administracin de procesos y del Procesador ROUND ROBIN


Es un algoritmo de la planificacin por turno circular de fcil implementacin, que consiste en asignarle a un proceso un tiempo de ejecucin llamado cuanto, si este no termina su ejecucin en el tiempo destinado, se utiliza el Round Robin para asignar los recursos de la CPU a otro proceso. Tambin se utiliza cuando un proceso se bloquea o se ejecuta en un tiempo menor al previsto. En espaol, colas multinivel, es un algoritmo de planificacin multinivel, el cual divide una cola en colas separadas segn el tipo de proceso que ejecuten. MULTI-LEVEL FEEDBACK QUEVES: En espaol, colas multinivel realimentadas, es un algoritmo de planificacin, en el cual los procesos pueden desplazarse por las colas para separar procesos con distintas interrupciones de la CPU. En este algoritmo tambin se toma en cuenta, que si un proceso consume mucho tiempo y recursos de la CPU, se mover a una cola de menor prioridad y si espera mucho tiempo se mover a una de mayor prioridad.

QUEVES MULTI-LEVEL

Galdino Urbina Palomares 07041286

Pgina 11

Sistemas Operativos Administracin de procesos y del Procesador

Conclusiones
Hemos aprendido como el sistema operativo se encuentra estructurado en una primera etapa, el desarrollo de procesos y la comprensin de los hilos de ejecucin a travs de los cuales, el sistema delega funciones y opera en forma multifuncional. Tambin estudiamos la forma en la que el sistema gestiona las interrupciones, este se encarga de controlar los accesos al procesador, verificar el estatus de un proceso y determinar se ejecucin de acuerdo al nivel de importancia, cabe destacar que no todas las interrupciones son controladas por el SO, ya que existen interrupciones enmascaradas y que son exclusivas del hardware de nuestro ordenador. La manera en la que opera nuestra computadora es muy compleja, una vez ms comprender su funcionamiento, nos permite prever soluciones a ciertos problemas de ejecucin, as como establecer prioridades al monto de asignar tareas, sobre todo para los sistemas multiusuarios. Cabe destacar que se comprendi la definicin de concepto as como los estados en los que se encuentra y las transiciones que efecta, tambin se hablo sobre los hilos o procesos ligeros y sus caractersticas.

Galdino Urbina Palomares 07041286

Pgina 12

Sistemas Operativos Administracin de procesos y del Procesador

Bibliografa
Deitel, H. M. (1993). Sistemas Operativos. 2 Edicin, Addison-Wesley. Silberschatz, A. P. (1994). Sistemas Operativos. Conceptos Fundamentales. sincronizacin., C. d. (20 de 06 http://www.sc.ehu.es/acwlaroa/SO2/Apuntes/Cap2.pdf de 2011). Obtenido de

Wikipedia. (s.f.). Recuperado el 20 de 06 de 2011, de Exclusin mutua (informtica) (3 de mayo de 2008). Ehttp://es.wikipedia.org/wiki/Exclusi%C3%B3n_mutua_%28inform%C3%A1tica%29 woodhull, A. s. (1998). Sistemas operativos Diseo e implementacin.

Galdino Urbina Palomares 07041286

Pgina 13

Вам также может понравиться