El documento describe los conceptos básicos de procesos y planificación de procesos. Explica que un proceso es un programa en ejecución que requiere recursos como CPU, memoria y E/S. Los procesos pueden estar en estados de ejecución, bloqueado o listo. También describe los hilos o subprocesos, algoritmos de planificación como round robin y por prioridades, y técnicas como planificación de dos niveles para gestionar procesos en memoria y disco.
como se crean y terminan los procesos, el ciclo de vida completo de in proceso, los tipos de planificacion de procesos y los algoritmos de planificacion de procesos mas populares
La Unidad Eudista de Espiritualidad se complace en poner a su disposición el siguiente Triduo Eudista, que tiene como propósito ofrecer tres breves meditaciones sobre Jesucristo Sumo y Eterno Sacerdote, el Sagrado Corazón de Jesús y el Inmaculado Corazón de María. En cada día encuentran una oración inicial, una meditación y una oración final.
LA PEDAGOGIA AUTOGESTONARIA EN EL PROCESO DE ENSEÑANZA APRENDIZAJEjecgjv
La Pedagogía Autogestionaria es un enfoque educativo que busca transformar la educación mediante la participación directa de estudiantes, profesores y padres en la gestión de todas las esferas de la vida escolar.
ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...JAVIER SOLIS NOYOLA
El Mtro. JAVIER SOLIS NOYOLA crea y desarrolla el “ROMPECABEZAS DE ECUACIONES DE 1ER. GRADO OLIMPIADA DE PARÍS 2024”. Esta actividad de aprendizaje propone retos de cálculo algebraico mediante ecuaciones de 1er. grado, y viso-espacialidad, lo cual dará la oportunidad de formar un rompecabezas. La intención didáctica de esta actividad de aprendizaje es, promover los pensamientos lógicos (convergente) y creativo (divergente o lateral), mediante modelos mentales de: atención, memoria, imaginación, percepción (Geométrica y conceptual), perspicacia, inferencia, viso-espacialidad. Esta actividad de aprendizaje es de enfoques lúdico y transversal, ya que integra diversas áreas del conocimiento, entre ellas: matemático, artístico, lenguaje, historia, y las neurociencias.
2. 2.1 Concepto de proceso.
Un proceso es un programa en ejecución.
Un proceso es una secuencia de acciones derivadas de la
ejecución de una serie de instrucciones. Esto implica que:
un proceso puede requerir la ejecución de uno o varios
programas; y
que un programa puede formar parte de más de un proceso.
Un proceso necesita de ciertos recursos para completar su
tarea, incluye:
tiempo de CPU,
memoria,
archivos,
y dispositivos de E/S,
3. 2.2 Estados y transiciones de los
procesos
Ejecución (Activo). En este estado está el proceso que está siendo
ejecutado por el procesador, es decir, que está en fase de
procesamiento. En esta fase el estado del proceso reside en los
registros del procesador.
• Bloqueado. Un proceso bloqueado está esperando a que ocurra
un evento y no puede seguir ejecutando hasta que suceda el
evento. Una situación típica de proceso bloqueado se produce
cuando el proceso solicita una operación de E/S. Hasta que no
termina esta operación, el proceso queda bloqueado. En esta fase,
el estado del proceso reside en el BCP.
• Listo. Un proceso está listo para ejecutar cuando puede entrar en
fase de procesamiento. Dado que puede haber varios procesos en
este estado, una de las tareas del sistema operativo será seleccionar
aquel que debe pasar a ejecución. El módulo del sistema operativo
que toma esta decisión se denomina planificador. En esta fase, el
estado del proceso reside en el BCP.
4.
5. 2.3 Procesos ligeros: Hilos o hebras
Un proceso ligero, o thread, es un programa en ejecución
(flujo de ejecución) que comparte la imagen de memoria y
otras informaciones con otros procesos ligeros.
Un proceso ligero se define coMo una función cuya
ejecución se puede lanzar en paralelo con otras.
Cada proceso ligero tiene informaciones que le son propias
y que no comparte con otros procesos ligeros. Las
informaciones propias se refieren fundamentalmente al
contexto de ejecución, pudiéndose destacar las siguientes:
Contador de programa.
Pila.
Registros.
Estado del proceso ligero (ejecutando, listo o bloqueado).
6. Todos los procesos ligeros de un mismo proceso
comparten la información del mismo.
En concreto, comparten:
Espacio de memoria.
Variables globales.
Archivos abiertos.
Procesos hijos.
Temporizadores.
Señales y semáforos.
Contabilidad.
7. 2.4 Concurrencia y secuenciabilidad.
La concurrencia es el solapamiento en el tiempo de la
ejecución de varias actividades.
Dos procesos, P1 y P2, se ejecutan concurrentemente si
la primera instrucción de P1 se ejecuta entre la primera
y la última instrucción de P2.
8. 2.5 Niveles, objetivos y criterios de
planificación.
La planificación consiste en un conjunto de políticas y
mecanismos incorporados al S. O. y por los que se rige
el orden en que se completa el trabajo que hay que
realizar. Su objetivo primordial es optimizar el
rendimiento del sistema.
La planificación del procesador es la asignación de los
procesadores físicos a los procesos. La parte del S. O.
encargada de tomar esta decisión se denomina
planificador y el algoritmo que utiliza se llama
algoritmo de planificación o disciplina.
9. Niveles de planificación
Planificación de alto nivel:
— También se denomina Planificación de trabajos.
— Determina a qué trabajos se les va a permitir competir activamente por los
recursos del sistema, lo cual se denomina Planificación de admisión.
Planificación de nivel intermedio:
— Determina a qué procesos se les puede permitir competir por la cpu.
— Responde a fluctuaciones a corto plazo en la carga del sistema y efectúa
“suspensiones” y “activaciones” (“reanudaciones”) de procesos.
— Debe ayudar a alcanzar ciertas metas en el rendimiento total del sistema.
Planificación de bajo nivel:
— Determina a qué proceso listo se le asigna la cpu cuando esta queda disponible
y asigna la cpu al mismo, es decir que “despacha” la cpu al proceso.
— La efectúa el Despachador del Sistema Operativo, el que opera muchas veces
por segundo y reside siempre en el almacenamiento primario.
10.
11. Objetivos:
Ser justo; Todos los procesos son tratados de igual manera, Ningún proceso es
postergado indefinidamente.
Maximizar la capacidad de ejecución; Maximizar el número de procesos
servidos por unidad de tiempo.
Maximizar el número de usuarios interactivos recibiendo unos tiempos
de respuesta aceptables; En un máximo de unos segundos.
Equilibrar el uso de recursos; Favorecer a los procesos que utilizarán
recursos infrautilizados.
Lograr un equilibrio entre respuesta y utilización; La mejor manera de
garantizar buenos tiempos de respuesta es disponer de los recursos suficientes
cuando se necesitan, pero la utilización total de recursos podrá ser pobre.
Evitar la postergación indefinida; Se utiliza la estrategia del
“envejecimiento” , Mientras un proceso espera por un recurso su prioridad debe
aumentar, así la prioridad llegará a ser tan alta que el proceso recibirá el recurso
esperado.
Asegurar las prioridades; Los mecanismos de planificación deben favorecer a
los procesos con prioridades más altas.
Dar preferencia a los procesos que mantienen recursos no compartidos.
12. 2.6 Técnicas de administración del
planificador.
Cíclica o Round-robin: El algoritmo cíclico está diseñado para hacer un
reparto equitativo del tiempo del procesador, por lo que está especialmente
destinado a los sistemas de tiempo compartido.
Los procesos están organizados en forma de cola circular, eligiéndose para su
ejecución el proceso cabecera de la cola.
Un proceso permanecerá en ejecución hasta que ocurra una de las dos
condiciones siguientes:
El proceso pasa a estado de bloqueado, porque solicita un servicio del sistema
operativo.
El proceso consume su rodaja de tiempo, es decir, lleva ejecutando el tiempo
estipulado de rodaja.
Un proceso que ha consumido su rodaja de tiempo es expulsado y pasa a ocupar
el último lugar en la cola. De esta forma, se consigue que todos los procesos
pasen a ejecutar, repartiendo el tiempo del procesador de forma homogénea
entre ellos. La Figura muestra cómo el proceso 5, al consumir su rodaja de
tiempo, pasa al final de la cola.
13. 2.6 Técnicas de administración del
planificador.
FIFO: En este caso, la cola de procesos en estado de listo
está ordenada de acuerdo al instante en que los procesos
pasan al estado de listo. Los que llevan más tiempo
esperando están más cerca de la cabecera.
El algoritmo es sencillo, puesto que consiste en tomar para
ejecutar al proceso de la cabecera de la cola. No se plantea
expulsión, por lo que el proceso ejecuta hasta que realiza
una llamada bloqueante al sistema operativo.
Es aplicable a los sistemas batch, pero no a los interactivos.
14. 2.6 Técnicas de administración del
planificador.
Prioridades: En el algoritmo de prioridades se selecciona para
ejecutar el proceso en estado de listo que tenga la máxima
prioridad.
Cuando las prioridades son fijas puede surgir el problema de la
inanición, que implica que un proceso puede estar esperando
indefinidamente sin llegar a ejecutar. Esto ocurrirá si van
apareciendo siempre procesos de mayor prioridad que estén en
estado de listo.
Para evitar este problema, se puede añadir un mecanismo de
envejecimiento, que se encargue dc aumentar la prioridad a los
procesos que lleven un determinado tiempo esperando a ser
ejecutados.
15. 2.6 Técnicas de administración del
planificador.
Primero el trabajo más corto: Este algoritmo exige conocer a
priori el tiempo de ejecución de los procesos, por lo que es
aplicable a trabajos batch repetitivos cuyo comportamiento se
tenga analizado.
El algoritmo consiste en seleccionar para ejecución al proceso
listo con menor tiempo de ejecución. No se plantea expulsión,
por lo que el proceso sigue ejecutándose mientras lo desee.
La ventaja de este algoritmo es que produce el menor tiempo de
respuesta, pero a costa de penalizar los trabajos de mayor tiempo
de ejecución. También puede sufrir de inanición, puesto que, en
el caso de que estén continuamente apareciendo procesos con
tiempo de ejecución pequeño, un proceso largo puede no llegar a
ejecutar.
16. 2.6 Técnicas de administración del planificador.
Planificación de sistemas de tiempo real: Los sistemas de tiempo real se
caracterizan porque los procesos tienen que ejecutar en instantes
predeterminados. Se pueden diferenciar dos tipos de procesos de tiempo real: a
plazo fijo y periódico. La diferencia estriba en que los de plazo fijo tienen que
ejecutar una vez, en un instante determinado, mientras que los periódicos
deben ejecutar de forma repetitiva cada cierto tiempo.
La planificación de tiempo real está basada en el reloj de tiempo de la
computadora y su objetivo es conseguir que no se retrase la ejecución de los
procesos. En los denominados sistemas de tiempo real críticos, los procesos
tienen asignada una franja de tiempo en la cual deben ejecutar y. en ningún
caso, se ha de rebasar el tiempo máximo sin que el proceso complete su
ejecución.
Como muestra la Figura, se asocia a cada proceso el instante en el que debe
ejecutar. Los procesos que no han alcanzado su tiempo de ejecución están en
una cola de espera, mientras que los que han alcanzado el tiempo de ejecución
pasan a las colas de listo para ejecutar. La planificación consiste en seleccionar
de entre estos últimos el proceso a ejecutar.
17. 2.6 Técnicas de administración del planificador.
Planificación de dos niveles : Hasta ahora más o menos hemos
supuesto que todos los procesos ejecutables están en la memoria
principal. Si la memoria principal disponible no es suficiente, algunos
de los procesos ejecutables tendrán que mantenerse en el disco total o
parcialmente. Esta situación tiene implicaciones importantes para la
planificación, ya que el tiempo de conmutación de procesos cuando
hay que traer los procesos del disco es varios órdenes de magnitud
mayor que cuando la conmutación es a un proceso que ya está en la
memoria.
Aquí también podríamos usar planificación round robin, por prioridad
o por cualquiera de varios otros métodos. Los dos planificadores
podrían usar el mismo algoritmo o algoritmos distintos.