Systems programming with Modula-3
Systems programming with Modula-3
Efficient software-based fault isolation
SOSP '93 Proceedings of the fourteenth ACM symposium on Operating systems principles
Extensibility safety and performance in the SPIN operating system
SOSP '95 Proceedings of the fifteenth ACM symposium on Operating systems principles
OSDI '96 Proceedings of the second USENIX symposium on Operating systems design and implementation
Extensible security architectures for Java
Proceedings of the sixteenth ACM symposium on Operating systems principles
JRes: a resource accounting interface for Java
Proceedings of the 13th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Dynamic class loading in the Java virtual machine
Proceedings of the 13th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
The Java programming language (2nd ed.)
The Java programming language (2nd ed.)
JAVA '99 Proceedings of the ACM 1999 conference on Java Grande
Inside Windows NT
Java Virtual Machine Specification
Java Virtual Machine Specification
Java Language Specification, Second Edition: The Java Series
Java Language Specification, Second Edition: The Java Series
Java Security: Present and Near Future
IEEE Micro
IEEE Micro
The JavaSeal Mobile Agent Kernel
ASAMA '99 Proceedings of the First International Symposium on Agent Systems and Applications Third International Symposium on Mobile Agents
Protection is a software issue
HOTOS '95 Proceedings of the Fifth Workshop on Hot Topics in Operating Systems (HotOS-V)
Design and Evaluation of an Extensible Web & Telephony Server based on the J-Kernel
Design and Evaluation of an Extensible Web & Telephony Server based on the J-Kernel
Building a Java virtual machine for server applications: the Jvm on 0S/390
IBM Systems Journal
Implementing multiple protection domains in java
ATEC '98 Proceedings of the annual conference on USENIX Annual Technical Conference
An approach to safe object sharing
OOPSLA '00 Proceedings of the 15th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
A framework for efficient reuse of binary code in Java
ICS '01 Proceedings of the 15th international conference on Supercomputing
Multitasking without comprimise: a virtual machine evolution
OOPSLA '01 Proceedings of the 16th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Efficiently Adapting Java Binaries in Limited Memory Contexts
International Journal of Parallel Programming
Persistence and Java - A Balancing Act
Proceedings of the International Symposium on Objects and Databases
System Checkpointing Using Reflection and Program Analysis
REFLECTION '01 Proceedings of the Third International Conference on Metalevel Architectures and Separation of Crosscutting Concerns
Code Sharing among Virtual Machines
ECOOP '02 Proceedings of the 16th European Conference on Object-Oriented Programming
The KaffeOS Java runtime system
ACM Transactions on Programming Languages and Systems (TOPLAS)
Task-aware garbage collection in a multi-tasking virtual machine
Proceedings of the 5th international symposium on Memory management
A microkernel virtual machine:: building security with clear interfaces
Proceedings of the 2006 workshop on Programming languages and analysis for security
Java™ on the bare metal of wireless sensor devices: the squawk Java virtual machine
Proceedings of the 2nd international conference on Virtual execution environments
Transparent resource management and self-adaptability using multitasking virtual machine RM API
Proceedings of the 2006 international workshop on Self-adaptation and self-managing systems
Sizing multi-space in heap for application isolation
Companion to the 21st ACM SIGPLAN symposium on Object-oriented programming systems, languages, and applications
Hardware support for detecting illegal references in a multiapplication real-time Java environment
ACM Transactions on Embedded Computing Systems (TECS)
Cloneable JVM: a new approach to start isolated java applications faster
Proceedings of the 3rd international conference on Virtual execution environments
Towards a new isolation abstraction for OSGi
Proceedings of the 1st workshop on Isolation and integration in embedded systems
AOCI: Weaving Components in a Distributed Environment
OTM '08 Proceedings of the OTM 2008 Confederated International Conferences, CoopIS, DOA, GADA, IS, and ODBASE 2008. Part I on On the Move to Meaningful Internet Systems:
SPIN: Service Performance Isolation Infrastructure in Multi-tenancy Environment
ICSOC '08 Proceedings of the 6th International Conference on Service-Oriented Computing
I-RMI: performance isolation in information flow applications
Proceedings of the ACM/IFIP/USENIX 2005 International Conference on Middleware
Isolation points: Creating performance-robust enterprise systems
ACM Transactions on Autonomous and Adaptive Systems (TAAS)
Java active extensions: Scalable middleware for performance-isolated remote execution
Computer Communications
Event-processing middleware with information flow control
Proceedings of the 10th ACM/IFIP/USENIX International Conference on Middleware
AAOP-based dynamically reconfigurable monitoring system
Information and Software Technology
Retaining sandbox containment despite bugs in privileged memory-safe code
Proceedings of the 17th ACM conference on Computer and communications security
Efficient incremental code update for sensor networks
ACM Transactions on Sensor Networks (TOSN)
Transparent resource management with java RM API
ICCS'06 Proceedings of the 6th international conference on Computational Science - Volume Part IV
Application object isolation in cross-platform operating environments
OTM'05 Proceedings of the 2005 OTM Confederated international conference on On the Move to Meaningful Internet Systems: CoopIS, COA, and ODBASE - Volume Part II
I-RMI: performance isolation in information flow applications
Middleware'05 Proceedings of the ACM/IFIP/USENIX 6th international conference on Middleware
Abstractions for usable information flow control in Aeolus
USENIX ATC'12 Proceedings of the 2012 USENIX conference on Annual Technical Conference
S-RVM: a secure design for a high-performance java virtual machine
Proceedings of the sixth ACM workshop on Virtual machines and intermediate languages
Ownership-Based isolation for concurrent actors on multi-core machines
ECOOP'13 Proceedings of the 27th European conference on Object-Oriented Programming
Hi-index | 0.00 |
To date, systems offering multitasking for the Java™ programming language either use one process or one class loader for each application. Both approaches are unsatisfactory. Using operating system processes is expensive, scales poorly and does not fully exploit the protection features inherent in a safe language. Class loaders replicate application code, obscure the type system, and non-uniformly treat 'trusted' and 'untrusted' classes, which leads to subtle, but nevertheless, potentially harmful forms of undesirable inter-application interaction.In this paper we propose a novel, simple yet powerful solution. The new model improves on existing designs in terms of resource utilization while offering strong isolation among applications. The approach is applicable both on high-end servers and on small devices. The main idea is to maintain only one copy of every class, regardless of how many applications use it. Classes are transparently and automatically modified, so that each application has a separate copy of its static fields. Two prototypes are described and selected performance data is analyzed. Various aspects of the proposed architectural changes to the Java Virtual Machine are discussed.