lunes, 7 de marzo de 2016
Concurrencia y secuenciabilidad
CONCURRENCIA Y
SECUENCIABILIDAD
CONCURRENCIA:
La concurrencia comprende un gran número de cuestiones de
diseño, incluyendo la comunicación entre procesos, comparación y competencia
por los recursos, sincronización de la ejecución de varios procesos y
asignación del tiempo de procesador a los procesos y es fundamental para que
existan diseños como Multiprogramación, Multiproceso y Proceso distribuido.
La concurrencia puede presentarse en tres contextos diferentes:
v
Varias
aplicaciones: La multiprogramación se creó para permitir que el tiempo de
procesador de la máquina fuese compartido dinámicamente entre varios trabajos o
aplicaciones activas.
v
Estructura
del sistema operativo: Las mismas ventajas de estructuración son aplicables
a los programadores de sistemas y se ha comprobado que algunos sistemas
operativos están implementados como un conjunto de procesos. Existen tres
modelos de computadora en los que se pueden ejecutar procesos concurrentes.
v
Multiprogramación
con un único procesador. El sistema operativo se encarga de ir repartiendo
el tiempo del procesador entre los distintos procesos, intercalando la
ejecución de los mismos para dar así una apariencia de ejecución simultánea.
SECUENCIABILIDAD
Los archivos secuenciales son un tipo de archivo en los que
la información puede leerse y escribirse empezando desde el principio del
archivo.
Debemos tomar en consideración algunas características que
deben tener los archivos secuenciales:
1.
La escritura de nuevos datos siempre se hace al
final del archivo.
2.
Para leer una zona concreta del archivo hay que
avanzar siempre, si la zona está antes de la zona actual de lectura, será necesario
"rebobinar" el archivo.
3.
Los ficheros sólo se pueden abrir para lectura o
para escritura, nunca de los dos modos a la vez.
http://wwwsistemasoperativos-tere.blogspot.mx/2011/08/secuenciabilidad.html.
http://administraciondeprocesos-jeronimo.blogspot.mx/2008/10/24-concurrencia-y-secuenciabilidad.html.
martes, 1 de marzo de 2016
Cuestionario Unidad 2
1. ¿QUÉ ES UN PROCESO?
En esencia un programa en ejecución, cada proceso
tiene asociado un espacio de direcciones en una lista de ubicaciones que va
desde algo mínimo hasta un cierto valor máximo.
2. MENCIONA LAS JERARQUÍAS DE LOS PROCESOS:
Proceso padre
Proceso hijo, etc.
3. HAY 4 EVENTOS PRINCIPALES QUE PROVOCAN LA
CREACIÓN DE PROCESOS. MENCIÓNALOS:
*arranque del sistema
*la ejecución, desde un proceso, de una llamada al
sistema para la creación de procesos
*una petición de usuario para crear un proceso
*el inicio de un trabajo por lotes.
4. UNA VEZ QUE SE CREA UN PROCESO, EMPIEZA A
EJECUTARSE Y REALIZA EL TRABAJO AL QUE
ESTÁ DESTINADO. ESTE PROCESO TARDE O TEMPRANO TERMINARA, MENCIONA BAJO QUÉ
CONDICIONES:
Salida normal (voluntaria)
Salida por error (voluntaria)
Error fatal (voluntaria)
Eliminada por otro proceso (voluntaria)
5. ¿A QUE SE REFIERE CON UN ESTADO LISTO?
Ejecutable, se detuvo temporalmente para dejar que
otro proceso se ejecute.
6. MENCIONA QUE ES UNA TRANSICIÓN EN LOS
PROCESOS:
Un proceso puede encontrarse en estado de
ejecución, bloqueado o listo (que también se llama ejecutable). De estos estados de los procesos se derivan
las transiciones y estados
7. ¿QUÉ ES UN HILO?
Un hilo tendrá lo siguiente:
*Estado.
*Contexto del procesador. Punto en el que estamos
ejecutando, la instrucción concretamente en la que nos hallamos. Es útil a la
hora de reanudar un hilo que fue interrumpido con anterioridad, puesto que al
guardar el contexto, guardamos la última instrucción que ejecutamos, y así
podemos conocer por donde tenemos que continuar la ejecución del hilo.
*Pila de ejecución donde se irá metiendo y sacando
instrucciones. (Lugar donde almacenaremos las instrucciones que van a ser
ejecutadas).
*Espacio de almacenamiento estático donde
almacenará las variables.
*Acceso a los recursos de la tarea, que son
compartidos por todos los hilos de la tarea.
VENTAJAS:
*Se tarda menos tiempo en crear un hilo de una
tarea existente que en crear un nuevo proceso.
*Se tarda menos tiempo en terminar un hilo que en
terminar un proceso.
*Se tarda menos tiempo en cambiar entre dos hilos
de una misma tarea que en cambiar entre dos procesos (porque los recursos no
cambian, por ejemplo)
*Es más sencillo la comunicación (paso de mensajes
por ejemplo) entre hilos de una misma tarea que entre diferentes procesos.
*Cuando se cambia de un proceso a otro, tiene que
intervenir el núcleo del sistema operativo para que haya protección. Cuando se
cambia de un hilo a otro, puesto que la asignación de recursos es la misma, no
hace falta que intervenga el sistema operativo.
8. ¿CUÁNDO SE IMPLEMENTA EL MODELO DE PROCESOS
EN EL SISTEMA OPERATIVO?
Debe contener una tabla ( un arreglo de estructuras),
llamada tabla de procesos, con solo una entrada por cada proceso (llamadas
bloques de control de procesos)
Suscribirse a:
Entradas (Atom)