Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

ashのソースコード

164 views
Skip to first unread message

YuichiroTATEIWA

unread,
May 11, 2006, 4:19:29 AM5/11/06
to linux...@linux.or.jp
立岩と申します.


linuxのシェルで最軽量のものを探しています.
調べたところ,ashというシェルがもっとも軽いようです.

現在ashのソースコードを探しているのですが,どなたかダウンロードできる
サイトをご存じでしょうか?

よろしくお願いします.

Kawasaki Tatsuo

unread,
May 11, 2006, 4:34:20 AM5/11/06
to linux...@linux.or.jp
こんにちは、川崎と申します。

ashは確かinitrd内で使われていますよね。
source rpm形式でもよろしければ

http://rpmfind.net/linux/rpm2html/search.php?query=ash

からダウンロードできるので、インストールしてから
tarファイルを展開(あるいは rpmbuild -bp)してみてはいかがでしょうか?


On 5/11/06, YuichiroTATEIWA <u-...@nifty.com> wrote:

> 現在ashのソースコードを探しているのですが,どなたかダウンロードできる
> サイトをご存じでしょうか?

--
Tatsuo Kawasaki
kawa...@wwing.net
kaw...@gmail.com (web mail)

Takeshi Kusune

unread,
May 11, 2006, 5:30:56 AM5/11/06
to
YuichiroTATEIWA wrote:
> linuxのシェルで最軽量のものを探しています.
> 調べたところ,ashというシェルがもっとも軽いようです.
>
> 現在ashのソースコードを探しているのですが,どなたかダウンロードできる
> サイトをご存じでしょうか?

Google 先生には聞いてみましたか?

「ash shell」でお伺いをたててみたところ、
http://sparemint.atariforge.net/sparemint/html/packages/ash.html
を教えてくれましたよ。

ここに source RPM package の link があるので、
これを取得して展開すれば source が入っているはず。

ところで、「最軽量」という意味が若干あいまいなように思いますが、
実行ファイルのサイズのことでしょうか?
それともメモリ占有量のことでしょうか?

小さい分機能なども違ってくると思いますし、
ash は確か segmentation fault が発生するバグもあった記憶があります。
(以前一時期使っていました)

bash の minimal-config でもそれなりに小さくなりますけど、
そういうのと要求する内容の何が違うのかとか、そういう点は明確なのでしょうか?
--
Takeshi Kusune <kus...@sfc.wide.ad.jp>

to-be-co

unread,
May 12, 2006, 8:21:17 PM5/12/06
to linux...@linux.or.jp
Nagae Tatsuya 福岡市@西区です。

最軽量の意味で、もしメモリの問題であれば

「busybox」という、コマンド全体でメモリを節約
すると言うのもあります。

情報が整理されているURL
http://www.skyfree.org/jpn/embedded/

では。


Takashi SHIRAI

unread,
May 13, 2006, 2:43:01 AM5/13/06
to
 しらいです。

In Message-Id <44630427...@sfc.wide.ad.jp>
Takeshi Kusune <kus...@sfc.wide.ad.jp>さんwrites:


> YuichiroTATEIWA wrote:
> > linuxのシェルで最軽量のものを探しています.
> > 調べたところ,ashというシェルがもっとも軽いようです.

 何をどう調べた結果なのか判るともう少し話を進め易いんですけ
どね。
 Linux も色々あって、Fedora Core だと 3 までは rpm にあるよ
うですね。Vine も rpm で用意されています。Debian だと「dash」
という名前で deb 化されてるようです。
 ただ、「最軽量」という根拠はどこにも載ってませんねー。


> ところで、「最軽量」という意味が若干あいまいなように思いますが、
> 実行ファイルのサイズのことでしょうか?
> それともメモリ占有量のことでしょうか?

 shell みたいな単純なものだと、ファイルサイズとメモリ占有量
は大体比例するでしょうね。独立事象になるのは CPU 使用率でし
ょうか。これが大きいと処理が遅く感じるかも知れません。

 Almquist shell (ash) よりも小さいものとしては Bourne shell
(bsh) がありますね。4.3BSD-Reno 辺りの source から build す
ると、ash の大体半分くらいのファイルサイズになります。
 同じことをさせた場合の CPU 使用率も ash の半分くらいですが、
余り複雑な script を実行させると却って CPU 使用率が上がりま
すね。単純過ぎてその分作業の最適化が甘いんでしょう。


> bash の minimal-config でもそれなりに小さくなりますけど、
> そういうのと要求する内容の何が違うのかとか、そういう点は明確なのでしょうか?

 まー、この手の質問者に情報提供を期待しても、自分自身で整理
し切れてないことが多いので、聞かれたことだけに答えておいた方
が無難なのかも知れません :-)

しらい たかし

Takeshi Kusune

unread,
May 13, 2006, 10:57:11 AM5/13/06
to
やっぱり shell の話になるとしらいさんですね。:-)

Takashi SHIRAI wrote:
>> ところで、「最軽量」という意味が若干あいまいなように思いますが、
>> 実行ファイルのサイズのことでしょうか?
>> それともメモリ占有量のことでしょうか?
>
>  shell みたいな単純なものだと、ファイルサイズとメモリ占有量
> は大体比例するでしょうね。独立事象になるのは CPU 使用率でし
> ょうか。これが大きいと処理が遅く感じるかも知れません。

あー確かにそうですね。
あまり深く考えてなかったので思いついたのをならべてみましたが、
独立じゃないもの並べてもしょうがないですね。

>  Almquist shell (ash) よりも小さいものとしては Bourne shell
> (bsh) がありますね。4.3BSD-Reno 辺りの source から build す
> ると、ash の大体半分くらいのファイルサイズになります。

この source って現在入手できますかね?
ちょっと調べたかんじでは公開されてないように思うのですけど、
全体としてではなく Bourne shell 単体で配布されてるのでしょうか。

>> bash の minimal-config でもそれなりに小さくなりますけど、
>> そういうのと要求する内容の何が違うのかとか、そういう点は明確なのでしょうか?
>
>  まー、この手の質問者に情報提供を期待しても、自分自身で整理
> し切れてないことが多いので、聞かれたことだけに答えておいた方
> が無難なのかも知れません :-)

まあそれはそうなのですけど、次ステップの例を示してみたつもりで。

それにしても ash のソース、ものすごくきったないですね…
目がくさりそう。
--
Takeshi Kusune <kus...@sfc.wide.ad.jp>

Takashi SHIRAI

unread,
May 13, 2006, 11:42:57 PM5/13/06
to linux...@linux.or.jp
 しらいです。

In Message-Id <4465F39D...@sfc.wide.ad.jp>
Takeshi Kusune <kus...@sfc.wide.ad.jp>さんwrites:
> やっぱり shell の話になるとしらいさんですね。:-)

 そう言えば FDclone の派生物である fdbsh も ash よりは軽い
ようです :-)


> >  Almquist shell (ash) よりも小さいものとしては Bourne shell
> > (bsh) がありますね。4.3BSD-Reno 辺りの source から build す
> > ると、ash の大体半分くらいのファイルサイズになります。
>
> この source って現在入手できますかね?

 昔は権利問題が複雑で当時のテープを持ってる人しか参照出来な
かったんですが、今は PDP-11 の頃からの UNIX source がほぼ全
て一般に公開されています。国内では阪大のミラーが近いかな。
http://www.tuhs.org/archive_sites.html


> ちょっと調べたかんじでは公開されてないように思うのですけど、
> 全体としてではなく Bourne shell 単体で配布されてるのでしょうか。

 source tree の中から /bin/sh だけ抜出す必要があります。見
た目は BournAlgol と呼ばれる ALGOL 風ですが、一応 C で書かれ
ています。
 但し、C90/C99 非対応なんで、何箇所か書換えないと最近の cc
では compile 出来ません。まぁ error message 読めば C かじっ
たことのある人なら機械的に修正出来る程度のものですが。


> それにしても ash のソース、ものすごくきったないですね…
> 目がくさりそう。

 Bourne shell の source は別の意味で汚いですけどね。初めて
読む人は大概ぶったまげます。
 design としては Linux kernel なんかも十分汚いので、他人の
source だから読みにくいんだと自分に言い聞かせてれば、何でも
読めるようになるんじゃないでしょうか。

しらい たかし

YuichiroTATEIWA

unread,
May 18, 2006, 1:18:07 AM5/18/06
to linux...@linux.or.jp
立岩です.


ご教授ありがとうございました.

教えていただいたサイトからashのソースコードを探してみます.
また,fdbshとbusyboxというものは全く知りませんでした.こちらについても,
Googleで検索して勉強してみます.

失礼します.


Takashi SHIRAI <shi...@unixusers.net> wrote:
(2006/05/14 12:42)

0 new messages