Ex Parte 5694604 et al - Page 76


                Appeal 2007-2127                                                                                  
                Reexamination Control No. 90/006,621                                                              
                executing incremental portions of their respective subtasks in different parts                    
                of the program.  As noted in the claim interpretation, this is consistent with                    
                the '604 patent's description of multithreading ('604 patent, col. 1,                             
                lines 45-53) and with independent claims 1, 18, 22, and dependent claim 25,                       
                which recite that the threads alternate and perform successive incremental                        
                portions of their respective subtasks, meaning that both threads are executing                    
                at the same time except for the threads switching back and forth.                                 
                       The "interrupt" operation disclosed in the 1982 application does not                       
                involve "concurrent execution" of the compiler main program and the editor                        
                interrupt service routine.  The main program is stopped when an interrupt                         
                occurs and does not begin running again until the interrupt service routine                       
                program finishes.  Thus, the main program can never "execute" at the same                         
                time as the interrupt service routine.  This is an example of "sequential                         
                operation" because the main program can never run after the interrupt                             
                service routine has only executed part of its task.  If the editor interrupt                      
                service routine could be interrupted by second editor routine, its execution                      
                also would be completely halted until the second editor routine finished.  By                     
                contrast, in a "preemptive multithreaded" system, a first thread runs for a                       
                timeslice, a second thread runs for a timeslice, the first thread runs again for                  
                another timeslice, and so on in alternating fashion.  Thus, both threads                          
                execute at the same time, but for the need to alternate access to the CPU.                        
                This operation is possible because of the design of the operating system.                         
                Hardware interrupts as disclosed in the 1982 application were well known,                         
                as evidenced by De Jong infra, but were never termed "multithreading."                            
                       For this additional reason, we find that there is no written description                   
                of "preemptive multithreading" in the 1982, 1985, or 1990 applications, and,                      

                                                       76                                                         

Page:  Previous  69  70  71  72  73  74  75  76  77  78  79  80  81  82  83  Next

Last modified: September 9, 2013