EyeOS: un sistema operativo web




   Raúl Jiménez Ortega
   Nicolás Fernández Valverde
   José Luis López Pino
Cloud computing + Web desktop
¿Cómo se accede?
Arquitectura

EyeOS utiliza una estructura de
µkernel estructurado en 4 capas:
 ●   Kernel: unifica los servicios del
    ...
Servicio - MMAP

Componente vital en las comunicaciones de la
aplicación.

   Encamina los mensajes del cliente a la
    ...
Servicio - VFS

Es el sistema de ficheros de eyeOS.

   Implementa sistemas de seguridad
       Concatena 32 caracteres ...
Servicio – VFS (implementación)

   Crea internamente dos ficheros por cada
    archivo (funciones virtuales):
       Fi...
Servicio - eyeX

   Recibe los mensajes en XML y responde en el
    mismo formato al navegador.




          Navegador  ...
Servicio - Proc

   Gestión de procesos:
       Lanzar
       Finalizar
       Listar
       etc.
   Para cada proce...
Pasos para desarrollar una app.

   Descargar el código fuente.
   eyeOS/apps/NombreAplicacion/apps.eyecode
       Nomb...
Ejemplo: fichero apps.eyecode
// En la función de inicialización creamos la interfaz
function eyeBasic_run($params=null) {...
Ejemplo: fichero apps.eyecode
  // Creamos un nuevo widget del tipo botón.
  $myButton1 = new Button(array(
      'name'=>...
Ejemplo: fichero events.eyecode

// Función que recibe el evento de pulsación del botón
function eyeBasic_on_botonPulsado(...
Conclusiones (I)

   Está diseñado para que los desarrolladores sin
    experiencia en aplicaciones web puedan desarrolla...
CONCLUSIONES (II)

   EyeOS NO es un sistema operativo:
       Despegado totalmente del hardware


   Es un Escritorio ...
Upcoming SlideShare
Loading in …5
×

eyeOS: Arquitectura y desarrollo de una aplicación

4,657 views

Published on

eyeOS: Arquitectura y desarrollo de una aplicación

Published in: Technology, Art & Photos
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
4,657
On SlideShare
0
From Embeds
0
Number of Embeds
43
Actions
Shares
0
Downloads
150
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

eyeOS: Arquitectura y desarrollo de una aplicación

  1. 1. EyeOS: un sistema operativo web  Raúl Jiménez Ortega  Nicolás Fernández Valverde  José Luis López Pino
  2. 2. Cloud computing + Web desktop
  3. 3. ¿Cómo se accede?
  4. 4. Arquitectura EyeOS utiliza una estructura de µkernel estructurado en 4 capas: ● Kernel: unifica los servicios del sistema. ● Servicios: funciones de más bajo nivel. ● Bibiliotecas: funciones de más alto nivel ● Aplicaciones: pueden llamar a funciones de cualquier capa.
  5. 5. Servicio - MMAP Componente vital en las comunicaciones de la aplicación.  Encamina los mensajes del cliente a la aplicación correspondiente.  Servicio automatizado.
  6. 6. Servicio - VFS Es el sistema de ficheros de eyeOS.  Implementa sistemas de seguridad  Concatena 32 caracteres aleatorios.  Funciones virtuales y reales.  Facilita el desarrollo de aplicaciones
  7. 7. Servicio – VFS (implementación)  Crea internamente dos ficheros por cada archivo (funciones virtuales):  Fichero de contenido.  Fichero de información. <?xml version=quot;1.0quot; encoding=quot;UTF-8quot;?> <eyeFile> <filename>SonicTheHedgedog.eyepackage</filename> <author>root</author> <created>1242666331</created> <creationapp></creationapp> </eyeFile>
  8. 8. Servicio - eyeX  Recibe los mensajes en XML y responde en el mismo formato al navegador. Navegador Se ha pulsado 1 botón Servidor Navegador Crear una ventana nueva Servidor
  9. 9. Servicio - Proc  Gestión de procesos:  Lanzar  Finalizar  Listar  etc.  Para cada proceso define:  myPid: equivalente al PID de Linux  checksum: identifica el proceso en la comunicación cliente servidor.
  10. 10. Pasos para desarrollar una app.  Descargar el código fuente.  eyeOS/apps/NombreAplicacion/apps.eyecode  NombreAplicacion_run, que es llamada cuando se lanza la aplicación y que es obligatorio incluir.  ApplicationName_end, que es llamada cuando termina de ejecutarse.  El código de recepción de eventos en: eyeOS/apps/NombreAplicacion/events.eyecode  NombreApp_on_NombreEvento
  11. 11. Ejemplo: fichero apps.eyecode // En la función de inicialización creamos la interfaz function eyeBasic_run($params=null) { // Creamos un nuevo widget del tipo ventana. $myWindow1 = new Window(array( 'name' => 'eyeBasic_WND', 'father' => 'eyeApps', 'cent' => 1, 'width' => 350, 'height' => 200, 'title' => 'Aplicación de prueba' )); // Mostramos la ventana $myWindow1‐>show();
  12. 12. Ejemplo: fichero apps.eyecode // Creamos un nuevo widget del tipo botón. $myButton1 = new Button(array( 'name'=>'eyeBasic_BTN', 'father'=>'eyeBasic_WND_Content', 'caption'=>'Pínchame', 'x'=>40, 'y'=>80, 'signal'=>'botonPulsado' )); // Mostramos el botón $myButton1‐>show(); } // La función de finalización elimina la interfaz. function eyeBasic_end($params=null) { eyeWidgets('unserialize'); }
  13. 13. Ejemplo: fichero events.eyecode // Función que recibe el evento de pulsación del botón function eyeBasic_on_botonPulsado($params=quot;quot;) { // Mostramos un mensaje service('eyex','messageBox',array('content'=>'Botón pulsado')); } //Función que recibe el evento de cerrado de ventana function eyeBasic_on_Close(){ //Hacemos que la aplicación finalice service('proc','end'); }
  14. 14. Conclusiones (I)  Está diseñado para que los desarrolladores sin experiencia en aplicaciones web puedan desarrollarlas.  Comunicación con el usuario mediante eventos.  Creación de la interfaz mediante widgets.  Ventajas: Portabilidad, descentralización, disponibilidad.  Desventajas: seguridad, necesidad de conexión rápida, rendimiento, aislamiento del sistema anfitrión.
  15. 15. CONCLUSIONES (II)  EyeOS NO es un sistema operativo:  Despegado totalmente del hardware  Es un Escritorio Virtual.

×