Descripción: Muestra como sacar los números pseudoaleatorios algoritmos de cuadrados medio y productos medios
ejemplos prácticos de algoritmos de ordenamiento para aplicar en lenguaje cDescripción completa
Excelente material para comprender la programacion estructurada sin ningun lenguaje de programacion.Descripción completa
Descripción completa
SEMNA 8Descripción completa
Tipos de AlgoritmosDescripción completa
Tarea de Algoritmos de Planificación para Sistemas Operativos
Descripción: exercises algo
-Tecnicas para el Analisis de un Algoritmo. -Metodos de ordenamiento: *Burbuja Mejorada. *Inserción o Baraja. *Selección. *QuickSort. *MergeSort.
Descripción completa
Algoritmos de Busqueda secuencialDescripción completa
Diseño Estructurado de AlgoritmosDescripción completa
Algoritmos De Planificación De Proceso ----------definiciones--------------------definiciones-------------------------Apropiatividad: En ciertos casos podría ser posible tomar un recurso temporalmente de su poseedor y dárselo a otro proceso. Expulsión: Característica por el cual el sistema operativo puede o no expulsar del estado de ejecución a un proceso dado. En este sentido entonces tenemos la planificación apropiativa en la cual el sistema operativo puede cortar en cualquier momento la ejecución de un proceso y la planificación no apropiativa en la cual una vez que el proceso esta en ejecución el sistema operativo no puede sacarlo de ese estado. --------------------------------------------
FIFO (First in, First ouput) Cuando se tiene que elegir a qué proceso asignar la CPU se escoge al que lleva más tiempo listo. El proceso en ejecución se mantiene en la CPU hasta que se bloquea voluntariamente. SJF (Short job first) Este tipo de algoritmo de planificación se usa para trabajos en batch o de procesamiento por lotes en los cuales se puede saber cual es el tiempo de duración de la ejecución de cada proceso y entonces se puede seleccionar primero el trabajo más corto. El problema que se presenta con éste algoritmo es que los grandes procesos podrían sufrir de inanición dado que cualquier proceso pequeño se “cuela” sobre uno de mayor tamaño y como resultado final se podría dar el caso que el proceso grande nunca obtenga procesamiento. SRTF (Short Remaining time first) Igual al anterior, excepto pro que si un nuevo proceso pasa a listo y es más corto que lo que queda por ejecutar del proceso en ejecución, el proceso en ejecución pasa a listo y el nuevo a ejecución. Round Robin: En este tipo de planificación cada proceso tiene asignado un quantum de tiempo para ejecutarse. Si ese quantum no es suficiente para acabar, el proceso pasa de nuevo a la cola para ser atendido nuevamente cuando todos los demás procesos hallan recibido su quantum. El algoritmo presupone la existencia de un reloj en el sistema. Un reloj es un dispositivo que genera periódicamente interrupciones. Esto es muy importante, pues garantiza que el sistema operativo (en concreto la rutina de d e servicio de interrupción del reloj) coge el mando de la CPU periódicamente. El cuantum de un proceso equivale a un número fijo de pulsos o ciclos de reloj. La determinación del tamaño del cuanto es vital para la operación efectiva de un sistema de cómputo. Si el cuanto de tiempo es muy grande, cada proceso tendrá el tiempo necesario para terminar, de manera que el esquema de planificación por turno rotatorio degenera en uno de primero-en-entrar-primero-en-salir. primero-en-entrar-primero-en-sali r. Si el cuanto es muy pequeño, el gasto extra por cambio de proceso se convierte en el factor dominante y el rendimiento del sistema se degradará. Con prioridad A cada proceso se le asocia una prioridad y la CPU es asignada al proceso de mayor
prioridad. Las prioridades pueden ser definidas externa o internamente. HRN (Prioridad a la tasa de respuesta más alta) es un disciplina de planificación no apropiativa en la cual la prioridad de cada proceso no sólo se calcula en función del tiempo de servicio, sino también del tiempo que ha esperado para ser atendido. Cuando un trabajo obtiene el procesador, se ejecuta hasta terminar. Las prioridades dinámicas en HRN se calculan de acuerdo con la siguiente expresión: prioridad = (tiempo de espera + tiempo de servicio) / tiempo de servicio Como el tiempo de servicio aparece en el denominador, los procesos cortos tendrán preferencia. Pero como el tiempo de espera aparece en el numerador, los procesos largos que han esperado también tendrán un trato favorable. Obsérvese que la suma tiempo de espera + tiempo de servicio es el tiempo de respuesta del sistema para el proceso si éste se inicia de inmediato.
Múltiples colas Particiona la lista de listos en varias colas separadas de entre las cuales se seleccionará una para cada tipo de proceso. Cada cola tendrá su propio algoritmo de planificación y una prioridad respecto a las otras. Múltiples colas con retroalimentación Se diferencia del anterior por que permite a los procesos cambiar de cola, a una más prioritaria si acabaron su procesamiento antes de tiempo en la ronda anterior o a una menos prioritaria si tardaron más de la cuenta.