IP Library Granted Patent US 9,158,582
Granted Patent B2
US 9,158,582 · App. 14/415,986 · Granted Oct 13, 2015

Method for managing the threads of execution in a computer unit, and computer unit configured to implement said method

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 9,158,582
App. No.
14/415,986
Granted
Oct 13, 2015
Kind
B2
Abstract

A method of managing execution threads launched by processes being executed in a computer unit having at least one calculation core connected to a shared memory. The method includes the steps of: using a zone of the shared memory that is accessible to all of the processes and execution threads for the purpose of managing calculation tokens; when a thread seeks to execute, that thread verifies that a calculation token is available; if a calculation token is available, the thread allocates the calculation token to itself by updating the shared memory and it continues its execution, and then releases the calculation token at the end of its execution; and each execution thread has a priority index allocated thereto, and each thread having a task that is being executed is caused periodically to verify that a thread has not been put on standby that has a priority index higher than its own, and where appropriate, causing the thread that is executing to stop executing and release the corresponding calculation token. A computer unit for performing the method.

Claims (15)

1. A method of managing execution threads launched by processes being executed in a computer unit having at least one calculation core connected to a shared memory, the method comprising the following steps:

using a zone of the shared memory that is accessible to all of the processes and execution threads for the purpose of managing calculation tokens;

when a thread associated with a task seeks to execute, causing the thread to verify whether a calculation token is available;

if a calculation token is available, causing the thread to allocate itself the calculation token by updating the shared memory, followed by the thread executing, and then by the thread releasing the calculation token at the end of its execution;

if no token is available, causing the thread for execution to go on standby until a calculation token is released by a thread that has terminated its execution;

when a calculation token is released by a thread, causing that thread to identify the next thread to which the token is to be transferred, and to transfer the token thereto, where appropriate; and

each execution thread has a priority index allocated thereto, and each thread having a task that is being executed is caused periodically to verify that a thread has not been put on standby that has a priority index higher than its own, and where appropriate, causing the thread that is executing to stop executing and release the corresponding calculation token.

2. A method according to claim 1 , wherein each process having a thread that is executing periodically indicates that it is active by means of the shared memory zone which maintains an up-to-date list of processes having a thread that is being executed, and one of these processes releases the calculation token of a registered process that has failed to signal that it is active.

3. A method according to claim 1 , wherein each process is capable of loading into memory the data entity enabling calculation tokens to be managed and the calculation token data entity is loaded into memory by the first process seeking to execute in the context of a session and is unloaded at the end of execution of the last process to be executing.

4. A method according to claim 1 , including a step of providing an allocation of a limited number calculation tokens to at least one process.

5. A method according to claim 1 , including a step of reserving at least one calculation token for at least one process.

6. A method according to claim 1 , including a step of authorizing a program to access the shared zone.

7. A method according to claim 6 , wherein the program is a program for collecting information suitable for use for statistical purposes.

8. A method according to claim 6 , wherein the program is a debugging program.

9. A computer unit including at least one calculation core connected to a memory and arranged to execute processes, the computer unit wherein it is arranged to perform the method as described in claim 1 .

Assignments (4)
CORRECTIVE ASSIGNMENT TO CORRECT THE PATENT NUMBER REPLACING 10158873 WITH 10185873 PREVIOUSLY RECORDED ON REEL 71930 FRAME 625. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT . Recorded Apr 1, 2026
From: IDEMIA IDENTITY & SECURITY FRANCE
To: IDEMIA PUBLIC SECURITY FRANCE
Reel/Frame 075530/0067 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 14, 2025
From: IDEMIA IDENTITY & SECURITY FRANCE
To: IDEMIA PUBLIC SECURITY FRANCE
Reel/Frame 071930/0625 →
CHANGE OF NAME Recorded Mar 1, 2023
From: MORPHO
To: IDEMIA IDENTITY & SECURITY FRANCE
Reel/Frame 062895/0357 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 22, 2015
From: BRONSART, SEBASTIEN; DARBOIS, MATTHIEU; THUILLIER, CEDRIC
To: MORPHO
Reel/Frame 034790/0351 →