ほげほげ日記スマートフォン用の表示で見るほげほげ日記この広告は、90日以上更新していないブログに表示しています。TECHNOLOGY)に載っていた方法。objcopyを使えばファイルのデータをELFのセクションとして埋め込むことができる。以下のコード(binary.c)ではbindataセクションにデータを埋め込むことを想定しており、そのアドレスを__start_bindataによって参照している。0;}埋め込みたいデータを用意。binary.datオブジェクトファイルを作成。-Wallbindataセクションにbinary.datを埋め込んだオブジェクトファイルbinary_tmp.oを生成。binary_tmp.obindataというセクションができている。specific)bindataセクションのオフセットは0x150となっているのでそこを見てみる。World"が含まれている。最後にデータを埋め込んだオブジェクトファイルから実行形式を作成。Worldこれを利用して関数を埋め込んでそれを呼び出すということをやってみる。以下の関数を埋め込む。b;}オブジェクトファイルを作成。func.cセクション情報から.textセクションはオフセット0x40から始まっていることがわかる。retqこれは以下から、実際にオフセット0x40の位置にあることがわかる。|(略)そこで以下のように関数ポインタが埋め込み先のセクションの先頭からオフセット0x40の位置を指すようにしておく。0;}さっきと同じようにしてファイルを埋め込む。埋め込んだセクションを実行可能にしておく必要がある。binary以下のように埋め込んだ関数を実行できていることがわかる。セクション名一覧を表示ELF形式のファイルには先頭にELFヘッダーがある。折り返さず表示-Wオプションを付ける。E...2016-04-07再帰なしのマージソートC言語で。変数を減らせないものか。#inclu</stdio.h>...2016-03-27GDBGDBの基本的な操作メモ。サンプル用のプログラム。月別アーカイブ参加グループテクノロジーはてなブログをはじめよう!yktwwwさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。