Browse Prior Art Database

Quickcell Extension to Main Storage Management Algorithms

IP.com Disclosure Number: IPCOM000081169D
Original Publication Date: 1974-Apr-01
Included in the Prior Art Database: 2005-Feb-27
Document File: 3 page(s) / 44K

Publishing Venue

IBM

Related People

Bowen, AJ: AUTHOR

Abstract

Preallocated quickcell is a programming technique for managing requests made upon a main storage subpool, allowing a significant percentage of storage requests to be filtered out of the subpool load and be handled by a low-overhead mechanism.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 52% of the total text.

Page 1 of 3

Quickcell Extension to Main Storage Management Algorithms

Preallocated quickcell is a programming technique for managing requests made upon a main storage subpool, allowing a significant percentage of storage requests to be filtered out of the subpool load and be handled by a low-overhead mechanism.

Storage may be arranged into subpools which include logically related blocks of storage. Certain ones of the subpools may be initialized to contain a quickcell area and a regular area. Quickcells are small blocks of storage which are quickly allocated and used for short periods of time, and are managed by an algorithm which expends a relatively small number of instructions to point at the quickcells. The regular area is managed by any one of a number of well-known algorithms which expend a relatively large number of instructions, to manage storage in a way that minimizes fragmentation. Ideally, a quickcell technique provides a trivial path through the regular area management logic and minimizes fragmentation, by accommodating request lengths having short-lived tendencies.

In the present technique, the quickcell area is divided into a number of preallocated cells at subpool initialization time which, by way of example, may include one cell for each of the sizes from 8 bytes through 80 bytes in 8-byte increments. Where a quickcell for a certain size is experiencing many misses due to many short-lived requests of that size being outstanding concurrently, one or more additional quickcells for the given size may be provided as shown in the case of the 24-byte quickcell, with each quickcell of a given size being chained to a preceding quickcell of the same given size. At subpool initialization time, a quickcell pointer list is established for the quickcell area. The first part of each entry in the list defines the size of an associated quickcell, while the second part of the entry contains either an address pointer which points to the associated quickcell or con...