Linux

色々使ってサーバサイドから情報を取り出す

やりたいこと サーバ(Linuxならサーバじゃなくても良いけど)でデーモン的な何かが稼動している サーバ側はC/C++で作っている サーバの状態を外部からGUIで確認したい できるだけ手間をかけずに実現したい 複雑なGUIを作らないならHTMLでできそうな感じだっ…

sh-liloアドレスマップ

最近ブートローダ自体に詳しくなってきたので、sh-liloのソースコードを読み直してアドレスマップもどきを起こしてみた。(first.Sとsecond.cから起こした) 全部1枚に収めたせいでごちゃっとしていて見づらいけど、個人的に1枚に書いてないと把握できないの…

RS-232C==調歩同期式?

ずいぶん前に書いたSH7751のシリアル通信コードが正しいかどうかずっと悩んでたんだけど。 http://d.hatena.ne.jp/maminus/20090614/1244989532/ なんか、カーネルソースのdrivers/serial/sh-sci.cと見比べると特にボーレートの設定値が全然違ってて、あれれ…

oprofile環境構築

oprofileのクロスコンパイルは前哨戦だった…orzということで、環境構築編。 /etc/passwd (ユーザID、グループIDは適当) oprofile:x:110:110:oprofile:/dev/oprofile:/bin/sh /etc/group oprofile:x:110: /etc/shadow oprofile:*:10933:0:99999:7::: ディレク…

oprofileクロスコンパイル

とりあえず紆余曲折のあとにoprofileのコンパイルが通ったのでまとめてみた。 crosstool以外に必要だったもの popt zlib libbfd libiberty 手順みたいな何か。 popt-1.14 $> ac_cv_va_copy=yes ./configure --prefix=/hoge/sysroot --build=i386-pc-linux-gn…

libbfdのクロスコンパイル

oprofileのクロスコンパイルでlibbfdが必要って言われて、作ろうとしたらまたはまってしまったorz libbfd自体はbinutilsの一部っぽいんだけど、クロスコンパイラ用のlibbfdはコンパイル環境用にコンパイルされていてターゲット用としては使えないっぽい。(…

configureのbuild、host、targetの違い

crosstoolのログなんかを見ていてようやく理解してきた気がするけど、Linuxとかのパッケージをクロスコンパイルするときにconfigureの引数に--build、--host、--targetをどう指定したら良いのか、自分の中で整理がついてきたんじゃないかと思う。 たぶんこう…

クロスコンパイルだとconfigureでエラーになる件

ちょっと気になることがあったのでoprofileでもかけようと思ってoprofileをクロスコンパイルしようとしたら、libpoptが無いって言われたのでpoptをクロスコンパイルしようとしていつものようにはまってしまった...orz configureしようとすると checking for …

sh-lilo向けのシリアル通信コード

シリアル通信コードを書いてみた。前回7750シリーズのマニュアルって書いたような気がするけど、よく見たら7751シリーズって書いてあった。日記に書くときに間違えた? それはともかく、マニュアルの15.1.1「特長」によると"調歩同期式モード"、"クロ…

sh-lilo

bzImageファイルだけでLinuxを起動できるめどは立ったのでinitrdの調査はいったん終了かな。 L-Box(RE2)をどう起動させるかだけど、今のところそろそろUSBメモリが安くなってきてるのでメインのデータ置き場にはUSBメモリを使う予定。PCMCIAタイプのUSB-IFカ…

カーネル+initrd→RAMDISKに切り替え

USBがmountできなかった理由が判明しました。なんとびっくり。nashのmkdirコマンドは「-p」で途中のディレクトリをすべて作る機能が入ってなかった! nashのソースコードはこんな感じ。 int mkdirCommand(char * cmd, char * end) { char * dir; int ignoreE…

initrd補足

この間の日記に書いた作業の中で打ったコマンドなどを載せておきます。magicファイルの中身 # cpio archives # # Yes, the top two "cpio archive" formats *are* supposed to just be "short". # The idea is to indicate archives produced on machines wi…

カーネル+initrd

実はinitrdはカーネルと合体させてひとつのbzImageにすることができる。 カーネルコンフィグのINITRAMFS_SOURCEに.cpioファイルのパスか開発環境で用意したルートファイルシステムのトップディレクトリを指定すれば良いらしい。(細かいことはDocumentation/e…

initrdとRAMDISK

すでに先週いろいろ試したので忘れないうちに残しておきます。(起動方法が決まるまではL-Boxを使わずにVMWare環境でお試しを続けるつもり)まずLinuxカーネルはコンフィグでBLK_DEV_INITRDをyにするとinitrdを使えるようになります。もともとinitrdは起動処理…

L-Box(RE2)

さっそく今やりかけのこととかを。 手元にL-Box(RE2)という小型サーバ製品があります。 OSはLinuxの2.4系です。購入したのはずいぶん前になりますが、これを2.6系のカーネルに載せかえて コンパイルサーバ ファイルサーバ 実験用Linuxマシン にしたいなぁと…