<?xml version="1.0" encoding="utf-8" ?><rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://purl.org/rss/1.0/" 
			xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" 
			xmlns:cc="http://web.resource.org/cc/" xml:lang="ja">
<channel rdf:about="http://rosara.blog4.fc2.com/?xml">
<title>メモ帳</title>
<link>http://rosara.blog4.fc2.com/</link>
<description>メモ帳</description>
<dc:language>ja</dc:language>
<items>
<rdf:Seq>
<rdf:li rdf:resource="http://rosara.blog4.fc2.com/blog-entry-21.html" />
<rdf:li rdf:resource="http://rosara.blog4.fc2.com/blog-entry-20.html" />
<rdf:li rdf:resource="http://rosara.blog4.fc2.com/blog-entry-19.html" />
<rdf:li rdf:resource="http://rosara.blog4.fc2.com/blog-entry-17.html" />
<rdf:li rdf:resource="http://rosara.blog4.fc2.com/blog-entry-16.html" />
</rdf:Seq>
</items>
</channel>
<item rdf:about="http://rosara.blog4.fc2.com/blog-entry-21.html">
<link>http://rosara.blog4.fc2.com/blog-entry-21.html</link>
<title>objcopyとobjdump</title>
<description> とある不具合発生時に陥るループから抜け出す条件をコンソールからパスワードの入力とする修正対応にパスワードをオブジェクトに埋め込む必要があった。で、調べるとojcopyでリンクできるファイルに変換するらしい。objcopy -I [file形式] -O [file形式] -B [arch] --rename-section [元]=[変更]入力ファイル 出力ファイル-Iの後は入力ファイルの形式。今回はパスワードなので「abcdef」とか書いたテキストだったのでbinaryと指定
 </description>
<content:encoded>
<![CDATA[ とある不具合発生時に陥るループから抜け出す条件を<br />コンソールからパスワードの入力とする修正対応に<br />パスワードをオブジェクトに埋め込む必要があった。<br /><br />で、調べるとojcopyでリンクできるファイルに変換するらしい。<br /><br /><strong>objcopy -I [file形式] -O [file形式] -B [arch] --rename-section [元]=[変更]入力ファイル 出力ファイル</strong><br /><br />-Iの後は入力ファイルの形式。<br />今回はパスワードなので「abcdef」とか書いたテキストだったのでbinaryと指定。<br /><br />-Oの後は出力ファイルの形式。<br />実装環境がelf32だったのでelf32-littleと指定。<br /><br />-Bの後はアーキテクチャ指定。<br />実装アーキテクチャがmepだったのでmepと指定。<br /><br />--rename-sectionはセクション名を変えたいときに指定。<br />[元]は元のセクション名。自環境では.dataだった。<br />[変更]は変更したいセクション名。お好みで。<br /><br />サポートされている形式なんかは<br /><strong>objcopy --help</strong>で<br /><strong>objcopy: サポートされているターゲット: elf32-i386 a.out-i386-linux efi-app-ia32 elf32-little elf32-big srec symbolsrec tekhex binary ihex trad-core</strong><br />て感じで出力される。<br /><br />出来たファイルを確認するのは<br /><strong>objdump</strong><br />で。<br /><br /><strong>objdump -t -s 出力ファイル名</strong><br /><br />-tはシンボルテーブルを出力する。 <br />-sはセクションのデータを出力する。<br /><br /><i>[file名]:     file format elf32-mep-little<br /><br />SYMBOL TABLE:<br />00000000 l    d  .data        00000000<br />00000000 g       .data        00000000 _binary_[file名]_start<br />00000008 g       .data        00000000 _binary_[file名]_end<br />00000008 g       *ABS*  00000000 _binary_[file名]_size<br /><br /><br />Contents of section .data:<br /> 0000 12345678 9abcdef0             xxxxxxxxxx</i><br /><br />こんな感じで、ファイルフォーマット、シンボルテーブル、格納されているデータが出力されるので<br />これを使ってobjcopyで作成したファイルの確認をする。<br /><br />で、この出来たファイルをリンクしてコードで使用すると<br />シンボルテーブルの_binary_[file名]_start、_binary_[file名]_end、_binary_[file名]_sizeが使用できる。<br /><br />例<br />abcdefとデータを書き込んだtest.binテキストファイルを用意。<br />objcopy -I binry -O elf32-mep-little -B mep test.bin test.obj<br />でリンク可能なファイル生成する。<br />ソースファイルで<br /><br /><i>#include 略<br /><br />extern char  _binary_test_bin_start[];<br />extern char  _binary_test_bin_end[];<br />extern char  _binary_test_bin_size[];<br /><br />int main(void){<br />略<br />}</i><br /><br />て感じで外部参照することで使用することが出来る。<br />_binary_test_bin_startには「abcdef」の先頭アドレス<br />_binary_test_bin_endには「abcdef」の終端アドレス<br />_binary_test_bin_sizeには「abcdef」のサイズ<br />がそれぞれ参照できます。<br /><s>ちなみに、自分の環境ではファイル終端文字も含まれたので<br />終端アドレス＋１、サイズ＋１だったのでそこらへん注意。</s><br />test.binに改行コード入れてました。。。なので、＋１でないです。 ]]>
</content:encoded>
<dc:subject>Linux</dc:subject>
<dc:date>2009-05-26T11:02:57+09:00</dc:date>
<dc:creator>mkt</dc:creator>
<dc:publisher>FC2-BLOG</dc:publisher>
</item>
<item rdf:about="http://rosara.blog4.fc2.com/blog-entry-20.html">
<link>http://rosara.blog4.fc2.com/blog-entry-20.html</link>
<title>sns_ctxメモ</title>
<description> BOOL state = sns_ctx();呼び出し元がタスクコンテキストか判定する。true  : タスクコンテキストfalse :  非タスクコンテキストget_tidでタスクコンテキストからの呼び出しかを判定しているコードを書いていたがエラーケースでloc_cpu掛けた状態で呼び出されて、get_tidがコンテキストエラーをはいてしまい、難儀していたが、判定だけならこれを使えばよかった。
 </description>
<content:encoded>
<![CDATA[ BOOL state = sns_ctx();<br />呼び出し元がタスクコンテキストか判定する。<br />true  : タスクコンテキスト<br />false :  非タスクコンテキスト<br /><br />get_tidでタスクコンテキストからの呼び出しかを判定しているコードを書いていたが<br />エラーケースでloc_cpu掛けた状態で呼び出されて、get_tidがコンテキストエラーを<br />はいてしまい、難儀していたが、判定だけならこれを使えばよかった。<br /><br /> ]]>
</content:encoded>
<dc:subject>μITRON</dc:subject>
<dc:date>2009-05-15T11:35:10+09:00</dc:date>
<dc:creator>mkt</dc:creator>
<dc:publisher>FC2-BLOG</dc:publisher>
</item>
<item rdf:about="http://rosara.blog4.fc2.com/blog-entry-19.html">
<link>http://rosara.blog4.fc2.com/blog-entry-19.html</link>
<title>#errorメモ</title>
<description> #error エラーメッセージでコンパイル時に記載した箇所を通ったらエラーになる。例）#ifndef TEST_DEFINE#error TEST_DEFINE定義が必須#endifTEST_DEFINEを定義してないケースを想定していないようなコードを書く場合はソースに上記のように埋め込んでおいて、コンパイル時にエラーで気づかせる。と良いらしい。
 </description>
<content:encoded>
<![CDATA[ #error エラーメッセージ<br />でコンパイル時に記載した箇所を通ったらエラーになる。<br /><br />例）<br />#ifndef TEST_DEFINE<br />#error TEST_DEFINE定義が必須<br />#endif<br /><br />TEST_DEFINEを定義してないケースを想定していないようなコードを書く場合は<br />ソースに上記のように埋め込んでおいて、コンパイル時にエラーで気づかせる。<br />と良いらしい。 ]]>
</content:encoded>
<dc:subject>Linux</dc:subject>
<dc:date>2009-05-15T11:27:27+09:00</dc:date>
<dc:creator>mkt</dc:creator>
<dc:publisher>FC2-BLOG</dc:publisher>
</item>
<item rdf:about="http://rosara.blog4.fc2.com/blog-entry-17.html">
<link>http://rosara.blog4.fc2.com/blog-entry-17.html</link>
<title>4/28 メモ</title>
<description> Web巡回久多良木氏が描く「ネットテレビ」と東芝のものづくり　麻倉式テレビ最新事情（下）仕事用プロジェクト管理ソフトウェアRedmine 日本語情報 (unofficial)+Subversionとの連携
 </description>
<content:encoded>
<![CDATA[ <strong>Web巡回</strong><br /><a href="http://it.nikkei.co.jp/digital/news/index.aspx?n=MMITxw001027042009&amp;landing=Next" target="_blank" title="久多良木氏が描く「ネットテレビ」と東芝のものづくり　麻倉式テレビ最新事情（下）">久多良木氏が描く「ネットテレビ」と東芝のものづくり　麻倉式テレビ最新事情（下）</a><br /><br /><strong>仕事用</strong><br /><a href="http://redmine.jp/" target="_blank" title="プロジェクト管理ソフトウェアRedmine 日本語情報 (unofficial)">プロジェクト管理ソフトウェアRedmine 日本語情報 (unofficial)</a><br />+<a href="http://redmine.jp/tech_note/subversion/" target="_blank" title="Subversionとの連携">Subversionとの連携</a> ]]>
</content:encoded>
<dc:subject>後で読む</dc:subject>
<dc:date>2009-04-28T12:57:56+09:00</dc:date>
<dc:creator>mkt</dc:creator>
<dc:publisher>FC2-BLOG</dc:publisher>
</item>
<item rdf:about="http://rosara.blog4.fc2.com/blog-entry-16.html">
<link>http://rosara.blog4.fc2.com/blog-entry-16.html</link>
<title>4/24 web巡回</title>
<description> 東芝、４―６月も一時帰休　約２万人が最長10日間中国、ＩＴソースコード強制開示強行へ…国際問題化の懸念任天堂、「Ｗｉｉ」向けに番組配信　５月から発表カウントダウン「ＰＳＰ２」　勝利のカギはオープン度
 </description>
<content:encoded>
<![CDATA[ <a href="http://www.nikkei.co.jp/news/main/20090424AT3K2400V24042009.html" target="_blank" title="東芝、４―６月も一時帰休　約２万人が最長10日間">東芝、４―６月も一時帰休　約２万人が最長10日間</a><br /><br /><a href="http://www.yomiuri.co.jp/atmoney/news/20090424-OYT1T00053.htm" target="_blank" title="中国、ＩＴソースコード強制開示強行へ…国際問題化の懸念">中国、ＩＴソースコード強制開示強行へ…国際問題化の懸念</a><br /><br /><a href="http://it.nikkei.co.jp/digital/news/index.aspx?n=NN001Y553%2023042009&amp;landing=Next" target="_blank" title="任天堂、「Ｗｉｉ」向けに番組配信　５月から">任天堂、「Ｗｉｉ」向けに番組配信　５月から</a><br /><br /><a href="http://it.nikkei.co.jp/digital/news/index.aspx?n=MMITew000024042009" target="_blank" title="発表カウントダウン「ＰＳＰ２」　勝利のカギはオープン度">発表カウントダウン「ＰＳＰ２」　勝利のカギはオープン度</a> ]]>
</content:encoded>
<dc:subject>後で読む</dc:subject>
<dc:date>2009-04-24T08:49:17+09:00</dc:date>
<dc:creator>mkt</dc:creator>
<dc:publisher>FC2-BLOG</dc:publisher>
</item>
</rdf:RDF>