Resumption of preempted non-privileged threads with no kernel in

Patent

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

395712, 395678, 395569, G06F 942, G06F 922

Patent

active

058729631

ABSTRACT:
A system and method for context switching between a first and a second execution entity (such as a thread) without having to enter into protected kernel mode. The system includes a memory and a plurality of processors, wherein each of the plurality of processors operates within both a user mode and a protected kernel mode and includes a program counter and a plurality N of registers. The first and second execution entities have user states defined by a program counter value, a context identifier value and N register values. To switch context, an execution entity such as a thread, while in user mode, writes the user state of the first execution entity to memory. It then restores the user state of the second execution entity by writing register values associated with the second execution entity to all but a first register and writing the context identifier value to a context identifier location. The program counter value is then written to the first register and a jump performed to the program counter value stored in the first register while the last remaining register value is loaded to the first register. Each of these steps is performed in user mode; the result is an efficient way of switching from one user thread to the next user thread without entry into kernel space.

REFERENCES:
patent: 5568630 (1996-10-01), Killien et al.
patent: 5590357 (1996-12-01), Intrater et al.
Anderson, T., et al., "The Performance Implications of Thread Management Alternatives for Shared-Memory Multiprocessors", IEEE Trans. on Computers, 38, 1631-1644, (Dec. 1989).
Black, D., "Scheduling Support for Concurrency and Parallelism in the Mach Operating System", Computer, 23, 35-43, (May 1990).
Callahan, D., et al., "A Future-based Parallel Language for a General-purpose Highly-parallel Computer", In: Languages and Compilers for Parallel Computing, David Gelernter, et al., eds., MIT Press, Cambridge, MA, 95-113, (1989).
Dimpsey, R., et al., "Performance Degradation Due to Multiprogramming and System Overheads in Real Workloads: Case Study on a Shared Memory Multiprocessor", 1990 International Conf. on Supercomputing, ACM Press, 227-238, (Jun. 11-15, 1990).
Draves, R., et al., "Using Continuations to Implement Thread Management and Communication in Operating Systems", Operating Systems Review, 25, ACM Press, 122-136, (Oct. 1991).
Eager, D., et al., "Chores: Enhanced Run-Time Support for Shared-Memory Parallel Computing", ACM Trans. on Computer Systems, 11, 1-32, (Feb. 1993).
Girkar, M., et al., "Automatic Extraction of Functional Parallelism from Ordinary Programs", IEEE Trans. on Parallel and Distributed Systems, 3, 166-178, (Mar. 1992).
Lo, S., et al., "A Comparative Analysis of Multiprocessor Scheduling Algorithms", IEEE : 7th International Conf. on Distributed Computing Systems, Berlin, Germany, 356-363, (Sep. 21-25, 1987).
Polychronopoulos, C., "Multiprocessing versus Multiprogramming", Proc.: 1989 International Conf. on Parallel Processing, II-223 to II-230, (Aug. 8-12, 1989).
Scott, M., et al., "Multi-Model Parallel Programming in Psyche", Sigplan Notices, 25, ACM Press, 70-78, (Mar. 1990).
Tucker, A., et al., "Process Control and Scheduling Issues for Multiprogrammed Shared-Memory Multiprocessors", Proc.: 12th ACM Symp. on Operating Systems Principles, 23, Litchfield Park, Arizona, 159-166, (Dec. 3-6, 1989).
Vandevoorde, M., et al., "WorkCrews: An Abstraction for Controlling Parallelism", International J. Parallel Programming, 17, 347-366, (1988).
Zahorjan, J., et al., "Processor Scheduling in Shared Memory Multiprocessors", Proc. 1990 Conf. on Measurement & Modeling of Computer Systems, Boulder, CO, 214-225, (May 22-25, 1990).
Zahorjan, J., et al., "The Effect of Scheduling Discipline on Spin Overhead in Shared Memory Parallel Systems", IEEE Trans. on Parallel and Distributed Systems, 2, 180-198, (Apr. 1991).
Polychronopoulos, C., et al., "nano-Threads: A User-Level Threads Architecture", Technical Report #1295, Center for Supercomputing Research and Development, Univ. of Illinois, 2-22.
Polychronopoulos, C.D., "Auto Scheduling: Control Flow and Data Flow Come Together", Technical Report, Center for Supercomputing Research and Development, Univ. of Illinois, 1-28, (Dec. 1990).

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Resumption of preempted non-privileged threads with no kernel in does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Resumption of preempted non-privileged threads with no kernel in, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Resumption of preempted non-privileged threads with no kernel in will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2070461

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.