|
Abstract : |
Protection is the mechanism employed by operating systems to control access to resources. Object encapsulation in object-based systems requires control of access to every object. The incremental definition of objects through inheritance and type hierarchies is an important aspect of object-oriented systems. This dissertation examines the relationship between protection and object-oriented hierarchies. Splitting object-oriented hierarchies across protection boundaries is particularly attractive for the purposes of providing a uniform programming model to objectoriented applications and for implementing a minimal object-oriented kernel. After surveying current research and providing a background for discussion, this dissertation presents a detailed analysis of the issues relating to splitting object-oriented hierarchies across protection boundaries. The analysis is independent of language, operating system, and protection model. The analysis reveals the precautions that must be taken to guard against protection violations. The analysis also shows that in the general case an object must be able to be split across the protection boundaries, and that the child portion of the object should delegate or forward unrecognized method calls to the parent portion of the object on the other side of the boundary., |