Electrical computers and digital processing systems: multicomput – Computer-to-computer data routing – Least weight routing
Patent
1997-06-02
1999-10-05
Banankhah, Majid A.
Electrical computers and digital processing systems: multicomput
Computer-to-computer data routing
Least weight routing
709100, G06F 946
Patent
active
059615842
DESCRIPTION:
BRIEF SUMMARY
TECHNICAL FIELD OF THE INVENTION
The present invention generally relates to execution mechanisms in a telecommunication data system. More particularly the invention relates to managing internal execution threads in a process.
When implementing an object-oriented telecommunication application, it is feasible to divide it into an object model, representing the resources of the system (like channels, tone senders, etc.) and control logic, carrying out the application control functions. The control logic further benefits from being divided into separate activities, like call control, bearer connection control, etc.
The execution environment for the application is the process. By process is here meant a run-time environment intended for a certain activity, for example a telephony call. The process environment is located entirely to a certain processor and consists of memory (heap, stack) and execution ability. Within the process threads are executed pseudo-concurrently. The process also contains the object model.
The thread is the execution resource for control logic. The execution of a thread is driven by events generated by the object model. Several threads may be triggered by the same event which then will be distributed in thread priority order. The events are typically generated as responses to external events, for example, a signalling message received by the process.
The thread may monitor individual events from some specific object, any event from some object, an individual event from a class of objects, or any event from a class of objects. A thread maintains its own thread context, i.e. stack and processor registers, but shares heap with- all other threads.
The threads provide a powerful support for splitting complex activities into relatively independent sub-activities. The logic in a thread executes either until it enters a state where it needs an event to continue, or until it finishes its execution. When a thread enters a wait state or finishes its execution, other threads are given the possibility to execute. This means that all asynchronous events are delivered to the control logic when it is ready to deal with it.
The object model is used as an abstraction of the real objects necessary for the application, like an ISDN-subscriber's terminal, a connection, a subscriber, etc. The objects offer services to the control logic via method calls, for example a method "connect" offered by a connection object. The objects encapsulate data, thereby maintaining their own state. The objects may also communicate with the world outside the process by sending messages to and receiving messages from other processes.
DESCRIPTION OF RELATED ART
In U.S. Pat. No. 5,421,013 an application is a collection of instances of agent classes, each agent class having its own message dispatching function. Multithreading is provided by an application programming interface which contains a master dispatcher process non-preemptively allocating time to individual agents.
In U.S. Pat. No. 5,355,488 a method by which a task once set-up by an application program interface is retained in an idle status after the task is complete. Set-up tasks are maintained in a pool. A task manager, in response to an application work request, initially searches the pool for an idle task corresponding to the task request. If there is a corresponding idle task in the pool, control passes to the application code for execution.
U.S. Pat. No. 5,345,588 discloses a method for providing each thread of execution of a multi-threading digital data processing environment with private copies of each set of initialization data that is required by procedures which are executed in the context of more than one of the threads.
U.S. Pat. No. 5,319,782 discloses synchronizing the dispatching of tasks from a first multitasking operating system with threads of function calls opportunistically dispatched from a second multitasking operating system. The second operating system includes a set of callable resources. A task becomes bound to a thread for the duration of t
REFERENCES:
patent: 5057996 (1991-10-01), Cutler et al.
patent: 5247675 (1993-09-01), Farrell et al.
patent: 5305455 (1994-04-01), Anschuetz et al.
patent: 5319782 (1994-06-01), Goldberg et al.
patent: 5345588 (1994-09-01), Greenwood et al.
patent: 5355488 (1994-10-01), Cox et al.
patent: 5377191 (1994-12-01), Farrell et al.
patent: 5421013 (1995-05-01), Smith
patent: 5517636 (1996-05-01), DeHart et al.
patent: 5574939 (1996-11-01), Keckler et al.
patent: 5606659 (1997-02-01), M.ang.loy
patent: 5630128 (1997-05-01), Farrell et al.
patent: 5652834 (1997-07-01), Jansson
patent: 5870464 (1999-02-01), Brewster et al.
patent: 6247675 (1921-09-01), Farrell et al.
Banankhah Majid A.
Telefonaktiebolaget LM Ericsson
LandOfFree
System for managing internal execution threads does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with System for managing internal execution threads, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and System for managing internal execution threads will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-1164972