IP Library Granted Patent US 6,922,698
Granted Patent B2
US 6,922,698 · App. 10/464,293 · Granted Jul 26, 2005

System and method for interfacing index based and iterator based application programming interfaces

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 6,922,698
App. No.
10/464,293
Granted
Jul 26, 2005
Kind
B2
Abstract

A system and method for interfacing index based and iterator based file management routines. In general, the disclosed system maintains an iterator cache having multiple iterators. Each active iterator is associated with a most recently used directory entry. Upon receiving an index based request, the iterator closest to the index based request is identified. If the index based request is closer to the top of the directory than it is to the closest active iterator, the directory entries are sequentially examined beginning at the top of the directory with the first entry. Otherwise, the system determines whether the index based request is located above or below the closest iterator. If the index based request is above the closest iterator, the system steps backward beginning with the directory entry associated with the closest iterator until the directory entry associated with the index based request is located. If the closest iterator is located below the closest iterator, the system steps forward through the directory entries beginning with the directory entry associated with the closest iterator until the requested directory entry is located.

Claims (31)

1. A computer-implemented method of locating a directory entry, comprising:

determining a proximity between at least one iterator and a directory entry associated with an index based request, in order to respond to the index based request for a directory entry; wherein determining the proximity comprises identifying an iterator from the at least on that is in proximity to the directory associated with the index based request; and

stepping through a set of directory entries based upon the proximity wherein stepping through the set of directory enteries is performed starting at a directory entry associated with the identified iterator until the directory entry associated with the index based request is located.

2. The method of claim 1 , further comprising maintaining the at least one iterator in a memory.

3. The method of claim 1 , wherein each of the at least one iterator is associated with a specific directory entry.

4. The method of claim 1 , wherein the identifying comprises:

calculating an absolute value difference between positions of the at least one iterator and a position of the directory entry associated with the index based request; and

selecting from the at least one iterator, an iterator having the smallest absolute value difference between its position and the position of the directory entry associated with the index based request.

5. A machine-readable medium having executable code to cause a machine to perform a method for locating a directory entry, the method comprising:

determining a proximity between at least one iterator and a directory entry associated with an index based request, in order to respond to the index based request for a directory entry; wherein determining the proximity comprises identifying an iterator from the at least on that is in proximity to the directory associated with the index based request; and

stepping through a set of directory entries based upon the proximity wherein stepping through the set of directory enteries is performed starting at a directory entry associated with the identified iterator until the directory entry associated with the index based request is located.

6. The machine-readable medium of claim 5 , wherein the method further comprises maintaining the at least one iterator in a memory.

7. The machine-readable medium of claim 5 , wherein each of the at least one iterator is associated with a specific directory entry.

8. The machine-readable medium of claim 5 , wherein the identifying comprises:

calculating an absolute value difference between positions of the at least one iterator and a position of the directory entry associated with the index based request; and

selecting from the at least one iterator, an iterator having the smallest absolute value difference between its position and the position of the directory entry associated with the index based request.

9. A computer-implemented system for locating a directory entry, comprising:

means for determining a proximity between at least one iterator and a directory entry associated with an index based request, in order to respond to the index based request for a directory entry; wherein determining the proximity comprises identifying an iterator from the at least on that is in proximity to the directory associated with the index based request; and

means for stepping through a set of directory entries based upon the proximity wherein stepping through the set of directory enteries is performed starting at a directory entry associated with the identified iterator until the directory entry associated with the index based request is located.

10. The system of claim 9 , further comprising means for maintaining the at least one iterator in a memory.

11. The system of claim 9 , wherein each of the at least one iterator is associated with a specific directory entry.

12. The system of claim 9 , wherein means for identifying comprises:

means for calculating an absolute value difference between positions of the at least one iterator and a position of the directory entry associated with the index based request; and

means for selecting from the at least one iterator, an iterator having the smallest absolute value difference between its position and the position of the directory entry associated with the index based request.

13. A computer-implemented data processing system, comprising

a processors;

a memory coupled to the processor; and

a process executed by the processor from the memory to cause the processor to determine a proximity between at least one iterator and a directory entry

associated with an index based request, in order to respond to the index based request for a directory entry, wherein determining the proximity comprises identifying an iterator from the at least on that is in proximity to the directory associated with the index based request; and

step through a set of directory entries based upon the proximity wherein stepping through the set of directory enteries is performed starting at a directory entry associated with the identified iterator until the directory entry associated with the index based request is located.

14. The data processing system of claim 13 , the process further cause the processor to maintain the at least one iterator in the memory.

Assignments (1)
CHANGE OF NAME Recorded Oct 1, 2007
From: APPLE COMPUTER, INC.
To: APPLE INC.
Reel/Frame 019943/0173 →