Download JavaOS

Document related concepts
no text concepts found
Transcript
CONCEPTES AVANÇATS DE SISTEMES OPERATIUS
Departament d’Arquitectura de Computadors
JavaOS: an Object-OS
(Seminaris de CASO)
Autors
Francesco Viganó y Sergi Teixidó
grupo M4
Què és JavaOS?

JavaOS es un sistema operativo muy compacto diseñado
para ejecutar aplicaciones Java directamente sobre
microprocesadores, independientemente de la
plataforma.
“just enought of an operating system to run JVM”

Desarrollado por JavaSoft de Sun Microsistems durante la
segunda mitad de los noventa.
– era de efervescencia del Java
Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS
Departament. d’Arquitectura de Computadors - UPC
2
Nueva Arquitectura (I)

Hasta este momento, para ejecutar aplicaciones Java hacía
falta el entorno JVM.
– Overhead a la hora de ejecutarlo, porqué la JVM esta por encima
del SO host.
Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS
Departament. d’Arquitectura de Computadors - UPC
3
Nueva Arquitectura (y II)

JavaOS aporta soporte directo del SO a las aplicaciones
java.
Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS
Departament. d’Arquitectura de Computadors - UPC
4
Nueva Arquitectura (y III)
– Convierte la JVM en un sistema operativo “completo”.
– Portabilidad automática de las aplicaciones java a todas las
plataformas en que funcione JavaOS.
– Llevar Java a los pequeños sistemas “embeded”.
Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS
Departament. d’Arquitectura de Computadors - UPC
5
Non-Runtime Components - Microkernel
No hace falta un SO completo, pero sí un Microkernel.
 Puede utilizar distintos Microkernels, solo hace falta que
incluyan las funcionalidades mínimas requeridas por el jvm.
(threads,interrupciones, excepciones,paginación…)
JPI : Java Platform Interface
 La capa que se encarga de hacer de puente entre el JVM i
el Microkernel.

– hecha en Java i en otros lenguajes como C
– Dependiente del Microkernel
– Por lo tanto, no todo el código de JavaOS es portable
Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS
Departament. d’Arquitectura de Computadors - UPC
6
Non-Runtime Components
JBI : Java Booting Interface
 Es una capa intermedia bidireccional encargada de cargar
el sistema y dejar el control al microkernel
 Permite hacer booting desde múltiples entornos como
memorias ROM, RAM, Redes, ….
– Mayor soporte para los sistemas embeded (PDA, móviles,…).
– Thin clients (network computers,…)
Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS
Departament. d’Arquitectura de Computadors - UPC
7
Runtime Components - Partiendo de la JVM

Utiliza las mejores ideas de la JVM para aplicarlas en el
SO :
– Entorno grafico AWT (buena parte en C por eficiencia)
– Gestión de memoria :
• único de memoria virtual compartido para aplicaciones i el propio SO
• no hace falta MMU, ni memoria virtual
• más eficiente
– Seguridad entre procesos
– Soporte nativo TCP/IP, NIS, NFS,…
Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS
Departament. d’Arquitectura de Computadors - UPC
8
Runtime Components - Partiendo de la JVM
– Drivers independientes de plataforma.
• Existen unas interficies, propias de cada plataforma que incluyen las
operaciones básicas de acceso directo a los dispositivos.
• Los drivers hacen un acceso indirecto a los dispositivos utilizándolas y así
pueden ser independientes de la plataforma.
• Ventaja : Están escritos en Java, muy portables.
• Problema : hay que escribirlos!!! (punto débil del SO)
– JSL (Java Service Loader)
• Servicio que carga/descarga los correspondientes drivers según necesiten
las aplicaciones.
Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS
Departament. d’Arquitectura de Computadors - UPC
9
JavaOS, realmente un SO ?

JavaOS es diferente de los SO convencionales por varias
razones:
– No requiere sistema de ficheros.
– No tiene ni espacios de direcciones separados ni memoria virtual.
– Solo soporta Java.
– No tiene llamadas de sistema propias.

Pero es convencional por otras razones:
–
–
–
–
–
Es bootable.
Permite múltiples aplicaciones simultáneamente.
Tiene una API (la de Java) i sistema de ventanas.
Comunicación a través de red con varios protocolos y seguridad
incluye drivers para los dispositivos.
Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS
Departament. d’Arquitectura de Computadors - UPC
10
JavaOS hoy

Todo y que inicialmente Sun dio mucha fuerza al proyecto, con el
tiempo se ha parado su desarrollo.

Pero esto no ha significado la muerte de la idea:
– algunos proyectos como jos siguen con el concepto
– javaOS o proyectos similares de la propia Sun se han incorporado en sistemas
embeded, hay varios ejemplos en la telefonía móvil (nokia, alcatel,…)
Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS
Departament. d’Arquitectura de Computadors - UPC
11
Bibliografia

Inside the JavaOS Operating System
Thomas Saulpaugh, Charles Mirho
Reading, Mass. [etc.] Addison-Wesley 1999

JavaOS : A Standalone Java Enviorment, White Paper
JavaSoft

JavaOS : Thin Client, Fat Services
http://www.byte.com
July 1997, Core Technologies

Java 2 - Tutto & Oltre
Jaime Jaworski
SAMS Publishing-1999

JOS : http://www.jos.org
Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS
Departament. d’Arquitectura de Computadors - UPC
12