以下のメールがこのMLに投稿されました。 すでにアーカイブはされていますが、一応再度ポストしておきます。 From: Midori Sugaya <doly@dcl.info.waseda.ac.jp> To: jp-kernelnewbies@kernelnewbies.org Cc: doly@dcl.info.waseda.ac.jp Date: Fri, 14 Dec 2007 15:10:47 +0900 Subject: About the CABI project ---- JP kernelnewbies の皆様, 菅谷と申します.CABIというリソース管理システムの開発を行って おり, kernelML にプロジェクトを紹介したいと思っていますが, どのように紹介すべきかアドバイス頂けると助かります. 一応,下記の内容で, kernelnewbies にメールを出そうと思っています. ご意見いただければ幸いです. ---------------------------------------------------------------------------- Hello everyone, I am working on a research project that I would like to present to the kernel ML for eventual integration into the mainstream kernel. Could you tell me what the requirements are to send a patch to the LKML? Here is a proposal of our work, in order to explain the intention of our development. ----------------------------------------------------------------------------- CABI (Common Accounting and Blocking Interfaces Systems). CABI provides a resource control mechanism for embedded Linux. These days, resource control in Linux is one of the hot Linux kernel topics along with containers. Compared to containers, our control algorithm is more fine grained to meet the requirements of embedded system. Moreover, our system can be suitable to the develpper who wants to use the resource control system lightweight and independent from the basic scheduler. Our system provides a lightweight implementation and uses independent resource management from the main scheduler. These are the favorable features for embedded systems. CABI system provides Accounting Object (AO), an abstraction of our system that is the interface of a process group of processes. It stores parameters from the users. The accounting system allows to operate the AO based on parameters. If they are bind to an AO, they are controlled under the parameters set in the AO. For example, in CPU resource control, if a developer sets the parameters for AO such as period is set to 100ms and execution to 60ms, The result is that 60% of cpu is given to the AO group. <-- period (100ms) --> <-- period (100ms) --> |----------------------|----------------------| |<----------->| execution (60ms) If the AO reaches the limit for the execution within that period, an event is triggered. User can select the event as signal or block. This notification is very useful to prevent malicious attacks. For periodic tasks, the system provides a general framework for controlling their resource under periodic constraints. We also have a memory management system based on almost the same concept. Our memory system shares the architecture with cpu one. The user can set the parameter for an accounting object which controls the group of processes, such as 100MB or 500MB within the whole physical memory as a constraint. ----------------------------------------------------------------------------- In embedded system, there are sensitive resource requirements, especially for CPU and memory with fine grained control. For example, a video player that should process 20-60 frames within a second. If we want a multimedia system of quality, we need to think about resource management for the application to reserve the cpu and memory. Now even the general-purpose operating system need to support embedded system application's constrains more precisely, even in overload condition. Our patches are uploaded on sourceforge in Japan: https://sourceforge.jp/projects/cabi And our project pages are located here: http://osrg.dcl.info.waseda.ac.jp/~doly/cabi/ This is little bit out of date, since we also have memory extension now. ---------------------------------------------- Midori SUGAYA School of Science and Engineering Waseda University 3-4-1 Okubo, Shinjuku-ku, Tokyo 169-8555, Japan --------------------- Original Message Ends -------------------- ---------------------------------------------------- 早稲田大学理工学術院 分散ユビキタスコンピューティング/中島研究室 菅谷みどり(助手) 〒169-8555 新宿区大久保3-4-1 理工学研究科 61号館505室 TEL: 03-5286-3185 http://www.dcl.info.waseda.ac.jp/home/index-ja.html
On Fri, 14 Dec 2007 16:15:03 +0900 (JST), tshibata wrote:
以下のメールがこのMLに投稿されました。 すでにアーカイブはされていますが、一応再度ポストしておきます。
From: Midori Sugaya <doly@dcl.info.waseda.ac.jp> To: jp-kernelnewbies@kernelnewbies.org Cc: doly@dcl.info.waseda.ac.jp Date: Fri, 14 Dec 2007 15:10:47 +0900 Subject: About the CABI project ----
JP kernelnewbies の皆様,
菅谷と申します.CABIというリソース管理システムの開発を行って おり, kernelML にプロジェクトを紹介したいと思っていますが, どのように紹介すべきかアドバイス頂けると助かります.
Linux カーネルメーリングリストに情報を出す前には、以下などを参考にして もらいたいと思います。 カーネルソースファイルに添付されているドキュメントの内、以下を読んでお くことをお勧めします。 - Documentation/HOWTO (日本語版は Documentation/ja_JP/HOWTO) - 上で参照さえている SubmittingPatches, SubmitChecklist, CodingStyle などに記述されている規約類 これらは日本語にも翻訳されているので、www.linux.or.jp/JFを参照して ください。ざっとパッチを拝見しましたが、日本語らしきコメントなどが ありましたが、これはおおかたの人には読めないので困るのではないかな と思いました。 それから、sourceforge.jp にサイトを持つのは結構ですが、日本語のインター フェイスでは日本語が読めない人に取ってはダウンロードも困難なのではない かなと思いました。 また、MLが公開されておらず、フィードバックをする方法も見当たらない感じ がしました。 パッチもどれをダウンロードすればよいのか、どのパッチをカーネルに統合し たいのかが、sourceforge をみても判りにくかったのですが、どうでしょうか? 一応、v1.3 と v1.2 のものを見てみましたが、v1.3 はどうも量が少なくて、 v1.2 に追加されたもののように見受けられましたが、一目でそれが判る感じ はしないように思いました。 一般的には、1つのアーカイブをダウンロードしてパッチすれば、ビルドでき るようにすると良いのではないかと思います。 また、これらのパッチは最新カーネルに対応していないので、多くの人が試す のに困るのではないかと思います。 細かい話しもしてしまいましたが、このままではカーネルのどこに何を追加し たいのかを、さっと見つけるのは難しいようなので、少し整理したらどうでしょ うか? また、カーネルコミュニティに受け付けてもらうために考えるべきことを 説明した資料としては、 http://jp.kernelnewbies.org/FrontPage の「オープンソースやコミュニティの理解」の部分に junio hamano 氏や吉藤さん、Randy Dunlap氏のプレゼンなどがあります。 これらには、パッチを小さなピースに分割することなどの経験上のノウハウが ありますので、参考になると思います。 現実的には スケジューラについては 2.6.23 でCFS が入ったり、それに伴っ ていろいろは変化があります。その流れの中で 現在のCABI をそのまま統合す るべきなのか、それともバラバラにして考え方を統合していくのか、などを 考えていく必要がありそうに思います。この話しを先にするべきか、それとも パッチを整理していくのが先なのか、全体のコードの量や修正する範囲を明ら かにしてから、考えてみたらどうでしょうか?
一応,下記の内容で, kernelnewbies にメールを出そうと思っています. ご意見いただければ幸いです.
----------------------------------------------------------------------------
Hello everyone,
I am working on a research project that I would like to present to the kernel ML for eventual integration into the mainstream kernel. Could you tell me what the requirements are to send a patch to the LKML? Here is a proposal of our work, in order to explain the intention of our development.
----------------------------------------------------------------------------- CABI (Common Accounting and Blocking Interfaces Systems).
CABI provides a resource control mechanism for embedded Linux. These days, resource control in Linux is one of the hot Linux kernel topics along with containers. Compared to containers, our control algorithm is more fine grained to meet the requirements of embedded system. Moreover, our system can be suitable to the develpper who wants to use the resource control system lightweight and independent from the basic scheduler. Our system provides a lightweight implementation and uses independent resource management from the main scheduler. These are the favorable features for embedded systems.
CABI system provides Accounting Object (AO), an abstraction of our system that is the interface of a process group of processes. It stores parameters from the users. The accounting system allows to operate the AO based on parameters. If they are bind to an AO, they are controlled under the parameters set in the AO. For example, in CPU resource control, if a developer sets the parameters for AO such as period is set to 100ms and execution to 60ms, The result is that 60% of cpu is given to the AO group.
<-- period (100ms) --> <-- period (100ms) --> |----------------------|----------------------| |<----------->| execution (60ms)
If the AO reaches the limit for the execution within that period, an event is triggered. User can select the event as signal or block. This notification is very useful to prevent malicious attacks. For periodic tasks, the system provides a general framework for controlling their resource under periodic constraints.
We also have a memory management system based on almost the same concept. Our memory system shares the architecture with cpu one. The user can set the parameter for an accounting object which controls the group of processes, such as 100MB or 500MB within the whole physical memory as a constraint.
-----------------------------------------------------------------------------
In embedded system, there are sensitive resource requirements, especially for CPU and memory with fine grained control. For example, a video player that should process 20-60 frames within a second. If we want a multimedia system of quality, we need to think about resource management for the application to reserve the cpu and memory. Now even the general-purpose operating system need to support embedded system application's constrains more precisely, even in overload condition.
Our patches are uploaded on sourceforge in Japan: https://sourceforge.jp/projects/cabi
And our project pages are located here: http://osrg.dcl.info.waseda.ac.jp/~doly/cabi/
This is little bit out of date, since we also have memory extension now.
---------------------------------------------- Midori SUGAYA School of Science and Engineering Waseda University 3-4-1 Okubo, Shinjuku-ku, Tokyo 169-8555, Japan
菅谷です, 柴田さん,アドバイス有難うございます, 一応,今回はパッチを送る前に,我々のプロジェクトの紹介をしたいという 目的もあったのですが,パッチ,MLなどの準備が揃った上でないと難しい事 が事が分かりました.課題が明確になりました. 確かに The perfect patch http://www.zip.com.au/~akpm/linux/patches/stuff/tpp.txt や, Linux kernel patch format http://linux.yyz.us/patch-format.html の情報は大変参考になります. 指摘いただいたように,パッチの体裁や,言語に関する変更など,kernel post までの不足点はいろいろありそうです; また,CABI はスケジューラに依存していないため,特にスケジューラの変 更に追随しないでよいというメリットもあるのですが,パッチ適用時のバー ジョンの違いとの対応について,説明に配慮が足りないという事が分かりま した. これから一つ一つ早速検討して準備した上で,再度ポストしたいと思います. また,パワー不足については ML で積極的に呼びかけもしてゆきたいと思い ます. Thanks for the advices. The URL's references are very useful for us to prepare our patches for posting. Not only english, but also the Japanese. Now I understand to post the patch to the kernel, not only refine the patches, but also prepare the ML in fully english and comments inside the codes in english and formating them. Thanks for listing the problems for our development, we will try to do step by step. Please notify us if there are anything except for the comments. Thanks! ---------------------------------------------- Midori SUGAYA School of Science and Engineering Waseda University 3-4-1 Okubo, Shinjuku-ku, Tokyo 169-8555, Japan
菅谷さん、 原田@TOMOYO Linuxプロジェクトです。はじめまして。 (出遅れてしまいました・・・) 日経Linuxの1月号とネットワークセキュリティExpert 7の2誌で メインラインの記事が掲載されています。後者については、 TOMOYO Linuxのメインライン挑戦で得られたノウハウについても 書いてありますので、ご参考になれば幸いです。 全体的には、「あまり失敗を気にしない」ことだと思います。 実際、TOMOYO LInuxでも大いに失敗しています。(^^; On 12/17/2007 5:36 PM, Midori Sugaya wrote:
菅谷です,
柴田さん,アドバイス有難うございます,
一応,今回はパッチを送る前に,我々のプロジェクトの紹介をしたいという 目的もあったのですが,パッチ,MLなどの準備が揃った上でないと難しい事 が事が分かりました.課題が明確になりました.
確かに The perfect patch http://www.zip.com.au/~akpm/linux/patches/stuff/tpp.txt や, Linux kernel patch format http://linux.yyz.us/patch-format.html の情報は大変参考になります.
指摘いただいたように,パッチの体裁や,言語に関する変更など,kernel post までの不足点はいろいろありそうです;
-- 原田季栄 (Toshiharu Harada) haradats@nttdata.co.jp
菅谷です, 原田さん,コメントどうも有難うございます.
日経Linuxの1月号とネットワークセキュリティExpert 7の2誌で メインラインの記事が掲載されています。後者については、 TOMOYO Linuxのメインライン挑戦で得られたノウハウについても 書いてありますので、ご参考になれば幸いです。
ご紹介有難うございます. ところで,日経Linuxの1月号は,2008年版の↓下記でよろしいでしょうか? http://itpro.nikkeibp.co.jp/linux/index.html ネットワークセキュリティExpert 7 は http://www.amazon.co.jp/%E3%83%8D%E3%83%83%E3%83%88%E3%83%AF%E3%83%BC%E3%82%... ですね. 最近はWebでバックナンバーが購入できるので,助かります. #以前は技術本のバックナンバー購入は在庫が手堅く残っている秋葉の 本屋さんへ行っていました.
全体的には、「あまり失敗を気にしない」ことだと思います。 実際、TOMOYO LInuxでも大いに失敗しています。(^^;
そういって頂けると救われます. ノウハウを共有できることがML の魅力ですね. 途中,ML を通じていろいろお伺いする事もあるかと思いますが, ぜひ宜しくお願い致します. 最近は鈍感力という言葉もはやっているようですのでその心意気で 取り組んで行きたいと思います.ちなみに,鈍感力の本の著者であ る渡辺氏は,誠実さと鈍感力があると鬼に金棒だと説いております. 失敗しても,皆様の目も厳しくないことを祈るばかりです.
On 12/17/2007 5:36 PM, Midori Sugaya wrote:
菅谷です,
柴田さん,アドバイス有難うございます,
一応,今回はパッチを送る前に,我々のプロジェクトの紹介をしたいという 目的もあったのですが,パッチ,MLなどの準備が揃った上でないと難しい事 が事が分かりました.課題が明確になりました.
確かに The perfect patch http://www.zip.com.au/~akpm/linux/patches/stuff/tpp.txt や, Linux kernel patch format http://linux.yyz.us/patch-format.html の情報は大変参考になります.
指摘いただいたように,パッチの体裁や,言語に関する変更など,kernel post までの不足点はいろいろありそうです;
---------------------------------------------- Midori SUGAYA School of Science and Engineering Waseda University 3-4-1 Okubo, Shinjuku-ku, Tokyo 169-8555, Japan
菅谷さん、 On 12/17/2007 6:20 PM, Midori Sugaya wrote:
ところで,日経Linuxの1月号は,2008年版の↓下記でよろしいでしょうか? http://itpro.nikkeibp.co.jp/linux/index.html ネットワークセキュリティExpert 7 は http://www.amazon.co.jp/%E3%83%8D%E3%83%83%E3%83%88%E3%83%AF%E3%83%BC%E3%82%... ですね.
そうです。(まさにぴったりのタイミングです。TOMOYOのときに こんな雑誌が出ていれば・・・)
#以前は技術本のバックナンバー購入は在庫が手堅く残っている秋葉の 本屋さんへ行っていました.
全体的には、「あまり失敗を気にしない」ことだと思います。 実際、TOMOYO LInuxでも大いに失敗しています。(^^;
そういって頂けると救われます.
これは、安心させようと思っていっているわけではなく 本当にそうなんです。気にする分だけ損です。
ノウハウを共有できることがML の魅力ですね. 途中,ML を通じていろいろお伺いする事もあるかと思いますが, ぜひ宜しくお願い致します.
MLも良いですが、YLUGカーネル読書会やCELFのJamboreeはお勧めです。 (たまにひどい目に遭いますが、なんてそれはTOMOYOの場合ですが(笑)) http://tree.celinuxforum.org/CelfPubWiki/JapanTechnicalJamboree18 http://www.ylug.jp/modules/pukiwiki/ # Jamboree18はTOMOYOチームも参加予定です。
最近は鈍感力という言葉もはやっているようですのでその心意気で 取り組んで行きたいと思います.ちなみに,鈍感力の本の著者であ る渡辺氏は,誠実さと鈍感力があると鬼に金棒だと説いております.
まずは鈍感力からです! (〜_〜)
失敗しても,皆様の目も厳しくないことを祈るばかりです.
パッチなんかはあまり作り込んだりチューニングしてから出すよりは、 「ま、こんなもんか」という感じで投げ込んだら良いと思います。 -- 原田季栄 (Toshiharu Harada) haradats@nttdata.co.jp
participants (3)
-
Midori Sugaya -
Toshiharu Harada -
Tsugikazu Shibata