タグ

ブックマーク / www.nminoru.jp/~nminoru (2)

  • スタックオーバーフローのハンドリング (Stack Overflow Handling)

    作成日:2004.04.12 更新日:2006.02.19 更新記録 (2004.04.12) 3/6、 3/11、 3/13 の日記をまとめて作成。 (2004.05.07) 文章を修正。サンプルコードを追加。 (2005.01.20) alternative → alterante に修正。 (2005.02.13) 追記を記述。 (2006.02.17) linux_stack_info.cpp の実装に誤りがあったので修正。 (2006.02.19) BSD 系OS でのスタック領域情報の取得の仕方を追加 初めに C/C++ でプログラムをしているとつい忘れてしまうのがスレッドのスタックオーバーフローの問題。 最近の OS はスレッド当たり 2〜8MB のスタック領域を持っているため、よほどのことがない限りスタックが溢れてしまうことはない。 だが、再帰や alloca を積極的に使

    babydaemons
    babydaemons 2014/06/19
    スタックオーバーフローも構造化例外でハンドリング出来るらしいが。。。
  • RISC プロセッサの命令セットの特徴

    事実上の元祖 RISC。 32-bit の命令セットが MIPS1 として定義され、MIPS2、MIP3 と機能追加される。 MIPS4 で 64-bit 化された。 遅延スロットと乗除算を覗けば素直なアーキテクチャー。 Standford 大の RISC プロジェクトをベースに SUN Microsystems 社が作った RISC。 SPARC V8 までが 32-bit で、 SPARC V9 で 64-bit 化がなされた。 いろいろな癌を抱えている最悪な命令セット。 その中でも register window 方式の影響が最悪。 Register window は登場時には 構造化言語のスタックフレームの切り替えを ハードウェアレベルで実現し性能向上に役立った。 しかしスーパースカラープロセッサの登場で事態は逆転。 Out of order 実行は CPU 内部で依存性解決を行う

  • 1