A structural view of the Cedar programming environment
ACM Transactions on Programming Languages and Systems (TOPLAS)
The duality of memory and communication in the implementation of a multiprocessor operating system
SOSP '87 Proceedings of the eleventh ACM Symposium on Operating systems principles
Fine-grained mobility in the Emerald system
ACM Transactions on Computer Systems (TOCS)
801 storage: architecture and programming
ACM Transactions on Computer Systems (TOCS)
Computer
A programmer's view of the Intel 432 system
A programmer's view of the Intel 432 system
The Amber system: parallel programming on a network of multiprocessors
SOSP '89 Proceedings of the twelfth ACM symposium on Operating systems principles
Lightweight remote procedure call
ACM Transactions on Computer Systems (TOCS)
Multi-model parallel programming in psyche
PPOPP '90 Proceedings of the second ACM SIGPLAN symposium on Principles & practice of parallel programming
Design and implementation of an object-oriented strongly typed language for distributed applications
Journal of Object-Oriented Programming
Implementation and performance of Munin
SOSP '91 Proceedings of the thirteenth ACM symposium on Operating systems principles
ACM SIGARCH Computer Architecture News
The ObjectStore database system
Communications of the ACM
Reconciling environment integration and software evolution
ACM Transactions on Software Engineering and Methodology (TOSEM)
Inside Windows NT
Architecture support for single address space operating systems
ASPLOS V Proceedings of the fifth international conference on Architectural support for programming languages and operating systems
Scheduler activations: effective kernel support for the user-level management of parallelism
ACM Transactions on Computer Systems (TOCS)
Architectural support for translation table management in large address space machines
ISCA '93 Proceedings of the 20th annual international symposium on computer architecture
The expected lifetime of “single-address-space” operating systems
SIGMETRICS '94 Proceedings of the 1994 ACM SIGMETRICS conference on Measurement and modeling of computer systems
Pilot: an operating system for a personal computer
Communications of the ACM
Communications of the ACM
Virtual memory, processes, and sharing in MULTICS
Communications of the ACM
Programming semantics for multiprogrammed computations
Communications of the ACM
Capability-Based Computer Systems
Capability-Based Computer Systems
Computer Structures: Principles and Examples
Computer Structures: Principles and Examples
A Micro-Kernel Architecture for Next Generation Processor
Proceedings of the Workshop on Micro-kernels and Other Kernel Architectures
Design and Implementation of an Object-Oriented 64-bit Single Address Space Microkernel
USENIX Microkernels and Other Kernel Architectures Symposium
IBM System/38 support for capability-based addressing
ISCA '81 Proceedings of the 8th annual symposium on Computer Architecture
Overview of the Hydra Operating System development
SOSP '75 Proceedings of the fifth ACM symposium on Operating systems principles
The iMAX-432 object filing system
SOSP '81 Proceedings of the eighth ACM symposium on Operating systems principles
Synchronization and recovery of actions
PODC '83 Proceedings of the second annual ACM symposium on Principles of distributed computing
The expected lifetime of “single-address-space” operating systems
SIGMETRICS '94 Proceedings of the 1994 ACM SIGMETRICS conference on Measurement and modeling of computer systems
A new page table for 64-bit address spaces
SOSP '95 Proceedings of the fifteenth ACM symposium on Operating systems principles
Implementing global memory management in a workstation cluster
SOSP '95 Proceedings of the fifteenth ACM symposium on Operating systems principles
Exokernel: an operating system architecture for application-level resource management
SOSP '95 Proceedings of the fifteenth ACM symposium on Operating systems principles
ACM Computing Surveys (CSUR)
Operating system support for persistent and recoverable computations
Communications of the ACM
HAC: hybrid adaptive caching for distributed storage systems
Proceedings of the sixteenth ACM symposium on Operating systems principles
Frangipani: a scalable distributed file system
Proceedings of the sixteenth ACM symposium on Operating systems principles
Options for dynamic address translation in COMAs
Proceedings of the 25th annual international symposium on Computer architecture
JRes: a resource accounting interface for Java
Proceedings of the 13th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Proceedings of the seventeenth ACM symposium on Operating systems principles
Mostly-copying reachability-based orthogonal persistence
Proceedings of the 14th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Proceedings of the 27th annual international symposium on Computer architecture
Separating access control policy, enforcement, and functionality in extensible systems
ACM Transactions on Computer Systems (TOCS)
Access control in configurable systems
Secure Internet programming
Secure Internet programming
Managing energy and server resources in hosting centers
SOSP '01 Proceedings of the eighteenth ACM symposium on Operating systems principles
Towards safe and efficient customization in distributed systems
EW 6 Proceedings of the 6th workshop on ACM SIGOPS European workshop: Matching operating systems to application needs
Hidden capabilities: towards a flexible protection utility for the internet
EW 7 Proceedings of the 7th workshop on ACM SIGOPS European workshop: Systems support for worldwide applications
Verification caching: towards efficient and secure mobile code execution environments
Proceedings of the 2002 ACM symposium on Applied computing
Password-capabilities: their evolution from the password-capability system into walnut and beyond
ACSAC '01 Proceedings of the 6th Australasian conference on Computer systems architecture
A resource management framework for priority-based physical-memory allocation
CRPIT '02 Proceedings of the seventh Asia-Pacific conference on Computer systems architecture
Access Control Mechanisms in a Distributed, Persistent Memory System
IEEE Transactions on Parallel and Distributed Systems
Supporting Flexible Safety and Sharing in Multi-threaded Environments
IPDPS '00 Proceedings of the 15 IPDPS 2000 Workshops on Parallel and Distributed Processing
Non-functional Capability-Based Access Control in the Java Environment
OOIS '02 Proceedings of the 8th International Conference on Object-Oriented. Information Systems
PM3: An Orthogonal Persistent Systems Programming Language - Design, Implementation, Performance
VLDB '99 Proceedings of the 25th International Conference on Very Large Data Bases
Providing Persistent Objects in Distributed Systems
ECOOP '99 Proceedings of the 13th European Conference on Object-Oriented Programming
The NODS Project: Networked Open Database Services
Proceedings of the International Symposium on Objects and Databases
ATEC '02 Proceedings of the General Track of the annual conference on USENIX Annual Technical Conference
Simple Memory Protection for Embedded Operating System Kernels
Proceedings of the FREENIX Track: 2002 USENIX Annual Technical Conference
PerDiS: Design, Implementation, and Use of a PERsistent DIstributed Store
Advances in Distributed Systems, Advanced Distributed Computing: From Algorithms to Systems
An Overview of Ulisse, a Distributed Single Address Space System
POS-9 Revised Papers from the 9th International Workshop on Persistent Object Systems
Garbage Collector Memory Accounting in Language-Based Systems
SP '03 Proceedings of the 2003 IEEE Symposium on Security and Privacy
A fine-grained protection mechanism in object-based operating systems
IWOOOS '96 Proceedings of the 5th International Workshop on Object Orientation in Operating Systems (IWOOOS '96)
Multiversioning and Logging in the Grasshopper Kernel Persistent Store
IWOOOS '95 Proceedings of the 4th International Workshop on Object-Orientation in Operating Systems
On Page-Based Optimistic Process Checkpointing
IWOOOS '95 Proceedings of the 4th International Workshop on Object-Orientation in Operating Systems
Ensuring integrity and service availability in a web-based control laboratory
Real-time system security
Improving the reliability of commodity operating systems
SOSP '03 Proceedings of the nineteenth ACM symposium on Operating systems principles
Virtual memory on data diffusion architectures
Parallel Computing
Implicit java array bounds checking on 64-bit architecture
Proceedings of the 18th annual international conference on Supercomputing
Improving the reliability of commodity operating systems
ACM Transactions on Computer Systems (TOCS)
Moving Address Translation Closer to Memory in Distributed Shared-Memory Multiprocessors
IEEE Transactions on Parallel and Distributed Systems
Encyclopedia of Computer Science
A high performance Kernel-Less Operating System architecture
ACSC '05 Proceedings of the Twenty-eighth Australasian conference on Computer Science - Volume 38
Defending against hitlist worms using network address space randomization
Proceedings of the 2005 ACM workshop on Rapid malcode
Heap protection for Java virtual machines
PPPJ '06 Proceedings of the 4th international symposium on Principles and practice of programming in Java
Implicit array bounds checking on 64-bit architectures
ACM Transactions on Architecture and Code Optimization (TACO)
Homeviews: peer-to-peer middleware for personal data sharing applications
Proceedings of the 2007 ACM SIGMOD international conference on Management of data
Processes in KaffeOS: isolation, resource management, and sharing in java
OSDI'00 Proceedings of the 4th conference on Symposium on Operating System Design & Implementation - Volume 4
A secure javaTM virtual machine
SSYM'00 Proceedings of the 9th conference on USENIX Security Symposium - Volume 9
USITS'97 Proceedings of the USENIX Symposium on Internet Technologies and Systems on USENIX Symposium on Internet Technologies and Systems
Techniques for the design of java operating systems
ATEC '00 Proceedings of the annual conference on USENIX Annual Technical Conference
Protected shared libraries: a new approach to modularity and sharing
ATEC '97 Proceedings of the annual conference on USENIX Annual Technical Conference
Linking programs in a single address space
ATEC '99 Proceedings of the annual conference on USENIX Annual Technical Conference
Defending against hitlist worms using network address space randomization
Computer Networks: The International Journal of Computer and Telecommunications Networking
Improving dependability by revisiting operating system design
HotDep'07 Proceedings of the 3rd workshop on on Hot Topics in System Dependability
Java heap protection for debugging native methods
Science of Computer Programming
Archipelago: trading address space for reliability and security
Proceedings of the 13th international conference on Architectural support for programming languages and operating systems
Privilege separation made easy: trusting small libraries not big processes
Proceedings of the 1st European Workshop on System Security
Organizing and sharing distributed personal web-service data
Proceedings of the 17th international conference on World Wide Web
Enforcing performance isolation across virtual machines in Xen
Proceedings of the ACM/IFIP/USENIX 2006 International Conference on Middleware
CapaCon: access control mechanism for inter-device communications through TCP connections
Proceedings of the 2010 ACM Symposium on Applied Computing
Stabilizing trust and reputation for self-stabilizing efficient hosts in spite of Byzantine guests
SSS'07 Proceedings of the 9h international conference on Stabilization, safety, and security of distributed systems
Stabilizing trust and reputation for self-stabilizing efficient hosts in spite of byzantine guests
ACM SIGOPS Operating Systems Review
CuriOS: improving reliability through operating system structure
OSDI'08 Proceedings of the 8th USENIX conference on Operating systems design and implementation
Fido: fast inter-virtual-machine communication for enterprise appliances
USENIX'09 Proceedings of the 2009 conference on USENIX Annual technical conference
Operating system implications of fast, cheap, non-volatile memory
HotOS'13 Proceedings of the 13th USENIX conference on Hot topics in operating systems
Ribbons: a partially shared memory programming model
Proceedings of the 2011 ACM international conference on Object oriented programming systems languages and applications
Enforcing performance isolation across virtual machines in xen
Middleware'06 Proceedings of the 7th ACM/IFIP/USENIX international conference on Middleware
TAO: protecting against hitlist worms using transparent address obfuscation
CMS'06 Proceedings of the 10th IFIP TC-6 TC-11 international conference on Communications and Multimedia Security
Apple-CORE: Harnessing general-purpose many-cores with hardware concurrency management
Microprocessors & Microsystems
Hi-index | 0.02 |
This article explores memory sharing and protection support in Opal, a single-address-space operating system designed for wide-address (64-bit) architectures. Opal threads execute within protection domains in a single shared virtual address space. Sharing is simplified, because addresses are context independent. There is no loss of protection, because addressability and access are independent; the right to access a segment is determined by the protection domain in which a thread executes. This model enables beneficial code-and data-sharing patterns that are currently prohibitive, due in part to the inherent restrictions of multiple address spaces, and in part to Unix programming style.We have designed and implemented an Opal prototype using the Mach 3.0 microkernel as a base. Our implementation demonstrates how a single-address-space structure can be supported alongside of other environments on a modern microkernel operating system, using modern wide-address architectures. This article justifies the Opal model and its goals for sharing and protection, presents the system and its abstractions, describes the prototype implementation, and reports experience with integrated applications.