Académique Documents
Professionnel Documents
Culture Documents
7. Investiga
en
qu
consiste
el
"mecanismo
de
interrupciones" con el que funcionan el SO y el kernel
del procesador.
Consiste en ejecutar un bloque de instrucciones interrumpiendo
la ejecucin del proceso para poder realizar alguna necesidad
urgente del ordenador y despus restablecer el proceso
directamente sin afectarlo. Existen tres tipos de interrupciones:
las interrupciones internas de hardware (generadas por algunos
eventos que surgen durante la ejecucin del proceso), las
interrupciones externas de hardware (generadas por perifricos
o coprocesadores) y las interrupciones de software (generadas
internamente).
8. Cules son los estados por los que puede pasar un
proceso? Explica con tus palabras en qu consiste cada
uno de ellos. Quin se encarga de cambiar de estado
los procesos?
Nuevo: se est creando el proceso todava no est acabado.
Listo: El proceso est acabado pero no est en ejecucin.
En ejecucin: El proceso se encuentra ejecutndose.
Bloqueado: El proceso ha parado debido algn suceso.
Terminado: El proceso ha acabado de ejecutarse.
El sistema operativo se encarga de cambiar el estado de los
procesos.
9. Debido a la programacin concurrente el SO puede
admitir en memoria varios procesos, para ello puede
organizar los datos en forma de "pilas" o "colas". Qu
diferencia hay entre estas dos formas de almacenaje?
Cul es realmente la que utiliza el SO?
En una pila el elemento que entra el ltimo es el primero que
sale y en una cola el primer elemento es el primero que sale. El
sistema operativo utiliza las colas.
10.
Haz un diagrama explicativo de los estados por los
que pasa un proceso utilizando las siguientes palabras:
terminado, listo, bloqueado, nuevo, en ejecucin,
admitido,
E/S,
evento,
finalizacin,
interrupcin,
planificacin.
Nuev
Admitido
o
Interrupcin Listo
En ejecucin
Finalizacin
Evento
Planificacin
E/S
Bloquead
o
Terminad
o
11.
De qu se encarga la "planificacin de procesos a
largo plazo"?
La planificacin de procesos a largo plazo se encarga de decir
que procesos nuevos deben pasar a la cola de procesos
preparados, controla el nivel de la multiprogramacin.
12.
Si en algn momento se crea un nuevo proceso
qu planificacin de proceso se utiliza? Y si se ha
terminado un proceso?
Si se crea un nuevo proceso se utiliza una planificacin a largo
plazo, que selecciona que procesos nuevos son enviados a la
cola de procesos preparados y cuando ha terminado un proceso
este libera su imagen de la memoria llamando al sistema para
indicrselo o tambin puede ser el mismo el que finalice
mediante una excepcin.
13.
16.
Investiga cmo asigna Windows los nmeros PID a
los procesos.
Para asignar el PID el kernel utiliza internamente una variable
global que se incrementa con cada proceso nuevo creado con la
llamada createProcess(), Cuando dicha variable alcanza un
18.
Explica cmo se comunican el usuario y un proceso
hijo en JAVA.
En Java el usuario no puede comunicarse directamente con un
proceso hijo sino que todas las salidas y entradas de
informacin tienen que pasar por el proceso padre
redirigindolas hacia el a travs de los siguientes flujos de
datos:
OutPutStream: es el flujo de salida del proceso hijo.
InputStream: es el flujo de entrada del proceso hijo.
ErrorStream: es un flujo de eror del proceso hijo.
Se pueden identificar errores de forma sencilla usando el
mtodo redirectErrorStream(boolean) de la clase ProcessBuilder.
Con estos pasos el proceso padre enva datos al proceso hijo y
el padre recibe los resultados de salida que el hijo genera con
los errors comprobados.
19.
Qu otras formas de comunicacin existen adems
de los flujos de datos? Explcalas brevemente.
Utilizando sockets: un socket es un conector que recibe o
solicita peticiones de conexin.
Usando JNI (Java Native Interface): permite que programas
escritos en Java y ejecutado en la mquina virtual de Java
pueda comunicarse con otros programas escritos en otros
lenguajes.
Utilizando libreras de comunicacin para que puedan aumentan
los mtodos de comunicacin entre procesos.
20.
Para qu se utiliza la operacin "wait"? Cmo
funciona?
Se utiliza cuando el proceso padre necesita esperar a que el
proceso hijo termine para que el proceso padre pueda continuar
con su ejecucin con los datos obtenidos del proceso hijo.
El proceso padre espera bloqueado mediante waitFor() hasta
que el proceso hijo finalice e inmediatamente vuelve a
ejecutarse el padre, el proceso hijo puede ser interrumpido con
la interrupcin InterruptedException. Tambin se puede usar
exitValue(), con esto obtenemos el valor de retorno que el
proceso hijo a devuelto. Si el proceso hijo no ha terminado se
lanza la excepcion Ille
21.
Explica con tus palabras cules son las fases que
deben seguirse para crear un programa multiproceso.
Primero hay que identificar todas las funciones que tiene que
hacer la aplicacin y las relaciones que tienen entre ellas, luego
hay que distribuir las diferentes funciones identificadas
anteriormente en procesos y como se van a comunicar entre
ellos de la manera ms eficiente posible y por ultimo
implementar todo.
22.
Para finalizar escribe un texto "coherente" en el
que resumas toda la informacin recabada al contestar
las preguntas.
Para empezar tenemos que saber que el sistema operativo hace
de intermediario entre el usuario y las aplicaciones/hardware
que utiliza el ordenador, entre sus funciones cabe destacar:
ejecutar los programas del usuario, hacer que sea ms fcil
usar el ordenador y que el ordenador funcione de forma
eficiente. Y tambin es muy importante saber que un proceso