Making C++ Objects Persistent: the Hidden Pointers

时间:2013-09-09 10:06:28
【文件属性】:

文件名称:Making C++ Objects Persistent: the Hidden Pointers

文件大小:317KB

文件格式:PDF

更新时间:2013-09-09 10:06:28

Making C++ Objects Persistent: the

C11 objects of types that have virtual functions or virtual base classes contain volatile (‘memory’) pointers. We call such pointers ‘hidden pointers’ because they were not specified by the user. If such C11 objects are made persistent, then these pointers become invalid across program invocations. We encountered this problem in our implementation of O11, which is a database language based on C11. O11 extends C11 with the ability to create and access persistent objects. In this paper, we describe the hidden pointers problem in detail and present several solutions to it. Our solutions are elegant in that they do not require modifying the C11 compiler or the semantics of C11. We also discuss another problem that arises because C11 allows base class pointers to point to derived class objects. C11 has emerged as the de facto standard language for software development, and database systems based on C11 have attracted much attention. We hope that the details and techniques presented will be u


网友评论