Anda di halaman 1dari 12

Instituto Tcnico Superior

Comunitario (ITSC)
Nombre & Apellidos: .. Randy
Montero Montero
Matricula: 20150902
Seccin: 01
Prof.: ..
Yanery Daz
Tema.: ..
Gestin de procesos
Fecha.: 03/Marzo/2016

Introduccin
En este nuevo artculo de trabajo de la materia de Sistemas
Operativos, les presentare lo que es Gestin de procesos
Esta gestin describe los servicios en tiempo de ejecucin
prcticamente disponibles por los ncleos del sistema
operativo de multiprogramacin para la gestin de procesos.
Por servicios de tiempo de ejecucin nos referimos al as
llamadas al sistema predefinidos que cuelen ser invocadas por
procesos de usuario, bien directamente, mediante llamadas al
supervisor incorporadas al cdigo del usuario, o bien
indirectamente por rdenes tecleadas y traducidas a llamadas
al sistema operativo por la rutina monitor de consola.
Aunque los sistemas de programacin suelen diferir en un sus
filosofas y objetivos de diseo, sus capas de ncleo ms
internas exhiben una aplastante similitud en cuanto al tipo y
rango de primitivas de gestin de procesos que proporciona
detalles y parmetros viran inevitablemente de un sistema a
otro, pero las funciones proporcionadas por la coleccin total
de llamadas al sistema son muy parecidas. Esto significa que
existe un acuerdo tcito entre los diseadores de sistemas
operativos referente a lo que constituye un conjunto mnimo
de funciones y seales necesarias para soportar la gestin de
procesos en un entorno multitarea. Nuestro propsito en esta
seccin es identificar y describir las funciones pertenecientes
a un conjunto mnimo.

En secciones posteriores se describen las siguientes llamadas al


SO para gestin de procesos: CREAR, ELIMINAR, DIVIDIR, UNIR,
ABORTAR,
SUSPENDER,
REANUDAR,
RETARDAR,
LEER
ATRIBUTOS Y MODIFICAR PRIORIDADES. Cada llamada se
introduce en el formato de da una llamada a procedimientos
incluyendo entre parntesis los nombre de los probablemente
genricos, parmetros de invocacin. Tras una breve descripcin
de las acciones que el SO necesita realizar para ejecutar una
peticin particular, se discuten las posibles condiciones de error
para cada llamada determinada. Cuando es apropiado, tambin
se menciona servicios equivalentes o anlogos disponibles en el
lenguaje de programacin Ada.

Crear
En respuesta a la llamada CREAR, el sistema operativo crea
un nuevo proceso con el identificador y los atributos
especificados
o
predeterminados.
Como
indicamos
anteriormente un proceso puede crearse a s mismo ya que
tendra que estar ejecutndose con el fin de invocar el SO, y
no puede ejecutarse antes de ser creado. De modo que un
proceso debe ser creado por otro proceso. En respuesta a la a
llamada CREAR, el sistema operativo obtiene un nuevo BCP en
la lista de preparados, haciendo as que el proceso
especificado sea legible para ejecucin. Algunos de los
parmetros definibles en el momento de la creacin del
proceso incluyen:

Nivel de privilegio, por ejemplo sistema o usuario.


Prioridad
Tamao y requisitos de memoria
rea mxima de datos y o tamao de pila
Informacin obre proteccin de memoria y derechos de
acceso
Otros datos dependiendo del sistema
Tpicas respuestas de error, que implican que el proceso no ha
sido creado como resultado de esta llamada, incluyen:
IDerroneo, no-existencia de espacio para BCP y proceso
imbocante no autoriza para utilizar esta funcin. Ada utiliza la
instruccin INITIATE para crear y activar una o ms tareas.
Cuando se crean varias tareas con una sola instruccin
INITIATE, todas ellas se ejecutan concurrentemente.
Eliminar
El servicio ELIMINAR tambin se puede denominar DESTRUIR,
TERMINAR o SALIR. Su invocacin hace que el SO destruya el
proceso designado y lo suprima des sistema. Un proceso
puede eliminarse a s mismo o a otros procesos. El SO
reacciona reclamando todos los recursos asignados al proceso
especificado (los dispositivos de E/S asociados, la memoria),
cerrando los archivos abiertos por o para el proceso, y
efectuando algunas otras operaciones si es necesario. A
continuacin, el BCP es el eliminado de la lista en que se
encontraba y devuelto IVA, esto hace que el proceso
designado pase a inactivo. El servicio eliminar es
normalmente invocada como parte de la terminacin
ordenada de un programa.
Para liberar a los usuarios de la molestia de explicitar la
terminacin y para mejorar la portabilidad de los programas a
travs de diferentes entornos muchos compiladores compilan

la ltima instruccin END de un programa principal por una


llamada al sistema ELIMINAR.
Casi todos los sistemas operativos de multiprogramacin
permiten que los procesos generados por l estn activos. Los
diseadores de sistemas operativos difieren en su actitud con
respecto a permitir que un proceso elimine a otros. La
cuestin aqu es de conveniencia y eficacia frente a la
integridad del sistema. Permitir el uso incontrolado de esta
funcin supone que un proceso malicioso o errneo tiene
medios para deshacerse de todos los restantes procesos del
sistema. Por otro lado la terminacin de una jerarqua de
procesos en un sistema estrictamente protegido donde cada
proceso solo puede eliminarse a s mismo, y donde el padre
tiene que esperar a que los hijos terminen primero, puede ser
una operacin realmente larga. El compromiso habitual es
permitir la eliminacin de otros procesos pero restringir el
rango a los miembros de la familia, solo los procesos de
prioridad inferior a alguna de otra subclase de procesos. Entre
las posibles llamadas ELIMINAR se incluyen que un hijo de ese
proceso est activo (deber terminar primero). IDerroneo (el
proceso no existe) y proceso invocador no autorizado a llamar
a esta funcin.
Dividir / Unir
Originalmente introducidos como primitivas para sistemas
multiprocesadores. La operacin DIVIDIR(FORK), se utiliza
para dividir una secuencia de instrucciones en dos secuencias
ejecutables concurrentemente. . Despus de alcanzar el
identificador especificado en DIVIDIR, se crea un nuevo
proceso (hijo) que ejecuta una rama del cdigo dividido
mientras el proceso creado (padre) continua ejecutando la
otra. DIVIDIR generalmente devuelve la identidad del hijo al
proceso padre.

Suspender
El servicio SUSPENDER es llamado DORMIR O BLOQUEAR en
algunos sistemas. El proceso designado queda suspendido
indefinidamente y es colocado en el estado suspendido.
Cuando el proceso en ejecucin se suspende a si mismo, lo
que hace en efecto es ceder voluntariamente el control al
sistema operativo.
Reanudar
El servicio reanudar es llamado despertar en algunos
sistemas. Esta llamada reanuda el proceso designado, que
esta presumiblemente suspendido. Obviamente, un proceso
suspendido no puede reanudarse a s mismo, ya que un
proceso debe estar ejecutndose para su llamada al SO sea
procesada. De modo que un proceso suspendido depende de
un proceso asociado para que ejecute la llamada REANUDAR
El mecanismo SUSPENDER / REANUDAR es conveniente para
formas relativamente primitivas y no estructuradas de
sincronizacin entre procesos. Es utilizado a menudo en
sistemas que no soportan intercambio de seales. Las
respuestas de error incluyen proceso ya activo, IDerroneo e
invocador no autorizado.
Precedentes del temporizador de intervalos programables. Los
detalles reales son de cierto modo complicados, y
discutiremos en relacin con el diseo de nuestros ejemplos
de ncleo del SO.
El retardo temporizado es una llamada al sistema muy til
para implementar cumplimientos de plazos de tiempo. En esta
aplicacin un proceso inicia una accin iniciada. Otras dos
variedades de retardo temporizado son: planificacin cclica
de un proceso a intervalos determinados por ejemplo
ejecutando una vez cada cinco minutos, y la planificacin a
determinadas horas del da. Ejemplos de esta ltima son: la

impresin del registro de anotaciones de un turno en el


sistema de control de procesos cuando un nuevo turno toma
el relevo y el respaldo de seguridad de una base de datos de
media noche.
Las respuestas error incluyen intervalos o unidades de
tiempos ilegales, Id errneo invocador no autorizado. En una
tarea puede retrasarse as mismo con un cierto nmero de
tics del reloj del sistema (dependiente del sistema o un
perodo de tiempo especificado utilizando el tipo pre
declarado time de coma flotante. Para este propsito se utiliza
la instruccin DELAY.
Leer Atributos
Leer atributos es una consulta a la cual el sistema operativo
responde proporcionando los valores actuales de los atributos
de los procesos designados, o de un subconjunto especifico de
ellos, obteniendo a partir del BCP del proceso. Normalmente
este es nico modo mediante el cual el proceso puede
averiguar cules son sus atributos actuales, ya que no sabe
dnde est su BCP ni puede acceder al espacio protegido del
SO en donde el BCP est guardado.
Esta llamada puede ser utilizada para examinar el estado de
un proceso, su utilizacin de recursos, informacin de
mantenimientos u otros datos pblicos almacenados en un
BCP. Las respuestas de error incluyen no existe tal atributo, Id
errneo e invocador no autorizado. En cada tarea puede
examinar los valores de ciertos atributos mediante la lectura
de variables de atributos de tareas pre declaradas tales como:
TACTIVE, TCALLABLE, TPRORITY y TTERMINATED, donde T
es la identidad de la tarea en cuestin.
Modificar

Modificar prioridad es una instancia de una llamada al sistema


ms general DEFINIR_ATRIBUTOS_PROCESO. Obviamente esta
llamada no est implementada en sistemas donde la prioridad
es un proceso de esttica.
Las modificaciones en tiempo de ejecucin de la prioridad de
un proceso sirven para aumentar o disminuir la capacidad de
un proceso para competir por los recursos del sistema. La idea
es que la prioridad de un proceso debera aumentar o
descender de acuerdo con la importancia relativa de su
actividad momentnea, haciendo as la planificacin ms
sensible a los cambios del estado global del sistema. Esta
llamada puede ser mal usas por procesos de baja prioridad, y
el sistema completo puede resaltar corrompidos por procesos
que compiten con el propio SO.
Por estas razones las prioridades estn generalmente
restringidas a modificaciones dentro de un cierto rango. Por
ejemplo el proceso puede especificar un mximo, o bien no
puede exceder la prioridad de su padre o grupo. Aunque
modificar las prioridades de otros procesos pueden resultar
til, la mayora de las implementaciones tiene la restriccin de
que el proceso imbocante solo puede manipular su propia
prioridad.
Las respuestas de error incluyen invocar no autorizado para la
modificacin solicitada e Id errneo. En cada una de las tareas
puede modificar su propia prioridad imbocante al
procedimiento SET_PRIORITY, pre declarado en el lenguaje.
Respuestas de error
El tratamiento de las respuestas de error del procedimiento de
condiciones esta menos remarcado de lo que dicta su papel
en la programacin del sistema. El problema es que las
respuestas de error son en gran medida dependientes del
sistema y por lo tanto difciles en generalizar sin hacer gran
cantidad de suposiciones adicionales no pertinentes. Sin

embargo la importancia de examinar los indicadores de xito /


fallo devueltos por el SO despus de cada invocacin de una
llamada al sistema es crtica para el correcto funcionamiento
de un programa y de un sistema entero. Probablemente el
modo ms fcil de distinguir a un programador de sistemas
novato es por la ausencia de comprobacin de estos despus
de cada llamada al SO.
En muchos casos el sistema operativo reacciona a parmetros
de invocacin ilegal devolviendo simplemente el control a los
procesos imbocante, con una indicacin de la razn de
rehusar o no poder realizar la accin.
Adems cuando una peticin de servicio debe ser denegado
debido a una escasez temporal del recurso especifico, SO
indica el echo del mismo modo. Los diseadores de SO
esperan que los usuarios comprueben estos indicadores y
vuelvan a intentar la llamada o modifiquen los parmetros
cuando sean necesarios.
Es muy importante comprender que la sola invocacin al SO
para efectuar el servicio no garantiza de ningn modo que el
servicio deseado vaya a ser prestado. Puede o no hacerlo
dependiendo de la validez de los parmetros, la autorizacin
del proceso imbocante y el estado operacional del sistema en
el momento. Por ejemplo una peticin por otro lado legtimo
de crear un proceso puede ser denegado por el SO debido a
que el depsito de memoria para BCP esta temporalmente
agotado o que ha sido excedida la cuota de proceso activos.
Cache de Disco y Cache de Bferes en Unix
La idea es mantener un depsito de bloques de disco en
memoria y eliminar accesosa discos repetidos satisfaciendo
dese la memoria las peticiones de lectura y/o escritura para
los bloques disco ms frecuentemente utilizados.

En Unix los bloques de disco capturados son gestionados por


el ncleo y se les denomina cache de bferes y la cache de
disco que se implementaba como una unidad aadida.
CACHE DE DISCO
Esta opera manteniendo en memoria principal un depsito de
bloques de disco recientemente utilizados. Las peticiones de
entrada y salida de disco emitidas por el proceso en ejecucin
se presentan primero al gestor de cache para que este
determine si el bloque deseado se encuentra ya en memoria.
Si el bloque disco solicitado no se encuentra en la cache, se
produce un fallo en la cache de disco y la peticin se satisface
accediendo al disco.
La captura de bloques de disco se puede aplicar tanto de
lecturas como de escrituras.
En caso de escritura el contenido del bloque proporcionado
por el proceso en ejecucin puede ser escrito desde la cache,
tras lo cual se devuelve al solicitante una indicacin de
terminacin. La escritura real en disco se puede efectuar en el
tiempo que le convenga al sistema operativo. A este modo de
escritura se le conoce como escritura retardada.
Por ejemplo:
Cuando el bloque de memoria necesita ser liberado por otra
asignacin.
VENTAJAS DE LA ESCRITURA RETARDADA
El tiempo de respuesta experimentado por el proceso de
ejecucin, mejora notablemente, esto es ventajoso en
sistemas interactivos
Se eliminan algunos accesos a disco cuando el mismo bloque
es escrito y ledo repetidamente mientras reside en cache.
DESVENTAJAS

Es la corrupcin de sistema de archivo debido a prdidas del


suministro de energa y a cadas del sistema, esto cuando son
sistemas con memoria principal voltil.
Es la recuperacin de los errores que ocurren durante las
escrituras reales en disco retardadas, para no caer en este
error es necesario que vaciemos la cache esto mediante la
unidadshutdown y para verificar si han desconectado
correctamente se utiliza la unidad fsck, para verificar la
integridad del sistema de archivos, e intentar repararlo si esta
corrompido.

Bibliografa
http://pepemorales.galeon.com/Doc/ssoo_7.htm

Anda mungkin juga menyukai