comparison TaskManager/kernel/schedule/Scheduler.cc @ 970:33630c6ff445

change pipeline and TaskArray fast
author Yutaka Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
date Thu, 26 Aug 2010 20:38:06 +0900
parents e015a4e5e4b0
children 18a548c337cb
comparison
equal deleted inserted replaced
968:0a6c5ee89a4c 970:33630c6ff445
72 // Pipeline Stage 72 // Pipeline Stage
73 SchedTaskBase* task2 = new SchedNop(); 73 SchedTaskBase* task2 = new SchedNop();
74 SchedTaskBase* task3 = new SchedNop(); 74 SchedTaskBase* task3 = new SchedNop();
75 // main loop 75 // main loop
76 do { 76 do {
77 task3->write(); 77
78 task2->exec(); 78 task3->write();
79 task1->read(); 79 task1->read();
80 task2->exec();
81
80 delete task3; 82 delete task3;
81 83
82 task3 = task2; 84 task3 = task2;
83 task2 = task1; 85 task2 = task1;
84 task1 = task1->next(this, 0); 86 task1 = task1->next(this, 0);
87
85 } while (task1); 88 } while (task1);
86 89
87 delete task3; 90 delete task3;
88 delete task2; 91 delete task2;
89 } 92 }
121 } 124 }
122 125
123 void 126 void
124 Scheduler::dma_wait(uint32 mask) 127 Scheduler::dma_wait(uint32 mask)
125 { 128 {
129 //printf("%d\n",mask);
126 connector->dma_wait(mask); 130 connector->dma_wait(mask);
131 }
132
133 void
134 Scheduler::dma_wait(uint32 mask, int cmd)
135 {
136 connector->dma_wait(mask,cmd);
127 } 137 }
128 138
129 void 139 void
130 Scheduler::dma_loadList(ListDataPtr list, void *buff, uint32 mask) 140 Scheduler::dma_loadList(ListDataPtr list, void *buff, uint32 mask)
131 { 141 {