PHY層があらかた動いたので、次はLLCPの準備をしなくてはならない。
まあ、MACもなんかせんと行かんとは思うが、ひっくるめてやらねば。
なぜLLCの実装ではなく準備かというと、API周りが整っていないから。
コマンドのやりとりはそれなりに整えているのだが、呼び出し側がおっかなびっくりな感じだ。
でもまあ、これはLLCとしてどういうシーケンスになるかがわからないと、やる気にならん。
それより先に、やらんといかんのがある。
非同期化だ。
今のは普通のコマンド用になっているので、コマンド送信とレスポンス受信が1つのAPIになっている。
しかしターゲット系(だけじゃないかもしれんが)のコマンドは、ACKまで返して相手待ちになるものがある。
そうすると、そのコンテキストはブロックされてしまうので、困る。
ほら、キャンセルとかできんではないか。
とはいえ、非同期化するということは、なにがしかOSの力を借りなくてはならない。
Androidとcygwinで動けばいいから、pthreadでやってしまえばいいのだが。。。めんどくさい。
最終的にはAndroidで使うつもりだから、Javaと親和性がいい形がいいとは思う。
思うが、私があんまりJavaをわかっていないので、どうするのがいいかわからん。
JNIがねー、ネックなのよ。
JavaからCを呼び出すのはやれるんだけど、CからJavaのコールバックがよくわからん。
それにそもそも、Cを呼び出すのだって、javahを使うパターンや、なんかヘルパーっぽいものを使うパターンがあって、何がいいのかいっちょんわからん。
つまり・・・勉強不足ということだ。
実はLLCPの準備で一番必要なのは、Java/JNIの勉強なのかもしれん。
0 件のコメント:
コメントを投稿
コメントありがとうございます。
スパムかもしれない、と私が思ったら、
申し訳ないですが勝手に削除することもあります。
注: コメントを投稿できるのは、このブログのメンバーだけです。