Patent
1994-01-28
1996-02-06
Treat, William M.
395375, 395737, G06F 946
Patent
active
054902720
ABSTRACT:
A method and apparatus for subdividing a thread's processing cycles among a set of threadlets or regions within a thread or process. This is achieved through instructions in the application code which are interpreted by the operating system. The beginning and ending of a threadlet is through the "Begin Threadlet" and "End Threadlet" instructions. A segmented stack is utilized to separately hold that part of the stack belonging to each threadlet. The programmer must know within the application code places where the data contents of the registers do not merit saving or is saved in memory. This provides the user with an opportunity to switch to a different activity without saving registers. The user identifies this to the operating system by a special instruction called "SWITCHIR". The SWITCHIR instruction tells the operating system not to save registers. Therefore, within the same thread, the operating system will keep on executing a threadlet until it encounters this instruction. Upon encountering the SWITCHIR instruction, the operating system will save the program counter and stack pointer in a threadlet control block and execute subsequently encountered threadlets.
REFERENCES:
patent: 4445173 (1984-04-01), Pilat et al.
patent: 4562538 (1985-12-01), Berenbaum et al.
patent: 5008812 (1991-04-01), Bhandarkar et al.
patent: 5142677 (1992-08-01), Ehlig et al.
patent: 5291608 (1994-03-01), Flurry
patent: 5367676 (1994-11-01), Katori
patent: 5390329 (1995-02-01), Gaertner et al.
patent: 5421014 (1995-05-01), Bucher
patent: 5428779 (1995-06-01), Allegrucci et al.
patent: 5430841 (1995-07-01), Tannenbaum et al.
patent: 5438680 (1995-08-01), Sullivan
Drakes et al., "Using Continuations to Implement Thread Management and Communication in Operating Systems", Operating Systems Review, vol. 25, No. 5, ACM, pp. 122-136.
Hieb et al., "Continuations and Concurrency", Proceedings of the Second ACM SIGPLAN Symposium on Principles & Practice of Parallel Programing, Seattle, Washington, Mar. 14-16, 1990, pp. 128-136.
Dybrig et al., "Engines from Continuations", Computer Languages, vol. 14, No. 2, Pergamon, 1989, pp. 109-123.
Francis et al., "Self-scheduling and Execution Threads", Proceedings of the Second IEEE Symposium on Parallel and Distributed Processing 1990, Dec. 9-13, 1990, pp. 586-590.
Daniel C. McCrackin, "The Synergistic Effect of Thread Scheduling and Caching in Multithreaded Computers", Digest of Papers, Compcon Spring '93, Feb. 22-26, 1993, IEEE, pp. 157-164.
Compcon Spring '93, Feb. 22-26, 1993, IEEE, pp. 157-164.
Leon Alkalaj, "Performance of Multithreaded Execution in a Shared Memory Multiprocessor", Proceedings of the Third IEEE Symposium on Parallel and Distributed Processing, Dec. 2-5, 1991, pp. 330-333.
Mathis Harry M.
Parikh Shrikant N.
Duffield Edward H.
International Business Machines - Corporation
Mims Jr. David A.
Treat William M.
LandOfFree
Method and apparatus for creating multithreaded time slices in a does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Method and apparatus for creating multithreaded time slices in a, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method and apparatus for creating multithreaded time slices in a will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-2181734