Professional Documents
Culture Documents
PROFESOR:
Llaves de proteccin
El concepto de llave de proteccin, conocido en ingls como protection
key, divide la memoria fsica en bloques de un tamao particular (ej.
2KB), de forma que cada uno de ellos tiene asociado un nmero
denominado llave de proteccin. Cada proceso est asociado con una
llave de proteccin. A la hora de acceder a la memoria el hardware
comprueba que la llave de proteccin del proceso actual coincide con el
del bloque de memoria al que se accede, en caso contrario se produce
una excepcin. Este mecanismo se us en la arquitectura del
System/360.
Direccionamiento basado en la capacidad
El direccionamiento basado en la capacidad es un interesante concepto
para la proteccin de memoria, aunque ya no se use en las
computadoras modernos.
3. EXPLICA Y DA UN EJEMPLO DE LAS TCNICAS DE PARTICIN
DE MEMORIA A UN PROCESO.
Una particin de un disco duro es una divisin lgica en una unidad de
almacenamiento (por ejemplo un disco duro o unidad flash), en la cual
se alojan y organizan los archivos mediante un sistema de archivos.
Existen distintos esquemas de particiones para la distribucin de
particiones en un disco. Los ms conocidos y difundidos son MBR
(Master Boot Record) y GPT (GUID Partition Table).
4. TECNICAS DE ASIGNACION DE MEMORIA.
Paginacin.
La paginacin consiste en considerar el espacio de direcciones lgicas
de cada proceso como un conjunto de bloques de tamao consistente
llamados pginas. Cada direccin lgica manejada para un proceso
estar
conformada
por
un
par
de
valores
[pgina:
desplazamiento].Obviamente el tamao de un 'marco' debe ser igual al
tamao de una pgina y por lo general el tamao designado para los
marcos y pginas es pequeo. El almacenamiento real es particionado
en marcos del mismo tamao que las pginas. De este modo una pgina
puede y debe ser almacenada slo en un marco y viceversa. Se utiliza
tambin una tabla de pginas en la cual sern almacenadas todas las
Segmentacin.
Es posible generalizar la idea de separar la parte de programa y datos, y
dividirla memoria en tantos trozos de longitud variable como sea posible
y necesario. Este procedimiento es conocido como segmentacin. As,
por ejemplo, cada rutina podra pertenecer a un trozo separado. El
tamao mximo para un segmento estar determinado por la capacidad
de direccionamiento del hardware de la computadora, esto es, de
cuantos bits se dispone para almacenar una direccin. El acceso a cada
elemento individual (byte) en la memoria se hace mediante una
direccin de memoria que se integra por dos elementos: una direccin
de segmento y una de desplazamiento. La segmentacin tiene
considerables ventajas desde el punto de vista administrativo de la
memoria, ya que es ms fcil encontrar trozos libres pequeos. Adems,
no es necesario tener todo el programa en memoria a la vez; basta tener
aquellos segmentos, de l, que verdaderamente estn participando de la
ejecucin.
Fragmentacin.
Tanto para el caso de la paginacin, para el de segmentacin y en
general en todos los sistemas de cmputo (sea cual sea la organizacin
de su almacenamiento), se presenta la fragmentacin del
almacenamiento. En los sistemas de multiprogramacin y particiones
fijas, la fragmentacin se presenta porque los trabajos de los usuarios
(pginas) no llenan por completo las particiones designadas (marcos) o
porque una particin se queda sin utilizar por ser demasiado pequea
para almacenar una tarea en espera. La fragmentacin se presenta en
todas las formas de almacenamiento y a todo nivel de informacin. En el
caso de la paginacin, cuanto menor sea el tamao de las pginas, ms
pginas y marcos de pgina habr y mayores tendrn que ser las tablas
de marcos. El desperdicio de almacenamiento primario debido atablas
excesivamente grandes se denomina fragmentacin de tablas.
Memoria compartida.
Tienen espacios de direccionamiento que son independientes entre s. Sin
embargo, muchas aplicaciones de tiempo real (y tambin muchas que no son
de tiempo real) necesitan compartir grandes cantidades de datos de una
manera eficiente.
La memoria es uno de los recursos ms importantes de la computadora y, en
consecuencia, la parte del sistema operativo responsable de tratar con este
recurso, el gestor de memoria, Es un componente bsico del mismo. El gestor
de memoria del sistema operativo debe hacer de puente entre los requisitos de
las aplicaciones y los mecanismos que proporciona el hardware de gestin de
memoria. Se trata de una de las partes del sistema operativo que est ms
ligada al hardware. Esta estrecha colaboracin ha hecho que tanto el hardware
como el software de gestin de memoria hayan ido evolucionando juntos. Las
necesidades del sistema operativo han obligado a los diseadores del hardware
a incluir nuevos mecanismos que, a su vez, han posibilitado el uso de nuevos
esquemas de gestin de memoria.
Planificacin Round-robin
Round-robin con pesos.
Prioridades montonas en frecuencia (RMS (Rate-monotonic scheduling))
Menor tiempo de respuesta primero (EDF (Earliest deadline first
scheduling))
FIFO - Tambin conocido como FCFS "First Come, First Served".
LIFO.
SJF - Shortest Job First.
CFS - Completely Fair Scheduler ( Planificador Completamente Justo)
SRT - Shortest Remaining Time
SPT - Shortest Process Time
Planificacin mediante colas multinivel.
Prioridad al ms corto.
Su nombre es SJF (Shortest Job First). El proceso que se encuentra en ejecucin
cambiar de estado voluntariamente, o sea, no tendr un tiempo de ejecucin
determinado para el proceso. A cada proceso se le asigna el tiempo que usar
cuando vuelva a estar en ejecucin, y se ir ejecutando el que tenga un menor
tiempo asignado. Si se da el caso de que dos procesos tengan igual valor en
ese aspecto emplea el algoritmo FCFS.
Round Robin
A cada proceso se le asigna un tiempo determinado para su ejecucin, el
mismo tiempo para todos. En caso de que un proceso no pueda ser ejecutado
completamente en ese tiempo se continuar su ejecucin despus de que
todos los procesos restantes sean ejecutados durante el tiempo establecido.
Directa
Las primitivas enviar y recibir explicitan el nombre del proceso con el que se
comunican. Ejemplo:
enviar (mensaje, A) enva un mensaje al proceso A.
Es decir se debe especificar cul va a ser el proceso fuente y cul va a ser el
proceso Destino.
Indirecta
La comunicacin Indirecta: Es aquella donde la comunicacin est basada en
una herramienta o instrumento ya que el emisor y el receptor estn a
distancia.
Simtrica
Todos los procesos pueden enviar o recibir. Tambin llamada bidireccional para
el caso de dos procesos.
Asimtrica
Un proceso puede enviar, los dems procesos solo reciben. Tambin llamada
unidireccional. Suele usarse para hospedar servidores en Internet.
Uso de buffers automtico
El transmisor se bloquea hasta que el receptor recibe el mensaje (capacidad
cero).
14.
CULES SON LOS SERVICIOS POSIX PARA LA GESTIN DE
PROCESOS?
POSIX es el acrnimo de Portable Operating System Interface; la X viene de
UNIX como sea de identidad de la API(es la abreviatura de Aplication
Programming Interface. Un API no es ms que una serie de servicios o
funciones que el Sistema Operativo ofrece al programador, como por ejemplo,
_exit
Procesos
getpid
Procesos
wait, waitpid
Procesos
execl,
execv,
execle,
execve,
execlp, execvp
Procesos
fork
Procesos
getppid
Procesos
getgid, getegid
Procesos
kill
Procesos
waitpid
Termina
proceso
el
Obtiene
identificador del
proceso
Obtiene
informacin
de
proceso
ya
terminado
Ejecuta
un
programa (no
hay equivalente
en Win32)
Crea
proceso
duplicado (no
hay equivalente
en Win32)
Obtiene id. del
padre (en Win32
no hay relacin
padre/hijo)
Obtiene id. del
grupo (en Win32
no hay grupos de
procesos)
Fainaliza
la
ejecucin de un
roceso
Espera
la
terminacin
de
un proceso (en
Win32
de
mltiples
procesos)
Procesos
wait, waitpid
Espera
terminacin
un proceso
la
de
15.
CULES SON LOS SERVICIOS WIN32 PARA LA GESTIN DE
PROCESOS?
Versin del API de Windows de 32 bits. Est compuesta por funciones en C
almacenadas en libreras de enlace dinmico (DLL), especialmente en las del
ncleo:
kernel32.dll
user32.dll
gdi32.dll
La extensin 64 bits de la versin 32 bits se llama Win64.
La versin anterior a Win32 se llama Win16.
Proceso
Proceso
CreateProcess
ExitProcess
Proceso
GetCurrentProcess,GetCurrentPr
ocessId
Proceso
GetExitCodeProcess
Proceso
TerminateProcess
Proceso
WaitForMultipleObjects
(manejadores de procesos)
Proceso
WaitForSingleObject (manejador
de proceso)
Termina el proceso
Obtiene
identificador
del
proceso
Obtiene
informacin
de
proceso
ya
terminado
Ejecuta
un
programa (no hay
equivalente
en
Win32)
Finaliza la ejecucin
de un proceso
Espera
la
terminacin de un
proceso (en Win32
de
mltiples
procesos)
Espera
la
terminacin de un
proceso
Servicios posix
POSIX (Interfaz de sistema operativo portable) es una norma escrita por la
IEEE. Dicha norma define una interfaz estndar del sistema operativo y el
entorno, incluyendo un intrprete de comandos (o "shell"), y programas de
utilidades comunes para apoyar la portabilidad de las aplicaciones a nivel de
cdigo fuente. El nombre POSIX surgi de la recomendacin de Richard
Stallman, que por aquel entonces en la dcada de 1980 formaba parte del
comit de IEEE.
Servicios win32
Versin del API de Windows de 32 bits. Est compuesta por funciones en C
almacenadas en libreras de enlace dinmico (DLL), especialmente en las del
ncleo:
kernel32.dll
user32.dll
gdi32.dll
La extensin 64 bits de la versin 32 bits se llama Win64.
La versin anterior a Win32 se llama Win16.
Comunicacin entre procesos
La comunicacin entre procesos (comnmente IPC, del ingls Inter-Process
Communication) es una funcin bsica de los sistemas operativos. Los
procesos pueden comunicarse entre s a travs de compartir espacios de
memoria, ya sean variables compartidas o buffers, o a travs de las
herramientas provistas por las rutinas de IPC. La IPC provee un mecanismo que
permite a los procesos comunicarse y sincronizarse entre s, normalmente a
travs de un sistema de bajo nivel de paso de mensajes que ofrece la red
subyacente.
La comunicacin se establece siguiendo una serie de reglas (protocolos de
comunicacin). Los protocolos desarrollados para internet son los mayormente
usados: IP (capa de red), protocolo de control de transmisin (capa de
transporte) y protocolo de transferencia de archivos, protocolo de transferencia
de hipertexto (capa de aplicacin).
Los procesos pueden estar ejecutndose en una o ms computadoras
conectadas a una red. Las tcnicas de IPC estn divididas dentro de mtodos
para: paso de mensajes, sincronizacin, memoria compartida y llamadas de
procedimientos remotos (RPC). El mtodo de IPC usado puede variar
dependiendo del ancho de banda y latencia (el tiempo desde el pedido de
informacin y el comienzo del envo de la misma) de la comunicacin entre
procesos, y del tipo de datos que estn siendo comunicados.
Seccin critica
Esa parte del programa en la que se accede a la memoria compartida se
conoce como regin crtica o seccin crtica.
Aunque este requerimiento evita las condiciones de carrera, no es suficiente
para que los procesos en paralelo cooperen de la manera correcta y eficiente al
utilizar datos compartidos. Necesitamos cumplir con cuatro condiciones para
tener una buena solucin:
1. No puede haber dos procesos de manera simultnea dentro de sus regiones
crticas.