タグ

elfに関するjjzakのブックマーク (6)

  • linuxの話 (ELF ローダ) — ありえるえりあ

    Recent entries sysfs tips 02 ohyama 2010-09-09 sysfs tips ohyama 2010-09-02 Haskell で周波数スペクトルを得る ohyama 2010-07-29 Haskell で線形識別関数の学習を行う ohyama 2010-07-19 Haskell で逆行列を求める ohyama 2010-07-16 Recent comments Re:vim に lisp 機能をつける t.mimori 2010-12-16 Re:Haskell で周波数スペクトルを得る H.OHYAMA 2010-08-01 Re:lkml でお勉強 (その1-1) Hiroyasu OHYAMA 2009-08-21 Re:lkml でお勉強 (その1-1) kosaki 2009-08-20 Re:vim に lisp 機能をつける o

  • elf_exec関数

    elf_exec関数は、引数として渡されるKernelのELF Headerを解析し、Kernelのセグメントやセッションを読込みメモリー上に展開します。 プログラム ヘッダ テーブルを参照して、TEXTまたはDATAセグメントをメモリ上に展開する。 セクション ヘッダ テーブルを参照して、SYMBOLまたはSTRINGテーブルをメモリ上に展開する。 ELFヘッダをメモリ上に展開する。

  • [binary] Hack #5 ELFフォーマット

    via Binary Hack #5 ELF入門 バイナリの勉強。一日目は、ELF入門からやった。 はじめてのバイナリ入門なため間違いがあるかもしれません。 ELF とは実行可能バイナリやオブジェクトファイルなどのフォーマットを規定したフォーマットである。 ELFは先頭4バイトが 0x7F 0x45 0x4C 0x46 のようなマジックナンバーを持つ。 また、fileコマンドで確認できる。 [4296]% file /bin/ls /bin/ls: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.2.0, dynamically linked (uses shared libs), for GNU/Linux 2.2.0, stripped [4297]% file /bin/cat /bi

  • OS作成 - elfローダ編 - ウォンツテック

    Linkers & Loadersを斜め読みしました。例によって理解度は3%くらいなのですが、自分には知らない事が盛りだくさん(ライブラリのメジャー、マイナーバージョン規則やダイナミックリンクの手法等)あったので収穫は大きいです。ただ特定のフォーマット(elf等)のローダを書くときにこのが資料として十分かというとちょっと足りない気がします。IBMのOS/360のオブジェクト構造とか歴史的な読み物としてはおもしろいのですが実践的には使えません(汗。 再配置が発生しないコードならほぼ今やってるCOM形式のようなノリで書けると思いますが、そのまえにちょっとmonaのコードを探索してみます。 mona/core/elf_server/main.cpp static void MessageLoop() { for (MessageInfo msg;;) { if (Message::receiv

    OS作成 - elfローダ編 - ウォンツテック
  • ELF Format

    a.out形式はUNIXで長い間使われてきたが、Unix System Vの登場時に、クロスコンパイルや動的リンクなどに、対応するためにより良い形式が必要だとして、ELF(Executable and Linking Format)が作られました。 ELFは、再配置可可能オブジェクト・実行可能・共有オブジェクト・コアという4種類のファイルがあます。 再配置可可能オブジェクト 再配置可可能ファイルは、アセンブラやコンパイラが作成する、オブジェクトファイル 実行可能 実行可能は、再配置が全て完了し、シンボルも解決してある(実行時に解決される、共有ライブラリのシンボルは除く) "lsコマンド"のような実行可能なファイル 共有オブジェクト リンカ用のシンボル情報と実行時に使われるコードを格納する、共有ライブラリ等のファイル コア ELF ファイルフォーマットを使っている実行可能ファイルはELFヘッ

  • オブジェクトファイルについて

    はじめに Binary Hacks の校正大会にて、あーセクションの話が少し説明不足で不親切だね、っていう話が出ました。あった方がいいかな、と思ったので、宣伝を兼ねて、ここに私が知っていることを書いておきます。 内容としては、 Binary Hacks に比べてかなりいい加減に書いています。例えば調べものは一切せずに書きます。著者の中で最もいい加減な私がよりもいい加減に書いたということで、 Binary Hacks の全ての文章はこれよりはレベルが上、というようなサンプルだと思って下さい。宣伝を兼ねるということで、これ単体ではフォローせずに Binary Hacks のここを見てね、というポインタだけ示す部分が多いです。『』で囲まれた文字列は Binary Hacks の中のハック名に対応しています。 書いてる最中なので、気が向いたら内容を追加します。 詳しい参考文献としては Linke

  • 1