0
|
1 #include <stdio.h>
|
|
2 #include "CellScheduler.h"
|
|
3 #include "SpeTaskManagerImpl.h"
|
|
4 #include "spu_mfcio.h"
|
|
5 #include "error.h"
|
|
6 #include "SysFunc.h"
|
|
7 #include "SchedNop.h"
|
|
8
|
|
9
|
|
10 extern unsigned char _end[];
|
|
11
|
|
12 SchedExternTask(ShowTime);
|
|
13 SchedExternTask(StartProfile);
|
|
14
|
|
15
|
|
16 int
|
|
17 main(unsigned long long speid,
|
|
18 unsigned long long argc, unsigned long long argv)
|
|
19 {
|
|
20 CellScheduler *c_scheduler;
|
|
21
|
|
22 //const unsigned ls_size = (unsigned)&argc;
|
|
23 //unsigned code_size = (unsigned)&_end;
|
|
24 //unsigned heap_size = ls_size - code_size;
|
|
25
|
|
26 __debug(" ls_size:%10d bytes\n", ls_size);
|
|
27 __debug("code_size:%10d bytes\n", code_size);
|
|
28 __debug("heap_size:%10d bytes\n", heap_size);
|
|
29
|
|
30 TaskManagerImpl *manager = new SpeTaskManagerImpl();
|
|
31
|
|
32
|
|
33 c_scheduler = new CellScheduler();
|
|
34 c_scheduler->init(manager);
|
|
35 c_scheduler->id = (int)argc;
|
|
36
|
|
37 manager->set_scheduler(c_scheduler);
|
|
38
|
|
39 SchedRegister(ShowTime);
|
|
40 SchedRegister(StartProfile);
|
|
41
|
|
42 c_scheduler->run(new SchedNop());
|
|
43
|
|
44 c_scheduler->finish();
|
|
45
|
|
46 return 0;
|
|
47 }
|