ARQUITECTURA DE COMPUTADORES

Documentos relacionados
Conceptos de Planificación

ALGORITMOS DE PROGRAMACIÓN NO EXPULSIVOS

Convivencia Gestión de Procesos

Sistemas Operativos. Grado Ingeniería Informática. TGR Procesos.

Objetivos de la Planificación. Planificación Monoprocesador. Tipos de Planificación. Tiempo de respuesta Productividad Eficiencia del procesador

PRÁCTICO 3. Comprender la administración de procesos e hilos de los sistemas operativos Comprender la tarea y la elección de un planificador.

Tema 2: Gestión de la CPU

Tema 1: Introducción a los S.O. Ejercicios de Planificiación de Procesos

- Bajo que condiciones el algoritmo de planifiación de procesos FIFO (FCFS) resultaría en el tiempo de respuesta promedio más pequeño?

SISTEMAS OPERATIVOS: PROCESOS. Planificación de procesos

SISTEMAS OPERATIVOS: Lección 4: Planificación de Procesos

Capítulo 5: Despacho de CPU

PLANIFICACION DE LA CPU

Sistemas Operativos Tema 6. Planificación de procesos José Miguel Santos Alexis Quesada Francisco Santana

6. Planificación. Los procesos tienden a tener ráfagas de ejecución (CPU-burst) y ráfagas de espera de operaciones de E/S (I/O burst).

El modelo de Procesos

Unidad 2: Gestión de Procesos

Gestión de Procesos. Concepto. Concepto y criterios de planificación. Utilización del procesador:

EJERCICIOS TEMAS 1 Y 2 - SO SOLUCIONES

Sistemas Operativos. Práctica 2: Scheduling

Arquitectura de Computadores (obligatoria)

Para ingresar a la aplicación Microsoft Access 97, los pasos que se deben seguir pueden ser los siguientes:

Cambia al área de trabajo situada debajo de la actual.

Guía de uso del programa AVR-Studio

Participantes: Avila Aida Betancourt Sioly Briceño Susana Rojas Alejandro

Microsoft Office Word

5.- Despacho de CPU. Utilización máxima de CPU con multiprogramación. Ciclo CPU I/O Ejecución de un proceso = ciclo de CPU (ejecución) y espera de I/O

INTRODUCCIÓN A IMPRESS 1. INTRODUCCIÓN

Fundamentos de Ordenadores. Depurar programas usando Nemiver

Test SITR Temas: Planificación, Sincronización, Comunicación entre Procesos, Relojes, Señales, Temporizadores (TestSITR_T4 T9)

POWER POINT Tema 1. Para salir de PowerPoint (suponiendo que se tiene abierto) puede:

Mercedes Fernández Redondo

Introducción. Conceptos de Microsoft Excel

PRÁCTICA 2 DE LABORATORIO: GESTIÓN DE RECURSOS DE MEMORIA Y PROCESADOR EN LINUX CENTOS

Universidad de Sevilla. Área de Ingeniería Telemática. Área de Ingeniería Telemática. Universidad de Sevilla. Fundamentos de Telemática

La última versión disponible cuando se redactó este manual era la 5 Beta (versión ), y sobre ella versa este manual.

Funciones básicas del depurador

INTRODUCCIÓN A CALC Calc

Figura 1. Logotipo de Windows (Microsoft Corporation, 2001).

Sistemas informáticos industriales. Sistemas Operativos

Planificación de Monoprocesadores.

INTRODUCCIÓN USANDO EL SIMULADOR

Administración del Procesador

Seminario Diseño y construcción de microrrobots Planificador de monoprocesadores Marzo 2006 SEMINARIO DISEÑO Y CONSTRUCCIÓN DE MICRORROBOTS

Modelo Dinámico del Diseño del Software y Representación en UML. UNIDAD 9 Análisis y Diseño de Sistemas de Información

Utilidades 6ª Sesión Formativa 30 de Julio del :30AM

INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE MEDICINA Academia de Informática Médica Apéndice de Windows

ALMACENAMIENTO Y RECUPERACIÓN DE UN LIBRO

Tarea 2. Descripción y Control de Procesos

Tema 12: El sistema operativo y los procesos

Capítulo 2. Sistemas Operativos. Elementos, estructura y funciones generales.

ARQUITECTURA DE COMPUTADORES. Práctica 9

Actividades de Teoría de Sistemas Operativos Sistemas informáticos multiusuario y en red

1. Nueva rejilla de datos

Planificación de Procesos. Módulo 5. Departamento de Informática Facultad de Ingeniería Universidad Nacional de la Patagonia San Juan Bosco

Sistemas Operativos (Parte 2)

Hilos Secciones Stallings:

Cuentacuentos Digital: El Capitán de la Capa Roja Manual de Usuario y de Instalación

Manual de usuario de Kiva

Puntos de modificación de un dibujo

Elaboración de Documentos en Procesadores de Textos

Pontificia Universidad Católica del Ecuador

Vemos, pues, que esta forma de organizar los datos es mucho más potente que utilizando las tabulaciones u otros métodos.

SISTEMAS OPERATIVOS, 10 de septiembre de 2009 Examen Convocatoria Extraordinaria

Audio ::: Primeros pasos con Audacity Diseño de materiales multimedia. Web Primeros pasos con Audacity

Sistemas Operativos. Oscar Bedoya

Seminario de Programación en Ada

Barra de herramientas estándar. Barra de herramientas principales. Barra de herramientas de cámara. Barra de herramientas "Estilo de cara"

Programación de autómatas

SIMM: TEORÍA DE LOS S.O. I.E.S. JUAN DE LA CIERVA CURSO 2007/2008

Trabajar con diapositivas

LA HOJA DE CÁLCULO HOJA DE CÁLCULO:

Ordenador local + Servidor Remoto

INTRODUCCIÓN A DRAW 1. INTRODUCCIÓN

Manual Writer INTRODUCCIÓN A WRITER

Pontificia Universidad Católica del Ecuador

MATERIA: TECNOLOGIA DE LA INFORMACION Y LAS COMUNICACIONES II DOCENTE: ING. MAYNOR GUILLERMO REYNADO RIVAS. UNIVERSIDAD TECNICA LATINOAMERICANA

AUTOMATIZACIÓN DE TAREAS REPETITIVAS MEDIANTE GRABACIÓN DE MACROS

Manual de usuario MetaTrader 4 TraderNovo:

Tema 2 Sistema operativo y aplicaciones básicas

Métodos de Asignación

MODULO 1 INTRODUCCION AL SISTEMA OPERATIVO

Ingeniería en Sistemas de Información Algoritmos y estructuras de datos Lazarus IDE V1.1

Tutorial de MuseScore, editor de partituras Primeros pasos

Una vez comenzada la ejecución de la aplicación aparece directamente la primera ventana del Asistente.

... Cómo empezar en WORD anfora CAPÍTULO 1. Introducción. Cómo entrar en WORD WORD 2000 Cómo empezar en WORD 2000

Ejercicio 1 - La primera imagen

AULAS VIRTUALES EN PLATAFORMA SCHOOLOGY

ACTIVIDADES PEDAGÓGICAS: lee el material que se te presenta a continuación y responde estas preguntas en tu cuaderno:

Se mostrará una ventana que no tiene porqué coincidir con la del ejemplo, pero será similar:

EDICIÓN DE VÍDEO: Kino

USO DE EXCEL COMO HERRAMIENTA DIDÁCTICA

GCC para plataforma Windows

Qué es Power Point 2010 y para qué es útil?

Uso de Fiery Link. Xerox Phaser

1 ( 3,5 puntos) Responda, justificando sus respuestas, a las siguientes cuestiones:

PERIODO 2-1 PRESENTADOR MULTIMEDIA POWERPOINT CONCEPTOS BÁSICOS INTRODUCCIÓN AL PROGRAMA MICROSOFT POWERPOINT

Planificador de Linux (Scheduler)

CURSO DE COMPUTACIÓN 2 TEMA: Excel 2007 (básico) [ACTIVIDAD 9] Manejo de la hoja de Cálculo Excel 2007

Sistemas operativos 2ª edición. Capítulo 4 Planificación del procesador (extracto de las transparencias del libro)

Transcripción:

ARQUITECTURA DE COMPUTADORES PRÁCTICA 6 PLANIFICACIÓN DE PROCESOS ENTRADA AL SISTEMA. La aplicación con la que vais a trabajar se encuentra en la página de la asignatura en la web http://personales.alc.upv.es/pabmitor/. Ahora haz lo siguiente: Conéctate a la web y bájate la aplicación en uno de tus directorios Descomprime el fichero de la aplicación Abre el directorio qplanif/bin/ Ejecuta en background el proceso qplanif-static, que aparece en ese directorio ($./qplanif-static&). Este ejecutable inicia la aplicación para la práctica de Planificación de Procesos Página 1

PRÁCTICA 4: PLANIFICACIÓN DE PROCESOS INTRODUCCIÓN E l objetivo de la práctica es comprender el funcionamiento de las distintas políticas de planifiación del procesador en sistemas mono-procesador. Al finalizar se tiene que conocer las ventajas e inconvenientes de cada una de las políticas analizadas. Se ha creado una aplicación gráfica que permite simular las distintas políticas de planificación. Esta aplicación carga un fichero de descripción del sistema, en el que se describen las características de las tareas que lo forman y luego, ya desde el entorno gráfico, se puede someter el conjunto de tareas a las ditintas políticas de planificación. El programa de simulación funciona sobre Linux, si bien están disponibles los programas fuentes y se puede compilar sobre otras muchas plataformas. Las políticas de planificación que se va a utilizar durante la práctica, y que se encuantran implementadas en el simulador son: First Come First Serve (FCFS), Shortest Job First (SJF), Shortest Remaining Time First (SRTF), Round Robin, Prioridades, Prioridades Expulsivas y Prioridades expulsivas + Round Robin. Se puede encontrar una breve descripción de cada una de estas políticas de planificación en el apéndice A. DESCRIPCIÓN DEL PROGRAMA Toda la actividad del programa se realiza desde la ventana principal: Desde el menú de "Archivos" se puede cargar el fichero de descripción de tareas (más adelante veremos su formato), fichero con la extensión ".def". Éste es un fichero de texto plano en el que se describe el comportamiento de las tareas que componen el sistema. El fichero se ha de editar desde un editor de texto. Página 2

Se pueden tener varias ventanas principales abiertas, teniendo en cada una de ellas un algoritmo de planificación distinto. Para obtener una nueva ventana se puede utilizar Ctrl-N o desde el menú "Archivos->Nueva ventana". El programa permite dos modos de visualización: completa o paso a paso, seleccionable desde un "botón" situado en una de las barras de herramientas. Con la ejecución paso a paso, el programa nos irá mostrando la situación del sistema hasta el instante que le indiquemos (localizado en la misma barra de herramientas). De esta forma se puede "jugar" a acertar cúal será la siguiente decisión que tomará el algoritmo de planificación. El algorimo de planificación empleado se elige en la primera lista desplegable de la segunda barra de herramientas. Todos los algoritmos que aquí aparecen son algorimos de planificación a excepción del primero, etiquetado como "Descripción". Con la descripción se puede ver gráficamente cuál es el comportamiento de cada tarea por separado. La politíca de gestión de recursos se elige desde la siguiente lista desplegable. Sólo se han implementado tres políticas: FCFS, SJF y prioridades fijas sin expulsión. Si el algorimo elegido es el Round Robin o el Prioridades con Round Robin, entondes se puede establecer el valor del quantum del sistema con el widget:. Los dos últimos widgets de esta barra permiten ajustar los parámetros de visualización. Debajo de las barras de herramientas, se encuentra el área de dibujo. En la parte izquierda aparecen los nombres de las tareas y a la derecha se encuentra el cronograma de cada tarea. AYUDA Con la tecla F1 (o desde el menú "Ayuda->Temas de Ayuda") aparece una ventana con ayudas tanto sobre el propio funcionamiento del programa como sobre los algoritmos de planificación disponibles. Se pueden abrir tantas ventanas de ayuda como se necesiten. Situando el ratón sobre el nombre de las tareas, aparece (al cabo de un segundo) un pequeño globo de ayuda con la información más relevante sobre la tarea en cuestión. El globo de ayuda está visible durante 6 segundos. Página 3

SÍMBOLOS DEL CRONOGRAMA Los rectangulos de colores representan el tiempo que una tarea está utilizando determinado recurso (o la CPU). La CPU está representada por el color azul claro. Cada recurso tiene un color distinto. La petición de un recurso por parte de una tarea está representado por una pequeña punta de flecha apuntado hacia arriba debajo de los rectangulos. Y sobre el rectangulo aparece el nombre del recurso. La terminación, o salida del recurso, está representado por una pequeña flecha apuntando hacia abajo encima de la tarea. TRABAJO DE LABORATORIO EJERCICIO 1: Dado el siguiente conjunto de tareas (fichero "solo_cpu.def"): Página 4

# Este conjunto de tareas no utiliza recursos TAREA "Tarea uno" INICIO=0 PERIODO=0 PRIORIDAD=2 [CPU, 6] TAREA "Tarea dos" PRIORIDAD=2 INICIO= 0 [ CPU, 5 ] TAREA "Tarea tres" PRIORIDAD=1 INICIO=0 [ CPU, 4 ] TAREA "Tarea cuatro" PRIORIDAD=1 INICIO=0 [CPU, 3] 1. Simúlalo paso a paso con cada una de las políticas de planificación intentando determinar con una unidad de tiempo de antelación cual será la siguiente tarea que se ejecute. 2. Qué algoritmo de planifiación ofrece un mejor tiempo de respuesta medio? 3. Calcula los tiempos de retorno de medio para cada algoritmo. 4. Cual es el valor del quantum más pequeño que hace que el algoritmo Round Robin se comporte como el FCFS para este conjunto de tareas? EJERCICIO 2: Para el conjunto de tareas del "dos_tareas.def": RECURSO "Disco SCSI" RECURSO "Teclado" RECURSO "Unidad Zip" # Los recuros se tiene que declarar antes de utilizarlos # Esta tarea copia un fichero del dico SCSI a Zip. TAREA "cp" INICIO=0 PERIODO=30 [CPU,2] [1,1] [CPU,1] [3,1] [CPU,1] [1,1] [CPU,1] [3,1] [CPU,1] [1,1] [CPU,1] [3,1] [CPU,1] # El compilador... sobre # todo necesita mucha CPU. TAREA "cc" [CPU,1] [1,3] [CPU,10] [1,1] [CPU,1] 1. Calcula el tiempo de retorno del programa "cp" según cada política de planificación. Página 5

2. Qué clase de problema se ve agudizado con las políticas no expulsivas? EJERCICIO 3: Dado el siguiente conjunto de tareas "ES_bound.def": RECURSO "R1" RECURSO "R2" RECURSO "R3" RECURSO "R4" TAREA "Tarea uno" INICIO = 0 PERIODO = 0 PRIORIDAD=1 [CPU,1][4,3][CPU,4][2,2][CPU,1][3,2][CPU,1] TAREA "Tarea dos" PRIORIDAD=2 INICIO= 1 [CPU,1][2,2][CPU,2][1,1][CPU,1][1,4][CPU,1] TAREA "Tarea tres" PRIORIDAD=3 INICIO=2 [CPU,2][1,3][CPU,1][3,1][CPU,1][2,3][CPU,1][1,2][CPU,1] TAREA "Tarea cuatro" PRIORIDAD=4 INICIO=3 [CPU,1][3,2][CPU,1][2,1][CPU,1][3,2][CPU,1][4,2][CPU,1] 1. Encuentra todos los instantes de tiempo, para cada una de las políticas de planificacion de CPU, en los que todos los procesos están siendo atendidos por el sistema (en otras palabras, ningún proceso está en ninguna cola de espera). 2. En caso de no existir multiprogramación (ejecución secuencial de un proceso tras otro), cual sería el tiempo de respuesta de la "Tarea cuatro". 3. Cual es la principal diferencia entre los resultados producidos por el FCFS y el SJF? Página 6

EJERCICIO 4: Dado el siguiente conjunto de tareas "tareas_disco.def": RECURSO "Disco SCSI" RECURSO "Teclado" RECURSO "Unidad Zip" #Esta tarea copia un # fichero del disco SCSI a la # unidad Zip. TAREA "cp" INICIO=0 PRIORIDAD=1 TAREA "cp" INICIO=0 PRIORIDAD=1 [CPU,2][1,1] [CPU,1][3,2][CPU,1][1,1][CPU,1][3,2][CPU,1] # El compilador... sobre todo neceita mucha CPU. TAREA "gcc" INICIO=0 PRIORIDAD=1 [CPU,1][1,3][CPU,10][1,1][CPU,1] # El program que mantiene la memoria virtual en disco TAREA "kswapd" INICIO=1 PRIORIDAD=0 [CPU,1][1,3] [CPU,1] 1. Compara para que políticas de CPU, de entre las disponibles, existen diferencias entre utilizar FCFS, SJF o Prioridades en la planificación de los recursos. Razona el por qué de la decisión tomada por el planificador de recursos en cada caso. 2. Calcula el tiempo total de espera en cola al acceder al Disco SCSI para cada una de las politicas de planificadicón de recursos, y variando la política de CPU entre las que muestran diferencias en la planificación de recursos. Página 7

APÉNDICE A FIRST COME, FIRST SERVED (FCFS). PRIMERO EN LLEGAR, PRIMER EN SER SERVIDO El planificador FCFS asigna la utilización de la CPU o el recurso a los procesos en el mismo orden de llegada. SHORTEST JOB FIRST (SJF). PRIMERO EL TRABAJO MÁS CORTO El planificador SJF asigna el procesador al proceso que requiere menos tiempo de cómputo durante la siguiente ejecución. No se considera todo el tiempo de computo que el proceso va ha necesitar para finalizar, sino el tiempo de procesador necesario hasta la próxima vez que se suspenda. No es una política de planificación expulsiva: aunque llegue una tarea más corta que la que está en ejecución, no la interrumpirá. SHORTEST REMAING TIME FIRST (SRTF). PRIMERO LOS TRABAJOS MÁS PRÓXIMOS A TERMINAR Muy parecido al SJF, pero en lugar de considerar el tiempo de cómputo, se comparan los tiempos que restan por ejecutar: tiempo de cómputo menos tiempo ya ejecutado. Es una politíca de planificación expulsiva. ROUND ROBIN. TURNO ROTATORIO A cada proceso se le asocia un "quantum" de tiempo. Si un proceso no ha abandonado la CPU (para hacer alguna operación de E/S) al finalizar su quantum, entonces el el proceso es enviado al final de la cola de preparados y el procesador es asignado a otro proceso con un cuantum completo. PRIORIDADES A cada proceso se le asigna una prioridad (normalmente es el usuario el que lo hace). Cuando el procesador queda libre, se elige el proceso con mayor prioridad de entre los que están en la cola de procesos preparados. Si llega a la cola de preparados un proceso con más prioridad que el proceso que está en el procesador, el nuevo proceso esperará en la cola de procesos activos hasta que el que está utilizando en el procesador lo abandone voluntariamente. PRIORIDADES EXPULSIVAS La política de planificación es identica a la anterior, sólo se diferencia en que si llega a la cola de preparados un proceso con más prioridad que el proceso que está en ejecución, el nuevo proceso pasa a ocupar la CPU y el proceso que estaba en ejecución pasa a la cola de preparados. Cuando existen varios procesos preparados con la máxima prioridad, se planifican en orden de llegada (FCFS). PRIORIDADES EXPULSIVAS + ROUND ROBIN Se comporta de forma similar a las prioridades expulsivas, pero cuando existen varios procesos con la máxima prioridad se utiliza la política Round Robin entre ellos. Página 8