Method and system for memory allocation in a multiprocessing environment

Brian D. Koblenz (Inventor), Allan Porterfield (Inventor), Burton J. Smith (Inventor)

Research output: ResearchPatent

Abstract

A method and system for allocating memory. The computer system on which the memory allocation system executes may support the simultaneous execution of multiple threads. Under control of a thread, the memory allocation system first identifies a bin associated with blocks ("lockers") of memory large enough to satisfy a memory allocation request. When the identified bin has a free locker, the memory allocation system searches a circular list of headers associated with the identified bin for a collection of lockers ("warehouse") that contains a locker that is available to be allocated. The memory allocation system allocates the found available locker to satisfy the request. If, however, the allocated bin has no free lockers, the memory allocation system allocates a warehouse with lockers large enough to satisfy the memory allocation request. The memory allocation system then adds a warehouse header for the allocated warehouse to a circular list of warehouse headers associated with the identified bin. The memory allocation system allocates a locker from the newly allocated warehouse to satisfy the memory allocation request.
LanguageEnglish
Patent number6353829
IPCG06F 9/46 (20060101); G06F 12/02 (20060101); G06F 17/30 (20060101); G06F 5/00 (20060101); G06F 9/50 (20060101); G06F 017/30
StatePublished - 1800

Fingerprint

Storage allocation (computer)
Warehouses
Bins
Computer systems
Data storage equipment

Keywords

    Cite this

    Koblenz, B. D., Porterfield, A., & Smith, B. J. (1800). IPC No. G06F 9/46 (20060101); G06F 12/02 (20060101); G06F 17/30 (20060101); G06F 5/00 (20060101); G06F 9/50 (20060101); G06F 017/30. Method and system for memory allocation in a multiprocessing environment (Patent No. 6353829.)

    Method and system for memory allocation in a multiprocessing environment. / Koblenz, Brian D. (Inventor); Porterfield, Allan (Inventor); Smith, Burton J. (Inventor).

    IPC No.: G06F 9/46 (20060101); G06F 12/02 (20060101); G06F 17/30 (20060101); G06F 5/00 (20060101); G06F 9/50 (20060101); G06F 017/30. Patent No.: 6353829.

    Research output: ResearchPatent

    Koblenz, BD, Porterfield, A & Smith, BJ 1800, Method and system for memory allocation in a multiprocessing environment, Patent No. 6353829, IPC No. G06F 9/46 (20060101); G06F 12/02 (20060101); G06F 17/30 (20060101); G06F 5/00 (20060101); G06F 9/50 (20060101); G06F 017/30.
    Koblenz BD, Porterfield A, Smith BJ, inventors. Method and system for memory allocation in a multiprocessing environment. G06F 9/46 (20060101); G06F 12/02 (20060101); G06F 17/30 (20060101); G06F 5/00 (20060101); G06F 9/50 (20060101); G06F 017/30. 1800
    Koblenz, Brian D. (Inventor) ; Porterfield, Allan (Inventor) ; Smith, Burton J. (Inventor). / Method and system for memory allocation in a multiprocessing environment. IPC No.: G06F 9/46 (20060101); G06F 12/02 (20060101); G06F 17/30 (20060101); G06F 5/00 (20060101); G06F 9/50 (20060101); G06F 017/30. Patent No.: 6353829.
    @misc{774ea743b5e642a4b4ceb0cf7e459cc5,
    title = "Method and system for memory allocation in a multiprocessing environment",
    abstract = "A method and system for allocating memory. The computer system on which the memory allocation system executes may support the simultaneous execution of multiple threads. Under control of a thread, the memory allocation system first identifies a bin associated with blocks ({"}lockers{"}) of memory large enough to satisfy a memory allocation request. When the identified bin has a free locker, the memory allocation system searches a circular list of headers associated with the identified bin for a collection of lockers ({"}warehouse{"}) that contains a locker that is available to be allocated. The memory allocation system allocates the found available locker to satisfy the request. If, however, the allocated bin has no free lockers, the memory allocation system allocates a warehouse with lockers large enough to satisfy the memory allocation request. The memory allocation system then adds a warehouse header for the allocated warehouse to a circular list of warehouse headers associated with the identified bin. The memory allocation system allocates a locker from the newly allocated warehouse to satisfy the memory allocation request.",
    keywords = "707/100 ;712/203,233",
    author = "Koblenz, {Brian D.} and Allan Porterfield and Smith, {Burton J.}",
    note = "Status: published applicationnumber: 09221657 usclass: 1/1 ; 707/999.1; 711/E12.006; 712/203; 712/233 applicationnumber: 09221657; 6353829; G06F 9/46 (20060101); G06F 12/02 (20060101); G06F 17/30 (20060101); G06F 5/00 (20060101); G06F 9/50 (20060101); G06F 017/30",
    year = "1800",
    type = "Patent",

    }

    TY - PAT

    T1 - Method and system for memory allocation in a multiprocessing environment

    AU - Koblenz,Brian D.

    AU - Porterfield,Allan

    AU - Smith,Burton J.

    N1 - Status: published applicationnumber: 09221657 usclass: 1/1 ; 707/999.1; 711/E12.006; 712/203; 712/233 applicationnumber: 09221657

    PY - 1800

    Y1 - 1800

    N2 - A method and system for allocating memory. The computer system on which the memory allocation system executes may support the simultaneous execution of multiple threads. Under control of a thread, the memory allocation system first identifies a bin associated with blocks ("lockers") of memory large enough to satisfy a memory allocation request. When the identified bin has a free locker, the memory allocation system searches a circular list of headers associated with the identified bin for a collection of lockers ("warehouse") that contains a locker that is available to be allocated. The memory allocation system allocates the found available locker to satisfy the request. If, however, the allocated bin has no free lockers, the memory allocation system allocates a warehouse with lockers large enough to satisfy the memory allocation request. The memory allocation system then adds a warehouse header for the allocated warehouse to a circular list of warehouse headers associated with the identified bin. The memory allocation system allocates a locker from the newly allocated warehouse to satisfy the memory allocation request.

    AB - A method and system for allocating memory. The computer system on which the memory allocation system executes may support the simultaneous execution of multiple threads. Under control of a thread, the memory allocation system first identifies a bin associated with blocks ("lockers") of memory large enough to satisfy a memory allocation request. When the identified bin has a free locker, the memory allocation system searches a circular list of headers associated with the identified bin for a collection of lockers ("warehouse") that contains a locker that is available to be allocated. The memory allocation system allocates the found available locker to satisfy the request. If, however, the allocated bin has no free lockers, the memory allocation system allocates a warehouse with lockers large enough to satisfy the memory allocation request. The memory allocation system then adds a warehouse header for the allocated warehouse to a circular list of warehouse headers associated with the identified bin. The memory allocation system allocates a locker from the newly allocated warehouse to satisfy the memory allocation request.

    KW - 707/100 ;712/203,233

    M3 - Patent

    M1 - 6353829

    ER -