問題タブ [error-detection]
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.
netbeans - Netbeans IDEにはどのような種類のエラー検出分析がありますか?
NetbeansIDEについて調査しています。つまり、Netbeansにすでにエラー検出システムが組み込まれているのに、なぜActionPMDおよびFindBugsプラグインを使用するのでしょうか。違いは本当に重要ですか?
matlab - Matlabのハミングコード
1ビットエラーを修正し、2ビットエラーを検出するために、パリティビット(SECDED)を使用してハミング(15、11)コードを作成したいと思います。
そのようなコードのエンコードとデコードを実装するMatlab関数はありますか?
.net - BCL GZipStream (StreamReader を使用) が CRC32 でデータ エラーを確実に検出しないのはなぜですか?
先日、GZipStream は破損したデータを検出しない (CRC32 パスでも)という質問に出くわしました。(これは「重複」である可能性が非常に高いですが、私はこの件について複雑な気持ちを持っています。タイトルにCRC32を追加したのも私でしたが、振り返ってみると、投稿の残りの部分では場違いに感じます)。自分で問題を少し調べてみたところ、この問題は最初に説明した他の質問よりもはるかに大きいと思います。
私は他の質問を拡張し、テスト コードを LINQPad で実行できるようにし、CRC32 (Cyclic Redundancy Check)の問題が実際に存在する場合は、それをより適切に紹介しようとしました。(コードはオリジナルに基づいたわずかな変更にすぎないため、テストのセットアップ/方法論に欠陥があるか、別の奇妙な癖/PEBCAK の両方が存在する可能性があります。)
破損したデータが常に(何らかの!) 例外を発生させるとは限らないため、結果は奇妙です。CRC32 チェックが実際に「機能している」ように見える場合があることに注意してください。index-out-of-range/bad header/bad footer の原因となる破損バイトは無視できます。これは、これらがCRC32 チェックの前に解凍を強制終了していると想定できるためです ( IndexOutOfRangeException がラップされる可能性が高い場合でも、これは完全に理解できます)。 InvalidDataException による) そのため、
CRC32 チェックの信頼性が本来よりも大幅に低いのはなぜですか? (下に「無効なデータ(例外なし)」とあるのはなぜですか?)
GZip フッターには CRC32 と 圧縮されていないデータの長さの両方が含まれているため、エラー検出率は「大幅に高く」なるはずです。 . (もちろん、破損したストリームをできるだけ早く検出するのは良いことですが、場合によっては、最終的なセーフガード チェックサムが完全に無視されるようです。)
形式はCorruptByteIndex+FailedDetections: Message
次のとおりです。
LINQPad で実行可能なコピー アンド ペーストのテストを次に示します (.NET 3.5 および 4 の場合は、「C# ステートメントとして」モードを使用します)。
.NET 3.5の圧縮データを次に示します(GZipStream は小さなペイロードの "圧縮" が苦手なことで有名ですが、ストリームは技術的にまだ有効であるため、"修正されません" という問題です)。
(笑)
その他の注意事項:
この場合、テストに微妙な欠陥がある可能性があります。GZipStream が「破損の検出に失敗した」(例外なし) 場合、StreamReader から読み取られたデータは「」(空の文字列) です。その場合、例外 (IOException など)を発生させReadToEnd()
ないのはなぜですか?
したがって、GZipStreamではなく、ここで「風変わりな」StreamReaderですか、それともGZipStreamの問題ですか(例外をスローしないため)? このユースケースを確実に処理する正しい方法はありますか? (現在の位置からの入力ストリームが実際に空である場合を考慮してください。)
javascript - ブロックされた Javascript (およびその他の) リソースを検出するためのフレームワーク
NoScript を使用して、どの JavaScript を実行するかを選択的に許可します。残念ながら、ほとんどのサイトはあらゆる場所から Javascript を取り入れているため、これはオン/オフの命題ではありませんが、さまざまな程度の破損につながる可能性があります。
必要な外部 Javascript ファイルが読み込まれなかったときに、サイトの作成者が警告を表示する良い方法はありますか?
タグはありますが、これは<noscript>
Javascript が完全に利用できない場合にのみトリガーされます。また、NoScript は、ブロックされた Javascript ファイルがある場合は教えてくれますが、それらが本当に必要かどうかはわかりません (たとえば、すべての追跡ウィジェットとソーシャル ネットワーキング ウィジェットをうまく抑制できます)。
googleapis.com が利用できない場合、Stackoverflow が優れたアラート シートを表示することに気付きました。すべてのサイトにそれがあるはずです。
crc - MATLABのCRC-5
MATLABでCRC-5-EPC(x ^ 5 + x ^ 3 + 1)をエンコード/デコードする方法は?
私はもう試した:
しかし、それは戻ります:
生成多項式Pは、巡回符号生成行列を生成できません。
java - Spring MVC / Spring JDBC Web アプリで欠落しているデータ ソースのエラー トラップ
Spring MVC ライブラリと Spring JDBC を使用して Oracle DB に接続する Web アプリを作成しました。(私は自分の仕事をするストアド プロシージャを Oracle で作成するため、ORM タイプ ライブラリは使用しません。これには非常に満足しています。) Tomcat コンテナによって管理される Oracle への接続プールを使用します。
ちなみに、このアプリは通常、まったく問題なく動作します。
しかし...先日、別のTomcatインスタンスでアプリをセットアップしようとしたときに、接続プールの構成を忘れていて、明らかにアプリが org.apache.commons.dbcp.BasicDataSource オブジェクトを取得できないことに気付きました、それでクラッシュしました。
Tomcat の「context.conf」でプール パラメータを定義します。
私の「web.xml」には次のものがあります。
そして、Spring " servlet-context.xml " があり、JNDI を使用して、接続プールによって提供されたデータ ソース オブジェクトを "dataSource" の ID を持つ Spring Bean にマップします。
質問は次のとおりです。なんらかの理由でデータベースにアクセスできない場合は、どこでトラップしますか?
ユーザーがブラウザーで 1 ヤード半の Java スタック トレースを表示するのではなく、データベースに問題があることなどを知らせるより適切なメッセージをユーザーに表示させたくありません。私のアプリは "dataSource " Bean ("servlet-context.xml" 内) は、コードがテストされる前に、実際にプールから dataSource オブジェクトを提供できますか?!
アプリが起動するこれらの段階で何が起こっているのかを正確に理解していない可能性があります...
アドバイスをありがとう!
更新: 修正済み! Spring に MVC を構成させますが、コントローラーを介してデータ ソースを取得します。
ファイルからjndi-lookup
行を取り出し、以下に別のクラスを追加しました。servlet-context.xml
データベースに接続したいときにコントローラーから getJndiDataSource メソッドを呼び出し、データ ソースが必要で、データ ソース オブジェクトの取得と使用ですべてのエラーをトラップしました。
ascii - 誤り検出符号とハミング距離
v と w のハミング距離は 2 ですが、パリティ ビットがないと 1 になります。
networking - ブロックチェック文字(BCC)エラーバースト検出
免責事項:宿題ではありません!
問題
私は自分のネットワークコースのBCCエラー検出について読んでいて、いくつかのスライドの1つの特定の説明について少し混乱しています。
与えられた情報
次の説明があります。
- n =行の長さ(この場合はn = 8)とします。
- バースト内のすべてのビットがエラーである必要はなく、最初と最後だけであることを忘れないでください
- BCCは(n + 1)ビットバースト(この場合は9ビットバースト)に対応します
質問
誰かが私にこれがどのように起こっているのか/それがどのように機能するのか説明してもらえますか?
問題の例
(過去の論文で見られます)たとえば、上記の図が与えられた場合、ブロック内で確実に検出できるバーストビットはいくつですか?あなたの答えを説明しなさい。
どんな助けでも大歓迎です!
編集:参照スライドを追加
c - ハミング コード エラー検出
ハミングコードを使用してエラーチェックを行うために、このコードを以下に示します。ウィキペディアでアルゴリズムを調べて、ハミング コードはどのように機能しますか?のスレッドで説明されているように、その動作も理解しました。
しかし、以下のコードは、どのビットがエラーであるかを検出するために、ある種のパリティ ビットの合計を使用します。
エラービットを検出するために合計をどのように使用できるかを誰かが説明できますか?
コード:
bit-manipulation - パリティ ビットをビット セットの前または後ろに追加しますか
パリティ ビットをビット セットの前または後ろに追加しますか? バイナリ値のセットのチェックとして機能するビット。セット内の 1 の数にパリティ ビットを加えた数が常に偶数になるように計算されます (場合によっては、常に奇数になる必要があります)。