Mercurial > hg > Game > Cerium
changeset 56:4d554afb22b6
*** empty log message ***
author | gongo |
---|---|
date | Sat, 16 Feb 2008 19:00:53 +0900 |
parents | 9a9c7bef1988 |
children | 1f8a23cdeec3 |
files | TaskManager/Changelog |
diffstat | 1 files changed, 24 insertions(+), 11 deletions(-) [+] |
line wrap: on
line diff
--- a/TaskManager/Changelog Sat Feb 16 18:54:52 2008 +0900 +++ b/TaskManager/Changelog Sat Feb 16 19:00:53 2008 +0900 @@ -1,3 +1,17 @@ +2008-02-16 Wataru MIYAGUNI <gongo@cr.ie.u-ryukyu.ac.jp> + + * tag: beta3 + ダブルバッファリングを追加し、まあなんとか動いてるんじゃない?って + ところまでですが、所詮 Fifo バージョンなので、 + そろそろ Cell を書き上げて、並列にちゃんと動いてるか確かめないとね + + * add: kernel/ppe/DmaBuffer.cpp + ダブルバッファリング用に作ったんだけど、 + せっかくなので、DMA は、このオブジェクト(が持つ二つの領域)でしか + 行えないようにする。ってのでどうでしょう。って話を先生としました。 + 並列処理だし、ダブルバッファリングがデフォでいいでしょう。 + というか、したくなければ swap_buffer とかしなければおk。 + 2008-02-11 Wataru MIYAGUNI <gongo@cr.ie.u-ryukyu.ac.jp> * add: Test/simple_render @@ -6,7 +20,7 @@ 処理してコピーして、を繰り返してるだけなんだけど まあ動いてる気がするのでいいんじゃないでしょうか。 - + 2008-02-10 Wataru MIYAGUNI <gongo@cr.ie.u-ryukyu.ac.jp> * tag: beta1 @@ -27,7 +41,7 @@ (追記) 解決しました 単に read/write buffer のサイズが足りないだけだった。アホスwww まあ辱めの為の下は残しておこう - + まだ cvs に commit してないけど、chiaki が書いた、 DataPack 対応の simple_render に TasKManager を組み込んでみた。 といっても、OSっぽく書いたんじゃなく、今は @@ -37,8 +51,8 @@ TaskManager が悪いのか、simple_render が悪いのか。 この TaskManager、ある部分での malloc 系の問題に敏感だなあ。 まあそうでなかったらバグの探しようも無いし、良いっちゃー良いんだが。 - - + + 2008-02-08 Wataru MIYAGUNI <gongo@cr.ie.u-ryukyu.ac.jp> * add: kernel/ppe/SymTable.cpp @@ -54,7 +68,7 @@ int fd = get_fd("Sum"); void *addr = get_address(fd); - + table には "Sum" と "Draw" っていう二つのシンボルが登録されている。 例えば、ユーザ(カーネル?)が "Sum" ってシンボルにアクセスしたい場合、 まずは get_fd で "Sum" に対する、file descripter を返す。 @@ -74,8 +88,7 @@ OS の昨日として、 fopen とかと同じ使い方もできるじゃない! - - + * Todo: task が task を生成する際の処理 今まで、 task が行う作業は、演算のみを行うような 単純な実装に決め打ちされているわけです。 @@ -106,7 +119,7 @@ init2 と finish には依存関係がある (init2 が終わったら finish) init2 の中で、sum1 と sum2 というタスクが作られる。 sum1 と sum2 にも依存関係はある (sum1 が終わったら sum2) - + 今の実装だと、タスクが終了して初めて次のタスクへ行く。 まあ当たり前なんだけど、例えばそのタスクの中で 新たにタスクが作られた場合、そのタスクが終了するまでは @@ -122,7 +135,7 @@ 大丈夫かなと思いつつ、もし spe を1つしか使わない設定だったら微妙。 要するに、タスク中でタスクが作られる場合の処理を考えないとね。 - + 2008-02-07 Wataru MIYAGUNI <gongo@cr.ie.u-ryukyu.ac.jp> * memo: プログラミングの姿勢 @@ -142,6 +155,7 @@ - 起動デバイスから Boot loader を起動 + BIOS によって、認識できるファイルシステムが違う(だっけ?) + ファイルシステムのどこに Boot Loader があるか知っている + + grub, grub2, lilo, kboot などがある - Boot Loader が kernel を起動 + ネットワークブートの場合、TCP/IP や ネットワークデバイス(イーサとか?)のドライバを持ってる必要がある @@ -180,7 +194,7 @@ > task->init(id); > task->printID(id); } - + placement new では、delete の必要は無い。 その中で新たに allocate してるなら必要かもしれないが。 速度比較は以下。no_new が placement new で、ln_new が new/delete 。 @@ -218,4 +232,3 @@ ln_new: time: 27.100296(msec) I/O に左右され過ぎ。まあそんなもんだろうけどさ。 -