Browse Prior Art Database

Methods and Apparatus for Dead-Lock Prevention in Shared Memory Based Software

IP.com Disclosure Number: IPCOM000193855D
Published in the IP.com Journal: Volume 10 Issue 3B (2010-03-24)
Included in the Prior Art Database: 2010-Mar-24
Document File: 2 page(s) / 345K

Publishing Venue

Siemens

Related People

Juergen Carstens: CONTACT

Abstract

Recently emerging software is architected under the major factor that the most widely used computers are shared memory machines. Shared memory machines provide the shared memory programming paradigm that is the fastest way of sharing data between running software applications. Figure 1 shows typical modern software that is architected according to the shared memory paradigm. Multiple shared memory based applications keep and share their objects in the shared memory. Each shared memory object is protected by synchronization primitive. Each application locks an object in the shared memory, performs read/write operations and then unlocks the object. A typical disastrous problem appears quite often where one of the shared memory applications hangs or crashed leaving some locked objects in the shared memory. Such locked objects block further operations of the entire shared memory based software, for instance control center software.

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 60% of the total text.

Page 1 of 2

Methods and Apparatus for Dead-Lock Prevention in Shared Memory Based Software

Idea: Dr. Oleksandr Pochayevets, DE-Nuremberg

Recently emerging software is architected under the major factor that the most widely used computers are shared memory machines. Shared memory machines provide the shared memory programming paradigm that is the fastest way of sharing data between running software applications. Figure 1 shows typical modern software that is architected according to the shared memory paradigm. Multiple shared memory based applications keep and share their objects in the shared memory. Each shared memory object is protected by synchronization primitive. Each application locks an object in the shared memory, performs read/write operations and then unlocks the object.

A typical disastrous problem appears quite often where one of the shared memory applications hangs or crashed leaving some locked objects in the shared memory. Such locked objects block further operations of the entire shared memory based software, for instance control center software.

In order to prevent blocking shared memory based software caused by unintentionally hanging or crashed shared memory applications a protection mechanism is proposed.

A dedicated process or a thread that is called shared memory manager is additionally introduced into shared memory based software. The shared memory manager initializes all shared memory synchronization primitives. Then at runtime, the shared memory mana...