IP Library Granted Patent US 8,117,626
Granted Patent B2
US 8,117,626 · App. 12/182,846 · Granted Feb 14, 2012

Asynchronous remote procedure calling method and computer product in shared-memory multiprocessor

Assignee: Fujitsu Limited
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 8,117,626
App. No.
12/182,846
Granted
Feb 14, 2012
Kind
B2
Abstract

A first processor makes a procedure call, specifying an address of a procedure in an address space controlled by a second processor and an address of procedure control information generated in an address space controlled by the first processor. The second processor executes the procedure present at the address specified by the first processor. Upon finishing of execution of the procedure, the second processor returns the address of the procedure control information to the first processor. The first processor changes the execution status included in the procedure control information at the address returned from the second processor from “being executed” to “completed”.

Claims (47)

1. An asynchronous remote procedure calling method in a shared-memory multiprocessor having processors that are capable of inter-processor communication using a bus, share a memory and each have an address space that is respectively independent in the memory, whereby a first processor of the shared-memory multiprocessor makes an asynchronous remote procedure call to a second processor thereof, the asynchronous remote procedure calling method comprising:

generating by the first processor and in the address space controlled by the first processor, procedure control information for controlling a procedure to be executed by the second processor;

setting, by the first processor, a procedure status included in the procedure control information as being executed;

making the asynchronous remote procedure call by the first processor notifying the second processor of an address of the procedure control information;

initiating and executing, by the second processor, the procedure in the address

space controlled by the second processor and specified by the asynchronous remote procedure call;

receiving, by the second processor and from the first processor, an address in the address space controlled by the second processor; and

initiating and executing the procedure present at the address by the second processor;

stopping processing being executed by the second processor upon receipt of notification of the asynchronous remote procedure call; and

initiating, by the second processor, processing for executing the procedure called by the first processor;

notifying the first processor of completion of the procedure by the second processor returning the address of the procedure control information to the first processor; and

changing, by the first processor, the procedure status, at the address returned by the second processor, to finished.

2. The asynchronous remote procedure calling method according to claim 1 , wherein

the making the asynchronous remote procedure call includes specifying, by the first processor, an address in the address space controlled by the second processor.

3. The asynchronous remote procedure calling method according to claim 1 further comprising:

waiting, by the second processor, for notification of the procedure call to be sent; and

initiating, by the second processor upon receipt of the notification from the first processor, processing for executing the procedure called by the first processor.

4. The asynchronous remote procedure calling method according to claim 1 further comprising:

writing, by the first processor, the address of the procedure control information to a first register in the first processor; and

reading, by the second processor, the address of the procedure control information transferred from the first register via the inter-processor communication and written to a second register in the second processor.

5. An asynchronous remote procedure calling method in a shared-memory multiprocessor having processors that are capable of inter-processor communication using a bus, share a memory and each have an address space that is respectively independent in the memory, whereby a first processor of the shared-memory multiprocessor makes an asynchronous remote procedure call to a second processor thereof, the asynchronous remote procedure calling method comprising:

generating by the first processor and in the address space controlled by the first processor, procedure control information for controlling a procedure to be executed by the second processor;

setting, by the first processor, a procedure status included in the procedure control information as being executed;

making the asynchronous remote procedure call by the first processor notifying the second processor of an address of the procedure control information; and

initiating and executing, by the second processor, the procedure in the address space controlled by the second processor and specified by the asynchronous remote procedure call;

receiving, by the second processor and from the first processor, an address in the address space controlled by the second processor; and

initiating and executing the procedure present at the address by the second processor;

stopping processing being executed by the second processor upon receipt of notification of the asynchronous remote procedure call; and

initiating, by the second processor, processing for executing the procedure called by the first processor;

notifying the first processor of completion of the procedure by the second processor returning the address of the procedure control information to the first processor; and

changing, by the first processor, the procedure status to finished after execution of the procedure by the second processor.

6. The asynchronous remote procedure calling method according to claim 5 , wherein

the making the asynchronous remote procedure call includes specifying, by the first processor, an address in the address space controlled by the second processor.

7. An asynchronous remote procedure calling method in a shared-memory multiprocessor having processors that are capable of inter-processor communication using a bus, share a memory and each have an address space that is respectively independent in the memory, whereby a first processor of the shared-memory multiprocessor makes an asynchronous remote procedure call to a second processor thereof, the asynchronous remote procedure calling method comprising:

generating by the first processor and in the address space controlled by the first processor, procedure control information for controlling a procedure to be executed by the second processor;

setting, by the first processor, a procedure status included in the procedure control information as being executed;

making the asynchronous remote procedure call by the first processor notifying the second processor of an address of the procedure control information; and

initiating and executing, by the second processor, the procedure in the address space controlled by the second processor and specified by the asynchronous remote procedure call;

receiving, by the second processor and from the first processor, the address of procedure control information that is for controlling the procedure to be executed by the second processor and is in the address space controlled by the first processor;

initiating and executing, by the second processor, the procedure in the address space controlled by the second processor and specified by the asynchronous remote procedure call; and

stopping processing being executed by the second processor upon receipt of notification of the asynchronous remote procedure call; and

initiating, by the second processor, processing for executing the procedure called by the first processor;

notifying the first processor of completion of the procedure by the second processor notifying the first processor of the address of the procedure control information;

changing, by the first processor, the procedure status to finished after execution of the procedure by the second processor.

8. The asynchronous remote procedure calling method according to claim 7 further comprising:

waiting, by the second processor, for notification of the procedure call to be sent; and

initiating, by the second processor upon receipt of the notification from the first processor, processing for executing the procedure called by the first processor.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 5, 2008
From: SUZUKI, TAKAHISA; MIYAKE, HIDEO
To: FUJITSU LIMITED
Reel/Frame 021342/0131 →
Continuity (2)
Continuation PCTJP2006301533 · Jan 31, 2006
Related Publication 20080295120A1 · Nov 27, 2008