[···]
まず金曜に皆さんにご迷惑をお掛けしたことをお詫びさせてください。
金曜日、会社に当日急な私用によって行けなくなる旨を書いたメールを入れたのですが、受け取っていただいたのが月曜になり、自分が欠席する事を誰も把握していない状況になってしまったようです。
申し訳ありませんでした。
さて。
井上さんから、せっかくだから書いてみたら? と言っていただいたので、これまでのカーネル学習の経過を書かせていただきます。
Linux 2.4のカーネルの学習をオライリーの『詳解Linuxカーネル』で学習していたが、プロセス指向のminixを勧められ、現在は『(Tanenbaum著)オペレーティングシステム』から知識を吸い取っています。
当初の目的は、スケジューリングをソースレベル(実装レベル)で理解する事でした。過去形ですが、現在も変わっておりません。しかし、道筋はとても蛇行しておりますが。。。
ここ2週間、minixのプロセスについての学習を包括的に行って来ました。幸運な事に、自分は恵まれた環境の中におり、疑問が発生した場合質問に答えてくださる方々がアリエルを含めたくさんおり、とても理解の助けになります。
口上はいいからさっさと本題に入れという声が聞こえてきそうなので、できるだけ簡潔に理解した内容をまとめさせていただきます。
プロセスについては、実装レベル(ソースレベル)については至っていませんが、プロセスとカーネルに関する事の概要は理解しました。特に、危険領域の排他制御、様々なスケジューリングについて理解したと思っています。
これについては、とっても時間をかけておりますが、おかげで今まで理解が曖昧だった、ユーザープロセスとカーネルプロセスの切替えや、プロセスにおけるカーネルの仕事についてきちんと説明しろと言われた場合、井上さん(ある程度)を納得させる事は出来ると思います。
Tanenbaumさんの本は実に良い本で、OSについての基本理解がとても進みます。そして何より、読んでいて楽しい。今、震災が起きた場合、真っ先にこの本を持って逃げるでしょう。
徐々に実装レベルの話になり、実装する場合、どこで何が呼ばれ、実装する上での仕掛け等のミクロな事に足をすすめはじめます。しかし、一つわかると欲が出てくるもので、曖昧なメモリ管理やファイルシステムの理解を補填する為、実装レベルでの理解を後回しにし、これからしばらくはメモリ管理について学習していこうと思います。
これらの概要の理解は今年十に行い、来年からは実装レベルでの理解に進みたいです。
っと、一足早く来年の抱負を言ってしまいました。
非常に読みづらい文章であったかと思いますが、最後まで読んでいただきありがとうございました。
今後ともよろしくお願い致します。
- Category(s)
- The URL to Trackback this entry is:
- http://dev.ariel-networks.com/Members/ohyama/coreblogentry.2006-10-30.6179676365/tbping