Mercurial > hg > Members > kono > Cerium
annotate TaskManager/Fifo/MainScheduler.cc @ 640:a909c50081c2
SimpeTask on Cell worked.
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Fri, 20 Nov 2009 23:12:34 +0900 |
parents | 8cc609285bbe |
children | 07bd86a352eb |
rev | line source |
---|---|
109 | 1 #include <stdlib.h> |
2 #include <string.h> | |
3 #include "MainScheduler.h" | |
4 #include "FifoDmaManager.h" | |
5 #include "error.h" | |
6 | |
7 void | |
8 MainScheduler::init_impl(void) | |
9 { | |
10 connector = new FifoDmaManager(); | |
11 } | |
12 | |
13 void | |
14 MainScheduler::set_mailManager(MailManager *m) | |
15 { | |
16 ((FifoDmaManager*)connector)->mailManager = m; | |
17 } | |
18 | |
19 /** | |
321 | 20 * PPE TaskManager から TaskList やその他コマンドが格納された |
21 * メールキューが送られてくる | |
109 | 22 */ |
23 void | |
24 MainScheduler::send_mailList(MailQueuePtr mail_list) | |
25 { | |
26 ((FifoDmaManager*)connector)->mail_recvQueue = mail_list; | |
27 ((FifoDmaManager*)connector)->mail_sendQueue = NULL; | |
28 } | |
29 | |
30 /** | |
321 | 31 * PPE TaskManager が、 Task の終了やその他コマンドが格納された |
32 * メールキューを受け取る | |
109 | 33 */ |
34 MailQueuePtr | |
35 MainScheduler::recv_mailList(void) | |
36 { | |
640
a909c50081c2
SimpeTask on Cell worked.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
635
diff
changeset
|
37 MailQueuePtr m = ((FifoDmaManager*)connector)->mail_sendQueue; |
a909c50081c2
SimpeTask on Cell worked.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
635
diff
changeset
|
38 ((FifoDmaManager*)connector)->mail_sendQueue = 0; |
a909c50081c2
SimpeTask on Cell worked.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
635
diff
changeset
|
39 return m; |
109 | 40 } |
41 | |
42 | |
43 | |
44 /** | |
321 | 45 * メインメモリ領域を allocate する。 |
46 * Fifo バージョンだから、まあ普通に malloc でおk | |
109 | 47 */ |
48 void | |
49 MainScheduler::mainMem_alloc(int id, int size) | |
50 { | |
629
8843edf37c0e
Cell 64 bit tried, but not yet worked.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
321
diff
changeset
|
51 mainMemList[id] = (memaddr)allocate(size); |
109 | 52 } |
53 | |
640
a909c50081c2
SimpeTask on Cell worked.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
635
diff
changeset
|
54 /* end */ |