Mercurial > hg > Members > masakoha > masa
comparison Cerium_IO/Cerium_IO_memo.txt @ 102:bb7a0778747b
add 6/4 seminor memo
author | Masataka Kohagura <kohagura@cr.ie.u-ryukyu.ac.jp> |
---|---|
date | Wed, 04 Jun 2014 11:26:23 +0900 |
parents | e64b09046d20 |
children |
comparison
equal
deleted
inserted
replaced
101:3c96cbfa309c | 102:bb7a0778747b |
---|---|
1 ------------------------------------------------------------------- | |
2 2014/06/03 (Tue) | |
3 [seminor] | |
4 * アドレス固定しないでも実装できます | |
5 * ceriumは絶対アドレス関係ないから | |
6 * サジェスチョンでしかない、書いてないはず | |
7 * map_fixidで書く必要はない | |
8 * mmapしたアドレスがどこにmappingされるかは置いといて | |
9 * それを正しく渡せればいいのだから、fixidは関係ない | |
10 * どのアドレスを指定しているのか | |
11 * blocked_read | |
12 * 実メモリでないところをmmapしようとしてたら駄目 | |
13 * どこの固定アドレスを指定してるかの問題がある | |
14 * mmapなのにreadtaskを使う意味はあるのかどうか | |
15 * 今までのmmapはどこに書いていた? | |
16 * mmapをダブルバッファリングでやってほしい | |
17 * ダブルバッファリングとは | |
18 * mmapを2つやって、片っ方の仕事が終わったら解放して、 | |
19 * もう一度mmapで割り当てる、これを繰り返す感じ | |
20 * 2つのメモリマップ領域を交互に使う | |
21 * 片っ方が処理を終える頃には片っ方が実行できるみたいな | |
22 * file mmapってのを配列にして | |
23 * 要素1を読んでるタスクに対して読み込みwaitforにひっかけておいて | |
24 * 全部おわったらダブルバッファリングの切り替えを行う | |
25 * どのタイミングでいつだれがダブルバッファリングを動かすのか | |
26 * readのばあいはruntaskにいれたよね | |
27 * vSyncの場合 | |
28 * 単なる待ち合わせの場合 | |
29 画面を書いている間、表示しているみたいな | |
30 表示と書き込みが別にあるってのがダブルバッファリングのきも | |
31 readの場合は、mmapが動かない | |
32 条件分岐があってー・・・。 | |
33 | |
34 * runtask16の場合 | |
35 * readのタスクに対してかけてる | |
36 * メモリマップしたやつにwaitforかけていくけども | |
37 * 全部にかけちゃうと量的に多い | |
38 * readのところにいれてできるのか? | |
39 * できなくはな・・・い・・・? | |
40 * wのtaskのところでアドレスを振わけるのがめんどくさい | |
41 * ダブルバッファリングしてくればこの辺りをいじらなくて済む | |
42 * file -> mmapとは | |
43 * ダブルバッファリングをしているとこいつを直接書き換えられる割と楽になる! | |
44 * file mmap、next mmap用意 | |
45 * 全部終わったらnext mmapに切り替える | |
46 * そのときnext mmapがあくから〜〜〜 | |
47 * create taskしてるときに | |
48 * readの方のwait for(run taskに対するwait for) | |
49 * wait for h exec | |
50 * run task16にかかっている | |
51 * 16ずつやっていく | |
52 * 最後にひっかかるから、そこでバッファを切り替え | |
53 * 問題はlogicを自分で理解して書けるのかどうかって点 | |
54 | |
1 ------------------------------------------------------------------- | 55 ------------------------------------------------------------------- |
2 2014/05/11 (Sun) | 56 2014/05/11 (Sun) |
3 [memo] | 57 [memo] |
4 void *mmap(void *addr, size_t len, int prot, int flags, int fildes, off_t off); | 58 void *mmap(void *addr, size_t len, int prot, int flags, int fildes, off_t off); |
5 | 59 |