SlideShare uma empresa Scribd logo
1 de 4
*INSTITUTO TECNOLOGICO DEL ISTMO*
UNIDAD 2.
NOMBRE DE LA ALUMNA: IRIS DEL CARMEN
ROSADO RODRIGUEZ
NOMBRE DEL PROFESOR: JACINTO TOLEDO TORRES
TEMA: RESUMEN DE “ADMINISTRACION DE
PROCESADORES”
ESPECIALIDAD: ING. EN SISTEMAS COMPUTACIONALES
MATERIA: SISTEMAS OPERATIVOS
GRUPO: GRADO:
“O” 3°
*ADMINISTRACIÓN DEL PROCESADOR*
2.1.- CONCEPTO DE PROCESO.
Un proceso no es mas que un programa en ejecución, e incluye los valores actuales del contador de programa,
los registros y las variables. Conceptualmente cada unos de estos procesos tiene su propia CPU virtual.
Desde luego, en la realidad la verdadera CPU conmuta de un proceso a otro.
Un proceso es un concepto manejado por el sistema operativo que consiste en el conjunto formado por:Las
instrucciones de un programa destinadas a ser ejecutadas por el microprocesador.Su estado de ejecución
en un momento dado, esto es, los valores de los registros de la CPU para dicho programa.Su memoria de
trabajo, es decir, la memoria que ha reservado y sus contenidos.En los sistemas operativos multihilo es
posible crear tanto hilos como procesos. La diferencia estriba en que un proceso solamente puede crear
hilos para sí mismo y en que dichos hilos comparten toda la memoria reservada para el proceso.
2.2.- ESTADOS Y TRANSICIONES DE LOS PROCESOS.
El principal trabajo del procesador es ejecutar las instrucciones de máquina que se encuentran en memoria
principal. Estas instrucciones se encuentran en forma de programas. Para que un programa pueda ser
ejecutado, el sistema operativo crea un nuevo proceso, y el procesador ejecuta una tras otra las
instrucciones del mismo. En un entorno de multiprogramación, el procesador intercalará la ejecución de
instrucciones de varios programas que se encuentran en memoria. El sistema operativo es el responsable
de determinar las pautas de intercalado y asignación de recursos a cada proceso.
2.3 PROCESOS LIGEROS (HILOS O HEBRAS)
El concepto de proceso engloba dos conceptos separados y potencialmente independientes: uno relativo a
la propiedad de recursos y otro que hace referencia a la ejecución.
Unidad que posee recursos: A un proceso se le asigna un espacio de memoria y, de tanto en tanto, se le
puede asignar otros recursos como dispositivos de E/S o ficheros.
Unidad a la que se le asigna el procesador: Un proceso es un flujo de ejecución (una traza) a través de uno
o más programas. Esta ejecución se entremezcla con la de otros procesos. De tal forma, que un proceso
tiene un estado (en ejecución, listo, etc) y una prioridad de expedición u origen. La unidad planificada y
expedida por el sistema operativo es el proceso.
Dentro de un proceso puede haber uno o más hilos de control cada uno con:
· Un estado de ejecución (en ejecución, listo, bloqueado).
· Un contexto de procesador, que se salva cuando no esté ejecutándose.
· Una pila de ejecución.
· Algún almacenamiento estático para variables locales.
· Acceso a la memoria y a los recursos de ese trabajo que comparte con los otros hilos.
Los beneficios clave de los hilos se derivan de las implicaciones del rendimiento: se tarda menos tiempo en
crear un nuevo hilo de un proceso que ya existe, en terminarlo, y en hacer un cambio de contexto entre
hilos de un mismo proceso. Al someter a un mismo proceso a varios flujos de ejecución se mantiene una
única copia en memoria del código, y no varias.
2.4 CONCURRENCIA Y SECUENCIABILIDAD.
La concurrencia comprende un gran número de cuestiones de diseño, incluyendo la comunicación entre
procesos, comparición y competencia por los recursos, sincronización de la ejecución de varios procesos y
asignación del tiempo de procesador a los procesos y es fundamental para que existan diseños como
Multiprogramación, Multiproceso y Proceso distribuido
Los procesos son concurrentes si existen simultáneamente. Cuando dos o más procesos llegan al mismo
tiempo a ejecutarse, se dice que se ha presentado una concurrencia de procesos. Es importante mencionar
que para que dos o más procesos sean concurrentes, es necesario que tengan alguna relación entre ellos
La concurrencia puede presentarse en tres contextos diferentes:
• Varias aplicaciones: La multiprogramación se creó para permitir que el tiempo de procesador de la máquina
fuese compartido dinámicamente entre varios trabajos o aplicaciones activas.
• Aplicaciones estructuradas: Como ampliación de los principios del diseño modular y la programación
estructurada, algunas aplicaciones pueden implementarse eficazmente como un conjunto de procesos
concurrentes.
• Estructura del sistema operativo: Las mismas ventajas de estructuración son aplicables a los
programadores de sistemas y se ha comprobado que algunos sistemas operativos están implementados como
un conjunto de procesos.
Existen tres modelos de computadora en los que se pueden ejecutar procesos concurrentes:
• Multiprogramación con un único procesador. El sistema operativo se encarga de ir repartiendo el tiempo
del procesador entre los distintos procesos, intercalando la ejecución de los mismos para dar así una
apariencia de ejecución simultánea.
• Multiprocesador. Es una maquina formada por un conjunto de procesadores que comparten memoria
principal. En este tipo de arquitecturas, los procesos concurrentes no sólo pueden intercalar su ejecución
sino también superponerla.
• Multicomputadora. Es una maquina de memoria distribuida, que está formada por una serie de
computadoras. En este tipo de arquitecturas también es posible la ejecución simultánea de los procesos
sobre los diferentes procesadores.
En general, la concurrencia será aparente siempre que el número de procesos sea mayor que el de
procesadores disponibles, es decir, cuando haya más de un proceso por procesador.
2.4.1 EXCLUSIÓN MUTUA DE SECCIONES CRÍTICAS.
El método más sencillo de comunicación entre los procesos de un programa concurrente es el uso común de
unas variables de datos. El problema de este sistema es que la acción de un proceso interfiere en las
acciones de otro de una forma no adecuada. Para evitar este tipo de errores se pueden identificar aquellas
regiones de los procesos que acceden a variables compartidas y dotarlas de la posibilidad de ejecución como
si fueran una única instrucción. Los algoritmos de exclusión mutua (comúnmente abreviada como mutex por
mutual exclusion) se usan en programación concurrente para evitar que fragmentos de código conocidos
como secciones críticas accedan al mismo tiempo a recursos que no deben ser compartidos.
La mayor parte de estos recursos son las señales, contadores, colas y otros datos que se emplean en la
comunicación entre el código que se ejecuta cuando se da servicio a una interrupción y el código que se
ejecuta el resto del tiempo. Se trata de un problema de vital importancia porque, si no se toman las
precauciones debidas, una interrupción puede ocurrir entre dos instrucciones cualesquiera del código
normal y esto puede provocar graves fallos.

Mais conteúdo relacionado

Mais procurados

Unidad 2 AdministracióN De Procesos
Unidad 2 AdministracióN De ProcesosUnidad 2 AdministracióN De Procesos
Unidad 2 AdministracióN De Procesos
GUADALUPE
 
Unidad 2 sistemas operativos 2011
Unidad 2  sistemas operativos 2011Unidad 2  sistemas operativos 2011
Unidad 2 sistemas operativos 2011
Abimael hernandez
 
Modelo de procesos
Modelo de procesosModelo de procesos
Modelo de procesos
siamu_evap
 
Administración de procesos y del procesador
Administración de procesos y del procesadorAdministración de procesos y del procesador
Administración de procesos y del procesador
Fernando Camacho
 
Presentacion sistemas operativos
Presentacion sistemas operativosPresentacion sistemas operativos
Presentacion sistemas operativos
danysmash
 
Servicios de los Sistemas Operativos para la Gestion de Procesos
Servicios de los Sistemas Operativos para la Gestion de ProcesosServicios de los Sistemas Operativos para la Gestion de Procesos
Servicios de los Sistemas Operativos para la Gestion de Procesos
Amandita_Jiss
 
Manejo de los procesos en los sistemas operativos
Manejo de los procesos en los sistemas operativosManejo de los procesos en los sistemas operativos
Manejo de los procesos en los sistemas operativos
Carolina Cols
 
Trabajo de sistemas operativos
Trabajo de sistemas operativosTrabajo de sistemas operativos
Trabajo de sistemas operativos
Wpdw Rko
 

Mais procurados (20)

Unidad 2 AdministracióN De Procesos
Unidad 2 AdministracióN De ProcesosUnidad 2 AdministracióN De Procesos
Unidad 2 AdministracióN De Procesos
 
Unidad 2 sistemas operativos 2011
Unidad 2  sistemas operativos 2011Unidad 2  sistemas operativos 2011
Unidad 2 sistemas operativos 2011
 
Modelo de procesos
Modelo de procesosModelo de procesos
Modelo de procesos
 
Programación concurrente
Programación concurrenteProgramación concurrente
Programación concurrente
 
Sistemas Operativos Gestion de procesos
Sistemas Operativos Gestion de procesosSistemas Operativos Gestion de procesos
Sistemas Operativos Gestion de procesos
 
Administración de procesos y del procesador
Administración de procesos y del procesadorAdministración de procesos y del procesador
Administración de procesos y del procesador
 
Grupo1
Grupo1Grupo1
Grupo1
 
Presentacion sistemas operativos
Presentacion sistemas operativosPresentacion sistemas operativos
Presentacion sistemas operativos
 
Servicios de los Sistemas Operativos para la Gestion de Procesos
Servicios de los Sistemas Operativos para la Gestion de ProcesosServicios de los Sistemas Operativos para la Gestion de Procesos
Servicios de los Sistemas Operativos para la Gestion de Procesos
 
Descripcion y control de procesos
Descripcion y control de procesosDescripcion y control de procesos
Descripcion y control de procesos
 
Conceptos Básicos de Sistemas Operativos
Conceptos Básicos de Sistemas OperativosConceptos Básicos de Sistemas Operativos
Conceptos Básicos de Sistemas Operativos
 
Procesos de los Sistemas Operativos
Procesos de los Sistemas OperativosProcesos de los Sistemas Operativos
Procesos de los Sistemas Operativos
 
Manejo de los procesos en los sistemas operativos
Manejo de los procesos en los sistemas operativosManejo de los procesos en los sistemas operativos
Manejo de los procesos en los sistemas operativos
 
Planificación Sistemas Operativos 2021 2
Planificación Sistemas Operativos 2021 2Planificación Sistemas Operativos 2021 2
Planificación Sistemas Operativos 2021 2
 
Procesos de los sistemas operativos
Procesos de los sistemas operativosProcesos de los sistemas operativos
Procesos de los sistemas operativos
 
Proceso
ProcesoProceso
Proceso
 
Trabajo de sistemas operativos
Trabajo de sistemas operativosTrabajo de sistemas operativos
Trabajo de 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
 
Unidad 2
Unidad 2Unidad 2
Unidad 2
 
Tiposso
TipossoTiposso
Tiposso
 

Destaque (9)

Máquinas y equipos: panadería pastelería
Máquinas y equipos: panadería pasteleríaMáquinas y equipos: panadería pastelería
Máquinas y equipos: panadería pastelería
 
Maquinaria y vocabulario tecnico de panaderia 3
Maquinaria y vocabulario tecnico de panaderia 3Maquinaria y vocabulario tecnico de panaderia 3
Maquinaria y vocabulario tecnico de panaderia 3
 
Registo de equipos
Registo de equiposRegisto de equipos
Registo de equipos
 
6 formato mantenimientos y cronograma
6 formato mantenimientos y cronograma6 formato mantenimientos y cronograma
6 formato mantenimientos y cronograma
 
Cuadros de mantenimiento de maquinarias
Cuadros de mantenimiento de maquinariasCuadros de mantenimiento de maquinarias
Cuadros de mantenimiento de maquinarias
 
Ficha tecnica-de-equipos
Ficha tecnica-de-equiposFicha tecnica-de-equipos
Ficha tecnica-de-equipos
 
Maquinaria y herramientas en panadería y pastelería
Maquinaria y herramientas en panadería y pasteleríaMaquinaria y herramientas en panadería y pastelería
Maquinaria y herramientas en panadería y pastelería
 
Plan de mantenimiento preventivo y correctivo
Plan de mantenimiento preventivo y correctivoPlan de mantenimiento preventivo y correctivo
Plan de mantenimiento preventivo y correctivo
 
Formatos basicos de mantenimiento
Formatos basicos de mantenimientoFormatos basicos de mantenimiento
Formatos basicos de mantenimiento
 

Semelhante a :)Resumen

PROGRAMACION CONCURRENTE
PROGRAMACION CONCURRENTEPROGRAMACION CONCURRENTE
PROGRAMACION CONCURRENTE
gladysmamani
 
Programacion concurrente
Programacion concurrenteProgramacion concurrente
Programacion concurrente
giovatovar
 
Qué es un sistema operativo
Qué es un sistema operativoQué es un sistema operativo
Qué es un sistema operativo
camilobar2
 
Microsoft word tipos de sistemas operativos.doc
Microsoft word   tipos de sistemas operativos.docMicrosoft word   tipos de sistemas operativos.doc
Microsoft word tipos de sistemas operativos.doc
Edd Edd
 
Que son los sistemas operativos
Que son los sistemas operativosQue son los sistemas operativos
Que son los sistemas operativos
chicaruda
 
TIPOS DE SOFTWARE
TIPOS DE SOFTWARETIPOS DE SOFTWARE
TIPOS DE SOFTWARE
Jenni2011
 

Semelhante a :)Resumen (20)

PROGRAMACION CONCURRENTE
PROGRAMACION CONCURRENTEPROGRAMACION CONCURRENTE
PROGRAMACION CONCURRENTE
 
Programacion concurrente
Programacion concurrenteProgramacion concurrente
Programacion concurrente
 
S..O. Unidad 2
S..O. Unidad 2S..O. Unidad 2
S..O. Unidad 2
 
Qué es un sistema operativo
Qué es un sistema operativoQué es un sistema operativo
Qué es un sistema operativo
 
Tiposso
TipossoTiposso
Tiposso
 
Microsoft word tipos de sistemas operativos.doc
Microsoft word   tipos de sistemas operativos.docMicrosoft word   tipos de sistemas operativos.doc
Microsoft word tipos de sistemas operativos.doc
 
Portafolio 2
Portafolio 2Portafolio 2
Portafolio 2
 
Planificacion de procesos
Planificacion de procesosPlanificacion de procesos
Planificacion de procesos
 
Unidad 2 jacinto
Unidad 2 jacintoUnidad 2 jacinto
Unidad 2 jacinto
 
Que son los sistemas operativos
Que son los sistemas operativosQue son los sistemas operativos
Que son los sistemas operativos
 
TIPOS DE SOFTWARE
TIPOS DE SOFTWARETIPOS DE SOFTWARE
TIPOS DE SOFTWARE
 
Planificacion de procesos
Planificacion de procesosPlanificacion de procesos
Planificacion de procesos
 
Sistema operativo dalma
Sistema operativo dalmaSistema operativo dalma
Sistema operativo dalma
 
Sistema operativo dalma
Sistema operativo dalmaSistema operativo dalma
Sistema operativo dalma
 
TRABAJO SISTEMAS OPERATIVOS
TRABAJO SISTEMAS OPERATIVOSTRABAJO SISTEMAS OPERATIVOS
TRABAJO SISTEMAS OPERATIVOS
 
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 distribuido
Sistema operativo distribuidoSistema operativo distribuido
Sistema operativo distribuido
 
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
 
Tiposde Sistema
Tiposde SistemaTiposde Sistema
Tiposde Sistema
 
Tiposde Sistema
Tiposde SistemaTiposde Sistema
Tiposde Sistema
 

Último

La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...
JonathanCovena1
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
EliaHernndez7
 
6.-Como-Atraer-El-Amor-01-Lain-Garcia-Calvo.pdf
6.-Como-Atraer-El-Amor-01-Lain-Garcia-Calvo.pdf6.-Como-Atraer-El-Amor-01-Lain-Garcia-Calvo.pdf
6.-Como-Atraer-El-Amor-01-Lain-Garcia-Calvo.pdf
MiNeyi1
 
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdfNUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
UPTAIDELTACHIRA
 

Último (20)

Dinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dDinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes d
 
SESION DE PERSONAL SOCIAL. La convivencia en familia 22-04-24 -.doc
SESION DE PERSONAL SOCIAL.  La convivencia en familia 22-04-24  -.docSESION DE PERSONAL SOCIAL.  La convivencia en familia 22-04-24  -.doc
SESION DE PERSONAL SOCIAL. La convivencia en familia 22-04-24 -.doc
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...
 
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
 
Feliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdfFeliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdf
 
Programacion Anual Matemática5 MPG 2024 Ccesa007.pdf
Programacion Anual Matemática5    MPG 2024  Ccesa007.pdfProgramacion Anual Matemática5    MPG 2024  Ccesa007.pdf
Programacion Anual Matemática5 MPG 2024 Ccesa007.pdf
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
 
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñoproyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDAD
 
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VSOCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
 
6.-Como-Atraer-El-Amor-01-Lain-Garcia-Calvo.pdf
6.-Como-Atraer-El-Amor-01-Lain-Garcia-Calvo.pdf6.-Como-Atraer-El-Amor-01-Lain-Garcia-Calvo.pdf
6.-Como-Atraer-El-Amor-01-Lain-Garcia-Calvo.pdf
 
origen y desarrollo del ensayo literario
origen y desarrollo del ensayo literarioorigen y desarrollo del ensayo literario
origen y desarrollo del ensayo literario
 
INSTRUCCION PREPARATORIA DE TIRO .pptx
INSTRUCCION PREPARATORIA DE TIRO   .pptxINSTRUCCION PREPARATORIA DE TIRO   .pptx
INSTRUCCION PREPARATORIA DE TIRO .pptx
 
Medición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptxMedición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptx
 
Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024
 
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdfTema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
 
Sesión de clase: Fe contra todo pronóstico
Sesión de clase: Fe contra todo pronósticoSesión de clase: Fe contra todo pronóstico
Sesión de clase: Fe contra todo pronóstico
 
Abril 2024 - Maestra Jardinera Ediba.pdf
Abril 2024 -  Maestra Jardinera Ediba.pdfAbril 2024 -  Maestra Jardinera Ediba.pdf
Abril 2024 - Maestra Jardinera Ediba.pdf
 
Fe contra todo pronóstico. La fe es confianza.
Fe contra todo pronóstico. La fe es confianza.Fe contra todo pronóstico. La fe es confianza.
Fe contra todo pronóstico. La fe es confianza.
 
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdfNUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
NUEVAS DIAPOSITIVAS POSGRADO Gestion Publica.pdf
 

:)Resumen

  • 1. *INSTITUTO TECNOLOGICO DEL ISTMO* UNIDAD 2. NOMBRE DE LA ALUMNA: IRIS DEL CARMEN ROSADO RODRIGUEZ NOMBRE DEL PROFESOR: JACINTO TOLEDO TORRES TEMA: RESUMEN DE “ADMINISTRACION DE PROCESADORES” ESPECIALIDAD: ING. EN SISTEMAS COMPUTACIONALES MATERIA: SISTEMAS OPERATIVOS GRUPO: GRADO: “O” 3°
  • 2. *ADMINISTRACIÓN DEL PROCESADOR* 2.1.- CONCEPTO DE PROCESO. Un proceso no es mas que un programa en ejecución, e incluye los valores actuales del contador de programa, los registros y las variables. Conceptualmente cada unos de estos procesos tiene su propia CPU virtual. Desde luego, en la realidad la verdadera CPU conmuta de un proceso a otro. Un proceso es un concepto manejado por el sistema operativo que consiste en el conjunto formado por:Las instrucciones de un programa destinadas a ser ejecutadas por el microprocesador.Su estado de ejecución en un momento dado, esto es, los valores de los registros de la CPU para dicho programa.Su memoria de trabajo, es decir, la memoria que ha reservado y sus contenidos.En los sistemas operativos multihilo es posible crear tanto hilos como procesos. La diferencia estriba en que un proceso solamente puede crear hilos para sí mismo y en que dichos hilos comparten toda la memoria reservada para el proceso. 2.2.- ESTADOS Y TRANSICIONES DE LOS PROCESOS. El principal trabajo del procesador es ejecutar las instrucciones de máquina que se encuentran en memoria principal. Estas instrucciones se encuentran en forma de programas. Para que un programa pueda ser ejecutado, el sistema operativo crea un nuevo proceso, y el procesador ejecuta una tras otra las instrucciones del mismo. En un entorno de multiprogramación, el procesador intercalará la ejecución de instrucciones de varios programas que se encuentran en memoria. El sistema operativo es el responsable de determinar las pautas de intercalado y asignación de recursos a cada proceso. 2.3 PROCESOS LIGEROS (HILOS O HEBRAS) El concepto de proceso engloba dos conceptos separados y potencialmente independientes: uno relativo a la propiedad de recursos y otro que hace referencia a la ejecución. Unidad que posee recursos: A un proceso se le asigna un espacio de memoria y, de tanto en tanto, se le puede asignar otros recursos como dispositivos de E/S o ficheros. Unidad a la que se le asigna el procesador: Un proceso es un flujo de ejecución (una traza) a través de uno o más programas. Esta ejecución se entremezcla con la de otros procesos. De tal forma, que un proceso tiene un estado (en ejecución, listo, etc) y una prioridad de expedición u origen. La unidad planificada y expedida por el sistema operativo es el proceso. Dentro de un proceso puede haber uno o más hilos de control cada uno con: · Un estado de ejecución (en ejecución, listo, bloqueado). · Un contexto de procesador, que se salva cuando no esté ejecutándose. · Una pila de ejecución. · Algún almacenamiento estático para variables locales. · Acceso a la memoria y a los recursos de ese trabajo que comparte con los otros hilos. Los beneficios clave de los hilos se derivan de las implicaciones del rendimiento: se tarda menos tiempo en crear un nuevo hilo de un proceso que ya existe, en terminarlo, y en hacer un cambio de contexto entre
  • 3. hilos de un mismo proceso. Al someter a un mismo proceso a varios flujos de ejecución se mantiene una única copia en memoria del código, y no varias. 2.4 CONCURRENCIA Y SECUENCIABILIDAD. La concurrencia comprende un gran número de cuestiones de diseño, incluyendo la comunicación entre procesos, comparición y competencia por los recursos, sincronización de la ejecución de varios procesos y asignación del tiempo de procesador a los procesos y es fundamental para que existan diseños como Multiprogramación, Multiproceso y Proceso distribuido Los procesos son concurrentes si existen simultáneamente. Cuando dos o más procesos llegan al mismo tiempo a ejecutarse, se dice que se ha presentado una concurrencia de procesos. Es importante mencionar que para que dos o más procesos sean concurrentes, es necesario que tengan alguna relación entre ellos La concurrencia puede presentarse en tres contextos diferentes: • Varias aplicaciones: La multiprogramación se creó para permitir que el tiempo de procesador de la máquina fuese compartido dinámicamente entre varios trabajos o aplicaciones activas. • Aplicaciones estructuradas: Como ampliación de los principios del diseño modular y la programación estructurada, algunas aplicaciones pueden implementarse eficazmente como un conjunto de procesos concurrentes. • Estructura del sistema operativo: Las mismas ventajas de estructuración son aplicables a los programadores de sistemas y se ha comprobado que algunos sistemas operativos están implementados como un conjunto de procesos. Existen tres modelos de computadora en los que se pueden ejecutar procesos concurrentes: • Multiprogramación con un único procesador. El sistema operativo se encarga de ir repartiendo el tiempo del procesador entre los distintos procesos, intercalando la ejecución de los mismos para dar así una apariencia de ejecución simultánea. • Multiprocesador. Es una maquina formada por un conjunto de procesadores que comparten memoria principal. En este tipo de arquitecturas, los procesos concurrentes no sólo pueden intercalar su ejecución sino también superponerla. • Multicomputadora. Es una maquina de memoria distribuida, que está formada por una serie de computadoras. En este tipo de arquitecturas también es posible la ejecución simultánea de los procesos sobre los diferentes procesadores. En general, la concurrencia será aparente siempre que el número de procesos sea mayor que el de procesadores disponibles, es decir, cuando haya más de un proceso por procesador. 2.4.1 EXCLUSIÓN MUTUA DE SECCIONES CRÍTICAS. El método más sencillo de comunicación entre los procesos de un programa concurrente es el uso común de unas variables de datos. El problema de este sistema es que la acción de un proceso interfiere en las acciones de otro de una forma no adecuada. Para evitar este tipo de errores se pueden identificar aquellas regiones de los procesos que acceden a variables compartidas y dotarlas de la posibilidad de ejecución como si fueran una única instrucción. Los algoritmos de exclusión mutua (comúnmente abreviada como mutex por mutual exclusion) se usan en programación concurrente para evitar que fragmentos de código conocidos como secciones críticas accedan al mismo tiempo a recursos que no deben ser compartidos.
  • 4. La mayor parte de estos recursos son las señales, contadores, colas y otros datos que se emplean en la comunicación entre el código que se ejecuta cuando se da servicio a una interrupción y el código que se ejecuta el resto del tiempo. Se trata de un problema de vital importancia porque, si no se toman las precauciones debidas, una interrupción puede ocurrir entre dos instrucciones cualesquiera del código normal y esto puede provocar graves fallos.