SlideShare una empresa de Scribd logo
1 de 15
INSTITUTO POLITÉCNICO NACIONALINSTITUTO POLITÉCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERÍAESCUELA SUPERIOR DE INGENIERÍA
MECÁNICA Y ELÉCTRICA “CULHUACÁN”MECÁNICA Y ELÉCTRICA “CULHUACÁN”
INGENIERÍA EN COMPUTACIÓNINGENIERÍA EN COMPUTACIÓN
SISTEMAS OPERATIVOSSISTEMAS OPERATIVOS
6CV16CV1
RESENDIZ COLIN PILARRESENDIZ COLIN PILAR
MAGAÑA CASTILLO MIGUEL EDUARDOMAGAÑA CASTILLO MIGUEL EDUARDO
ORTEGA CORTES LUIS JOELORTEGA CORTES LUIS JOEL
MARTINEZ CARRISOSA EDGAR JESUSMARTINEZ CARRISOSA EDGAR JESUS
RUIZ GARCIA NATALYRUIZ GARCIA NATALY
MULTITAREA,MULTITAREA,
MULTIPROGRAMACIÓN,MULTIPROGRAMACIÓN,
MULTIPROCESOS YMULTIPROCESOS Y
CONCURRENCIACONCURRENCIA
PROGRAMACION CONCURRENTEPROGRAMACION CONCURRENTE
• La programación concurrente es la simultaneidadLa programación concurrente es la simultaneidad
en la ejecución de múltiples tareas interactivas.en la ejecución de múltiples tareas interactivas.
• Estas tareas pueden ser un conjunto de procesos oEstas tareas pueden ser un conjunto de procesos o
hilos de ejecución creados por un único programa. Lashilos de ejecución creados por un único programa. Las
tareas se pueden ejecutar en un sola UCPtareas se pueden ejecutar en un sola UCP
((multiprogramación)multiprogramación), en varios procesadores o en una, en varios procesadores o en una
red de computadores distribuidos. La programaciónred de computadores distribuidos. La programación
concurrente está relacionada con la programaciónconcurrente está relacionada con la programación
paralela, pero enfatiza más la interacción entre tareas.paralela, pero enfatiza más la interacción entre tareas.
Así, la correcta secuencia de interacciones oAsí, la correcta secuencia de interacciones o
comunicaciones entre los procesos y los nodos loscomunicaciones entre los procesos y los nodos los
procesos coordinados de recursos que se compartenprocesos coordinados de recursos que se comparten
por tareas son las claves de esta disciplina.por tareas son las claves de esta disciplina.
La programación concurrente tiene capacidad para realizarLa programación concurrente tiene capacidad para realizar
varias tareas al mismo tiempo o muchas tareas en una solavarias tareas al mismo tiempo o muchas tareas en una sola
PC con un procesador o varios.PC con un procesador o varios.
MULTITAREASMULTITAREAS
• Es la capacidad de un sistema operativo para ejecutarEs la capacidad de un sistema operativo para ejecutar
varios procesos al mismo tiempo corriendo sobre unvarios procesos al mismo tiempo corriendo sobre un
procesador.procesador.
• Con los sistemas operativos DOS esto era incapaz deCon los sistemas operativos DOS esto era incapaz de
realizarse.realizarse.
• Existen varios tipos de multitareas y son :Existen varios tipos de multitareas y son :* Multitarea Nula
* Multitarea Cooperativa
* Multitarea Preferente
* Multitarea Real
MULTITAREA NULAMULTITAREA NULA
ESES aquel sistemaaquel sistema
operativo que carece deoperativo que carece de
multitarea. Aún así puedemultitarea. Aún así puede
simularlasimularla
implementándola en unimplementándola en un
espacio de usuarioespacio de usuario
Justamente la familiaJustamente la familia DOSDOS
son ejemplos de sistemasson ejemplos de sistemas
operativos de multitareaoperativos de multitarea
nula.nula.
MULTITAREA COOPERATIVAMULTITAREA COOPERATIVA
• Tipo de multitarea en donde losTipo de multitarea en donde los
procesos de usuario son quienesprocesos de usuario son quienes
ceden la CPU al sistema operativoceden la CPU al sistema operativo
a intervalos regulares.a intervalos regulares.
Es sumamente problemáticoEs sumamente problemático
porque si por algún motivo elporque si por algún motivo el
proceso de usuario esproceso de usuario es
interrumpido, no cede la CPU alinterrumpido, no cede la CPU al
sistema operativo que lo ejecutasistema operativo que lo ejecuta
y, por lo tanto, quedará trabadoy, por lo tanto, quedará trabado
(bloqueado).(bloqueado).
Los sistemas operativos WindowsLos sistemas operativos Windows
antes de la versión 1995antes de la versión 1995
implementaban este tipo deimplementaban este tipo de
multitarea.multitarea.
MULTITAREA PREFERENTEMULTITAREA PREFERENTE
Multitarea en donde el SO se encarga de administrar uno oMultitarea en donde el SO se encarga de administrar uno o
más procesadores, repartiendo el tiempo de uso del mismomás procesadores, repartiendo el tiempo de uso del mismo
entre los distintos procesos que esperan utilizarlo (tareas enentre los distintos procesos que esperan utilizarlo (tareas en
ejecución).ejecución).
En el caso de un solo procesador, cada proceso o tarea loEn el caso de un solo procesador, cada proceso o tarea lo
utiliza en períodos cortísimos de tiempo, lo que, en lautiliza en períodos cortísimos de tiempo, lo que, en la
práctica, da la sensación de que estuviesen ejecutándose alpráctica, da la sensación de que estuviesen ejecutándose al
mismo tiempo.mismo tiempo.
Los sistemas operativos que utilizan este tipo de multitareasLos sistemas operativos que utilizan este tipo de multitareas
son los UNIX y sus clones (Linux, etc), Windows NT, etc.son los UNIX y sus clones (Linux, etc), Windows NT, etc.
MULTITAREA REALMULTITAREA REAL
Multitarea en donde el SO ejecuta los procesos realmente al mismoMultitarea en donde el SO ejecuta los procesos realmente al mismo
tiempo haciendo uso de múltiples procesadores (más de dos).tiempo haciendo uso de múltiples procesadores (más de dos).
La ejecución realmente se realiza en distintos procesadores para cadaLa ejecución realmente se realiza en distintos procesadores para cada
proceso o tarea. Obviamente en el caso de que los procesos o tareas seanproceso o tarea. Obviamente en el caso de que los procesos o tareas sean
más que la cantidad de procesadores, éstos comienzan a ejecutarse enmás que la cantidad de procesadores, éstos comienzan a ejecutarse en
procesadores "en uso" en la forma de multitareas preferenteprocesadores "en uso" en la forma de multitareas preferente
Todos los sistemas operativos modernos soportan esta capacidad.Todos los sistemas operativos modernos soportan esta capacidad.
MULTIPROGRAMACIONMULTIPROGRAMACION
• MULTIPROGRAMACION Es la técnica que permite que dos o masMULTIPROGRAMACION Es la técnica que permite que dos o mas
programas ocupen la misma unidad de memoria principal y queprogramas ocupen la misma unidad de memoria principal y que
sean ejecutados al mismo tiempo.sean ejecutados al mismo tiempo.
• La multiprogramación se refiere a dos o mas programasLa multiprogramación se refiere a dos o mas programas
corriendo o procesándose al mismo tiempo; Lacorriendo o procesándose al mismo tiempo; La
multiprogramación se controla a través del sistema operativo, elmultiprogramación se controla a través del sistema operativo, el
cual observa los programas y los vigila hasta que esténcual observa los programas y los vigila hasta que estén
concluidos.concluidos.
• El numero de programas que pueden multiprogramarse en formaEl numero de programas que pueden multiprogramarse en forma
efectiva, depende de una combinación de la cantidad deefectiva, depende de una combinación de la cantidad de
memoria, de la velocidad de la CPU y del numero y velocidad dememoria, de la velocidad de la CPU y del numero y velocidad de
los recursos periféricos que tenga conectados, así como de lalos recursos periféricos que tenga conectados, así como de la
eficiencia del SISTEMA OPERATIVO.eficiencia del SISTEMA OPERATIVO.
PRINCIPIOS DE CONCURRENCIAPRINCIPIOS DE CONCURRENCIA
• En un sistema multiprogramado con un único procesador, losEn un sistema multiprogramado con un único procesador, los
procesos se intercalan en el tiempo aparentando una ejecuciónprocesos se intercalan en el tiempo aparentando una ejecución
simultánea. Aunque no se logra un procesamiento paralelo y producesimultánea. Aunque no se logra un procesamiento paralelo y produce
una sobrecarga en los intercambios de procesos, la ejecuciónuna sobrecarga en los intercambios de procesos, la ejecución
intercalada produce beneficios en la eficiencia del procesamiento yintercalada produce beneficios en la eficiencia del procesamiento y
en la estructuración de los programas.en la estructuración de los programas.
PRINCIPIOS DE CONCURRENCIAPRINCIPIOS DE CONCURRENCIA
• La concurrencia es el punto clave en los conceptos de multitarea,La concurrencia es el punto clave en los conceptos de multitarea,
multiprogramación y multiproceso, la concurrencia comprende unmultiprogramación y multiproceso, la concurrencia comprende un
gran numero de cuestiones de diseño incluyendo la comunicacióngran numero de cuestiones de diseño incluyendo la comunicación
entre procesos, la compartición y competencia por los recursos, laentre procesos, la compartición y competencia por los recursos, la
sincronización de la ejecución de varios procesos y la asignaciónsincronización de la ejecución de varios procesos y la asignación
del procesador a los procesos, la concurrencia puede presentarsedel procesador a los procesos, la concurrencia puede presentarse
en tres contextos diferentes:en tres contextos diferentes:
• Varias aplicaciones:Varias aplicaciones:
• Aplicaciones estructuradas:Aplicaciones estructuradas:
• Estructura del sistema operativo:Estructura del sistema operativo:
APLICACIONESAPLICACIONES
ESTRUCTURADAS:ESTRUCTURADAS:Como consecuencia del diseño modular de una aplicación y la división deComo consecuencia del diseño modular de una aplicación y la división de
la misma en tareas explícitas estas pueden ser ejecutadas de formala misma en tareas explícitas estas pueden ser ejecutadas de forma
concurrente.concurrente.
En programación, un lenguaje estructurado es aquel que soporta laEn programación, un lenguaje estructurado es aquel que soporta la
división en bloques (procedimientos y funciones) que pueden o nodivisión en bloques (procedimientos y funciones) que pueden o no
comunicarse entre sí.comunicarse entre sí.
Por ejemplo, los archivos batch (.bat) es contrario a inestructurado, dePor ejemplo, los archivos batch (.bat) es contrario a inestructurado, de
poco uso, que no tiene ninguna estructura, es simplemente un “bloque”,poco uso, que no tiene ninguna estructura, es simplemente un “bloque”,
ESTRUCTURA DEL SISTEMAESTRUCTURA DEL SISTEMA
OPERATIVO:OPERATIVO:Como resultado de las aplicaciones estructurada que se aplica enComo resultado de las aplicaciones estructurada que se aplica en
el diseño del propio SO, de forma que este se implemente comoel diseño del propio SO, de forma que este se implemente como
un conjunto de procesos.un conjunto de procesos.
LABORES DEL SISTEMALABORES DEL SISTEMA
OPERATIVOOPERATIVO
Son Elementos de gestión y diseño que surgen por causa de la concurrencia:Son Elementos de gestión y diseño que surgen por causa de la concurrencia:
1) El sistema operativo debe seguir a los distintos procesos activos1) El sistema operativo debe seguir a los distintos procesos activos
2) El sistema operativo debe asignar y retirar los distintos recursos a cada2) El sistema operativo debe asignar y retirar los distintos recursos a cada
proceso activo, entre estos se incluyen:proceso activo, entre estos se incluyen:
_Tiempo de procesador_Tiempo de procesador
__MemoriaMemoria
_Archivos_Archivos
_Dispositivos de E/S_Dispositivos de E/S
3) El sistema operativo debe proteger los datos y los recursos físicos de cada3) El sistema operativo debe proteger los datos y los recursos físicos de cada
proceso contra injerencias no intencionadas de otros procesos.proceso contra injerencias no intencionadas de otros procesos.
4) Los resultados de un proceso deben ser independientes de la velocidad a la4) Los resultados de un proceso deben ser independientes de la velocidad a la
que se realiza la ejecución de otros procesos concurrentes.que se realiza la ejecución de otros procesos concurrentes.

Más contenido relacionado

La actualidad más candente

modelos del proceso del software
 modelos del proceso del software  modelos del proceso del software
modelos del proceso del software Brihany Rossell
 
Planificacion del procesador
Planificacion del procesadorPlanificacion del procesador
Planificacion del procesadorManuel Ceron
 
Unidad 1. caracterizacion de los sistemas distribuidos
Unidad 1.  caracterizacion de los sistemas distribuidosUnidad 1.  caracterizacion de los sistemas distribuidos
Unidad 1. caracterizacion de los sistemas distribuidosEManuel Torres
 
Mecanismos de exclusion mutua y algoritmos
Mecanismos de exclusion mutua y algoritmosMecanismos de exclusion mutua y algoritmos
Mecanismos de exclusion mutua y algoritmosAbimael hernandez
 
GESTION DE PROCESOS Sistemas Operativos
GESTION DE PROCESOS Sistemas OperativosGESTION DE PROCESOS Sistemas Operativos
GESTION DE PROCESOS Sistemas Operativosadriel91
 
Procesos Planificacion de los Sistemas Operativos
 Procesos Planificacion de los Sistemas Operativos Procesos Planificacion de los Sistemas Operativos
Procesos Planificacion de los Sistemas OperativosG Hoyos A
 
Comunicación y Sincronizacion de Procesos
Comunicación y Sincronizacion de ProcesosComunicación y Sincronizacion de Procesos
Comunicación y Sincronizacion de ProcesosLorena Ramos
 
Sistemas operativos por estructura
Sistemas operativos por estructuraSistemas operativos por estructura
Sistemas operativos por estructuraProf. Javier Troya
 
Algoritmos de planificación de procesos en sistemas operativos
Algoritmos de planificación de procesos en sistemas operativosAlgoritmos de planificación de procesos en sistemas operativos
Algoritmos de planificación de procesos en sistemas operativosFernando Morales
 
Organización y estructura interna del cpu
Organización y estructura interna del cpuOrganización y estructura interna del cpu
Organización y estructura interna del cpuIsaí Beto Matz Mijes
 
Transiciones de Procesos
Transiciones de ProcesosTransiciones de Procesos
Transiciones de Procesossueich
 
Sistemas operativos procesos
Sistemas operativos   procesosSistemas operativos   procesos
Sistemas operativos procesosayreonmx
 
Modelo basado en prototipos - Ingeniería de Software
Modelo basado en prototipos - Ingeniería de SoftwareModelo basado en prototipos - Ingeniería de Software
Modelo basado en prototipos - Ingeniería de SoftwareJoan Fernando Chipia Lobo
 
Modelo de procesos
Modelo de procesosModelo de procesos
Modelo de procesossiamu_evap
 

La actualidad más candente (20)

modelos del proceso del software
 modelos del proceso del software  modelos del proceso del software
modelos del proceso del software
 
Mantenimiento De Software
Mantenimiento De SoftwareMantenimiento De Software
Mantenimiento De Software
 
Sistemas Operativos Mono Proceso
Sistemas Operativos Mono ProcesoSistemas Operativos Mono Proceso
Sistemas Operativos Mono Proceso
 
Planificacion del procesador
Planificacion del procesadorPlanificacion del procesador
Planificacion del procesador
 
Unidad 1. caracterizacion de los sistemas distribuidos
Unidad 1.  caracterizacion de los sistemas distribuidosUnidad 1.  caracterizacion de los sistemas distribuidos
Unidad 1. caracterizacion de los sistemas distribuidos
 
Mecanismos de exclusion mutua y algoritmos
Mecanismos de exclusion mutua y algoritmosMecanismos de exclusion mutua y algoritmos
Mecanismos de exclusion mutua y algoritmos
 
Gestion de procesos Android
Gestion de procesos AndroidGestion de procesos Android
Gestion de procesos Android
 
GESTION DE PROCESOS Sistemas Operativos
GESTION DE PROCESOS Sistemas OperativosGESTION DE PROCESOS Sistemas Operativos
GESTION DE PROCESOS Sistemas Operativos
 
Sistemas Operativos
Sistemas OperativosSistemas Operativos
Sistemas Operativos
 
Procesos Planificacion de los Sistemas Operativos
 Procesos Planificacion de los Sistemas Operativos Procesos Planificacion de los Sistemas Operativos
Procesos Planificacion de los Sistemas Operativos
 
Comunicación y Sincronizacion de Procesos
Comunicación y Sincronizacion de ProcesosComunicación y Sincronizacion de Procesos
Comunicación y Sincronizacion de Procesos
 
Sistemas operativos por estructura
Sistemas operativos por estructuraSistemas operativos por estructura
Sistemas operativos por estructura
 
computación paralela
computación paralelacomputación paralela
computación paralela
 
Algoritmos de planificación de procesos en sistemas operativos
Algoritmos de planificación de procesos en sistemas operativosAlgoritmos de planificación de procesos en sistemas operativos
Algoritmos de planificación de procesos en sistemas operativos
 
Organización y estructura interna del cpu
Organización y estructura interna del cpuOrganización y estructura interna del cpu
Organización y estructura interna del cpu
 
Transiciones de Procesos
Transiciones de ProcesosTransiciones de Procesos
Transiciones de Procesos
 
PROGRAMACION CONCURRENTE
PROGRAMACION CONCURRENTEPROGRAMACION CONCURRENTE
PROGRAMACION CONCURRENTE
 
Sistemas operativos procesos
Sistemas operativos   procesosSistemas operativos   procesos
Sistemas operativos procesos
 
Modelo basado en prototipos - Ingeniería de Software
Modelo basado en prototipos - Ingeniería de SoftwareModelo basado en prototipos - Ingeniería de Software
Modelo basado en prototipos - Ingeniería de Software
 
Modelo de procesos
Modelo de procesosModelo de procesos
Modelo de procesos
 

Destacado

Exposicion De Procesos
Exposicion De ProcesosExposicion De Procesos
Exposicion De Procesoscpantera73
 
Modelos de paralelismo y concurrencia
Modelos de paralelismo y concurrenciaModelos de paralelismo y concurrencia
Modelos de paralelismo y concurrenciaAgustin Ramos
 
Programacion Multihilo
Programacion MultihiloProgramacion Multihilo
Programacion MultihiloNICK
 
Programacion concurrente
Programacion concurrenteProgramacion concurrente
Programacion concurrentegiovatovar
 
PROGRAMACION CONCURRENTE
PROGRAMACION CONCURRENTEPROGRAMACION CONCURRENTE
PROGRAMACION CONCURRENTEgladysmamani
 

Destacado (6)

Hilos – threads en java
Hilos – threads   en javaHilos – threads   en java
Hilos – threads en java
 
Exposicion De Procesos
Exposicion De ProcesosExposicion De Procesos
Exposicion De Procesos
 
Modelos de paralelismo y concurrencia
Modelos de paralelismo y concurrenciaModelos de paralelismo y concurrencia
Modelos de paralelismo y concurrencia
 
Programacion Multihilo
Programacion MultihiloProgramacion Multihilo
Programacion Multihilo
 
Programacion concurrente
Programacion concurrenteProgramacion concurrente
Programacion concurrente
 
PROGRAMACION CONCURRENTE
PROGRAMACION CONCURRENTEPROGRAMACION CONCURRENTE
PROGRAMACION CONCURRENTE
 

Similar a Sistemas Operativos: Multitarea, Multiprogramación y Concurrencia

Pres clase 5de Octubre
Pres clase 5de OctubrePres clase 5de Octubre
Pres clase 5de Octubrecorinaesquivel
 
Sistemas operativos
Sistemas operativosSistemas operativos
Sistemas operativosyandry loor
 
2 tipos de sistemas operativos y funcionamiento del sistema operativo
2 tipos de sistemas operativos y funcionamiento del sistema operativo2 tipos de sistemas operativos y funcionamiento del sistema operativo
2 tipos de sistemas operativos y funcionamiento del sistema operativoIsaacVk
 
CLASIFICACIÓN DE LOS SISTEMAS OPERATIVOS
CLASIFICACIÓN DE LOS SISTEMAS OPERATIVOSCLASIFICACIÓN DE LOS SISTEMAS OPERATIVOS
CLASIFICACIÓN DE LOS SISTEMAS OPERATIVOSGibran Ramirez Orozco
 
SISTEMA OPERATIVO
SISTEMA OPERATIVO SISTEMA OPERATIVO
SISTEMA OPERATIVO Dj_bf
 
Clasificacion de los sistemas operativos
Clasificacion de los sistemas operativosClasificacion de los sistemas operativos
Clasificacion de los sistemas operativosEliuth Lopez Ruiz
 
Clasificacion de los Sistemas operativos
Clasificacion de los Sistemas operativosClasificacion de los Sistemas operativos
Clasificacion de los Sistemas operativosAnDres Guzman
 
Slideshare
SlideshareSlideshare
SlideshareDj_bf
 
Tipos Sistemas Operativos
Tipos Sistemas OperativosTipos Sistemas Operativos
Tipos Sistemas OperativosArmando_V_G
 
Tipos de sistema operativo y funcionamiento del Sistema Operativo
Tipos de sistema operativo y funcionamiento del Sistema OperativoTipos de sistema operativo y funcionamiento del Sistema Operativo
Tipos de sistema operativo y funcionamiento del Sistema OperativoHugiiño Pereida
 
Clasificacion de los sistema operativo.
Clasificacion de los sistema operativo.Clasificacion de los sistema operativo.
Clasificacion de los sistema operativo.Yeseidid SooSa Garcia
 
Sistemas operativosooooooooo
Sistemas operativosoooooooooSistemas operativosooooooooo
Sistemas operativosooooooooomayitomur
 
Equipo 2 - Exposición.pptx
Equipo 2 - Exposición.pptxEquipo 2 - Exposición.pptx
Equipo 2 - Exposición.pptxJuanVaggom
 

Similar a Sistemas Operativos: Multitarea, Multiprogramación y Concurrencia (20)

Clasificación de los sistemas operativos
Clasificación de los sistemas operativosClasificación de los sistemas operativos
Clasificación de los sistemas operativos
 
Pres clase 5de Octubre
Pres clase 5de OctubrePres clase 5de Octubre
Pres clase 5de Octubre
 
Sistemas operativos
Sistemas operativosSistemas operativos
Sistemas operativos
 
Resumen s.m.
Resumen s.m.Resumen s.m.
Resumen s.m.
 
2 tipos de sistemas operativos y funcionamiento del sistema operativo
2 tipos de sistemas operativos y funcionamiento del sistema operativo2 tipos de sistemas operativos y funcionamiento del sistema operativo
2 tipos de sistemas operativos y funcionamiento del sistema operativo
 
CLASIFICACIÓN DE LOS SISTEMAS OPERATIVOS
CLASIFICACIÓN DE LOS SISTEMAS OPERATIVOSCLASIFICACIÓN DE LOS SISTEMAS OPERATIVOS
CLASIFICACIÓN DE LOS SISTEMAS OPERATIVOS
 
SISTEMA OPERATIVO
SISTEMA OPERATIVO SISTEMA OPERATIVO
SISTEMA OPERATIVO
 
Clasificacion de los sistemas operativos
Clasificacion de los sistemas operativosClasificacion de los sistemas operativos
Clasificacion de los sistemas operativos
 
Clasificacion de los Sistemas operativos
Clasificacion de los Sistemas operativosClasificacion de los Sistemas operativos
Clasificacion de los Sistemas operativos
 
Slideshare
SlideshareSlideshare
Slideshare
 
Tipos Sistemas Operativos
Tipos Sistemas OperativosTipos Sistemas Operativos
Tipos Sistemas Operativos
 
El software catalina
El software catalinaEl software catalina
El software catalina
 
El software catalina
El software catalinaEl software catalina
El software catalina
 
Tipos de sistema operativo y funcionamiento del Sistema Operativo
Tipos de sistema operativo y funcionamiento del Sistema OperativoTipos de sistema operativo y funcionamiento del Sistema Operativo
Tipos de sistema operativo y funcionamiento del Sistema Operativo
 
SSemana 3
SSemana 3SSemana 3
SSemana 3
 
Unidad 1 s.o
Unidad 1 s.oUnidad 1 s.o
Unidad 1 s.o
 
Clasificacion de los sistema operativo.
Clasificacion de los sistema operativo.Clasificacion de los sistema operativo.
Clasificacion de los sistema operativo.
 
Sistemas operativosooooooooo
Sistemas operativosoooooooooSistemas operativosooooooooo
Sistemas operativosooooooooo
 
Sistemas operativosooooooooo
Sistemas operativosoooooooooSistemas operativosooooooooo
Sistemas operativosooooooooo
 
Equipo 2 - Exposición.pptx
Equipo 2 - Exposición.pptxEquipo 2 - Exposición.pptx
Equipo 2 - Exposición.pptx
 

Más de Miguel Magaña

Más de Miguel Magaña (14)

Anti virus
Anti virusAnti virus
Anti virus
 
Opensuse2
Opensuse2Opensuse2
Opensuse2
 
Opensuse
OpensuseOpensuse
Opensuse
 
Segunda unidas open suse
Segunda unidas open suseSegunda unidas open suse
Segunda unidas open suse
 
Proyecto opensuse
Proyecto opensuseProyecto opensuse
Proyecto opensuse
 
Virus
VirusVirus
Virus
 
Funciones de administracion de memoria
Funciones de administracion de memoriaFunciones de administracion de memoria
Funciones de administracion de memoria
 
Archivo de procesamiento por lotes
Archivo de procesamiento por lotesArchivo de procesamiento por lotes
Archivo de procesamiento por lotes
 
Segmentacion simple
Segmentacion simpleSegmentacion simple
Segmentacion simple
 
Proyecto linux
Proyecto linuxProyecto linux
Proyecto linux
 
Proyecto linux
Proyecto linuxProyecto linux
Proyecto linux
 
Pregunats
PregunatsPregunats
Pregunats
 
Linea de tiempo de sistemas operativos
Linea de tiempo de sistemas operativosLinea de tiempo de sistemas operativos
Linea de tiempo de sistemas operativos
 
Linea de tiempo de sistemas operativos
Linea de tiempo de sistemas operativosLinea de tiempo de sistemas operativos
Linea de tiempo de sistemas operativos
 

Sistemas Operativos: Multitarea, Multiprogramación y Concurrencia

  • 1. INSTITUTO POLITÉCNICO NACIONALINSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE INGENIERÍAESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ELÉCTRICA “CULHUACÁN”MECÁNICA Y ELÉCTRICA “CULHUACÁN” INGENIERÍA EN COMPUTACIÓNINGENIERÍA EN COMPUTACIÓN SISTEMAS OPERATIVOSSISTEMAS OPERATIVOS 6CV16CV1 RESENDIZ COLIN PILARRESENDIZ COLIN PILAR MAGAÑA CASTILLO MIGUEL EDUARDOMAGAÑA CASTILLO MIGUEL EDUARDO ORTEGA CORTES LUIS JOELORTEGA CORTES LUIS JOEL MARTINEZ CARRISOSA EDGAR JESUSMARTINEZ CARRISOSA EDGAR JESUS RUIZ GARCIA NATALYRUIZ GARCIA NATALY MULTITAREA,MULTITAREA, MULTIPROGRAMACIÓN,MULTIPROGRAMACIÓN, MULTIPROCESOS YMULTIPROCESOS Y CONCURRENCIACONCURRENCIA
  • 2. PROGRAMACION CONCURRENTEPROGRAMACION CONCURRENTE • La programación concurrente es la simultaneidadLa programación concurrente es la simultaneidad en la ejecución de múltiples tareas interactivas.en la ejecución de múltiples tareas interactivas.
  • 3. • Estas tareas pueden ser un conjunto de procesos oEstas tareas pueden ser un conjunto de procesos o hilos de ejecución creados por un único programa. Lashilos de ejecución creados por un único programa. Las tareas se pueden ejecutar en un sola UCPtareas se pueden ejecutar en un sola UCP ((multiprogramación)multiprogramación), en varios procesadores o en una, en varios procesadores o en una red de computadores distribuidos. La programaciónred de computadores distribuidos. La programación concurrente está relacionada con la programaciónconcurrente está relacionada con la programación paralela, pero enfatiza más la interacción entre tareas.paralela, pero enfatiza más la interacción entre tareas. Así, la correcta secuencia de interacciones oAsí, la correcta secuencia de interacciones o comunicaciones entre los procesos y los nodos loscomunicaciones entre los procesos y los nodos los procesos coordinados de recursos que se compartenprocesos coordinados de recursos que se comparten por tareas son las claves de esta disciplina.por tareas son las claves de esta disciplina.
  • 4. La programación concurrente tiene capacidad para realizarLa programación concurrente tiene capacidad para realizar varias tareas al mismo tiempo o muchas tareas en una solavarias tareas al mismo tiempo o muchas tareas en una sola PC con un procesador o varios.PC con un procesador o varios.
  • 5. MULTITAREASMULTITAREAS • Es la capacidad de un sistema operativo para ejecutarEs la capacidad de un sistema operativo para ejecutar varios procesos al mismo tiempo corriendo sobre unvarios procesos al mismo tiempo corriendo sobre un procesador.procesador. • Con los sistemas operativos DOS esto era incapaz deCon los sistemas operativos DOS esto era incapaz de realizarse.realizarse. • Existen varios tipos de multitareas y son :Existen varios tipos de multitareas y son :* Multitarea Nula * Multitarea Cooperativa * Multitarea Preferente * Multitarea Real
  • 6. MULTITAREA NULAMULTITAREA NULA ESES aquel sistemaaquel sistema operativo que carece deoperativo que carece de multitarea. Aún así puedemultitarea. Aún así puede simularlasimularla implementándola en unimplementándola en un espacio de usuarioespacio de usuario Justamente la familiaJustamente la familia DOSDOS son ejemplos de sistemasson ejemplos de sistemas operativos de multitareaoperativos de multitarea nula.nula.
  • 7. MULTITAREA COOPERATIVAMULTITAREA COOPERATIVA • Tipo de multitarea en donde losTipo de multitarea en donde los procesos de usuario son quienesprocesos de usuario son quienes ceden la CPU al sistema operativoceden la CPU al sistema operativo a intervalos regulares.a intervalos regulares. Es sumamente problemáticoEs sumamente problemático porque si por algún motivo elporque si por algún motivo el proceso de usuario esproceso de usuario es interrumpido, no cede la CPU alinterrumpido, no cede la CPU al sistema operativo que lo ejecutasistema operativo que lo ejecuta y, por lo tanto, quedará trabadoy, por lo tanto, quedará trabado (bloqueado).(bloqueado). Los sistemas operativos WindowsLos sistemas operativos Windows antes de la versión 1995antes de la versión 1995 implementaban este tipo deimplementaban este tipo de multitarea.multitarea.
  • 8. MULTITAREA PREFERENTEMULTITAREA PREFERENTE Multitarea en donde el SO se encarga de administrar uno oMultitarea en donde el SO se encarga de administrar uno o más procesadores, repartiendo el tiempo de uso del mismomás procesadores, repartiendo el tiempo de uso del mismo entre los distintos procesos que esperan utilizarlo (tareas enentre los distintos procesos que esperan utilizarlo (tareas en ejecución).ejecución). En el caso de un solo procesador, cada proceso o tarea loEn el caso de un solo procesador, cada proceso o tarea lo utiliza en períodos cortísimos de tiempo, lo que, en lautiliza en períodos cortísimos de tiempo, lo que, en la práctica, da la sensación de que estuviesen ejecutándose alpráctica, da la sensación de que estuviesen ejecutándose al mismo tiempo.mismo tiempo. Los sistemas operativos que utilizan este tipo de multitareasLos sistemas operativos que utilizan este tipo de multitareas son los UNIX y sus clones (Linux, etc), Windows NT, etc.son los UNIX y sus clones (Linux, etc), Windows NT, etc.
  • 9. MULTITAREA REALMULTITAREA REAL Multitarea en donde el SO ejecuta los procesos realmente al mismoMultitarea en donde el SO ejecuta los procesos realmente al mismo tiempo haciendo uso de múltiples procesadores (más de dos).tiempo haciendo uso de múltiples procesadores (más de dos). La ejecución realmente se realiza en distintos procesadores para cadaLa ejecución realmente se realiza en distintos procesadores para cada proceso o tarea. Obviamente en el caso de que los procesos o tareas seanproceso o tarea. Obviamente en el caso de que los procesos o tareas sean más que la cantidad de procesadores, éstos comienzan a ejecutarse enmás que la cantidad de procesadores, éstos comienzan a ejecutarse en procesadores "en uso" en la forma de multitareas preferenteprocesadores "en uso" en la forma de multitareas preferente Todos los sistemas operativos modernos soportan esta capacidad.Todos los sistemas operativos modernos soportan esta capacidad.
  • 10. MULTIPROGRAMACIONMULTIPROGRAMACION • MULTIPROGRAMACION Es la técnica que permite que dos o masMULTIPROGRAMACION Es la técnica que permite que dos o mas programas ocupen la misma unidad de memoria principal y queprogramas ocupen la misma unidad de memoria principal y que sean ejecutados al mismo tiempo.sean ejecutados al mismo tiempo. • La multiprogramación se refiere a dos o mas programasLa multiprogramación se refiere a dos o mas programas corriendo o procesándose al mismo tiempo; Lacorriendo o procesándose al mismo tiempo; La multiprogramación se controla a través del sistema operativo, elmultiprogramación se controla a través del sistema operativo, el cual observa los programas y los vigila hasta que esténcual observa los programas y los vigila hasta que estén concluidos.concluidos. • El numero de programas que pueden multiprogramarse en formaEl numero de programas que pueden multiprogramarse en forma efectiva, depende de una combinación de la cantidad deefectiva, depende de una combinación de la cantidad de memoria, de la velocidad de la CPU y del numero y velocidad dememoria, de la velocidad de la CPU y del numero y velocidad de los recursos periféricos que tenga conectados, así como de lalos recursos periféricos que tenga conectados, así como de la eficiencia del SISTEMA OPERATIVO.eficiencia del SISTEMA OPERATIVO.
  • 11. PRINCIPIOS DE CONCURRENCIAPRINCIPIOS DE CONCURRENCIA • En un sistema multiprogramado con un único procesador, losEn un sistema multiprogramado con un único procesador, los procesos se intercalan en el tiempo aparentando una ejecuciónprocesos se intercalan en el tiempo aparentando una ejecución simultánea. Aunque no se logra un procesamiento paralelo y producesimultánea. Aunque no se logra un procesamiento paralelo y produce una sobrecarga en los intercambios de procesos, la ejecuciónuna sobrecarga en los intercambios de procesos, la ejecución intercalada produce beneficios en la eficiencia del procesamiento yintercalada produce beneficios en la eficiencia del procesamiento y en la estructuración de los programas.en la estructuración de los programas.
  • 12. PRINCIPIOS DE CONCURRENCIAPRINCIPIOS DE CONCURRENCIA • La concurrencia es el punto clave en los conceptos de multitarea,La concurrencia es el punto clave en los conceptos de multitarea, multiprogramación y multiproceso, la concurrencia comprende unmultiprogramación y multiproceso, la concurrencia comprende un gran numero de cuestiones de diseño incluyendo la comunicacióngran numero de cuestiones de diseño incluyendo la comunicación entre procesos, la compartición y competencia por los recursos, laentre procesos, la compartición y competencia por los recursos, la sincronización de la ejecución de varios procesos y la asignaciónsincronización de la ejecución de varios procesos y la asignación del procesador a los procesos, la concurrencia puede presentarsedel procesador a los procesos, la concurrencia puede presentarse en tres contextos diferentes:en tres contextos diferentes: • Varias aplicaciones:Varias aplicaciones: • Aplicaciones estructuradas:Aplicaciones estructuradas: • Estructura del sistema operativo:Estructura del sistema operativo:
  • 13. APLICACIONESAPLICACIONES ESTRUCTURADAS:ESTRUCTURADAS:Como consecuencia del diseño modular de una aplicación y la división deComo consecuencia del diseño modular de una aplicación y la división de la misma en tareas explícitas estas pueden ser ejecutadas de formala misma en tareas explícitas estas pueden ser ejecutadas de forma concurrente.concurrente. En programación, un lenguaje estructurado es aquel que soporta laEn programación, un lenguaje estructurado es aquel que soporta la división en bloques (procedimientos y funciones) que pueden o nodivisión en bloques (procedimientos y funciones) que pueden o no comunicarse entre sí.comunicarse entre sí. Por ejemplo, los archivos batch (.bat) es contrario a inestructurado, dePor ejemplo, los archivos batch (.bat) es contrario a inestructurado, de poco uso, que no tiene ninguna estructura, es simplemente un “bloque”,poco uso, que no tiene ninguna estructura, es simplemente un “bloque”,
  • 14. ESTRUCTURA DEL SISTEMAESTRUCTURA DEL SISTEMA OPERATIVO:OPERATIVO:Como resultado de las aplicaciones estructurada que se aplica enComo resultado de las aplicaciones estructurada que se aplica en el diseño del propio SO, de forma que este se implemente comoel diseño del propio SO, de forma que este se implemente como un conjunto de procesos.un conjunto de procesos.
  • 15. LABORES DEL SISTEMALABORES DEL SISTEMA OPERATIVOOPERATIVO Son Elementos de gestión y diseño que surgen por causa de la concurrencia:Son Elementos de gestión y diseño que surgen por causa de la concurrencia: 1) El sistema operativo debe seguir a los distintos procesos activos1) El sistema operativo debe seguir a los distintos procesos activos 2) El sistema operativo debe asignar y retirar los distintos recursos a cada2) El sistema operativo debe asignar y retirar los distintos recursos a cada proceso activo, entre estos se incluyen:proceso activo, entre estos se incluyen: _Tiempo de procesador_Tiempo de procesador __MemoriaMemoria _Archivos_Archivos _Dispositivos de E/S_Dispositivos de E/S 3) El sistema operativo debe proteger los datos y los recursos físicos de cada3) El sistema operativo debe proteger los datos y los recursos físicos de cada proceso contra injerencias no intencionadas de otros procesos.proceso contra injerencias no intencionadas de otros procesos. 4) Los resultados de un proceso deben ser independientes de la velocidad a la4) Los resultados de un proceso deben ser independientes de la velocidad a la que se realiza la ejecución de otros procesos concurrentes.que se realiza la ejecución de otros procesos concurrentes.