SlideShare una empresa de Scribd logo
1 de 15
Descargar para leer sin conexión
CONCEPTOS BÁSICOS DE
SISTEMAS OPERATIVOS




                            Vinicio Valdivieso V.
                    Aplicaciones Distribuidas I
            7mo Nivel A, Ingenieria de Sistemas
                                  3era Semana
                                        Tarea 4
Programas y Procesos de
computación
   Un programa software,
    es un artefacto
    construido por un
    desarrollador de
    software, utilizando algún
    lenguaje de
    programación.
Programas y Procesos de
computación
   Un proceso consiste en
    un programa que se
    ejecuta, con valores,
    información de su
    estado, y asignación de
    los recursos necesarios
    para que el sistema
    operativo pueda
    gestionar la ejecución de
    dicho proceso.
Transiciones de estado de
    los procesos
   Durante su vida, un proceso puede pasar por una serie de estados
    discretos.
   Solamente puede haber un proceso en ejecución a la vez, pero pueden
    existir varios listos y varios pueden estar bloqueados.



           Admitido
                             Listo
                              tiempo




                                       exedido

                 Bloqueado                       Ejecución   Salir
Transición de estados
ESTADO                    DESCRIPCION

Nuevo –> Listo            Al crearse un proceso pasa inmediatamente al estado listo.


Listo –> Ejecutando       En el estado de listo, el proceso solo espera para que se le asigne un procesador para
                          ejecutar (tener en cuenta que puede existir más de un procesador en el sistema).
                          Al liberarse un procesador el planificador (scheduler) selecciona el próximo proceso,
                          según algún criterio definido, a ejecutar.



Ejecutando –> Listo       Ante una interrupción que se generé, el proceso puede perder el recurso procesador
                          y pasar al estado de listo. El planificador será el encargado de seleccionar el próximo
                          proceso a ejecutar.

Ejecutando –> Bloqueado   A medida que el proceso ejecuta instrucciones realiza pedidos en distintos
                          componentes (ej.: genera un pedido de E/S). Teniendo en cuenta que el pedido puede
                          demorar y, además, si está en un sistema multiprogramado, el proceso es puesto en
                          una cola de espera hasta que se complete su pedido. De esta forma, se logra utilizar
                          en forma más eficiente el procesador.


Bloqueado –> Listo        Una vez que ocurre el evento que el proceso estaba esperando en la cola de espera,
                          el proceso es puesto nuevamente en la cola de procesos listos.

Ejecutando >              Cuando el proceso ejecuta sus última instrucción pasa al estado terminado. El sistema
Terminado                 libera las estructuras que representan al proceso.
Tipo de Programas en Java
El código para crear
procesos se lo realizará
en Java; tipos de
programa en Java:

   Aplicaciones
   Applets
   Servlets
Tipo de Programas en Java
                              Aplicaciones

 Los usuarios finales suelen
  interactuar con la máquina
  virtual de Java y el conjunto
  estándar de bibliotecas.
 Las aplicaciones Java pueden
  usarse de forma variada,
  como por ejemplo, ser
  incrustadas en una página
  Web.
 Para el desarrollo de
  aplicaciones, se utiliza un
  conjunto de herramientas
  conocidas como JDK (Java
  Development Kit)
Tipo de Programas en Java
                              Applets


 Un Java applet es una
  pequeña aplicacion java que
  realiza una tarea especifica,
  esta es entregada al usuario
  en forma de Java bytecode.
 Los Applets son usados
  para proveer características
  interactivas a las
  aplicaciones web que no
  pueden ser provistas por
  por HTML solamente.
Tipo de Programas en Java
                        Servlets


Servlets son objetos del
lenguaje de programación
Javaque procesan
requerimientos
dinámicamente y contruyen
procesos.
Programación Concurrente
La computación distribuida, supone el uso de
programación concurrente, que consiste en la
ejecución simultánea de procesos. Clases de
computación concurrente:

1. Procesos Concurrentes ejecutados en múltiples
   computadores

2. Procesos Concurrentes ejecutados en un solo
   computador

3. Programación concurrente dentro de un proceso
Procesos concurrente ejecutados
    en multiples computadores
   Son procesos separados ejecutándose concurrentemente en
    computadores independientes interconectados a través de una red.
   Los procesos interactúan con otros procesos mediante el intercambio de
    datos sobre la red, pero su ejecución es completamente independiente.
Procesos concurrentes ejecutados
en un único computador
   Ciertos computadores que utilizan sistemas operativos multitarea,
    que permite la ejecución concurrente de múltiples tareas o
    procesos.
   La concurrencia puede ser real o virtual.
   La verdadera concurrencia multitarea solo es posible si el
    computador tiene múltiples CPU, de forma que cada CPU pueda
    ejecutar un proceso
Programación concurrente
dentro de un proceso
Además de la programación concurrente entre diferentes
procesos, muchas veces un único programa necesita iniciar
diferentes tareas que se ejecuten concurrentemente.
La programación concurrente dentro de un proceso se
lleva a cabo a través de dos tipos de herramientas,
proporcionadas por el sistema operativo:

   Procesos Padres e Hijos
   Threads o Hilos
PROCESOS PADRES E HIJOS
   En tiempo de ejecución, un proceso puede crear procesos
    subordinados o procesos hijos. A través de la multitarea real
    o virtual, el proceso original, denominado proceso padre,
    continúa ejecutándose simultáneamente con el proceso
    hijo.
   Un proceso hijo es un proceso completo que consiste en un
    programa en ejecución, con valores propios información de estado,
    que hereda del proceso padre.
   Un proceso padre puede saber cuando un proceso hijo ha
    finalizado.
THREADS O HILOS
   En vez de procesos hijos, un proceso puede crear threads o hilos,
    también conocidos como procesos ligeros.
   Los hilos poseen una mínima información de estado,
    comportándose por lo demás de la misma forma que los procesos.
   Debido a que implican menos sobrecarga, es preferible utilizar hilos
    que utilizar procesos hijos.

Más contenido relacionado

La actualidad más candente

Modelo de 5 estados para sistemas operativos
Modelo de 5 estados para sistemas operativosModelo de 5 estados para sistemas operativos
Modelo de 5 estados para sistemas operativosLuis Dario Gomez
 
Mecanismos de exclusion mutua y algoritmos
Mecanismos de exclusion mutua y algoritmosMecanismos de exclusion mutua y algoritmos
Mecanismos de exclusion mutua y algoritmosAbimael hernandez
 
Algoritmos distribuidos bully o abusón, ronda,anillo o ring, bizantino
Algoritmos distribuidos bully o abusón, ronda,anillo o ring, bizantinoAlgoritmos distribuidos bully o abusón, ronda,anillo o ring, bizantino
Algoritmos distribuidos bully o abusón, ronda,anillo o ring, bizantinoJohn Nelson Rojas
 
Estados y transiciones de los procesos
Estados y transiciones de los procesosEstados y transiciones de los procesos
Estados y transiciones de los procesosAlberto Ch
 
TAREAS DE LA ING. DE REQUISITOS
TAREAS DE LA ING. DE REQUISITOSTAREAS DE LA ING. DE REQUISITOS
TAREAS DE LA ING. DE REQUISITOSxinithazangels
 
Lenguajes aceptados por una maquina de turing
Lenguajes aceptados por una maquina de turingLenguajes aceptados por una maquina de turing
Lenguajes aceptados por una maquina de turingvmtorrealba
 
Sistemas operativos memoria virtual
Sistemas operativos memoria virtualSistemas operativos memoria virtual
Sistemas operativos memoria virtualandreapab
 
Linux process management
Linux process managementLinux process management
Linux process managementRaghu nath
 
Metodologia de desarrollo de software
Metodologia de desarrollo de softwareMetodologia de desarrollo de software
Metodologia de desarrollo de softwareVictor Varela
 
El kernel en los sistemas operativos
El kernel en los sistemas operativosEl kernel en los sistemas operativos
El kernel en los sistemas operativosKaren Serrano
 
SICRONIZACION DE PROCESOS
SICRONIZACION DE PROCESOSSICRONIZACION DE PROCESOS
SICRONIZACION DE PROCESOSlorenapardo
 
Linux command ppt
Linux command pptLinux command ppt
Linux command pptkalyanineve
 

La actualidad más candente (20)

Algoritmo SJF
Algoritmo SJFAlgoritmo SJF
Algoritmo SJF
 
Modelo de 5 estados para sistemas operativos
Modelo de 5 estados para sistemas operativosModelo de 5 estados para sistemas operativos
Modelo de 5 estados para sistemas operativos
 
An Introduction To Linux
An Introduction To LinuxAn Introduction To Linux
An Introduction To Linux
 
Mecanismos de exclusion mutua y algoritmos
Mecanismos de exclusion mutua y algoritmosMecanismos de exclusion mutua y algoritmos
Mecanismos de exclusion mutua y algoritmos
 
Algoritmos distribuidos bully o abusón, ronda,anillo o ring, bizantino
Algoritmos distribuidos bully o abusón, ronda,anillo o ring, bizantinoAlgoritmos distribuidos bully o abusón, ronda,anillo o ring, bizantino
Algoritmos distribuidos bully o abusón, ronda,anillo o ring, bizantino
 
Estados y transiciones de los procesos
Estados y transiciones de los procesosEstados y transiciones de los procesos
Estados y transiciones de los procesos
 
UNIDAD 2 PROGRAMACIÓN BASICA
UNIDAD 2 PROGRAMACIÓN BASICAUNIDAD 2 PROGRAMACIÓN BASICA
UNIDAD 2 PROGRAMACIÓN BASICA
 
TAREAS DE LA ING. DE REQUISITOS
TAREAS DE LA ING. DE REQUISITOSTAREAS DE LA ING. DE REQUISITOS
TAREAS DE LA ING. DE REQUISITOS
 
Lenguajes aceptados por una maquina de turing
Lenguajes aceptados por una maquina de turingLenguajes aceptados por una maquina de turing
Lenguajes aceptados por una maquina de turing
 
Tema0397
Tema0397Tema0397
Tema0397
 
Herramientas case full informacion
Herramientas case full informacionHerramientas case full informacion
Herramientas case full informacion
 
Sistemas operativos memoria virtual
Sistemas operativos memoria virtualSistemas operativos memoria virtual
Sistemas operativos memoria virtual
 
Linux process management
Linux process managementLinux process management
Linux process management
 
Metodologia de desarrollo de software
Metodologia de desarrollo de softwareMetodologia de desarrollo de software
Metodologia de desarrollo de software
 
Computo en paralelo con OpenMP y OpenMPI
Computo en paralelo con OpenMP y OpenMPIComputo en paralelo con OpenMP y OpenMPI
Computo en paralelo con OpenMP y OpenMPI
 
El kernel en los sistemas operativos
El kernel en los sistemas operativosEl kernel en los sistemas operativos
El kernel en los sistemas operativos
 
SICRONIZACION DE PROCESOS
SICRONIZACION DE PROCESOSSICRONIZACION DE PROCESOS
SICRONIZACION DE PROCESOS
 
Linux command ppt
Linux command pptLinux command ppt
Linux command ppt
 
Algoritmos por prioridades
Algoritmos por prioridadesAlgoritmos por prioridades
Algoritmos por prioridades
 
problemas del software
problemas del softwareproblemas del software
problemas del software
 

Similar a Conceptos básicos de sistemas operativos: programas, procesos, estados y programación concurrente

Apliacaciones Distribuidas. Sistemas Operativos
Apliacaciones Distribuidas. Sistemas OperativosApliacaciones Distribuidas. Sistemas Operativos
Apliacaciones Distribuidas. Sistemas Operativosla77rch
 
Conceptos Basicos De Sistemas Operativos
Conceptos Basicos De Sistemas OperativosConceptos Basicos De Sistemas Operativos
Conceptos Basicos De Sistemas OperativosDBSEII
 
Tarea4 Juan Martinez Conceptos Basicos De Sistemas Operativos
Tarea4 Juan Martinez Conceptos Basicos De Sistemas OperativosTarea4 Juan Martinez Conceptos Basicos De Sistemas Operativos
Tarea4 Juan Martinez Conceptos Basicos De Sistemas OperativosJuan
 
Sistemas Operativos
Sistemas OperativosSistemas Operativos
Sistemas Operativospp guanuchi
 
Semana3 Ad Mauro Patino
Semana3 Ad Mauro PatinoSemana3 Ad Mauro Patino
Semana3 Ad Mauro PatinoMauro Patino
 
Sistemas Operativos
Sistemas OperativosSistemas Operativos
Sistemas Operativosorlandito33
 
Sistemas Operativos
Sistemas OperativosSistemas Operativos
Sistemas Operativosguestd287676
 
Sistemas Operativos
Sistemas OperativosSistemas Operativos
Sistemas OperativosIsrael
 
Tarea3 Ezamora
Tarea3 EzamoraTarea3 Ezamora
Tarea3 Ezamoraedzamo13
 
Semana3 Jorge Armas
Semana3 Jorge ArmasSemana3 Jorge Armas
Semana3 Jorge ArmasIsrael
 
Semana III Myriam Cando
Semana III Myriam CandoSemana III Myriam Cando
Semana III Myriam Candomcando
 
UNIDAD II SISTEMAS OPERATIVOS
UNIDAD II SISTEMAS OPERATIVOSUNIDAD II SISTEMAS OPERATIVOS
UNIDAD II SISTEMAS OPERATIVOSSelqit Mgw
 
Programacion Concurrente
Programacion ConcurrenteProgramacion Concurrente
Programacion ConcurrenteBencho14
 
Programas y procesos de computación
Programas y procesos de computaciónProgramas y procesos de computación
Programas y procesos de computaciónCelso
 
SO2_U2_PROCESOS, HILOS Y COMUNICACIÓN.pptx
SO2_U2_PROCESOS, HILOS Y COMUNICACIÓN.pptxSO2_U2_PROCESOS, HILOS Y COMUNICACIÓN.pptx
SO2_U2_PROCESOS, HILOS Y COMUNICACIÓN.pptxitphectorsg
 
Manual sistemas operativos(para imprimir)
Manual sistemas operativos(para imprimir)Manual sistemas operativos(para imprimir)
Manual sistemas operativos(para imprimir)ivan1905aguilar
 

Similar a Conceptos básicos de sistemas operativos: programas, procesos, estados y programación concurrente (20)

Apliacaciones Distribuidas. Sistemas Operativos
Apliacaciones Distribuidas. Sistemas OperativosApliacaciones Distribuidas. Sistemas Operativos
Apliacaciones Distribuidas. Sistemas Operativos
 
Conceptos Basicos De Sistemas Operativos
Conceptos Basicos De Sistemas OperativosConceptos Basicos De Sistemas Operativos
Conceptos Basicos De Sistemas Operativos
 
Tarea4 Juan Martinez Conceptos Basicos De Sistemas Operativos
Tarea4 Juan Martinez Conceptos Basicos De Sistemas OperativosTarea4 Juan Martinez Conceptos Basicos De Sistemas Operativos
Tarea4 Juan Martinez Conceptos Basicos De Sistemas Operativos
 
Sistemas Operativos
Sistemas OperativosSistemas Operativos
Sistemas Operativos
 
Semana3 Ad Mauro Patino
Semana3 Ad Mauro PatinoSemana3 Ad Mauro Patino
Semana3 Ad Mauro Patino
 
Sistemas Operativos
Sistemas OperativosSistemas Operativos
Sistemas Operativos
 
Sistemas Operativos
Sistemas OperativosSistemas Operativos
Sistemas Operativos
 
Tarea4 Mamfredy Mejia
Tarea4 Mamfredy MejiaTarea4 Mamfredy Mejia
Tarea4 Mamfredy Mejia
 
Sistemas Operativos
Sistemas OperativosSistemas Operativos
Sistemas Operativos
 
Tarea3 Ezamora
Tarea3 EzamoraTarea3 Ezamora
Tarea3 Ezamora
 
Semana3 Jorge Armas
Semana3 Jorge ArmasSemana3 Jorge Armas
Semana3 Jorge Armas
 
Semana III Myriam Cando
Semana III Myriam CandoSemana III Myriam Cando
Semana III Myriam Cando
 
UNIDAD II SISTEMAS OPERATIVOS
UNIDAD II SISTEMAS OPERATIVOSUNIDAD II SISTEMAS OPERATIVOS
UNIDAD II SISTEMAS OPERATIVOS
 
Programacion Concurrente
Programacion ConcurrenteProgramacion Concurrente
Programacion Concurrente
 
Rossie y yo
Rossie y yoRossie y yo
Rossie y yo
 
Programas y procesos de computación
Programas y procesos de computaciónProgramas y procesos de computación
Programas y procesos de computación
 
S..O. Unidad 2
S..O. Unidad 2S..O. Unidad 2
S..O. Unidad 2
 
SO2_U2_PROCESOS, HILOS Y COMUNICACIÓN.pptx
SO2_U2_PROCESOS, HILOS Y COMUNICACIÓN.pptxSO2_U2_PROCESOS, HILOS Y COMUNICACIÓN.pptx
SO2_U2_PROCESOS, HILOS Y COMUNICACIÓN.pptx
 
Manual sistemas operativos(para imprimir)
Manual sistemas operativos(para imprimir)Manual sistemas operativos(para imprimir)
Manual sistemas operativos(para imprimir)
 
Tarea3 fernando lopez
Tarea3   fernando lopezTarea3   fernando lopez
Tarea3 fernando lopez
 

Último

guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersIván López Martín
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxpabonheidy28
 
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...JaquelineJuarez15
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxJOSEMANUELHERNANDEZH11
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...FacuMeza2
 
ejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofJuancarlosHuertasNio1
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024GiovanniJavierHidalg
 
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...AlanCedillo9
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadMiguelAngelVillanuev48
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesFundación YOD YOD
 

Último (20)

guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docx
 
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptx
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
 
ejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sof
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024
 
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidad
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento Protégeles
 

Conceptos básicos de sistemas operativos: programas, procesos, estados y programación concurrente

  • 1. CONCEPTOS BÁSICOS DE SISTEMAS OPERATIVOS Vinicio Valdivieso V. Aplicaciones Distribuidas I 7mo Nivel A, Ingenieria de Sistemas 3era Semana Tarea 4
  • 2. Programas y Procesos de computación  Un programa software, es un artefacto construido por un desarrollador de software, utilizando algún lenguaje de programación.
  • 3. Programas y Procesos de computación  Un proceso consiste en un programa que se ejecuta, con valores, información de su estado, y asignación de los recursos necesarios para que el sistema operativo pueda gestionar la ejecución de dicho proceso.
  • 4. Transiciones de estado de los procesos  Durante su vida, un proceso puede pasar por una serie de estados discretos.  Solamente puede haber un proceso en ejecución a la vez, pero pueden existir varios listos y varios pueden estar bloqueados. Admitido Listo tiempo exedido Bloqueado Ejecución Salir
  • 5. Transición de estados ESTADO DESCRIPCION Nuevo –> Listo Al crearse un proceso pasa inmediatamente al estado listo. Listo –> Ejecutando En el estado de listo, el proceso solo espera para que se le asigne un procesador para ejecutar (tener en cuenta que puede existir más de un procesador en el sistema). Al liberarse un procesador el planificador (scheduler) selecciona el próximo proceso, según algún criterio definido, a ejecutar. Ejecutando –> Listo Ante una interrupción que se generé, el proceso puede perder el recurso procesador y pasar al estado de listo. El planificador será el encargado de seleccionar el próximo proceso a ejecutar. Ejecutando –> Bloqueado A medida que el proceso ejecuta instrucciones realiza pedidos en distintos componentes (ej.: genera un pedido de E/S). Teniendo en cuenta que el pedido puede demorar y, además, si está en un sistema multiprogramado, el proceso es puesto en una cola de espera hasta que se complete su pedido. De esta forma, se logra utilizar en forma más eficiente el procesador. Bloqueado –> Listo Una vez que ocurre el evento que el proceso estaba esperando en la cola de espera, el proceso es puesto nuevamente en la cola de procesos listos. Ejecutando > Cuando el proceso ejecuta sus última instrucción pasa al estado terminado. El sistema Terminado libera las estructuras que representan al proceso.
  • 6. Tipo de Programas en Java El código para crear procesos se lo realizará en Java; tipos de programa en Java:  Aplicaciones  Applets  Servlets
  • 7. Tipo de Programas en Java Aplicaciones  Los usuarios finales suelen interactuar con la máquina virtual de Java y el conjunto estándar de bibliotecas.  Las aplicaciones Java pueden usarse de forma variada, como por ejemplo, ser incrustadas en una página Web.  Para el desarrollo de aplicaciones, se utiliza un conjunto de herramientas conocidas como JDK (Java Development Kit)
  • 8. Tipo de Programas en Java Applets  Un Java applet es una pequeña aplicacion java que realiza una tarea especifica, esta es entregada al usuario en forma de Java bytecode.  Los Applets son usados para proveer características interactivas a las aplicaciones web que no pueden ser provistas por por HTML solamente.
  • 9. Tipo de Programas en Java Servlets Servlets son objetos del lenguaje de programación Javaque procesan requerimientos dinámicamente y contruyen procesos.
  • 10. Programación Concurrente La computación distribuida, supone el uso de programación concurrente, que consiste en la ejecución simultánea de procesos. Clases de computación concurrente: 1. Procesos Concurrentes ejecutados en múltiples computadores 2. Procesos Concurrentes ejecutados en un solo computador 3. Programación concurrente dentro de un proceso
  • 11. Procesos concurrente ejecutados en multiples computadores  Son procesos separados ejecutándose concurrentemente en computadores independientes interconectados a través de una red.  Los procesos interactúan con otros procesos mediante el intercambio de datos sobre la red, pero su ejecución es completamente independiente.
  • 12. Procesos concurrentes ejecutados en un único computador  Ciertos computadores que utilizan sistemas operativos multitarea, que permite la ejecución concurrente de múltiples tareas o procesos.  La concurrencia puede ser real o virtual.  La verdadera concurrencia multitarea solo es posible si el computador tiene múltiples CPU, de forma que cada CPU pueda ejecutar un proceso
  • 13. Programación concurrente dentro de un proceso Además de la programación concurrente entre diferentes procesos, muchas veces un único programa necesita iniciar diferentes tareas que se ejecuten concurrentemente. La programación concurrente dentro de un proceso se lleva a cabo a través de dos tipos de herramientas, proporcionadas por el sistema operativo:  Procesos Padres e Hijos  Threads o Hilos
  • 14. PROCESOS PADRES E HIJOS  En tiempo de ejecución, un proceso puede crear procesos subordinados o procesos hijos. A través de la multitarea real o virtual, el proceso original, denominado proceso padre, continúa ejecutándose simultáneamente con el proceso hijo.  Un proceso hijo es un proceso completo que consiste en un programa en ejecución, con valores propios información de estado, que hereda del proceso padre.  Un proceso padre puede saber cuando un proceso hijo ha finalizado.
  • 15. THREADS O HILOS  En vez de procesos hijos, un proceso puede crear threads o hilos, también conocidos como procesos ligeros.  Los hilos poseen una mínima información de estado, comportándose por lo demás de la misma forma que los procesos.  Debido a que implican menos sobrecarga, es preferible utilizar hilos que utilizar procesos hijos.