Modelo de Computación Concurrente para un Sistema Operativo Orientado a Objetos basado en una Máqu...
Download
1 / 87

Presentada por Lourdes Tajes Martínez Dirigida por Dr. D. Juan Manuel Cueva Lovelle - PowerPoint PPT Presentation


  • 114 Views
  • Uploaded on

Modelo de Computación Concurrente para un Sistema Operativo Orientado a Objetos basado en una Máquina Abstracta. TESIS DOCTORAL. Presentada por Lourdes Tajes Martínez Dirigida por Dr. D. Juan Manuel Cueva Lovelle Oviedo, 16 de Marzo de 2000. Contenidos de la presentación.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Presentada por Lourdes Tajes Martínez Dirigida por Dr. D. Juan Manuel Cueva Lovelle' - kedem


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

Modelo de Computación Concurrente para un Sistema Operativo Orientado a Objetos basado en una Máquina Abstracta

TESIS DOCTORAL

Presentada por Lourdes Tajes Martínez

Dirigida por Dr. D. Juan Manuel Cueva Lovelle

Oviedo, 16 de Marzo de 2000


Contenidos de la presentación Orientado a Objetos basado en una Máquina Abstracta

  • Objetivos de la tesis

  • Ámbito conceptual: Soluciones a los problemas de caos e integración

  • Colaboración de máquina abstracta y sistema operativo: Reflectividad

  • Máquina abstracta

  • Sistema operativo

  • Prototipo

  • Conclusiones

  • Líneas futuras de investigación


Objetivos de la tesis Orientado a Objetos basado en una Máquina Abstracta

  • Integración del paradigma de la OO en los sistemas informáticos

  • Poner orden en el caos de objetos

  • Integrar la computación en el entorno orientado a objetos

  • Flexibilidad

    • El sistema de soporte debe ser capaz de soportar adaptación en tiempo de ejecución a los requerimientos de las aplicaciones


Interoperabilidad Orientado a Objetos basado en una Máquina Abstracta

  • Adopción no uniforme

Salto semántico

Aplicación OO

Sistema operativo no OO

Capas OO

  • Adopción parcial

Capas para comunicar aplicación-SO

Capa básica de soporte no OO, abstracciones e interfaz tradicionales

Caos de objetos

  • Causas y consecuencias

  • Soluciones actuales al caos: Parciales

    • Permiten la comunicación entre objetos

    • Disminución del rendimiento

    • Falta de transparencia de las soluciones

    • Falta de uniformidad conceptual en torno a la OO


Objetivos de la tesis Orientado a Objetos basado en una Máquina Abstracta

  • Integración del paradigma de la OO en los sistemas informáticos

  • Poner orden en el caos de objetos  Necesidad de construir una plataforma de soporte de objetos

  • Integrar la computación en el entorno orientado a objetos

    • Integración homogénea de la computación de objetos en el sistema OO

    • Problemas de integrar concurrencia y OO

  • Flexibilidad

    • El sistema de soporte debe ser capaz de soportar adaptación en tiempo de ejecución a los requerimientos de las aplicaciones


Modelos de integraci n de la computaci n en el entorno oo
Modelos de integración de la computación en el entorno OO Orientado a Objetos basado en una Máquina Abstracta

  • Abstracciones independientes para objetos y actividades

    • Separación clásica de recursos/procesos en los SO

    • Modelo conocido, ampliamente difundido e implantado

    • Robusto

    • Abstracciones tradicionales poco adecuadas  abstracciones paranoicas

    • Demasiadas abstracciones: Dos dimensiones software

    • Falta de uniformidad

  • Abstracción de objeto que encapsula las actividades

    • Implantación directa del modelo conceptual de entorno de objetos

    • Uniformidad

    • Objetos con semántica completa que refuerza la propiedad de encapsulación


Concurrencia en un entorno de computaci n oo

method x1 Orientado a Objetos basado en una Máquina Abstracta

method x2

method ...

Superclase

SULA

ENCAP

SINCRONIZACIÓN

Objeto

CIÓN

¿SINCRONIZACIÓN?

method y1

method y2

method ...

Subclase

SINCRONIZACIÓN

Concurrencia en un entorno de computación OO

  • El problema de la integridad del objeto

  • El problema de la herencia

  • Aproximaciones para la integración de concurrencia y OO

    • Aproximación ortogonal

    • Aproximación heterogénea

    • Aproximación homogénea


Objetivos de la tesis Orientado a Objetos basado en una Máquina Abstracta

  • Integración del paradigma de la OO en los sistemas informáticos

  • Poner orden en el caos de objetos  Necesidad de construir una plataforma de soporte de objetos

  • Integrar la computación en el entorno orientado a objetos

    • Integración homogénea de la computación de objetos en el sistema OO

    • Problemas de integrar concurrencia y OO

  • Flexibilidad

    • El sistema de soporte debe ser capaz de soportar adaptación en tiempo de ejecución a los requerimientos de las aplicaciones


Contenidos de la presentación Orientado a Objetos basado en una Máquina Abstracta

  • Objetivos de la tesis

  • Ámbito conceptual de la tesis: Soluciones a los problemas de caos e integración

  • Colaboración de máquina abstracta y sistema operativo: Reflectividad

  • Máquina abstracta

  • Sistema operativo

  • Prototipo

  • Conclusiones

  • Líneas futuras de investigación


Mbito conceptual de la tesis soluci n a los problemas de caos e integraci n
Ámbito conceptual de la tesis: Solución a los problemas de caos e integración

  • Plataforma de soporte de objetos

  • Requisitos funcionales y no funcionales para el entorno de computación

  • Modelos de objetos para la computación

  • Arquitectura del SOO: Requisitos, aproximaciones

  • Propuesta de modelo de computación y estructura interna para el SOO


Plataforma de soporte de objetos soo
Plataforma de soporte de objetos: SOO caos e integración

  • Soporte nativo a la abstracción de objeto

  • Uniformidad en torno a la OO: Modo de trabajo OO

  • Infraestructura del SOO: Mecanismos uniformes

  • Modelo único de objeto

  • Homogeneidad: Objetos con idénticas propiedades

  • Integrar computación de objetos en el sistema de soporte de objetos

  • Simplicidad

  • Capa básica del sistema

    • Hace posible la existencia de objetos

    • Facilita la interacción de objetos

    • Modelo de Objetos Común

    • Integración de la computación

    • Reduce la complejidad

Elimina Salto semántico

Soluciona interoperabilidad

Homogeneidad


Ámbito conceptual de la tesis: Solución a los problemas de caos e integración

  • Plataforma de soporte de objetos

  • Requisitos funcionales y no funcionales para el entorno de computación

  • Modelos de objetos para la computación

  • Arquitectura del SOO: Requisitos, aproximaciones

  • Propuesta de modelo de computación y estructura interna para el SOO


Requisitos funcionales caos e integración

  • Abstracciones adecuadas

    • Única abstracción adecuada es el objeto

  • Interacción entre objetos: Mecanismo de comunicación uniforme

    • Comunicación, flujo de control e introducción de la concurrencia en el sistema

    • Modelos de paso de mensajes

  • Concurrencia y sincronización

    • Concurrencia y sincronización externas transparentes

    • Concurrencia y sincronización internas transparentes a los clientes

      • Objetos serie: Un único procesador virtual por objeto

      • Objetos concurrentes: Varios procesadores virtuales por objeto

  • Planificación

    • Gestionar el reparto de tiempo: Planificador

  • Gestión de excepciones

  • Representa entidad del mundo real

  • Conjunto de procesadores virtuales


Objeto a origen de la invocación caos e integración

Objeto b destino de la invocación

Envío del mensaje

Llamada y bloqueo

c:=b.método(args);

Transferencia de control

Ejecución del método solicitado

b::método(args):res

{ ...

Retorno del resultado

return (res);

}

Desbloqueo

Reanudación método origen

Modelo Síncrono

  • Sencillo

  • Extendido en los lenguajes

  • Poca sobrecarga

  • Limita el nivel de concurrencia


Objeto a origen de la invocación caos e integración

Objeto b destino de la invocación

No implica un bloqueo inmediato que provoque la transferencia de control

Invocación de un método en el objeto destino

c:=b.método(args);

Bloqueo esperando por el mensaje de respuesta

esperar();

Ejecución del método solicitado

b::método(args):res

{ ...

return(res);

}

Recibe el resultado: Desbloqueo

Retorno del resultado

Reanudación método origen

Modelo Asíncrono

  • Aumento del nivel de concurrencia

  • Primitiva explícita de sincronización

  • Complica el modelo de programación


Objeto a origen de la invocación caos e integración

Objeto b destino de la invocación

No implica transferencia de control

Invocación a un método en el objeto b

c:=b.metodo(args);

Ejecución del método solicitado

b::metodo(args):res

{ ....

Intento de invocar un método del objeto resultado: bloqueo

c.metodo-de-c(args);

return(res);

}

Desbloqueo

Retorno del resultado

Reanudación método origen

Modelo espera en caso necesario

  • Sencillez

  • Eficiencia

  • Aumento nivel concurrencia

  • Poca sobrecarga adicional respecto al modelo síncrono

  • Adecuado para ambientes paralelos y distribuidos

  • Complica el modelo de excepciones


Fin de la ejecución del método m caos e integración1.

Puede comenzar la ejecución

de m2 o m3

Llamadas concurrentes a métodos

m1

m2

m3

Objeto

Entrada al objeto: selecciona un método

m1

Retorno

Llamadas concurrentes a métodos

m1

m2

m3

Fin de la ejecución del método m1

Objeto

Fin de la ejecución del método m3

Entrada al objeto: permite la ejecución simultánea de varios métodos

Fin de la ejecución del método m2

m3

m2

m1

Retorno

Requisitos funcionales

  • Abstracciones adecuadas

    • Única abstracción adecuada es el objeto

  • Interacción entre objetos: Mecanismo de comunicación uniforme

    • Comunicación, flujo de control e introducción de la concurrencia en el sistema

    • Modelos de paso de mensajes

  • Concurrencia y sincronización

    • Concurrencia y sincronización externas transparentes

    • Concurrencia y sincronización internas transparentes a los clientes

      • Objetos serie: Un único procesador virtual por objeto

      • Objetos concurrentes: Varios procesadores virtuales por objeto

  • Planificación

    • Gestionar el reparto de tiempo: Planificador

  • Gestión de excepciones

  • Representa entidad del mundo real

  • Conjunto de procesadores virtuales


Requisitos funcionales caos e integración

  • Abstracciones adecuadas

    • Única abstracción adecuada es el objeto

  • Interacción entre objetos: Mecanismo de comunicación uniforme

    • Comunicación, flujo de control e introducción de la concurrencia en el sistema

    • Modelos de paso de mensajes

  • Concurrencia y sincronización

    • Concurrencia y sincronización externas transparentes

    • Concurrencia y sincronización internas transparentes a los clientes

      • Objetos serie: Un único procesador virtual por objeto

      • Objetos concurrentes: Varios procesadores virtuales por objeto

  • Planificación

    • Gestionar el reparto de tiempo: Planificador

  • Gestión de excepciones

  • Representa entidad del mundo real

  • Conjunto de procesadores virtuales


Problema/Solución caos e integración

Modelo/Representación

SOO

Objeto

Mensaje

Requisitos no funcionales

  • Abstracción única

    • Deriva en modelo de programación donde no existen conceptos separados para datos y procesos (Economía de Conceptos)

  • Visión uniforme del sistema

    • Estructurar el sistema como un conjunto de objetos que interaccionan

    • Entorno sencillo y uniforme

    • Abstracción potente

  • Mecanismo de computación flexible

  • Eficiencia


Mbito conceptual de la tesis soluci n a los problemas de caos e integraci n1
Ámbito conceptual de la tesis: Solución a los problemas de caos e integración

  • Plataforma de soporte de objetos

  • Requisitos funcionales y no funcionales para el entorno de computación

  • Modelos de objetos para la computación

  • Arquitectura del SOO: Requisitos, aproximaciones

  • Propuesta de modelo de computación y estructura interna para el SOO


Objeto A caos e integración

Objeto B

Objeto C

Invocación

Resultado

Objeto B

Objeto A

Objeto C

Invocación

Ha

Resultado

Hb

Hc

P

Modelo de objetos (1)

  • Modelo pasivo

    • Objetos pasivos

    • Objetos proceso

    • Comunicación entre objetos: Invocación de métodos

  • Modelo activo

    • Objeto

    • Interacción entre objetos: Paso de mensajes

      • Recepción mensajes  Análisis estado interno, ejecución / retraso método

    • Modelo objetos activo  Modo natural de integrar concurrencia en los objetos


Modelo de objetos (y 2) caos e integración

  • Modelo pasivo

    • Proximidad conceptual a los entornos tradicionales

    • Familiaridad

    • Gran cantidad de trabajos existentes

    • Relativa eficiencia

    • Falta de uniformidad y homogeneidad en la abstracción

    • Coste derivado de la poca adecuación de las abstracciones

    • Viola el principio de encapsulación

    • Protección

    • Problemas para la distribución y la persistencia

  • Modelo activo

    • Soporte a una abstracción única y homogénea

    • Uniformidad en la interacción

    • Facilita la sincronización

    • Fácilmente distribuible y persistente

    • Sobrecarga


Ámbito conceptual de la tesis: Solución a los problemas de caos e integración

  • Plataforma de soporte de objetos

  • Requisitos funcionales y no funcionales para el entorno de computación

  • Modelos de objetos para la computación

  • Arquitectura del SOO: Requisitos, aproximaciones

  • Propuesta de modelo de computación y estructura interna para el SOO


Requisitos para la arquitectura del SOO caos e integración

  • Aplicar los principios de orientación a objetos

    • Estructura OO en tiempo de diseño: Sistema como un marco OO

    • Estructura OO en tiempo de ejecución: Sistema como conjunto de objetos

    • Interfaz OO

  • Arquitectura flexible: Adaptación a requerimientos de aplicaciones

    • Flexibilidad estática: Sistemas personalizables

    • Flexibilidad dinámica: Sistemas adaptables y configurables


Arquitectura del SOO: Aproximaciones caos e integración

  • Micronúcleo

  • Incremento de la flexibilidad

  • Modularidad

  • Portabilidad del hardware

  • Adaptabilidad de grano grueso

  • Flexibilidad limitada

  • Menor rendimiento

  • OO

  • Reutilización

  • Adaptabilidad

  • Facilidad para evolucionar

  • Optimización estructurada

  • Reflectividad: Implantación abierta

    • Separar, en lugar de ocultar: Interfaz base versus meta interfaz

  • Flexibilidad

  • Rendimiento


Ámbito conceptual de la tesis: Solución a los problemas de caos e integración

  • Plataforma de soporte de objetos

  • Requisitos funcionales y no funcionales para el entorno de computación

  • Modelos de objetos para la computación

  • Arquitectura del SOO: Requisitos, aproximaciones

  • Propuesta de modelo de computación y estructura interna para el SOO


Propuesta de modelo y estructura para el soo
Propuesta de modelo y estructura para el SOO caos e integración

  • Propuesta para el SOO  Modelo activo

  • Máquina abstracta orientada a objetos

    • Micronúcleo del SOO

  • Sistema operativo OO: Modifica la máquina abstracta transparentemente

    • Extiende y complementa el comportamiento de la máquina abstracta

      • Modelo de objetos para la concurrencia

      • Comunicación

      • Planificación

    • Ofrece su funcionalidad sin romper el paradigma de OO

  • MA + SO = Soporte flexible a objetos

  • Objeto como agente de procesamiento serie

  • Modelo de objetos único

  • Comunicación: Síncrono y espera en caso necesario

  • Excepciones


Contenidos de la presentación caos e integración

  • Objetivos de la tesis

  • Ámbito conceptual de la tesis: Soluciones a los problemas de caos e integración

  • Colaboración de máquina abstracta y sistema operativo: Reflectividad

  • Máquina abstracta

  • Sistema operativo

  • Prototipo

  • Conclusiones

  • Líneas futuras de investigación


Reflectividad

S: Sistema de Computación caos e integración

M(S): Modelo de S

S

M(S)

Conexión de Causalidad

Reflectividad

  • Capacidad de un programa de manipular, como si de datos se tratasen, la representación del propio estado del programa durante su ejecución

  • Modelo del sistema

    • Abstracción adecuada del sistema

    • Razonamiento y la manipulación

    • Conexión Causa-Efecto.


Arquitectura reflectiva

A

M3

M2

M1

M4

Arquitectura reflectiva

  • Entidades base

  • Computación base

  • Nivel base o Nivel sistema

  • Meta nivel

Torre

Reflectiva

  • Meta entidades

  • Meta computación

  • Sistema

  • Actividades

    básicas

  • Exposición

  • Reflexión

Meta-entidades

Computación en el meta-nivel para gestionar acciones en el nivel base

Meta sistema

Exposición

Reflejo

Invocación de un método

B

C

Sistema base

Entidades base


Definici n de una arquitectura reflectiva

Meta-nivel para el objeto aplicación caos e integración

Objeto aplicación

meta-objeto

Meta-computación

Meta Sistema

Retorno del Control al Nivel Base

Reflectividad Implícita

Reflectividad Explícita

Invocación método

B

C

Sistema Base

M2

M1

M4

M3

A

Definición de una arquitectura reflectiva

  • Ámbito

    • Estructural

    • Del comportamiento

  • Representación

    • Integración uniforme Modelo-Sistema

    • Arquitectura reflectiva en SOO

  • Flujo de control

    • Reflectividad implícita

    • Reflectividad explícita


Modelos de reflectividad

Methods caos e integración

HANDLEMSG {

...

}

Clase MetaClase

  • Sencillez

  • Especialización.

  • Cambio dinámico

  • Parcialmente meta

  • Compatibilidad

Instancia de

HANDLEMSG

Clase Objeto

Paso de Control al Meta nivel

Instancia de

Methods

HANDLEMSG {

...

}

Objeto

Clase MetaObjeto

  • Especialización

  • Monitorización

  • Modificación

M

Clase Objeto

Conexión Causal

Instancia de

HANDLEMSG

MetaObjeto

  • No se puede actuar sobre el mensaje

Instancia de

Paso de Control al Meta nivel

Objeto

M

Clase Mensaje

Instancia de

Clase Objeto

MetaObjeto Mensaje

(Selector, Argumentos, Receptor)

SEND

Paso de Control

al Meta nivel

Instancia de

Objeto

M

Modelos de reflectividad

  • Modelo MetaClase

  • Modelo MetaObjeto

  • Exposición del paso de mensajes

  • Definir y usar distintas

    clases de comunicación

  • Carencia de continuidad


Organizaci n reflectiva del soo
Organización reflectiva del SOO caos e integración

  • Sistema base y meta sistema en el SOO

  • Meta-interfaz

  • Flujo de control


Objetos definidos en el ensamblador de la máquina abstracta caos e integración

Objetos internos que soportan la comunicación entre objetos

Objetos internos definidos en el lenguaje de desarrollo

Máquina abstracta

Objetos internos que soportan la representación de las instancias en tiempo de ejecución.

Objetos que exponen características de la máquina abstracta.

Objetos del usuario. Codifican la solución del problema

Objetos que soportan la comunicación entre objetos

Máquina abstracta

Máquina abstracta: Nivel base

  • Marco de definición de los objetos: Instancias de la clase Object

  • Soporte en tiempo de ejecución: Entidades autónomas de procesamiento

  • Entorno básico de computación

  • Elevar objetos de la MAOO  Codificar modelo de objetos como objetos


Sistema operativo meta nivel

Conjunto de objetos del sistema operativo caos e integración: Meta-espacio para el objeto base

Da soporte a

Máquina abstracta

Da soporte a

Da soporte a

Máquina abstracta

Objeto base

Meta-objetos: Objetos que extienden o modifican alguna funcionalidad de la máquina abstracta

Sistema Operativo: Meta-Nivel

  • Modelo Meta-Objetos: División de grano fino del meta-nivel en objetos

    • Instancias de la clase METAOBJETO

    • Diferencias objetos base - meta-objetos

      • Acceso a la información

      • Ejecución de métodos

  • Sistema operativo: ¡Objetos, objetos!

    • Conjunto de meta-objetos asociados con los objetos definidos en el nivel base

    • Sobreescriben la especificación del metaobjeto por defecto definido por la MA

    • Asociación dinámica  Entorno flexible

  • Descripción OO del meta-nivel: Integración homogénea de SO con el entorno


DeMO caos e integración

Envío

DeMO

Recepción

DeMO

Planificación

DeMO

Sincronización

Recepción Mensajes

Sincronización de la ejecución

Envío Mensajes

Planificación

Recepción Mensajes

Objeto A

Objeto B

Meta-Interfaz

  • Estructural

    • Instancia, Clase, Estructura interna de la máquina, estado de ejecución, …

  • Del comportamiento

    • Cosificar elementos de la máquina que hacen que funcionen objetos del nivel base mediante MetaObjetos


Transferencia de control entre el nivel base y el meta nivel
Transferencia de control entre el nivel base y el meta-nivel caos e integración

  • Reflectividad implícita

  • Reflectividad explícita: Transferencia de control uniforme

    • Invocación directa de métodos en objetos del meta-nivel a través de una referencia al mismo

      • Modificar la definición de la instrucción primitiva de invocación a métodos.

  • Eventos relacionados con la ejecución de métodos

  • Planificación de tareas

  • Invocación de métodos


Ventajas de una arquitectura reflectiva aplicada a un sistema oo
Ventajas caos e integraciónde una arquitectura reflectiva aplicada a un sistema OO

  • Mantenimiento de la uniformidad conceptual

  • Extensibilidad y adaptabilidad

  • Separación de asuntos o incumbencias (concerns)

  • Favorece el diseño de distintos modelos de objetos activo

  • Incremento de la productividad

  • Generalización para multiprocesadores y sistemas distribuidos


Contenidos de la Presentación caos e integración

  • Objetivos de la tesis

  • Ámbito conceptual de la tesis: Soluciones a los problemas de caos e integración

  • Colaboración de máquina abstracta y sistema operativo: Reflectividad

  • Máquina abstracta

  • Sistema operativo

  • Prototipo

  • Conclusiones

  • Líneas futuras de investigación


M quina abstracta orientada a objetos
Máquina abstracta orientada a objetos caos e integración

  • Arquitectura de referencia

  • Soporte al objeto en la máquina abstracta

  • Infraestructura proporcionada por la máquina abstracta

  • Reflectividad estructural


Estructura de referencia de la m quina abstracta

Clases caos e integración

Área de Clases

Área de Referencias

Jerarquía de Clases Básicas

Referencias

Instancias

root_sched

Área de Instancias

this

Referencias del sistema

Área de Ejecución

current thread

Hilos de ejecución

Estructura de referencia de la máquina abstracta


Juego de instrucciones oo de alto nivel 1
Juego de instrucciones OO de alto nivel (1) caos e integración

Identificación unívoca de la clase

Relaciones Jerárquicas: Identificador de la(s) clase(s) antecesoras directas en la jerarquía

class NombreDeLaClase

isa {ClaseDeLaQueHeredaDirectamente}

aggregation

{NombreDelAgregado: ClaseDelAgregado}

association

{NombreDelAsociado: ClaseDelAsociado}

methods

{<NombreDelMétodo> ([{ClaseDeLosParámetros}]) [:ClaseDeRetorno];}

endclass

Relaciones de Agregación: Referencia del objeto que pertenece a la clase y clase del mismo.

  • Instrucciones declarativas

Relaciones de Asociación: Referencia del objeto asociado y clase del mismo.

Definición de métodos: Nombre, referencias y tipos de los parámetros, referencias y tipo de retorno

Referencias que se utilizan en el método y su tipo

method <NombreDelMétodo> ([{NombreParámetro: ClaseParámetro}]) [:ClaseRetorno]

[refs {<NombreReferencia: ClaseReferencia>

[instances {<ReferenciaObjeto: Clase>};]

code

<Descripción del cuerpo del método>

endcode

endmethod

Instancias que se utilizan y su tipo


Juego de instrucciones oo de alto nivel y 2
Juego de instrucciones OO de alto nivel (y 2) caos e integración

  • Instrucciones del Comportamiento

    • Instrucciones para manipulación de objetos a través de las referencias

      • new <ref>

      • assign <refdestino>, <reforigen>

      • delete <ref>

    • Invocación de método a través de una referencia.

      • <ref>.{<ámbito>:}<método>({<ref>}) [:ref]

      • <ref>{<ámbito>:}<método>({<ref>}) [:ref]

    • Control de flujo.

      • exit

      • JT/JF <refbool>, etiqueta

      • JNULL/JNNULL <ref>, etiqueta

      • JMP etiqueta

      • handler etiqueta / throw


Jerarqu a de clases
Jerarquía de clases caos e integración

  • Clases primitivas

  • Clases de usuario


Máquina abstracta orientada a objetos caos e integración

  • Arquitectura de referencia

  • Soporte al objeto en la máquina abstracta

  • Infraestructura proporcionada por la máquina abstracta

  • Reflectividad estructural


Representaci n del objeto en tiempo de ejecuci n 1
Representación del objeto en tiempo de ejecución (1) caos e integración

  • Representación completa de los objetos en tiempo de ejecución:Objetos activos como modelo de unificación semántica

  • Reflectividad: Aumento del soporte al objeto por parte de la MA

    • Soporta la relación de causalidad

    • Exposición del motor de ejecución

Objeto

Enlace Meta

Meta objetos

Meta Espacio del objeto

Métodos en ejecución

hilos

Estado

Semántica del objeto

Métodos

Área de Ejecución del objeto


Representaci n del objeto en tiempo de ejecuci n y 2

Contexto estático del hilo caos e integración

Referencia al origen de la llamada

Referencia Instancia

Estado

MC

Pila de ejecución

Capa o contexto de ejecución de la pila

Referencia rr

Referencia exc

Hilo de Ejecución

Referencias objetos locales

Contexto dinámico del hilo

Instancia

a la que pertenece el método en ejecución

Representación del objeto en tiempo de ejecución (y 2)

  • Contexto de ejecución de un método: Estructura del hilo

  • Distribución

  • Seguridad e integridad

  • Importancia relación objeto-hilo


M quina abstracta orientada a objetos1
Máquina abstracta orientada a objetos caos e integración

  • Arquitectura de referencia

  • Soporte al objeto en la máquina abstracta

  • Infraestructura proporcionada por la máquina abstracta

    • Comunicación entre objetos

    • Semántica del objeto ante la invocación concurrente de métodos

    • Planificación de actividades

    • Excepciones

  • Reflectividad estructural


Paso de mensaje en la m quina abstracta
Paso de mensaje en la Máquina Abstracta caos e integración

  • Modelo síncrono: Call

    • Crea nuevo hilo en objeto destino

    • Transmite control al destino para ejecutar método: símil del paso de testigo

    • Retorno de resultados

  • Modelo espera en caso necesario: Send

    • Crea nuevo hilo

    • Divide flujo de control

    • Retorno de resultados: Objetos virtuales transparentes

  • Punto de inflexión para conseguir la reflectividad del comportamiento en el sistema.


Objeto O’ caos e integración

{

Instrucción 1

O’’:=call(O’, m, args)

 }

method m

{

Instrucción 1

Instrucción n

}

O’’:=O’.m(args)

Objeto O

call

{

Instrucción 1

Instrucción n

}

Máquina Abstracta

Call de cerca

  • Caso base: Máquina abstracta actúa de meta-espacio básico finalizando la recursión reflectiva

    • Invocación de métodos en objetos primitivos

    • Reflectividad explícita

    • Retorno del meta-nivel al nivel-base

Invocación de métodos

Ejecución efectiva del método

Ejecución instrucción call

Creación de un nuevo hilo virtual en O’ y suspensión hilo origen

Transferencia de control al método m

Fin ejecución método: La máquina abstracta instancia el resultado en la referencia O’’ y reanuda el método origen


Call de cerca

O’’:=O’.m(args) caos e integración

Meta-objeto

method m

{

instrucción 1

instrucción n

 }

Meta-espacio

method metamethod

{

instrucción 1

O’’:=call(O’, m, args)

 }

Meta-objeto’

Call de cerca

Invocación de métodos: Punto de inflexión para la reflectividad

Objeto Base O’

method x {

instrucción 1

O’’:=call(O’, m, args)

}

method m

{

instrucción 1

instrucción n

}

Objeto Base O

Ejecución efectiva del método m

  • Caso Reflectivo: Transferencia de control al meta-nivel

    • objeto origen y destino son objetos del nivel base: reflectividad implícita

Instrucción Call de la máquina

Ejecución de la instrucción Call

call

{ 

call(metaobjeto, metamethod, args)

}

Meta-computación que complementa el soporte que la MA da a la invocación de métodos

Máquina Abstracta

Transición síncrona del nivel base al meta-nivel: Suspende la ejecución del método x

Retorno de resultados, reanudación método origen

Invocación de m (Caso básico de call): Creación de un nuevo hilo virtual en O’ y transferencia del meta-nivel al nivel base


O’’:=O’ caos e integraciónm(args)

Objeto O’

Objeto Base O

{

Instrucción 1

O’’:=send(O’, m, args)

call(O’’, método, args)

}

method m

{

Instrucción 1

Instrucción n

}

send

{

Instrucción 1

Instrucción n

}

Máquina Abstracta

Send de cerca

  • Caso Base: Máquina abstracta actúa de meta-espacio básico

    • Método en un objeto primitivo

    • Método de un meta objeto desde un objeto del nivel base: Reflectividad Explícita

    • Método del nivel base desde el meta nivel: Transferencia control meta-nivel  nivel base

Invocación método

Ejecución de la instrucción send

Intento acceso O’’: suspensión/acceso

Ejecución de m

Creación de un nuevo hilo virtual en O’ y suspensión del método origen durante el envío del mensaje. Informa al planificador de un nuevo hilo para ejecutar el método m en O’.

Fin m: máquina abstracta instancia O’’

Fin send:

retorna el control al origen y ambos métodos se ejecutan en paralelo


Send de cerca

caos e integración

{

instrucción 1

O’’:=send(O’, m, args)

call(O’’, método, args)

 }

method m

{

instrucción 1

instrucción n

}

Objeto

Base O

O’’:=O’m(args)

send

{ 

call(metaobjeto, metamétodo, args)

… }

Máquina Abstracta

Meta-espacio

Meta-objeto’

method metamétodo

{

instrucción 1

O’’:=send(O’, m, args)

 }

method m

{

instrucción 1

instrucción n

}

Send de cerca

Ejecución de la instrucción send de la máquina

Invocación de método: Punto de inflexión

Intento acceso O’’: suspensión/acceso

  • Caso Reflectivo: Transferencia de control al meta-nivel

    • Ambos objetos son del nivel base  reflectividad implícita

Fin ejecución instrucción send: máquina abstracta reanuda método origen

Objeto Base O’

Suspensión del método origen durante el envío del mensaje, luego ambos métodos se ejecutan en paralelo

Fin m: máquina abstracta instancia O’’

Invocación de m (Caso básico de send): Creación de un nuevo hilo virtual en O’ y suspensión del método origen durante el envío del mensaje. Informa al planificador de un nuevo hilo para ejecutar el método m en O’.

Meta-computación

Meta-objeto

Transferencia síncrona de control del nivel base al meta-nivel


Control de la concurrencia en la m quina abstracta

Modelo caos e integración

Objetos Concurrencia

Objeto Base

Control de la concurrencia en la Máquina Abstracta

  • paso de mensajes

  • cerraduras

  • Soporte al control de la concurrencia entre objetos

  • Soporte de la MA al control de la concurrencia intra objetos

    • Define en la implantación de los objetos, una política de control por omisión: objetos serie

  • Flexibilidad: Exponer modelo de objetos para la concurrencia

    • Meta-objetos del SO asociados con objetos base sustituyen la definición por omisión de la MA

Objeto Activo

Estado Secuencial

Meta Objeto

Relación de Control de Concurrencia


Planificaci n
Planificación caos e integración

  • Ciclo de ejecución de la MA

    • Ciclo indefinido: Ejecutar instrucción señalada por MC (Method Counter) de la referencia del sistema ct (current thread) y actualizar el valor de MC

  • Hilo actual libera la MA

    • Finalización

    • Suspensión.

  • Requisamiento

  • Cambia el valor de la referencia del sistema ct

  • MA sigue ciclo de ejecución con otro hilo.


Excepciones
Excepciones caos e integración

  • handler Etiqueta

  • throw

  • Instrucciones

  • Lanzar una excepción: Error en tiempo de ejecución o throw

    • Instancia de excepción  Asociarla con exc de la capa de contexto actual

  • Instalación de un gestor para la excepción: handler

    • Gestor: contexto de ejecución en un hilo

    • Indica la instrucción donde continuar la ejecución para gestionar la excepción

  • Ejecución del gestor para gestionar la excepción producida

    • La ejecución del programa continuará en la dirección del último gestor ejecutado

    • El método actual define un gestor en su código

    • El método actual no define un gestor en su código


M quina abstracta orientada a objetos2
Máquina abstracta orientada a objetos caos e integración

  • Arquitectura de referencia

  • Soporte al objeto en la máquina abstracta

  • Infraestructura proporcionada por la máquina abstracta

    • Comunicación entre objetos

    • Semántica del objeto ante la invocación concurrente de métodos

    • Planificación de actividades

    • Excepciones

  • Reflectividad estructural


Reflectividad estructural en la m quina abstracta
Reflectividad estructural en la máquina abstracta caos e integración

Object

ExecObjectArea

_Class

InstanceArea

Instance

ReferenceArea

MetaObject

MetaSpace

ClassArea

Thread

ThreadArea

Exposición de los elementos estructurales que representan a los objetos en tiempo de ejecución

Exposición del motor

en tiempo

de ejecución

Exposición de la Arquitectura de la Máquina

Exposición del

meta-espacio

Máquina Abstracta


Contenidos de la presentación caos e integración

  • Objetivos de la tesis

  • Ámbito conceptual de la tesis: Soluciones a los problemas de caos e integración

  • Colaboración de máquina abstracta y sistema operativo: Reflectividad

  • Máquina abstracta

  • Sistema operativo

  • Prototipo

  • Conclusiones

  • Líneas futuras de investigación


Dise o del sistema operativo orientado a objetos
Diseño del sistema operativo orientado a objetos caos e integración

  • Comunicación

  • Semántica del objeto

  • Planificación

  • SO = {objetos}  Espacio de objetos del sistema

  • Reflectividad (Máquina, SO)


Reflectividad en la invocaci n de m todos

  • Recepción de mensajes caos e integración

    • Análisis entorno

    • Selección método

    • Retraso ejecución

    • Delegación mensajes

  • Seleccionar servidor

  • Gestión errores

  • Soporte tiempo real

  • Depuración

Envío de Mensajes

en el Meta Nivel

Objeto Activo 2

Objeto Activo 1

Mensaje

Meta Objeto

Meta Objeto

Emisor 1

Receptor 2

Respuesta

Ejecución M

Invocación método M

Objeto 1

Call

Objeto 2

Reflectividad en la invocación de métodos

  • Aspectos expuestos

    • Lado Servidor: búsqueda y ejecución del método correspondiente al mensaje

    • Lado Cliente: envío de mensajes en el lado del cliente


Colaboraci n de emisor y receptor en la invocaci n s ncrona de un m todo

method m caos e integración

{

instrucción 1

instrucción n

}

{

instrucción 1

O’’:=call(O’, m, args)

 }

Objeto Base O’

Objeto Base O

call

{ 

// Caso Reflectivo

call(MOEmisor, RCallE, args)

// Caso Base

call(O’, m, args)

 }

send

{

call(MOEmisor, RSendE, args)

 }

Máquina Abstracta

Meta-objeto’ Receptor

Meta-nivel

method RCallR

{ if overload() delegate()

else { lookup(m)

call(O’, m, args)

 }

}

method RCallE

{

call(MO’Receptor, RCallR, args)

 }

Colaboración de emisor y receptor en la invocación síncrona de un método

O’’:=O’.m(args);

Ejecución de la instrucción call

Retorno síncrono, reanudará el método origen, retornando el resultado

Retorno síncrono, irá reanudando los métodos RCallR, RCallE y el origen, retornando el resultado

Transferencia del nivel base al meta-nivel para ejecutar el método RCallE

Análisis del mensaje y toma de decisión

Meta-objeto Emisor

Acciones antes de invocar el método

Acciones después de recibir el resultado

Invocación síncrona de RCallR, suspensión de RCallE

Invocación síncrona del método m


Colaboraci n de emisor y receptor en la invocaci n as ncrona de un m todo

{ instrucción 1 caos e integración

O’’:=send(O’, m, args)

 }

method m

{ instrucción 1

instrucción n }

Objeto Base O

Colaboración de Emisor y Receptor en la Invocación Asíncrona de un método

O’’:=O’m(args);

Objeto Base O’

Ejecución de la instrucción send. Transferencia del nivel base al meta-nivel

send { 

// Caso Reflectivo

call(MOEmisor, RSendE, args)

// Caso Base

.....

call(Sched, NewMethod, newthread)

}

call {

call(MOEmisor, RCallE, args)

 }

Crea un nuevo hilo virtual en O’ y ejecuta el método Enqueue del meta-objeto planificador. Retorna el control al meta-espacio

Invocación síncrona de RSendR, suspensión de RSendE

Máquina Abstracta

Meta-objeto’ Receptor

Ejecución síncrona de RSendE

Meta-nivel

Análisis de mensaje y toma de decisión

method RSendR

{

if overload() delegate()

else { lookup(m)

send(O’, m, args)

 }

}

method RSendE

{

call(MO’Receptor, RSendR, args)

}

Meta-objeto Emisor

method NewMethod

{

Enqueue()

 }

Meta-objeto

Planificador


Ventajas de la reflectividad en la invocaci n de m todos
Ventajas de la reflectividad en la invocación de métodos caos e integración

  • Soporte adaptado a distintos tipos de lenguajes

  • Personalización de la invocación para mayor eficiencia

  • Restricciones de tiempo

  • Facilita la creación de entornos distribuidos y persistentes al tratar todo ello en el meta-nivel


Diseño del sistema operativo orientado a objetos caos e integración

  • SO = {objetos}  Espacio de objetos del sistema

  • Reflectividad (Máquina, SO)

  • Comunicación

  • Semántica del objeto

  • Planificación


Reflectividad en el modelo de concurrencia interna
Reflectividad en el modelo de concurrencia interna caos e integración

  • Requisitos de la solución

    • Encapsulación

    • Extensibilidad

    • Modularidad

    • Reusabilidad

  • Aspectos expuestos

    • Se expone la política de sincronización de grano grueso (Política Aceptación Mensajes)

  • Objetivos del meta-objeto sincronizador

    • Permite a las aplicaciones establecer distintos comportamientos para un objeto base dependiendo del entorno de ejecución en el que se vaya a utilizar, sin tener que modificar el objeto base en sí.


Reflectividad en el modelo de concurrencia interna1
Reflectividad en el modelo de concurrencia interna caos e integración

  • Ejecución meta-objeto Sincronizador

    • Explícito

      • MetaObjeto Receptor invoca método ExecNewMethod (mensaje solicitado, origen del mensaje, otros parámetros)

    • Implícito

      • Suspensión(StopMethod), Reanudación(ResumeMethod), Finalización de un método(EndMethod)

  • Colaboración del meta-objeto sincronizador en el meta-nivel

  • Ventajas

    • Separación de incumbencias

    • Control más sencillo de la sincronización

    • Problema de la herencia


Colaboraci n del meta objeto sincronizador en el meta nivel

caos e integración

Objeto Base O

{ instrucción 1

O’’:=call(O’, m, args)

 }

Colaboración del meta-objeto Sincronizador en el meta-nivel

O’’:=O’.m(args);

method m

{ instrucción 1

instrucción n }

Invocación de m: Transferencia del nivel base al meta-nivel

Objeto Base O’

call

{ 

// Caso Reflectivo

// Caso Base

 }

send

{ 

// Caso Reflectivo

// Caso Base

 }

Máquina Abstracta

Receptor invoca síncronamente ExecNewMethod

Consulta de los metadatos de O’

Meta-objeto datos de O’

Ejecución no conveniente: Retrasar/Rechazar m y devolver control a O

Métodos

retrasados

Métodos

suspendidos

Métodos en ejecución

method ExecNewMethod(O’, m, args)

{ 

Entrymethod(O’, m, args)

OK { 

call(O’, m, args)

 }

NO { 

DelayMethod(O’, m, args)

 } }

Meta-objeto

Sincronizador

Meta-espacio de O’

Ejecución conveniente: Invocación efectiva de m

Ejecución de EntryMethod para comprobar la adecuación del método invocado

Meta-espacio de O’’


Reflectividad en el modelo de concurrencia interna caos e integración

  • Ejecución meta-objeto Sincronizador

    • Explícito

      • MetaObjeto Receptor invoca método ExecNewMethod (mensaje solicitado, origen del mensaje, otros parámetros)

    • Implícito

      • Suspensión(StopMethod), Reanudación(ResumeMethod), Finalización de un método(EndMethod)

  • Colaboración del meta-objeto sincronizador en el meta-nivel

  • Ventajas

    • Separación de incumbencias

    • Control más sencillo de la sincronización

    • Problema de la herencia


Diseño del sistema operativo orientado a objetos caos e integración

  • SO = {objetos}  Espacio de objetos del sistema

  • Reflectividad (Máquina, SO)

  • Comunicación

  • Semántica del objeto

  • Planificación


Reflectividad en la planificaci n

SchedulerUSS caos e integración

TimeScheduler

QueueScheduler

.......

SRTN

FIFO

Priority

.......

Reflectividad en la planificación

  • Aspectos expuestos: Política de planificación

    • Necesidades específicas de objetos o grupos de objetos

  • Meta-objetos para la planificación: Meta-Objeto Planificador

  • Jerarquía de clases de planificación en tiempo de definición: Reutilización del código

    • Adición de nuevos planificadores: Ampliación de la jerarquía

    • Anatomía de un objeto planificador

      • Estado: Lista de referencias a planificar

      • Métodos: ScheduleNext, Enqueue, IsEmpty

    • Jerarquía inicial


Jerarqu a de planificadores en tiempo de ejecuci n

Objeto X caos e integración

Planificador A

Objeto Y

Tiempo

Planificador

Raíz

Tiempo

Planificador B

Reparte

Tiempo

Máquina Abstracta

Planificador C

Jerarquía de planificadores en tiempo de ejecución

  • Planificación de objetos: Meta-objeto Planificador

  • Planificación de meta-objetos: Jerarquía de objetos planificadores

    • La raíz de la jerarquía: El planificador de la máquina

  • Transferencia de control entre los planificadores

    • Mecanismo de paso de mensajes síncronos y retorno de los mismos


Visi n din mica del sistema

Meta-Objeto caos e integración

Receptor

Meta-Objeto

Destino

Planificador

Meta-Objeto

Meta-Objeto

Destino

Sincronizador

Emisor

Destino

Origen

Objeto

Base

Destino

3: MO’Sin.ExecNewMethod(...);

2: MO’Receptor.RCallR(...);

4: MO’Sched.Enqueue(...);

Meta Nivel

6: ct=Ejecutar método destino

1: MOEmisor.RCallE(...);

5: MO’.ScheduleNext(...);

Objeto

Destino.m(...);

Base

Origen

Nivel Base

0: MS’=destino.GetMetaSpace();

MO’Emisor=MS’.GetMObyClass(“Emisor”);

MO’Receptor=MS’.GetMObyClass(“Receptor”);

MO’Sinc=MS’.GetMObyClass(“Synch”);

MO’Sched=MS’.GetMObyClass(“Sched”);

0: MS=this.GetMetaSpace();

MOEmisor=MS.GetMObyClass(“Emisor”);

MOReceptor=MS.GetMObyClass(“Receptor”);

MOSinc=MS.GetMObyClass(“Synch”);

MOSched=MS.GetMObyClass(“Sched”);

Visión dinámica del sistema


Contenidos de la presentación caos e integración

  • Objetivos de la tesis

  • Ámbito conceptual de la tesis: soluciones a los problemas de caos e integración

  • Colaboración de máquina abstracta y sistema operativo: reflectividad

  • Máquina abstracta

  • Sistema operativo

  • Prototipo

  • Conclusiones

  • Líneas futuras de investigación


Prototipo del soo
Prototipo del SOO caos e integración

  • Principios aplicados en el prototipo

    • Aplicación intensiva de los principios de la OO en el diseño y construcción del prototipo

    • Simplicidad

  • Diseño del SOO como conjunto de objetos: Uniformidad

    • La aplicación intensiva de los principios de la OO en el diseño e implantación del SOO hace que los elementos que componen el entorno se representan mediante objetos, instancia de las clases que los describen.

  • Presentación del SOO

    • Diagrama de clases general de la MA

    • Jerarquías del prototipo para la MA

    • Reflectividad estructural

    • Jerarquía de objetos del sistema operativo


Diagrama de clases general

A caos e integración

TStackElement

TThread

TInstruction

A

TMethod

A

Diagrama de clases general

TContext

TThreadArea

A

Clase abstracta

Usa

Ejecuta

THandler

1

Tiene

TExecArea

muchos (cardinalidad

múltiple genérica)

Ancestros

Referencias

locales

TClass

TRef

Instancias

A

locales

Agregados

Asociados

this

Apunta a

Pertenece

0..1

TClassArea

TInstanceArea

TInstance

1

Raiz

Subinstancia

1..n

TIMetaSpace

TIMetaObject


Jerarqu a de clases del prototipo
Jerarquía de clases del prototipo caos e integración

  • Para describir la implantación del SOO  describir la jerarquía de clases del prototipo y las relaciones entre ellas.

    • Clases, Instancias, Métodos, Instrucciones

  • Herencia y el polimorfismo facilitan reutilizar el código y construir variantes del prototipo con pequeñas modificaciones en el código.


Jerarqu a de clases para la reflectividad estructural
Jerarquía de clases para la reflectividad estructural caos e integración

TClass

TCThread

TCExecObjectArea

TC_Class

TCMethod

TCInstanceArea

TCReferenceArea

TCInstruction

TCContext

TClassArea

TCInstance

TCThreadArea

Exposición del motor en tiempo de ejecución

Exposición de los elementos estructurales que representan los objetos en tiempo de ejecución

Exposición de la Arquitectura de la Máquina

Máquina Abstracta


Objetos internos clases primitivas e instancias
Objetos internos, clases primitivas e instancias caos e integración

Máquina Abstracta

Representación interna de

Instancia de

Expone a

Área de Threads

Área de Referencias

Object

Thread Area

OI_Thread Area

Class

Thread Area

Object

ReferenceArea

Class

ReferenceArea

OI_Reference

Area

Object

InstanceArea

Class

InstanceArea

OI_Instance

Area

Class

ClassArea

Objetos internos de la Máquina Abstracta

OI_ClassArea

Object

ClassArea

Object Thread

Class Thread

OI_Thread

Object Instance

ClassInstance

OI_Instance

Object _Class

Class_Class

OI_Class

Cualquier Clase (primitiva o de usuario)

Área de

Clases

Cualquier Objeto

Área de Instancias

Clases Primitivas que representan aspectos internos de la Máquina Abstracta

Objetos accesibles normalmente por el usuario que exponen características internas de la Máquina Abstracta


Sistema operativo jerarqu a de clases para la reflectividad del comportamiento

TClass caos e integración

TCMetaObject

TCMetaSpace

TCMOReceptor

TCMOSynchronizer

TCMOScheduler

TCMOEmisor

Sistema operativo: Jerarquía de clases para la reflectividad del comportamiento

  • El prototipo del Sistema Operativo consiste en una jerarquía de clases Emisor, Receptor, Planificador y Sincronizador que representan la funcionalidad del sistema operativo


Contenidos de la presentación caos e integración

  • Objetivos de la tesis

  • Ámbito conceptual de la tesis: soluciones a los problemas de caos e integración

  • Colaboración de máquina abstracta y sistema operativo: Reflectividad

  • Máquina abstracta

  • Sistema operativo

  • Prototipo

  • Conclusiones

  • Líneas futuras de investigación


Conclusiones y resultados 1
Conclusiones y resultados (1) caos e integración

  • SOO. Soporte global a objetos

    • Soporte integral a objetos

    • Uniformidad

    • Solución global a los problemas de objetos presentados

  • Ventajas de usar MAOO como base del SOO

    • Portabilidad

    • Facilidad de comprensión

    • Facilidad de desarrollo y de experimentación

    • Compiladores de lenguajes

  • Ventajas de extender la MAOO mediante un SOO

    • Economía de conceptos y uniformidad

    • Extensión uniforme con el resto del sistema


Conclusiones y resultados y 2
Conclusiones y resultados (y 2) caos e integración

  • Modelo objetos Activo: Uniformidad total

    • Modelo de objetos activo transforma el objeto en una herramienta de computación autónoma

    • Soporte más sofisticado a la abstracción de objeto

    • Uniformidad y homogeneidad total en el sistema

    • Simplicidad y economía de conceptos

  • Integración de MAOO y SOOO por medio de la reflectividad

    • MA: Base de la torre reflectiva

      • Limita la sobrecarga de la reflectividad

      • Semántica básica

      • Facilita la experimentación.

    • SO: Meta-nivel

      • Flexibilidad estática: Sistema Personalizable

      • Flexibilidad dinámica: Sistema adaptable y configurable


Contenidos de la presentación caos e integración

  • Objetivos de la tesis

  • Ámbito conceptual de la tesis: Soluciones a los problemas de caos e integración

  • Colaboración de máquina abstracta y sistema operativo: Reflectividad

  • Máquina abstracta

  • Sistema operativo

  • Prototipo

  • Conclusiones

  • Líneas futuras de investigación


L neas futuras de trabajo 1
Líneas futuras de trabajo (1) caos e integración

  • Construcción de una jerarquía del SO más completa

    • Ampliar jerarquía clases SO

    • Resto de la jerarquía de clases que definiría un sistema operativo completo

  • MAOO reflectiva guiada por eventos

    • Modificar la MAOO integrando en ella un modelo de eventos basado en emisores y receptores de eventos

    • Modificar el modelo reflectivo de la máquina

      • Reflejar un aspecto  Suscribirse a determinado evento de la máquina

      • Evento  Paso de control al meta nivel y ejecución de un determinado método de un meta-objeto del sistema operativo


L neas futuras de trabajo y 2
Líneas futuras de trabajo (y 2) caos e integración

  • Integrar otros aspectos en la arquitectura reflectiva propuesta

    • Distribución

    • Persistencia

    • Agrupación de objetos

    • Seguridad

  • Implantación eficiente del prototipo

  • Dicotomía call/send


TESIS DOCTORAL caos e integración

Modelo de Computación Concurrente para un Sistema Operativo Orientado a Objetos basado en una Máquina Abstracta

Lourdes Tajes Martínez

Dirigida por Juan Manuel Cueva Lovelle

Oviedo, 16 de Marzo de 2000


ad