Patent ID: 7509461

Claim:
A method of locating a number of consecutive pages in a memory for allocation to an application, wherein at least a portion of the memory is reserved as a buffer cache pool and wherein the memory is apportioned into a plurality of pages comprises the step of: performing a search of a frame table to locate the number of consecutive pages, wherein the frame table is a data structure that includes an entry for each page of memory, each entry including ownership information including information indicating whether the corresponding page is free or is buffer cache allocated, wherein the step of searching includes the step of changing the ownership information of a page from buffer cache allocated to free responsive to buffer cache availability information associated with the page indicating that the page is available for use; and wherein the step of performing a search of the frame table comprises the steps of: a) identifying a starting index to the frame table; b) using the starting index, accessing an entry in a frame table and retrieving the ownership information of the entry; c) responsive to the ownership information indicating that a page associated with the entry is free, allocating the page to the application; d) responsive to the ownership information indicating that the page associated with the entry is buffer cache allocated: retrieving availability information for the page; and responsive to the availability information of the page indicating that the page is available, allocating the page to the application.