SlideShare una empresa de Scribd logo
1 de 10
PROGRAMACIÓN CONCURRENTE
LENGUAJE DE PROGRAMACION
Carlos JavierAlmanzar
Frandy JavierÁlvarez
HISTORIA DE LA PROGRAMACIÓN CONCURRENTE
 La programación concurrente tiene sus raíces en los sistemas operativos.
 En los años 60’s se introdujeron en las computadoras dispositivos
controladores independientes de entrada-salida llamados canales.
 La programación de sistemas con capacidades de concurrencia se hacía a
bajo nivel, en ensamblador.
HISTORIA DE LA PROGRAMACIÓN CONCURRENTE
 Los pioneros en este campo fueron:
 EdsgerWybe Dijkstra fue un científico de la computación de los Países Bajos.
 Per Brinch Hansen fue un informático danés-estadounidense conocido por la teoría de la
programación concurrente.
 Charles Antony Richard Hoare también conocido familiarmente como Tony Hoare, es un
científico británico en computación.
PROGRAMACION CONCURRENTE
 La programación concurrente es la simultaneidad en la ejecución de
múltiples tareas interactivas. Estas tareas pueden ser un conjunto de
procesos o hilos de ejecución creados por un único programa.
MULTITAREA Y MULTIPROGRAMACIÓN
MULTITAREAS
Es la capacidad de un sistema operativo para ejecutar varios procesos al
mismo tiempo corriendo sobre un procesador. Con los sistemas operativos
DOS esto era incapaz de realizarse.
TIPOS DE MULTITAREA
 Multitarea Nula (Usada cuando solo existía un procesador)
 Multitarea Cooperativa (Usada por los sistemas operativos Windows antes
de la versión 1995.
 Multitarea Preferente (Usada porWindows en los años 2000)
 Multitarea Real (Usada Actualmente)
MULTIPROGRAMACIÓN
 Es la técnica que permite que dos o más programas ocupen la misma unidad de
memoria principal y que sean ejecutados al mismo tiempo.
VENTAJAS DE LA PROGRAMACIÓN
CONCURRENTE
 Proporciona el modelo más simple y natural de concebir muchas
aplicaciones.
 Facilita el diseño orientado a objeto de las aplicaciones, ya que los objetos
reales son concurrentes.
 Hace posible compartir recursos y subsistema complejos. En sistemas
monoprocesador permite optimizar el uso de los recursos.
 Facilita la programación de tiempo real, ya que se pueden concebir como
procesos cuya ejecución se planifican de acuerdo con la urgencia.
 Permite reducir los tiempos de ejecución sobre plataformas
multiprocesadoras.
 Facilita la realización de programas fiables por despliegue dinámico de los
procesos en los procesadores.
Programación concurrente

Más contenido relacionado

La actualidad más candente

Elementos de los sistemas operativos
Elementos de los sistemas operativosElementos de los sistemas operativos
Elementos de los sistemas operativosJonnathan19xix
 
P. estructurada vs. programación orientada a objetos
P. estructurada vs. programación orientada a objetosP. estructurada vs. programación orientada a objetos
P. estructurada vs. programación orientada a objetosGeovanny Yungán
 
Logica Difusa Introduccion
Logica Difusa IntroduccionLogica Difusa Introduccion
Logica Difusa IntroduccionESCOM
 
Taller de Base de datos - Unidad 1 SGBD introduccion
Taller de Base de datos - Unidad 1 SGBD introduccionTaller de Base de datos - Unidad 1 SGBD introduccion
Taller de Base de datos - Unidad 1 SGBD introduccionJosé Antonio Sandoval Acosta
 
GESTION DE PROCESOS Sistemas Operativos
GESTION DE PROCESOS Sistemas OperativosGESTION DE PROCESOS Sistemas Operativos
GESTION DE PROCESOS Sistemas Operativosadriel91
 
Ventajas y desventajas de visual studio
Ventajas  y desventajas de visual studioVentajas  y desventajas de visual studio
Ventajas y desventajas de visual studioruthmayhuavale
 
Analizador Sintáctico
Analizador SintácticoAnalizador Sintáctico
Analizador SintácticoPablo Guerra
 
Presentacion Java
Presentacion JavaPresentacion Java
Presentacion Javamaeusogo
 
Lenguaje de programacion c#
Lenguaje de programacion c#Lenguaje de programacion c#
Lenguaje de programacion c#XM Filial de ISA
 
Paradigmas de programacion
Paradigmas de programacionParadigmas de programacion
Paradigmas de programacionyamy matin
 
Mapa mental uml
Mapa mental umlMapa mental uml
Mapa mental umlrigo berto
 
Presentacion Programacion
Presentacion ProgramacionPresentacion Programacion
Presentacion Programacionguestd5974a6
 

La actualidad más candente (20)

Elementos de los sistemas operativos
Elementos de los sistemas operativosElementos de los sistemas operativos
Elementos de los sistemas operativos
 
P. estructurada vs. programación orientada a objetos
P. estructurada vs. programación orientada a objetosP. estructurada vs. programación orientada a objetos
P. estructurada vs. programación orientada a objetos
 
Diagrama de Componentes
Diagrama de ComponentesDiagrama de Componentes
Diagrama de Componentes
 
Diagrama de casos de usos
Diagrama de casos de usosDiagrama de casos de usos
Diagrama de casos de usos
 
Logica Difusa Introduccion
Logica Difusa IntroduccionLogica Difusa Introduccion
Logica Difusa Introduccion
 
Taller de Base de datos - Unidad 1 SGBD introduccion
Taller de Base de datos - Unidad 1 SGBD introduccionTaller de Base de datos - Unidad 1 SGBD introduccion
Taller de Base de datos - Unidad 1 SGBD introduccion
 
GESTION DE PROCESOS Sistemas Operativos
GESTION DE PROCESOS Sistemas OperativosGESTION DE PROCESOS Sistemas Operativos
GESTION DE PROCESOS Sistemas Operativos
 
Diseño fisico
Diseño fisicoDiseño fisico
Diseño fisico
 
Tabla de símbolos
Tabla de símbolosTabla de símbolos
Tabla de símbolos
 
Ventajas y desventajas de visual studio
Ventajas  y desventajas de visual studioVentajas  y desventajas de visual studio
Ventajas y desventajas de visual studio
 
Analizador Sintáctico
Analizador SintácticoAnalizador Sintáctico
Analizador Sintáctico
 
Presentacion Java
Presentacion JavaPresentacion Java
Presentacion Java
 
Clase 1. lógica de la programación
Clase 1. lógica de la programaciónClase 1. lógica de la programación
Clase 1. lógica de la programación
 
Lenguaje de programacion c#
Lenguaje de programacion c#Lenguaje de programacion c#
Lenguaje de programacion c#
 
Windows forms c# visual basic .net ejercicios
Windows forms c# visual basic .net ejerciciosWindows forms c# visual basic .net ejercicios
Windows forms c# visual basic .net ejercicios
 
Lenguaje de programación
Lenguaje de programaciónLenguaje de programación
Lenguaje de programación
 
Traductor y su estructura
Traductor y su estructuraTraductor y su estructura
Traductor y su estructura
 
Paradigmas de programacion
Paradigmas de programacionParadigmas de programacion
Paradigmas de programacion
 
Mapa mental uml
Mapa mental umlMapa mental uml
Mapa mental uml
 
Presentacion Programacion
Presentacion ProgramacionPresentacion Programacion
Presentacion Programacion
 

Similar a Programación concurrente

Software
SoftwareSoftware
Softwareximena
 
SISTEMAS OPERATIVOS
SISTEMAS OPERATIVOSSISTEMAS OPERATIVOS
SISTEMAS OPERATIVOSTICS_TIPOS
 
Generaciones de los sistemas operativos
Generaciones de los sistemas operativosGeneraciones de los sistemas operativos
Generaciones de los sistemas operativosWily Nieves
 
Generaciones de los sistemas operativos
Generaciones de los sistemas operativosGeneraciones de los sistemas operativos
Generaciones de los sistemas operativosDavidTapiaAguilar
 
Sistemas operativos 1 ra unidad
Sistemas operativos 1 ra unidadSistemas operativos 1 ra unidad
Sistemas operativos 1 ra unidadJHOVANI189612GAZGA
 
Sistemas operativos
Sistemas operativosSistemas operativos
Sistemas operativosyandry loor
 
Generacion de compu puls copia
Generacion de compu puls   copiaGeneracion de compu puls   copia
Generacion de compu puls copiaPulsina
 
Carrillo ana sistemas_operativos
Carrillo ana sistemas_operativosCarrillo ana sistemas_operativos
Carrillo ana sistemas_operativos1990bbbb
 
Carrillo ana sistemas_operativos
Carrillo ana sistemas_operativosCarrillo ana sistemas_operativos
Carrillo ana sistemas_operativos1990bbbb
 
Sistemas operativo 1 unidad
Sistemas operativo 1 unidadSistemas operativo 1 unidad
Sistemas operativo 1 unidadBenja villasente
 
Carrillo ana sistemas_operativos
Carrillo ana sistemas_operativosCarrillo ana sistemas_operativos
Carrillo ana sistemas_operativos1990bbbb
 
Sistemas Operativos
Sistemas  OperativosSistemas  Operativos
Sistemas Operativospppp
 
SISTEMAS OPERATIVOS, POR KELLY MORA
SISTEMAS OPERATIVOS, POR KELLY MORASISTEMAS OPERATIVOS, POR KELLY MORA
SISTEMAS OPERATIVOS, POR KELLY MORAKELLY MORA
 
Sistemas operativos
Sistemas operativosSistemas operativos
Sistemas operativosojlp
 
Sistema operativo Anita gb
Sistema operativo Anita gbSistema operativo Anita gb
Sistema operativo Anita gbAnitagb
 
Sistemas operativos
Sistemas operativosSistemas operativos
Sistemas operativosLinda Santos
 

Similar a Programación concurrente (20)

Software
SoftwareSoftware
Software
 
SISTEMAS OPERATIVOS
SISTEMAS OPERATIVOSSISTEMAS OPERATIVOS
SISTEMAS OPERATIVOS
 
Generaciones de los sistemas operativos
Generaciones de los sistemas operativosGeneraciones de los sistemas operativos
Generaciones de los sistemas operativos
 
Generaciones de los sistemas operativos
Generaciones de los sistemas operativosGeneraciones de los sistemas operativos
Generaciones de los sistemas operativos
 
Sistemas operativos 1 ra unidad
Sistemas operativos 1 ra unidadSistemas operativos 1 ra unidad
Sistemas operativos 1 ra unidad
 
Sistemas operativos
Sistemas operativosSistemas operativos
Sistemas operativos
 
Generacion de compu puls copia
Generacion de compu puls   copiaGeneracion de compu puls   copia
Generacion de compu puls copia
 
Carrillo ana sistemas_operativos
Carrillo ana sistemas_operativosCarrillo ana sistemas_operativos
Carrillo ana sistemas_operativos
 
Carrillo ana sistemas_operativos
Carrillo ana sistemas_operativosCarrillo ana sistemas_operativos
Carrillo ana sistemas_operativos
 
Sistemas operativo 1 unidad
Sistemas operativo 1 unidadSistemas operativo 1 unidad
Sistemas operativo 1 unidad
 
Tarea Mami
Tarea MamiTarea Mami
Tarea Mami
 
Carrillo ana sistemas_operativos
Carrillo ana sistemas_operativosCarrillo ana sistemas_operativos
Carrillo ana sistemas_operativos
 
Sistemas Operativos
Sistemas  OperativosSistemas  Operativos
Sistemas Operativos
 
La evolucion
La evolucionLa evolucion
La evolucion
 
SISTEMAS OPERATIVOS, POR KELLY MORA
SISTEMAS OPERATIVOS, POR KELLY MORASISTEMAS OPERATIVOS, POR KELLY MORA
SISTEMAS OPERATIVOS, POR KELLY MORA
 
Software
SoftwareSoftware
Software
 
Sistemas operativos
Sistemas operativosSistemas operativos
Sistemas operativos
 
Investigacion
InvestigacionInvestigacion
Investigacion
 
Sistema operativo Anita gb
Sistema operativo Anita gbSistema operativo Anita gb
Sistema operativo Anita gb
 
Sistemas operativos
Sistemas operativosSistemas operativos
Sistemas operativos
 

Último

Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PCCesarFernandez937857
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFAROJosé Luis Palma
 
La Función tecnológica del tutor.pptx
La  Función  tecnológica  del tutor.pptxLa  Función  tecnológica  del tutor.pptx
La Función tecnológica del tutor.pptxJunkotantik
 
Procesos Didácticos en Educación Inicial .pptx
Procesos Didácticos en Educación Inicial .pptxProcesos Didácticos en Educación Inicial .pptx
Procesos Didácticos en Educación Inicial .pptxMapyMerma1
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADOJosé Luis Palma
 
codigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinacodigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinavergarakarina022
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Carlos Muñoz
 
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...JAVIER SOLIS NOYOLA
 
CULTURA NAZCA, presentación en aula para compartir
CULTURA NAZCA, presentación en aula para compartirCULTURA NAZCA, presentación en aula para compartir
CULTURA NAZCA, presentación en aula para compartirPaddySydney1
 
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxLINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxdanalikcruz2000
 
Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024IES Vicent Andres Estelles
 
BROCHURE EXCEL 2024 FII.pdfwrfertetwetewtewtwtwtwtwtwtwtewtewtewtwtwtwtwe
BROCHURE EXCEL 2024 FII.pdfwrfertetwetewtewtwtwtwtwtwtwtewtewtewtwtwtwtweBROCHURE EXCEL 2024 FII.pdfwrfertetwetewtewtwtwtwtwtwtwtewtewtewtwtwtwtwe
BROCHURE EXCEL 2024 FII.pdfwrfertetwetewtewtwtwtwtwtwtwtewtewtewtwtwtwtwealekzHuri
 
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdfOswaldoGonzalezCruz
 
Introducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleIntroducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleJonathanCovena1
 
Flores Nacionales de América Latina - Botánica
Flores Nacionales de América Latina - BotánicaFlores Nacionales de América Latina - Botánica
Flores Nacionales de América Latina - BotánicaJuan Carlos Fonseca Mata
 
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxOLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxjosetrinidadchavez
 
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDUFICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDUgustavorojas179704
 
Día de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialDía de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialpatriciaines1993
 
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxPresentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxYeseniaRivera50
 

Último (20)

Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PC
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
 
La Función tecnológica del tutor.pptx
La  Función  tecnológica  del tutor.pptxLa  Función  tecnológica  del tutor.pptx
La Función tecnológica del tutor.pptx
 
Procesos Didácticos en Educación Inicial .pptx
Procesos Didácticos en Educación Inicial .pptxProcesos Didácticos en Educación Inicial .pptx
Procesos Didácticos en Educación Inicial .pptx
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
 
codigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinacodigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karina
 
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
Plan Refuerzo Escolar 2024 para estudiantes con necesidades de Aprendizaje en...
 
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
 
CULTURA NAZCA, presentación en aula para compartir
CULTURA NAZCA, presentación en aula para compartirCULTURA NAZCA, presentación en aula para compartir
CULTURA NAZCA, presentación en aula para compartir
 
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxLINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
 
Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024
 
BROCHURE EXCEL 2024 FII.pdfwrfertetwetewtewtwtwtwtwtwtwtewtewtewtwtwtwtwe
BROCHURE EXCEL 2024 FII.pdfwrfertetwetewtewtwtwtwtwtwtwtewtewtewtwtwtwtweBROCHURE EXCEL 2024 FII.pdfwrfertetwetewtewtwtwtwtwtwtwtewtewtewtwtwtwtwe
BROCHURE EXCEL 2024 FII.pdfwrfertetwetewtewtwtwtwtwtwtwtewtewtewtwtwtwtwe
 
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
 
Introducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleIntroducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo Sostenible
 
Flores Nacionales de América Latina - Botánica
Flores Nacionales de América Latina - BotánicaFlores Nacionales de América Latina - Botánica
Flores Nacionales de América Latina - Botánica
 
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxOLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
 
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDUFICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDU
 
Unidad 3 | Teorías de la Comunicación | MCDI
Unidad 3 | Teorías de la Comunicación | MCDIUnidad 3 | Teorías de la Comunicación | MCDI
Unidad 3 | Teorías de la Comunicación | MCDI
 
Día de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialDía de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundial
 
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxPresentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
 

Programación concurrente

  • 1. PROGRAMACIÓN CONCURRENTE LENGUAJE DE PROGRAMACION Carlos JavierAlmanzar Frandy JavierÁlvarez
  • 2. HISTORIA DE LA PROGRAMACIÓN CONCURRENTE  La programación concurrente tiene sus raíces en los sistemas operativos.  En los años 60’s se introdujeron en las computadoras dispositivos controladores independientes de entrada-salida llamados canales.  La programación de sistemas con capacidades de concurrencia se hacía a bajo nivel, en ensamblador.
  • 3. HISTORIA DE LA PROGRAMACIÓN CONCURRENTE  Los pioneros en este campo fueron:  EdsgerWybe Dijkstra fue un científico de la computación de los Países Bajos.  Per Brinch Hansen fue un informático danés-estadounidense conocido por la teoría de la programación concurrente.  Charles Antony Richard Hoare también conocido familiarmente como Tony Hoare, es un científico británico en computación.
  • 4. PROGRAMACION CONCURRENTE  La programación concurrente es la simultaneidad en la ejecución de múltiples tareas interactivas. Estas tareas pueden ser un conjunto de procesos o hilos de ejecución creados por un único programa.
  • 6. MULTITAREAS Es la capacidad de un sistema operativo para ejecutar varios procesos al mismo tiempo corriendo sobre un procesador. Con los sistemas operativos DOS esto era incapaz de realizarse.
  • 7. TIPOS DE MULTITAREA  Multitarea Nula (Usada cuando solo existía un procesador)  Multitarea Cooperativa (Usada por los sistemas operativos Windows antes de la versión 1995.  Multitarea Preferente (Usada porWindows en los años 2000)  Multitarea Real (Usada Actualmente)
  • 8. MULTIPROGRAMACIÓN  Es la técnica que permite que dos o más programas ocupen la misma unidad de memoria principal y que sean ejecutados al mismo tiempo.
  • 9. VENTAJAS DE LA PROGRAMACIÓN CONCURRENTE  Proporciona el modelo más simple y natural de concebir muchas aplicaciones.  Facilita el diseño orientado a objeto de las aplicaciones, ya que los objetos reales son concurrentes.  Hace posible compartir recursos y subsistema complejos. En sistemas monoprocesador permite optimizar el uso de los recursos.  Facilita la programación de tiempo real, ya que se pueden concebir como procesos cuya ejecución se planifican de acuerdo con la urgencia.  Permite reducir los tiempos de ejecución sobre plataformas multiprocesadoras.  Facilita la realización de programas fiables por despliegue dinámico de los procesos en los procesadores.

Notas del editor

  1. La programación concurrente tiene sus raíces en los sistemas operativos y en la programación de sistemas, no en vano, los primeros programas concurrentes fueron los propios sistemas operativos de multiprogramación en los que un solo procesador de gran capacidad debía compartir su tiempo entre muchos usuarios. En los años 60’s se introdujeron en las computadoras dispositivos controladores independientes de entrada-salida llamados canales. Estos canales eran programables en sí mismos. Los sistemas operativos fueron organizados como una colección de procesos ejecutándose concurrentemente (“al mismo tiempo”), algunos en los canales y otros ejecutándose en el procesador principal o CPU.  Por otro lado en esos años la programación de sistemas con capacidades de concurrencia se hacía a bajo nivel, en ensamblador, pues aparte de no disponer de lenguajes de alto nivel con capacidades de concurrencia, se primaba la supuesta eficiencia del código escrito directamente en ensamblador. La aparición en 1972 del lenguaje de alto nivel Concurrent Pascal, desarrollado por Brinch Hansen abrió la puerta a otros lenguajes de alto nivel que incorporaban concurrencia.
  2. La programación concurrente es la simultaneidad en la ejecución de múltiples tareas interactivas. Estas tareas pueden ser un conjunto de procesos o hilos de ejecución creados por un único programa. Las tareas se pueden ejecutar en un sola UCP (Unidad central de procesamiento) (multiprogramación), en varios procesadores o en una red de computadores distribuidos . La programación concurrente está relacionada con la programación paralela , pero enfatiza más la interacción entre tareas. Así, la correcta secuencia de interacciones o comunicaciones entre los procesos y el acceso coordinado de recursos que se comparten por todos los procesos o tareas son las claves de esta disciplina.
  3. Multitareas: Es la capacidad de un sistema operativo para ejecutar varios procesos al mismo tiempo corriendo sobre un procesador. Con los sistemas operativos DOS esto era incapaz de realizarse. Existen varios tipos de multitareas y son:
  4. Multitarea Nula: Es aquella en la que el sistema operativo carece de multitarea. Aun así puede simularla implementándola en un espacio de usuario o usando trucos. Justamente la familia DOS son ejemplos de sistemas operativos de multitarea nula.   Multitarea Cooperativa: Tipo de multitarea en donde los procesos de usuario son quieres ceden la CPU al sistema operativo a intervalos regulares. Los sistemas operativos Windows antes de la versión 1995 implementaban este tipo de multitarea.   Multitarea Preferente: Multitarea en donde el SO se encarga de administrar uno o más procesadores, repartiendo el tiempo de uso del mismo entre los distintos procesos que esperan utilizarlo (tareas en ejecución).   Multitarea Real: Multitarea en donde el SO ejecuta los procesos realmente al mismo tiempo haciendo uso de múltiples procesadores (más de dos). Todos los sistemas operativos modernos soportan esta capacidad.
  5. Multiprogramación Es la técnica que permite que dos o más programas ocupen la misma unidad de memoria principal y que sean ejecutados al mismo tiempo. La multiprogramación se refiere a dos o más programas corriendo o procesándose al mismo tiempo; La multiprogramación se controla a través del sistema operativo, el cual observa los programas y los vigila hasta que estén concluidos. El número de programas que pueden multiprogramarse en forma efectiva, depende de una combinación de la cantidad de memoria, de la velocidad de la CPU y del número y velocidad de los recursos periféricos que tenga conectados, así como de la eficiencia del SISTEMA OPERATIVO.