comparison TaskManager/Cell/CellTaskManagerImpl.cc @ 479:5bda98b0b56d

Double Linked List base TaskQueue
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Mon, 05 Oct 2009 10:36:37 +0900
parents 926d6aff886c
children 4896dffad67c
comparison
equal deleted inserted replaced
478:c9127aec8c9c 479:5bda98b0b56d
51 for (int i = 0; i < machineNum; i++) { 51 for (int i = 0; i < machineNum; i++) {
52 flag_sendTaskList[i] = 1; 52 flag_sendTaskList[i] = 1;
53 } 53 }
54 // PPE 側の管理をする Manager 54 // PPE 側の管理をする Manager
55 ppeManager = new FifoTaskManagerImpl(machineNum); 55 ppeManager = new FifoTaskManagerImpl(machineNum);
56 // 大半のTaskQueueInfoは、共有される
56 ppeManager->init(new PpeScheduler, this); 57 ppeManager->init(new PpeScheduler, this);
57 } 58 }
58 59
59 void 60 void
60 CellTaskManagerImpl::append_activeTask(HTaskPtr task) 61 CellTaskManagerImpl::append_activeTask(HTaskPtr task)
183 * 次に実行する TaskList のアドレスや、終了コマンドを送る 184 * 次に実行する TaskList のアドレスや、終了コマンドを送る
184 */TaskListPtr 185 */TaskListPtr
185 CellTaskManagerImpl::mail_check(MailQueuePtr mail_list) 186 CellTaskManagerImpl::mail_check(MailQueuePtr mail_list)
186 { 187 {
187 // PPE Scheduler からの mail check 188 // PPE Scheduler からの mail check
188 ppeManager->mail_check(mail_list, &waitTaskQueue); 189 ppeManager->mail_check(mail_list);
189 190
190 do { 191 do {
191 unsigned int data; 192 unsigned int data;
192 193
193 // SPE Scheduler からの mail check 194 // SPE Scheduler からの mail check