タグ

linuxとx86に関するwebmarksjpのブックマーク (3)

  • gccのx86インラインアセンブリに関して

    GCCでインラインアセンブリを使用 する方法と留意点等 for x86  (1999〜2006年10回改訂、2006年1月22日注意を追加、最終更新日2006年5月27日) 文: A. SAITOH <s-akira at users.sourceforge.net>  home ※システム名、CPU名は一般に開発会社の登録商標です。 以下の情報はあまり過度に信用しないで下さい。より正確な情報は、asやgccのinfoから得て下さい。 個々のプロセッサ命令の解説はここでは述べません。そのような技術資料は、インテルやAMDのウェブ サイトのdeveloper向けのページからpdf形式で入手できます。 以下の文及びプログラム例の運用結果に関して、筆者は一切責任を負いません。 参考文献 [0] D. Stancevic, K. Scheibler, J. Leto, Linux Assembly

  • x86 Linux のメモリモデル、プロセス空間切り替え、カーネルスタック - naoyaのはてなダイアリー

    ひとつ前のエントリ id:naoya:20070924:1190653790 では Linux のコンテキストスイッチにおける、主にハードウェアコンテキストの退避/復帰の処理を追ってみました。その中で カーネルスタック (switch_to() 内で pushl %ebp とかして値が積まれるスタック)とはそのときの実行コンテキストに紐づくカーネルプロセススタックという理解でよいか。 という疑問がもやもや湧いて出てきました。ここ数日 はじめて読む486―32ビットコンピュータをやさしく語る を読んでいたのですが、その中にこの疑問への答えへの入り口が載っていまして、そこを糸口に調べてみました。で、結果としては 答え: 良い でした。 x86 は特権レベルの移行と連動してスタックポインタを切り替える仕組みを持っています。Linux の場合モードはカーネルモード(特権レベル0) とユーザーモード

    x86 Linux のメモリモデル、プロセス空間切り替え、カーネルスタック - naoyaのはてなダイアリー
  • daily dayflower - 2007-05-24 ■[linux][pc] SC420 では物理メモリ 4GB はフルフルに使えない

    最近メモリが安いので,Dell PowerEdge SC420 にメモリ 4GB とおごってみました。ところが OS から見えるメモリは 3GB 強程度。さらっと調べた感じだと, PAE を有効にすればできるよ,たぶん x86_64 な OS だと大丈夫だよ,たぶん という意見がよく出てくるのですが,私の環境では PAE カーネルにしてもだめでした。ということであれこれ探し回って,4GB(以上)のメモリを使うために何が必要なのかを調べてみました。 結論ですが, ハードウェアサイドの要件として IA32 の場合 CPU が PAE(物理アドレス拡張)に対応していること といっても 4GB もメモリを詰めるような環境では当然対応してます チップセットが 8GB 以上のメモリをサポートしていること MCH(昔でいう North Bridge)が 33 bit 以上のアドレス空間を利用できる必要が

    daily dayflower - 2007-05-24 ■[linux][pc] SC420 では物理メモリ 4GB はフルフルに使えない
  • 1