Ex Parte 5694604 et al - Page 37


                Appeal 2007-2127                                                                                  
                Reexamination Control No. 90/006,621                                                              
                             frequent opportunities to check the status of all threads.  If the                   
                             time slice of the current thread is exhausted and if another                         
                             thread of equal (or higher) priority is ready to run, the current                    
                             thread is preempted; otherwise it is allowed to continue running.                    
                                    k. Multithreading                                                             
                       Multithreading is the concurrent execution of two or more threads in                       
                the same program.  As described in Custer, Inside Windows NT, page 94:                            
                       [T]here are times when a different approach to concurrency is                              
                       beneficial—namely, multithreaded processes.  As stated previously,                         
                       the term thread refers to the movement of a processor through a                            
                       program's instructions; each thread represents a separate program                          
                       counter.  A multithreaded process has two or more threads (and                             
                       program counters) within a single process, sharing the same address                        
                       space, object handles, and other resources.                                                
                       Concurrent execution of threads in the same program means that, at a                       
                given time, two or more threads in the same program are each executing at                         
                some point between their starting and finishing points.  This is consistent                       
                with the '604 patent's description of multithreading: "The threads may thus                       
                execute incrementally and piecewise with their successive task portions                           
                executed alternately in a mutually interleaved relation and with each thread                      
                executed during its respective series of spaced timeslices interleaved with                       
                the timeslices of at least one other thread" ('604 patent, col. 1, lines 48-53).                  
                The point in the program that each thread is executing is indicated by that                       
                thread's program counter, which is part of the thread's context.                                  






                                                       37                                                         

Page:  Previous  30  31  32  33  34  35  36  37  38  39  40  41  42  43  44  Next

Last modified: September 9, 2013