58

ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc

  • Upload
    others

  • View
    13

  • Download
    0

Embed Size (px)

Citation preview

Page 1: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc
Page 2: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc

Page 3: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc

Page 4: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc

Page 5: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc

Page 6: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc

Page 7: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc

Page 8: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc

Page 9: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc

Page 10: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc

Page 11: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc

Page 12: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc

Page 13: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc

Page 14: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc

Page 15: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc

Page 16: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc
Page 17: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc
Page 18: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc
Page 19: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc
Page 20: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc
Page 21: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc

●●●

Page 22: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc
Page 23: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc
Page 24: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc

●●●●●

Page 25: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc
Page 26: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc

Page 27: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc

Page 28: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc

Page 29: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc
Page 30: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc

Page 31: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc

Page 32: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc

Page 33: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc

●○

●○

●○

●○

●○

Page 34: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc

Page 35: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc

Page 36: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc
Page 37: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc
Page 38: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc
Page 39: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc
Page 40: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc
Page 41: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc
Page 42: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc

mundo.mc

int main() {printf("mundo");

}

hola.acc

before(): execution(int main()){printf("Hola ");

} after(): execution(int main()){

printf("! \n");}

>> acc hola.acc mundo.mc

Se generan los archivo hola.c y mundo.c

>> gcc hola.c mundo.c

Page 43: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc
Page 44: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc

hola.hvoid hola(){ std::cout<<"Hola "<<std::endl;}

main.cc#include "hola.h" int main(){ hola(); return 0;}

mundo.ahaspect World { advice execution ("void hola()") : after() {

std::cout << "Mundo" << std::endl; }};

Page 45: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc

LOA Lenguaje Base Tejido Propósito Características Salientes

Cool Java Estático EspecíficoDescribe la sincronización de hilos concurrentes.Visibilidad limitada del aspecto

RIDLCualquier lenguaje orientado a objetos Estático Específico Modulariza la interacción remota.

Visibilidad limitada del aspecto

MALAJ Java Dinámico Especifico

Modulariza los aspectos de sincronización y relocación Su objetivo es eliminar los conflictos entre POA y POO.

AspectJ Java Dinámico - Estático General Los aspectos son extensiones del concepto

de clase.

AspectC C Estatico General Usado en la implementación orientada a aspectos de sistemas operativos

AspectC++ C++ Estatico General Los aspectos son extensiones del concepto de clase.

Page 46: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc
Page 47: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc
Page 48: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc

Selfex: Mientras se ejecuta un hilo, si aparece otro con la misma petición debe esperar.

Mutex: Mientras un hilo ejecuta uno de los métodos del conjunto, los demás que requieran usar alguno de estos métodos deben esperar.

Page 49: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc
Page 50: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc

Cuenta

Page 51: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc
Page 52: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc
Page 53: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc

●●

●●

Page 54: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc

Page 55: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc

Page 56: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc

Page 57: ferestrepoca.github.io · mundo.mc int main() {printf("mundo");} hola.acc before(): execution(int main()){printf("Hola ");} after(): execution(int main()){printf("! \n");} >> acc