[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[b-free: 1833] Re: B-Free に X を載せる (Re: B-Free OS の解説ほん)



/* In [b-free: 1788] Re: B-Free に  Xを載せる (Re: B-Free OS の解説ほん)
   Takanori Hayashi <takanori@ohsaki.meidensha.co.jp> Wrote: */

   |yashi> ヘー、マウスイベントとかって別ルートなんですね(って勉強してね>自分)
   |
   |マウスやキーボードなどの入力は核のイベント管理でイベントとして
   |生成されます。通常はウィンドウマネージャの機能を通して受け取り
   |ますが、アプリケーションが直接に核イベントを受け取ることも機能
   |的には制限されていなかったはずです。本当は低レベルの機能を直接
   |アプリケーションが使用するのは良くないですけどね。
   |# 使用できること自体まずいような気もするけど(^_^;)

イベントの流れをちょっとだけ追ってみました。
プロハンを見るかぎり、どうやら BTRON1 だとイベントは
ウインドウマネージャを一切経由せずに
直接アクティブプロセスに送られるみたいです。
ウインドウマネージャがイベントを把握できるのは、
プロセスがwget_evt()を使ってイベントを取り出した時だけです。

とすると、アプリケーションが wget_evt()を使わずに
get_evt()でイベントを取ってしまうと、ウインドウの切り替えが
一切できなくなってしまいますね。(実際に確かめた訳ではないです)


なんだかすごい構造。これってもしかしたら
できるかぎり「マネージャ」ではなく「ライブラリ」になるように
仕様を決めたんじゃないかな、と思ったりもします。

===
  落合秀俊   名古屋大学工学部情報工学科
  h953046b@ice.nuie.nagoya-u.ac.jp