Janos: a Java-oriented OS for active network nodes

Janos is an operating system (OS) for active network nodes whose primary focus is strong resource management and control of untrusted active applications written in Java. Janos includes the three major components of a Java-based active network operating system: the low-level NodeOS, a resource-aware Java virtual machine, and an active network protocol execution environment. Each of these components is separately usable. This article lays out the Janos design and its rationale.

[1]  Yogen K. Dalal,et al.  Pilot: an operating system for a personal computer , 1980, CACM.

[2]  Wilson C. Hsieh,et al.  The Need for Predictable Garbage Collection , 1999 .

[3]  Ellen W. Zegura,et al.  Bowman: a node OS for active networks , 2000, Proceedings IEEE INFOCOM 2000. Conference on Computer Communications. Nineteenth Annual Joint Conference of the IEEE Computer and Communications Societies (Cat. No.00CH37064).

[4]  Bob Braden,et al.  Writing an Active Application for the ASP Execution Environment - Release 1.2 , 2000 .

[5]  David Mosberger Message Library Design Notes , 1997 .

[6]  Larry L. Peterson,et al.  Defending against denial of service attacks in Scout , 1999, OSDI '99.

[7]  John V. Guttag,et al.  ANTS: a toolkit for building and dynamically deploying network protocols , 1998, 1998 IEEE Open Architectures and Network Programming.

[8]  Armando P. Stettner The design and implementation of the 4.3BSD UNIX operating system , 1988 .

[9]  Carl A. Gunter,et al.  PLAN: a packet language for active networks , 1998, ICFP '98.

[10]  Martin C. Rinard,et al.  Compositional pointer and escape analysis for Java programs , 1999, OOPSLA '99.

[11]  Peter Druschel,et al.  Lazy receiver processing (LRP): a network subsystem architecture for server systems , 1996, OSDI '96.

[12]  David E. Culler,et al.  Jaguar: enabling efficient communication and I/O in Java , 2000, Concurr. Pract. Exp..

[13]  Niklaus Wirth,et al.  Project Oberon - the design of an operating system and compiler , 1992 .

[14]  Mike Hibler,et al.  An OS interface for active routers , 2001, IEEE J. Sel. Areas Commun..

[15]  Urs Hölzle,et al.  Removing unnecessary synchronization in Java , 1999, OOPSLA '99.

[16]  Samuel J. Leffler,et al.  The design and implementation of the 4.3 BSD Unix operating system , 1991, Addison-Wesley series in computer science.

[17]  David Wetherall,et al.  Active network vision and reality: lessions from a capsule-based system , 1999, SOSP.

[18]  Dawson R. Engler,et al.  Exokernel: an operating system architecture for application-level resource management , 1995, SOSP.

[19]  Wilson C. Hsieh,et al.  THE ALTA OPERATING SYSTEM , 2003 .

[20]  Larry L. Peterson,et al.  Making paths explicit in the Scout operating system , 1996, OSDI '96.

[21]  Wilson C. Hsieh,et al.  Techniques for the Design of Java Operating Systems , 2000, USENIX Annual Technical Conference, General Track.

[22]  Wilson C. Hsieh,et al.  Drawing the red line in Java , 1999, Proceedings of the Seventh Workshop on Hot Topics in Operating Systems.

[23]  David E. Culler,et al.  Jaguar: enabling efficient communication and I/O in Java , 2000 .

[24]  Wilson C. Hsieh,et al.  Processes in KaffeOS: isolation, resource management, and sharing in java , 2000, OSDI.

[25]  Rafael Dueire Lins,et al.  Garbage collection: algorithms for automatic dynamic memory management , 1996 .

[26]  BlanchetBruno Escape analysis for object-oriented languages , 1999 .

[27]  Eddie Kohler,et al.  The Click modular router , 1999, SOSP.

[28]  Stephen J. Fink,et al.  The Jalapeño virtual machine , 2000, IBM Syst. J..

[29]  Guy L. Steele,et al.  The Java Language Specification , 1996 .

[30]  Jay Lepreau,et al.  The Flux OSKit: a substrate for kernel and language research , 1997, SOSP.

[31]  Richard J. Beach,et al.  A structural view of the Cedar programming environment , 1986, TOPL.

[32]  Jong-Deok Choi,et al.  Escape analysis for Java , 1999, OOPSLA '99.

[33]  Kenneth L. Calvert,et al.  Bowman and CANEs: Implementation of an Active Network , 1999 .

[34]  Marianne Shaw,et al.  Active bridging , 1997, SIGCOMM '97.

[35]  David Wetherall,et al.  Active network vision and reality: lessons from a capsule-based system , 2002, Proceedings DARPA Active Networks Conference and Exposition.

[36]  Olin Shivers,et al.  Atomic heap transactions and fine-grain interrupts , 1999, ICFP '99.

[37]  William A. Arbaugh,et al.  The SwitchWare active network architecture , 1998, IEEE Netw..

[38]  Bruno Blanchet,et al.  Escape analysis for object-oriented languages: application to Java , 1999, OOPSLA '99.

[39]  Deyu Hu,et al.  Implementing Multiple Protection Domains in Java , 1998, USENIX Annual Technical Conference.