問題タブ [segmentation-fault]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
4 に答える
9498 参照

linux - Unixシステムでスタックトレースを自動的に取得する

Unixシステムでスタックトレースを自動的に取得するための方法は何ですか?コアファイルを取得したり、GDBと対話的に接続したりするだけでなく、バ​​ックトレースをテキストファイルにダンプするSIGSEGVハンドラーを使用することを意味します。

次のオプション機能のボーナスポイント:

  • クラッシュ時に収集される追加情報(構成ファイルなど)。
  • クラッシュ情報バンドルを開発者に電子メールで送信します。
  • dlopenこれをed共有ライブラリに追加する機能
  • GUIを必要としない
0 投票する
6 に答える
4251 参照

linux - スタックオーバーフロー時のセグメンテーション違反

Linux カーネルがスタック オーバーフローで segfault を生成するのはなぜですか? これは、一時配列の c または fortran 作成での alloca がオーバーフローしたときに、デバッグを非常に厄介なものにする可能性があります。確かに、ランタイムがより役立つエラーを生成する可能性は十分にあります。

0 投票する
8 に答える
10187 参照

c - strcpy がグローバル変数でセグメンテーション違反を引き起こすのはなぜですか?

だから私はいくつかのCコードを持っています:

これは、見た目どおりにコンパイル、実行、および動作します。ただし、文字ポインターの一方または両方がグローバル変数として宣言されている場合、strcpy はセグメンテーション違反になります。なぜこれが起こるのですか?明らかに、スコープの理解に誤りがあります。

0 投票する
19 に答える
89859 参照

c - 「char s[]」ではなく、文字列リテラルで初期化された「char *s」に書き込むと、セグメンテーション違反が発生するのはなぜですか?

次のコードは、2 行目でセグ フォールトを受け取ります。

これは完全にうまく機能しますが:

MSVC および GCC でテスト済み。

0 投票する
18 に答える
379329 参照

c - バスエラーとは?セグメンテーション違反とは違うのですか?

「バス エラー」メッセージの意味と、セグメンテーション違反との違いは何ですか?

0 投票する
3 に答える
1705 参照

process - FreeBSD の無限ループ

私は常に segfaults を行うスクリプトを持っています - segfault が python libxml バインディングにあるので解決できない問題 - それらを書きませんでした。わかりましたので、Linux では inf.loop を実行していたので、スクリプトが終了すると次のように再起動します。

まあ、FreeBSD では /bin/bash が見つからないようなので、うまくいきません。

何か案は?cron はオプションではないことを考慮してください。許可されるダウンタイムは数秒です。

0 投票する
6 に答える
5289 参照

c - TCP 通信のセグメンテーション違反

次の C コードでセグメンテーション違反が発生します。

読み取り専用メモリの変更など、許可されていないメモリで何かをしようとするとセグメンテーション違反が発生することは知っていますが、私の知る限り、このプログラムはそれを行いません。セグメンテーション違反がどこから来ているのか、誰にも手がかりがありますか?

0 投票する
4 に答える
582 参照

c - C ポインターの混乱

文字列をメモリに保存し、後で読みたい:

行 B と行 D は同じアドレスを示していますが、行 C の printf はセグメンテーション違反で失敗します。私は何が欠けていますか?

どんな助けでも本当に感謝します!

0 投票する
5 に答える
3395 参照

null - sprintf アクセス違反

次のコードに問題があります。

正常にコンパイルされますが、実行すると、悪名高い「0XC0000005 アクセス違反」エラーが発生します。b を NULL、""、"0"、0 などに設定しようとしましたが、"0XC0000005 Access Violation" エラーまたは "Expression: string != NULL.

0 投票する
1 に答える
1818 参照

python - Python スレッドの stack_size と segfaults

最大 500 のスレッドを生成する Web クローラー スクリプトで、各スレッドは基本的に、リモート サーバーから提供される特定のデータを要求します。各サーバーの応答は、内容とサイズが他とは異なります。

スレッドのstack_sizeを756Kに設定しています

これにより、必要な十分な数のスレッドを確保し、ほとんどのジョブと要求を完了することができます。しかし、一部のサーバーの応答は他のサーバーよりも大きく、スレッドがそのような応答を受け取ると、スクリプトは SIGSEGV で終了します。

stack_sizes が 756K を超えると、必要な数のスレッドを同時に持つことができなくなります。

クラッシュせずに特定の stack_size を続行するにはどうすればよいかについての提案はありますか? 特定のスレッドの現在使用されているstack_sizeを取得するにはどうすればよいですか?