EJECUCION PARALELA THREADS Y FIBERS

Slides:



Advertisements
Presentaciones similares
Clasificación y estructura. Alejandra Rivero Esteban
Advertisements

FLOR ALBA ACEVEDO COD JENNIFFER TATIANA TORRES COD
Desarrollador Profesional de Juegos Programación III Unidad II Hilos de ejecución Threads.
SISTEMAS OPERATIVOS INTEGRANTES: ANGEL LORENZO ROMERO COD: DIANA ASTRID RAMIREZ ALBA COD:
INTRODUCCIÓN. Una computador u ordenador se compone principalmente del software, que se refiere al conjunto de programas, instrucciones y reglas informáticas,
Introducción a Sistemas Operativos
Proceso: Una instancia de un programa en ejecución
El Sistema Windows © Dr. José Antonio Garrido Natarén 2016.
“Los Sistemas Operativos”
Arquitectura del Sistema Windows
¿Qué es el Software? Programas de computadoras. Son las instrucciones responsables de que el hardware (la máquina) realice su tarea. Como concepto general,
Introducción a Sistemas Operativos
Procesos Concurrentes
U.T. 11: Introducción A Las Bases De Datos
SISTEMAS OPERATIVOS PARALELOS Y MULTIPROCESADORES RICHARD GIOVANI MEDINA ESTEBA.
Jornadas técnicas del GUL
ADMINISTRACíON DE LA MEMORIA EN SISTEMAS RECIENTES
Multitarea y Monotarea
PRUEBA DIAGNÓSTICA GRADO SEXTO TECNOLOGÍA E INFORMÁTICA 1
Universidad Nacional de Canindeyú Facultad de Ciencias de la Salud
EN QUÉ CONSISTE UNA COMPUTADORA
Sistemas Operativos Unidad I Introducción.
1era. Unidad el computador y sus componentes
Sistemas Operativos Ing. Jhonnathan Quintero V.
1era. Unidad el computador y sus componentes
Multitarea y monotarea
Linux Linux es un sistema operativo diseñado por cientos de programadores de todo el planeta, aunque el principal responsable del proyecto es Linux.
Conceptos Relacionados Unidad I. Parte A.
DISPOSITIVOS DE E/S IU Colegio Mayor del Cauca Sistemas operativos Popayán, mayo de 2015.
SOL GUTIÉRREZ Y MARIANA HEINTZ 4°C Prof. Gustavo price
INSTALACIÓN DE WINDOWS 7
Funciones de un Sistema Operativo (S.O.) Elementos de un S.O.
– GESTIÓN DE PROCESOS Sistemas Operativos. AGENDA Concepto de Proceso Planificación de Procesos Operaciones entre Procesos Comunicación interprocesos.
SISTEMAS OPERATIVOS Qué es un sistema operativo…
ESTRUCTURA DE SISTEMAS OPERATIVOS  ESTRUCTURA MONOLÍTICA  ESTRUCTURA JERÁRQUICA  ESTRUCTURA MAQUINA VIRTUAL  ESTRUCTURA CLIENTE-SERVIDOR  ESTRUCTURA.
CURSO PROGRAMACIÓN BÁSICA SEMANA 3 ¿Qué es un programa?
ESTRUCTURA DE LOS SISTEMAS OPERATIVOS.
CICLO DE VIDA DE SOFTWARE
La Historia del Sistema MS-Windows
Tema: Componentes lógicos de un ordenador. Mediante el sistema de numeración binario, es decir, usando los dígitos 0 y 1. Lo único que transmite,
2.4.3 Procesadores Tema 2 página 35
“Conceptos Básicos de Java”
Descripción de una Aplicación Windows
Estructura de los sistemas Operativos 1. Componentes de un sistema operativo  Administración de procesos  Administración de memoria  Subsistema de Entrada/Salida.
Estructura de los Sistemas Operativos Alumna:Arratea Almeyda Aracelli.
INTRODUCCIÓN A DISEÑO Objetivos del curso. Definición de PowerPoint. Que podemos hacer en PowerPoint. Definición de Presentación. Principios de un buen.
Núcleo Lic. Gonzalo Pastor.
SISTEMAS OPERATIVOS JOSE ANGEL MORENO B. Ingeniero de Sistemas TP # Copnia Universidad Incca de Colombia CORPORACI Ó N UNIVERSITARIA REMINGTON.
Procesos Lic. Gonzalo Pastor.
Adm. Sistemas Operativos Arquitectura de Plataformas y Servicios Tic.
Estructura de los sistemas operativos
ESTRUCTURA DE LOS SISTEMAS OPERATIVOS CHACALIAZA BOZA MARGARET AMARLLY.
UNIVERSIDAD PRIVADA SAN JUAN BAUTISTA FILIAL CHINCHA ESCUELA PROFESIONAL DE INGENIERÍA DE COMPUTACIÓN Y SISTEMAS Por: Nestares Torres Luis Jesús Enrique.
ESTRUCTURA DE LOS SISTEMAS OPERATIVOS
ESTRUCTURA DE LOS SISTEMAS OPERATIVOS CHACALIAZA BOZA MARGARET AMARLLY.
ESTRUCTURA DE LO SISTEMAS OPERATIVOS Presentado por: Jennifer.
Estructura de Sistemas Operativos
ESTRUCTURA DE LOS SISTEMAS OPERATIVOS Magallanes Napa, Anthony Yair.
Estructura de los Sistemas Operativos
ESTRUCTURA DE LOS SISTEMAS OPERATIVOS - MENDOZA MOLINA ARIANA
SISTEMA OPERATIVO Un sistema operativo es un programa o conjunto de programas de un sistema informático que gestiona los recursos de Hardware y provee.
ESTRUCTURA DE LOS SISTEMAS OPERATIVOS. Estos sistemas no tienen una estructura definida, sino que son escritos como una colección de procedimientos donde.
Estructura de los Sistemas Operativos
Estructura de los Sistemas Operativos por: Omar Saravia Tasayco
SISTEMAS OPERATIVOS Estudiante: Rojas De la Cruz Jesus Manuel. Ciclo: VI. Turno: Noche.
ESTRUCTURA DE SISTEMAS OPERATIVOS MOSQUERA HERRERA CLAUDIA ANGELICA ANDROID WINDOWS APPLE LINUX.
SERVICIOS QUE OFRECEN LAS PRINCIPALES OPERADORAS DE TELEFONIA MOVIL EN EL PERU.
Hilos de Procesamiento. Hilos Concepto Beneficios Hilos a nivel kérnel y a nivel usuario Modelos multihilos Hilos de Solaris 2 Hilos de Java.
Los sistemas operativos en el sistema informático
Transcripción de la presentación:

EJECUCION PARALELA THREADS Y FIBERS INSTITUTO TECNOLÓGICO DE VERACRUZ EJECUCION PARALELA THREADS Y FIBERS Dr. José Antonio Garrido Natarén

EJECUCION PARELELA THREADS Y FIBERS Qué es un Thread   Un Thread es un mecanismo que permite a una aplicación realizar varias tareas a la vez de manera concurrente.

EJECUCION PARELELA THREADS Y FIBERS Un Thread se asemeja al concepto de sistema operativo multitarea. Relativamente tiene la misma filosofía que utiliza un Sistema Operativo para ejecutar varios procesos a la vez, pero enfocada ejecutar sub procesos de un mismo proceso.

EJECUCION PARELELA THREADS Y FIBERS Un Thread difiere del mecanismo de multitareas ya que por definición los procesos no comparten el espacio de memoria entre si, mientras que los Threads (hilos).

EJECUCION PARELELA THREADS Y FIBERS Un Thread difiere del mecanismo de multitareas

EJECUCION PARELELA THREADS Y FIBERS Los Threads son una ampliación del concepto de multitarea. El concepto multitarea se refiere a la capacidad de un sistema para ejecutar varios procesos a la vez (más de una aplicación se estuviera ejecutando de manera concurrente) Un threah permite a una aplicación hacer varias cosas a la vez.

EJECUCION PARELELA THREADS Y FIBERS Los Threads son una ampliación del concepto de multitarea. En un sistema multitarea podemos tener los procesos A, B y C ejecutándose simultáneamente El proceso A debe mostrar una animación gráfica y estar escribiendo un archivo a la vez ¿ Como es posible ?

EJECUCION PARELELA THREADS Y FIBERS Los Threads son una ampliación del concepto de multitarea. Un proceso puede tener una o mas tareas ejecutándose a la vez (al menos así lo percibe el usuario) Cada vez que a un proceso le corresponde un tiempo de ejecución este se alterna ejecutando cada uno de sus Threads del proceso.

EJECUCION PARELELA THREADS Y FIBERS Los Threads son una ampliación del concepto de multitarea. Los Threads permiten reorganizar el concepto de proceso, ya que un proceso no es la unidad mínima de ejecución (ahora el proceso es un conjunto de tareas (threads). Un proceso que en apariencia no utiliza Threads realmente se esta ejecutando en un único Thread (aplicación flat).

EJECUCION PARELELA THREADS Y FIBERS Consideraciones de los Procesos y los Thread   La memoria de trabajo del proceso sigue siendo asignada por proceso Los thread dentro del proceso comparten todos la misma región de memoria, el mismo espacio de direcciones. El sistema operativo asigna Quantums de ejecución a cada thread creado y ya no calendariza procesos sino cada uno de los hilos en ejecución en el sistema.

EJECUCION PARELELA THREADS Y FIBERS Consideraciones de los Procesos y los Thread   Cada hilo tiene su propio contexto (estado de ejecución), así que cada vez que se suspende un hilo para permitir la ejecución de otro, su contexto es guardado y restablecido nuevamente solo cuando es su turno de ejecución. Al ser la unidad mínima de ejecución cada Thread tiene su propio stack (pila de ejecución)

EJECUCION PARELELA THREADS Y FIBERS Consideraciones de los Procesos y los Thread   El proceso ya no es la unidad de ejecución pero sigue siendo parte fundamental en el funcionamiento del sistema: Asignación de una prioridad de ejecución Asignación de la memoria Asignación de los recursos y privilegios. El hilo es solo quien se ejecuta

EJECUCION PARELELA THREADS Y FIBERS El Kernel   Todo sistema operativo tiene un Kernel. El Kernel en quien crea y administra los Threads. En Windows cada vez que se crea un Thread se crea un objeto del Kernel que tiene toda la información necesaria respecto a que proceso. Este objeto Thread existe en el espacio de direcciones asignadas al Kernel.

EJECUCION PARELELA THREADS Y FIBERS El Kernel   El Kernel se encarga de manera automática de calendarizar la ejecución de cada uno de los Thread en ejecución. Si un Thread de un proceso invoca a un dispositivo de I/O como por ejemplo la impresora, el Thread queda suspendido hasta que la impresora le conteste pero otros Thread del mismo proceso seguirán ejecutándose.

EJECUCION PARELELA THREADS Y FIBERS Las Fibras (Fibers)   Las Fibras son similares a los Thread del Kernel con la diferencia en que estos no son administrados por el Kernel del sistema operativo. El sistema operativo no sabe que existen. Las Fibras son administradas por los programas de usuario (User Threads).

EJECUCION PARELELA THREADS Y FIBERS Las Fibras (Fibers)   Cada programa se encarga de manera automática de calendarizar la ejecución de cada uno de las Fibras en ejecución. Si una Fibra de un proceso invoca a un dispositivo de I/O como por ejemplo la impresora, la Fibra queda suspendida hasta que la impresora le conteste y las otras Fibras del mismo Thread también se bloquearan y no seguirán ejecutándose.

EJECUCION PARELELA THREADS Y FIBERS Fibras VS Threads   Los Threads de usuario (Fibras) son mucho más eficientes que los Threads del Kernel. Los Threads de usuario no requieren ser conmutados en modo Kernel sino en modo usuario lo cual permite hacer la conmutación entre Threads de manera más rápida al no tener que alternar de contexto. Los Threads de usuario no son calendarizados de manera preferente, sino que de manera ‘manual’ deben ser suspendidos o reactivados