Procesos (Sistemas De Operación)
Enviado por JonathanYo • 10 de Junio de 2015 • 1.587 Palabras (7 Páginas) • 17.691 Visitas
1. ¿Puede pasar un programa de estado bloqueado a ejecución?
No, un programa o proceso jamás pasa de estado ‘bloqueado’ a estado de ‘ejecución’, la transición que relaciona a estos dos estados sería de estado de ‘ejecución’ a ‘bloqueado’. Un proceso pasa de estar ‘bloqueado’ a estar ‘preparado’, es decir, cuando el proceso recibe una orden o señal que estaba esperando para pasar al estado de ‘preparado’, y posteriormente, tras la transición, a estado de ‘ejecución’.
2. Cuando se lanza un nuevo proceso ¿Pasa este directamente a ejecución?
Cuando un proceso se lanza, nunca se ejecuta directamente, sino que se coloca en la cola de procesos en un estado denominado ‘preparado’. Cuando la UCP le asigna su tiempo, el proceso pasa de ‘preparado’ a ‘ejecución’. Estos dos estados se alternarán en caso de que se esté ejecutando más de un proceso en el sistema.
3. ¿Cuántas instrucciones puede procesar en un instante de tiempo la UCP?
En principio una sola. Pero en CPU’s de alto rendimiento hay capacidad de solapamiento entre instrucciones sucesivas. Los computadores paralelos poseen varios CPU’s de alto rendimiento trabajando simultáneamente. Aún computadores sencillos usualmente, además del CPU que ejecuta los programas, tienen varios procesadores dedicados a distintas tareas, como el control de un dispositivo periférico.
4. ¿Quién asigna las prioridades a los procesos en un sistema multiproceso?
Los diferentes estados tienen una relación directa con lo que vamos a denominar prioridades, que son aquellas que el administrador del sistema, o el propio sistema, asignan a cada proceso. De ello dependerá que un proceso se ejecute en más o menos tiempo. Se pueden establecer prioridades en función de la necesidad de ejecución de algunos programas. Los programas que más se ejecutan, es decir, los más necesarios, tendrán prioridad de ejecución sobre aquellos que se ejecutan muy de cuando en cuando. Es ahora cuando hemos de hablar de la planificación. Con esta técnica conseguimos indicar al ordenador los procesos que deben ejecutarse y los estados que estos deben adoptar. Gracias a los algoritmos de planificación podemos decidir qué proceso ha de ejecutarse en cada momento y por qué. Algunas características de estos algoritmos son la imparcialidad, la equidad, la eficiencia, el tiempo de respuesta y el rendimiento. Para ejecutar un proceso, introducimos en el indicador de comandos (shell en UNIX, command.com en Windows) el nombre de un fichero ejecutable o hacemos doble clic con el ratón sobre el icono que representa un programa ejecutable (por ejemplo: Explorer en Windows). De esta forma, el sistema operativo prepara el programa a través del cargador para lanzarlo a ejecución. Una vez cargado el proceso, el sistema operativo asigna a través del planificador la prioridad del nuevo proceso respecto de los que hay en ejecución. De esta forma, cada proceso atraviesa varias fases. En un momento dado, el proceso se estará ejecutando; posteriormente estará en espera, mientras la UCP ejecuta otro; otros procesos estarán preparados para ser lanzados; otros podrán estar bloqueados, etc. Pues bien, en estos cambios de proceso, el sistema operativo tiene que saber qué ficheros están abiertos en cada proceso, qué periféricos se están utilizando, etc. Cuando se están ejecutando varias tareas a la vez (procesos), es necesario compartir el tiempo de trabajo de la UCP. El tiempo compartido consiste en dividir el tiempo de ejecución del procesador en minúsculos intervalos de tiempo (quantum) e ir asignando cada uno de esos intervalos de ejecución a cada proceso que está en ejecución.
5. ¿Desde dónde y cómo se pueden lanzar los procesos en los sistemas Windows y Linux?
Gracias a los algoritmos de planificación, el cargador, planificador, BCP, recursos hardware y software se sincronizan mediante el sistema operativo para la ejecución ordenada de los procesos. En programas multihilo o multihebra, el BCP puede contener además el PPID, o Process Parent IDentification. Este dato referencia el PID del proceso padre dentro del BCP, de tal forma que desde el propio BCP se pueden identificar todos los procesos que son hijos de otro, siempre y cuando tengan el mismo PPID. Es evidente que en procesos convencionales, este dato en el BCP no existirá.
6. En un sistema operativo monoproceso, ¿cómo se planifica la ejecución de varios procesos?
La planificación se hace en tres instantes de tiempo. De estos tres, uno no lo realiza el sistema operativo, sino que es externa al procesamiento, pero tiene una influencia enorme sobre la definición del procesamiento, dado que el sistema operativo queda determinado por las decisiones que se toman en este nivel. A esta instancia le daremos el nombre de "extra largo plazo" por ser en la escala de tiempo del ser humano.
En la administración del procesador podemos distinguir tres niveles de planificación de acuerdo a la escala de tiempo en que se realiza la misma. El largo plazo en segundos, mediano plazo en milisegundos y el corto plazo en nanosegundos o microsegundos.
Planificación a largo plazo:
El planificador a largo plazo, scheduler o planificador de trabajos, es un administrador que se encarga de organizar la ejecución
...