ウォンツテック

そでやまのーと

2007-04-20から1日間の記事一覧

リンカスクリプトを使ったことによる不整合が。。 文字列リテラルを以下のように使った場合 char *str = "hogehoge"; コンパイラはこの"hogehoge"を.rodataに置きリンクする時に先頭からの相対アドレスでこの文字列を参照しにいく。しかし先頭にはbootacient…

リンカスクリプトを以下のようにし、bootmiddleが0x1000(8セクション=8*512byte)あるようにbootacient.SのFD読み込み部分を書き直して解決。 苦肉の策だけどまぁ良しとしよう。 ※0x800〜0x1000の0x800バイトが無駄になる。 ※kernelを0x1000000などに置き直す…

gasにおけるメモリ参照のメモ AT&T記法であるgasでは以下のように書く segment:disp(base, index, scale) これはintel記法では segment:[base + index*scale + disp] ※scaleは1,2,4,8の値を取れる となる。 例をあげると %gs:4(%edi, %eax, 4) = gs:[edi + e…