annotate TaskManager/kernel/ppe/TaskManagerImpl.h @ 507:735f76483bb2

Reorganization..
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Mon, 12 Oct 2009 09:39:35 +0900
parents 1d4a8a86f26b
children 2659376067e8
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3
2356238ebea7 *** empty log message ***
gongo
parents:
diff changeset
1 #ifndef INCLUDED_TASK_MANAGER_IMPL
2356238ebea7 *** empty log message ***
gongo
parents:
diff changeset
2 #define INCLUDED_TASK_MANAGER_IMPL
2356238ebea7 *** empty log message ***
gongo
parents:
diff changeset
3
307
7075842aa155 clean up include
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 109
diff changeset
4 #include "MailManager.h"
7075842aa155 clean up include
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 109
diff changeset
5 #include "ListData.h"
373
eab18aa0c7f6 MemList not working
kazz@kazzone.cr.ie.u-ryukyu.ac.jp
parents: 366
diff changeset
6 #include "Scheduler.h"
475
e083c4ff91c1 BufferManager removed.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 373
diff changeset
7 #include "TaskListInfo.h"
e083c4ff91c1 BufferManager removed.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 373
diff changeset
8 #include "TaskQueueInfo.h"
e083c4ff91c1 BufferManager removed.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 373
diff changeset
9 #include "HTaskInfo.h"
e083c4ff91c1 BufferManager removed.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 373
diff changeset
10
54
90523ccc4dff *** empty log message ***
gongo
parents: 50
diff changeset
11
3
2356238ebea7 *** empty log message ***
gongo
parents:
diff changeset
12 class TaskManagerImpl {
2356238ebea7 *** empty log message ***
gongo
parents:
diff changeset
13 public:
2356238ebea7 *** empty log message ***
gongo
parents:
diff changeset
14
2356238ebea7 *** empty log message ***
gongo
parents:
diff changeset
15 /* variables */
2356238ebea7 *** empty log message ***
gongo
parents:
diff changeset
16 int machineNum;
498
cb5ecfc5aaa3 double linked HTaskInfo/HTask
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 496
diff changeset
17 HTaskInfo *activeTaskQueue;
cb5ecfc5aaa3 double linked HTaskInfo/HTask
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 496
diff changeset
18 HTaskInfo *waitTaskQueue;
475
e083c4ff91c1 BufferManager removed.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 373
diff changeset
19
e083c4ff91c1 BufferManager removed.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 373
diff changeset
20 TaskListInfo *taskListImpl;
e083c4ff91c1 BufferManager removed.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 373
diff changeset
21 TaskQueueInfo *taskQueueImpl;
e083c4ff91c1 BufferManager removed.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 373
diff changeset
22 HTaskInfo *htaskImpl;
507
735f76483bb2 Reorganization..
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 506
diff changeset
23 SchedTask *schdTaskManager;
3
2356238ebea7 *** empty log message ***
gongo
parents:
diff changeset
24
480
46464727d825 TaskQueueInfo initiaization...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 479
diff changeset
25 /* constructor */
46464727d825 TaskQueueInfo initiaization...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 479
diff changeset
26 TaskManagerImpl(int num = 1) ;
46464727d825 TaskQueueInfo initiaization...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 479
diff changeset
27
46464727d825 TaskQueueInfo initiaization...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 479
diff changeset
28 virtual ~TaskManagerImpl() { }
46464727d825 TaskQueueInfo initiaization...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 479
diff changeset
29
3
2356238ebea7 *** empty log message ***
gongo
parents:
diff changeset
30 /* functions */
109
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
31 // system
480
46464727d825 TaskQueueInfo initiaization...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 479
diff changeset
32 virtual void init() = 0;
46464727d825 TaskQueueInfo initiaization...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 479
diff changeset
33 virtual void run() = 0;
498
cb5ecfc5aaa3 double linked HTaskInfo/HTask
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 496
diff changeset
34 virtual void append_activeTask(HTaskPtr);
cb5ecfc5aaa3 double linked HTaskInfo/HTask
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 496
diff changeset
35 virtual void append_waitTask(HTaskPtr);
109
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
36
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
37 void check_task_finish(HTaskPtr task);
480
46464727d825 TaskQueueInfo initiaization...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 479
diff changeset
38 void wakeup_waitTask();
109
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
39
480
46464727d825 TaskQueueInfo initiaization...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 479
diff changeset
40 void systask_init();
109
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
41
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
42 // user
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
43 HTaskPtr create_task(int cmd);
3
2356238ebea7 *** empty log message ***
gongo
parents:
diff changeset
44 void set_task_depend(HTaskPtr master, HTaskPtr slave);
109
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
45 void spawn_task(HTaskPtr);
65
519d24aa7ac8 *** empty log message ***
gongo
parents: 58
diff changeset
46 void set_task_cpu(HTaskPtr, CPU_TYPE);
109
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents: 88
diff changeset
47 virtual void* allocate(int size) = 0;
506
1d4a8a86f26b code_load in read()
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 498
diff changeset
48 virtual void* allocate(int size,int align) = 0;
373
eab18aa0c7f6 MemList not working
kazz@kazzone.cr.ie.u-ryukyu.ac.jp
parents: 366
diff changeset
49 virtual Scheduler* get_scheduler() = 0;
3
2356238ebea7 *** empty log message ***
gongo
parents:
diff changeset
50 };
2356238ebea7 *** empty log message ***
gongo
parents:
diff changeset
51 #endif