Browse Prior Art Database

Reference Tracking Mechanism

IP.com Disclosure Number: IPCOM000031847D
Original Publication Date: 2004-Oct-14
Included in the Prior Art Database: 2004-Oct-14
Document File: 2 page(s) / 39K

Publishing Venue

IBM

Abstract

A Accountable Traceable Reference Tracking Mechanism for Shared Objects

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 52% of the total text.

Page 1 of 2

Reference Tracking Mechanism

Our disclure provides an extensible mechanism for tracking objects using traceable tokens.

Software systems often need to track reference counts to resources. For example, a transaction-like model could be used for editing resources; when the reference count drops to zero, the transaction is either saved or rolled back. Prior art uses simple counting to track these reference counts; i.e. each resource contains an integer count (this can also be in a table) of how many references currently exist to it.

When using such referencing counting systems, clients increment the resource's reference count (the resource is accessed) before utilizing the resource and decrement the reference count when finished (the resource is released). Several problems arise with this system:
1. Reference counts can become corrupted when clients access a resource, but fail to subsequently release it. They also can be corrupted when clients release a resource without having ever accessed it.
2. Corrupted reference counts are very difficult to debug because there is no tracking of which clients hold the references.
3. Clients are not forced to access and release the reference counted resources before using them.

Reference counted resources now track clients and uphold the following rules:
1. Each client may have at most a single access to a resource at a given time.
2. Clients must first access a resource before using the resource.
3. Only clients with access to a resource may release that resource.
4. Each client that accesses a resource must eventually release the resource.

Clients violating these rules will be notified through logged error messages.

Any client wishing to use a referenc...