Electrical computers and digital processing systems: multicomput – Computer-to-computer data routing – Least weight routing
Patent
1997-04-03
2000-12-26
Banankhah, Majid A.
Electrical computers and digital processing systems: multicomput
Computer-to-computer data routing
Least weight routing
709102, G06F 900
Patent
active
061674230
ABSTRACT:
In a computing environment containing a plurality of state machines that communicate by passing messages on connections, a construct called a clique controls access into a set of the state machines by worker threads that deliver the messages arriving on the connections. A clique is a collection of connections into the set of the state machines that have a common relationship for which concurrency isolation is required. Each clique has a message queue and a guard for marking the clique as busy or not busy, The guard prevents more than one thread at a time from delivering messages that arrive on connections in the clique to the set of state machines, thus ensuring concurrency isolation of the set of state machines. Messages that arrive on a connection in the clique while the clique is marked as busy are queued in the clique's message queue. The queued messages are delivered one at a time by a same worker thread that is currently busy in the clique. This operation can save a thread switch when a state machine generates an outgoing message that results in an immediate incoming message to the state machine, such as a buffer full message, and thus makes efficient use of the worker threads.
REFERENCES:
patent: 4807111 (1989-02-01), Ogle et al.
patent: 5016166 (1991-05-01), Van Loo et al.
patent: 5179702 (1993-01-01), Spix et al.
patent: 5247675 (1993-09-01), Farrell et al.
patent: 5313638 (1994-05-01), Ogle et al.
patent: 5339415 (1994-08-01), Strout II et al.
patent: 5421013 (1995-05-01), Smith
patent: 5434975 (1995-07-01), Allen
patent: 5463625 (1995-10-01), Yasrebi
patent: 5493728 (1996-02-01), Solton et al.
patent: 5504898 (1996-04-01), Klein
patent: 5519867 (1996-05-01), Moeller et al.
patent: 5555368 (1996-09-01), Orton et al.
patent: 5555388 (1996-09-01), Shaughnessy
patent: 5560029 (1996-09-01), Papadopulous et al.
patent: 5574862 (1996-11-01), Marianetti, II
patent: 5598562 (1997-01-01), Cutler et al.
patent: 5603063 (1997-02-01), Au
patent: 5630136 (1997-05-01), Davidson et al.
patent: 5675796 (1997-10-01), Hodges et al.
patent: 5742822 (1998-04-01), Motomura
patent: 5787281 (1998-07-01), Schreiber et al.
F.J. Burkowski, G.V. Cormack, G.D.P. Dueck, "Architectural Support for Synchronous Task. Communication" SIGARCH Computer Architecture News, vol. 17, No. 2, Apr. 1989, PP 40-53.
Brian N. Bershad, Thomas E. Anderson, "User-Level Interprocess Communication for Shared Memory Multi-processors" ACM Transaction on Computer Systems, vol. 9, No. 2, May 1991, pp. 175-198.
Tucker (Editor), The Computer Science and Engineering Handbook, pp. 1058-1077 and 1725-1746 (1996).
King, A., "Inside Windows.RTM. 95, " Microsoft Press, pp. 296-303 (1994).
Black, D.L., "Scheduling Support for Concurrency and Parallelism in the Mach Operating System," Computer, pp. 35-43 (May 1990).
King, A., "Inside Windows.RTM. 95, " Microsoft Press, pp.103-150 (1994).
Abadi et al., "A Calculus for access Control in Distributed Systems, " pp. iii-viii and 1-44 (Feb. 1991).
Abadi, "Baby Modula-3 and a Theory of Objects," SRC Research Report, pp. iii-iv and 1-36 (Feb. 1993).
Birrell et al., "Synchronization Primitives for a Multiprocessor: A Formal Specification," SRC Research Report, pp. i-iii and 1-20 (Aug. 1987).
Birrell, "An Introduction to Programming with Threads," SRC Search Report, pp. 1-33 (Jan. 1989).
Broy et al., "Can Fair Choice be Added toDijkstra's Calculus," SRC Research Report, pp.1-17 (Feb. 1989).
Burstall et al., "A Kernal Language for Modules and Abstract Data Types," SRC Research Report, pp. 2-51(Sep. 1984).
Cardelli, "A Polymorphic lambda-calculus with Type:Type," SRC Research Report, pp. 1-27 (May 1986).
Cardelli et al., "Modula-3 Report (revised)," SRC Research Report, pp. 1-71 (Nov. 1989).
DeTreville, "Experience with Concurrent Garbage Collectors for Modula-2+." SRC Research Report, pp. 1-54 (Nov. 1990).
Ellis et al., "Real-time Concurrent Collection on Stock Multiprocessor," SRC Research Report, pp. 1-24 (Feb. 1988).
Horning et al., "Some Useful Modula-3 Interfaces," SRC Research Report, pp. iii-vii and 1-103 (Dec. 1993).
Lamport, "A Fast Mutual Exclusion Algorithm," SRC Research Report, pp. iii and 1-12, (Nov. 1985).
Lamport, "A Simple Approach to Specifying Concurrent Systems," SRC Research Report, pp.iii-viii and 1-39 (Dec. 1986).
Lamport, "Conurrent Reading and Writing of Clocks," SRC Research Report, pp. iii-vii and 1-7 (Apr. 1988).
Lamport, "How to Make a Correct Mulitprocess Program Execute Correctly on a Multiprocessor," SRC Research Report, pp. iii-vii and 1-10 (Feb. 1993).
Lamport, "On Interprocess Communication," SRC Research Report, pp. iii-viii and 1-50 (Dec. 1985).
Lamport, "win and sin: Predicate Transformers for Currency," SRC Research Report, pp. iii-ix and 1-43 (May 1987).
McJones et al. "Evolving the UNIX System Interface to Support Multithreaded Programs, " SRC Research Report, pp. 1-80 (Sep.1987).
Nelson, "A Generalization of Dijkstra's Calculus," SRC Research Report, pp. 1-56 (Apr. 1987).
Owicki, "Experience with the Firefly Multiprocessor Workstation," SRC Research Report, pp. 1-17 (Sep. 1989).
Roberts et al., "WorkCrews: An Abstraction for Controllong Parallelism," SRC Research Report, pp. 1-17 (Apr. 1989).
Rovner et al., "On Extending Modula-2 for Building Large, Integrated Systems," SRC Research Report, pp. 1-45 (Jan. 1985).
Schroeder et al., "Performance of Firefly RPC," pp. 1-15 (Apr. 1989).
Thacker et al., "Firefly: AMultiprocessor Workstation," SRC Research Report, pp. 1-17 (Dec. 1987).
Al-Ghosein Mohsen M.
Chopra Gagan
Helland Patrick James
McCline Matthew Clark
Banankhah Majid A.
Microsoft Corporation
LandOfFree
Concurrency control of state machines in a computer system using does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Concurrency control of state machines in a computer system using, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Concurrency control of state machines in a computer system using will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-1006123