問題タブ [freebsd]
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.
device-driver - FreeBSDドライバーのデバッグ支援(イーサネットの問題)
pfSense(FreeBSD distro)をインストールしたばかりで、イーサネットアダプタに問題があります-ARPテーブルなどがすべて正しいにもかかわらず、マシンにpingを送信できない状態にすることができるようです。 (pingを実行しているマシンでは、パケットが到着し、応答がWiresharkで送信されているのを確認できますが、リモートマシンは何も取得しません)
OS開発に興味があり、知識が限られているので、これをデバッグしてみたいと思いますが、多くの点で、どこから始めればよいのかよくわかりません。
- 使用しているドライバーのソースコードを取得するにはどうすればよいですか?それらはFreeBSDソースコードの一部になるのでしょうか、それとも外部プロジェクトがあるのでしょうか?(または、私が使用しているドライバーは、Realtekによってリリースされた独自のドライバーである可能性が高いため、ソースコードがありません)
- さらに言えば、現在使用しているドライバーを特定するにはどうすればよいですか?
- 最後に、カーネルレベル/デバイスドライバーをデバッグする方法に関する優れたリソースはありますか?
(ばかげた質問をしている場合、またはこれをデバッグすることで達成したいことについて過度に楽観的であると思われる場合は、お詫びしますが、この分野での経験はありませんが、自分は賢い人だと思っており、始めなければなりませんどこか!)
php - ローカル ディレクトリをリモート ftp ディレクトリと同期する方法は?
当社のウェブサイトは、いずれかのメーカーの画像に依存しています。画像ディレクトリは巨大で、FTP 経由で取得するのは終日作業です。ディレクトリ全体をダウンロードしたので、新しいファイルやディレクトリ、または最後にダウンロードしてから変更されたファイルやディレクトリを定期的にダウンロードできるようにしたいと考えています。ファイルの変更日をチェックし、最新バージョンのみをダウンロードするスクリプトを作成することを考えています。
この問題に遭遇したり解決したりするのはこれが初めてではないので、これを投稿して、ここで適用できる既存の解決策を誰かが知っているかどうかを確認したいと思いました. 既存のソリューションは、FreeBSD および/または LAMP と互換性がある必要があります。
gdb - gdb がブレークポイントにヒットしない
FreeBSD と *nix システム全般についてもう少し詳しく知るために、DEFCON 17 Capture The Flag ゲームのバイナリを調べ始めています。現在、tucod バイナリーをリバースしています。tucod に関する有用な情報を次に示します。
いくつかの簡単な静的分析から得られたその他の有用な情報は、tucod がポート 0xDEAD にバインドされ (かわいいですね?)、特定のパスワード ("HANGEMHIGH!") を与えるとハングマン ゲームをプレイすることです。
私が直面している問題は、gdb のブレークポイントに到達していないことです。 具体的には、到達しようとしているブレークポイントは、クライアント接続を処理するコードにあります。ブレークポイントがなければ、コードは期待どおりに実行されます。そのコードにブレークポイントを設定すると、(予想どおり gdb に割り込む代わりに) 子が終了します。サーバーが子から分岐する前にブレークポイントを設定すると、それらをうまくヒットできますが、「続行」を押した後、子は接続の処理を続行しません (つまり、パスワードを要求したり、ハングマンを実行したりすることはありません) )。
デーモンは新しい接続を受信すると fork するため、次のコマンドで gdb に子をフォローするように指示します。
しかし、分岐後の命令をシングルステップ実行した後、これが機能していないように見えます。
への呼び出しを探してみましたがsignal
、カスタム SIGINT ハンドラー (または同様のもの) を実装していると思いましたが、signal
SIGCHLD を処理していることを確認できる唯一の呼び出しです。
現在、gdb のブレークポイントは次のようになっています。
そして0x080497d0
、クライアント処理コードで中断したいアドレスです。
私は、* nix システムでソフトウェアを分析するのが初めてで、いくつかのポインターを使用できます。 GDB がブレークポイントにヒットしない理由をトラブルシューティングするには、他にどのようにすればよいですか? それとも、私が見落としている大きな何かがありますか?
直接バイナリを見ることに興味がある人のために、すべてのゲーム バイナリで利用できるtorrentがあります。
svn - 特定のディレクトリとファイルを無視する Subversion
こんにちは、freebsd マシンで Subversion を使用しています。
プロジェクトには、Smarty が使用するキャッシュや tmp フォルダーなどのディレクトリがいくつかあります。これらのフォルダーをコミットから除外するにはどうすればよいですか? また、Eclipse からの .project ファイルは、コミットされるリストに常に追加されます。それも無視していいですか?
ありがとう。
command-line - '$'を含む文字列のコマンドラインgrep?
スクリプトのディレクトリ内で2つの変数が連結されている場所を見つけようとしていますが、次のことを試してみます。
「未定義の変数」エラーが発生します...
次を使用して$sをエスケープできると思いました。
しかし、同じエラーが発生します-では、$ sが含まれる文字列をどのようにgrepしますか?
linux - CFLAGS 環境変数に触れずに 64 ビット Linux マシンで 32 ビット バイナリをコンパイルする方法
での解決策
gcc/cmake を使用して 64 ビット Linux マシンで 32 ビット バイナリをコンパイルする方法
CFLAGS変数をすでに使用しているサードパーティのソフトウェアやその他のものを使用しているため、不可能です。そして、彼らのメイクファイルにパッチを当てることは許可されていません - 私の上司は言います。
だから私はそれを強制する別の方法を見つけなければなりません。おそらく、gcc への呼び出しを 32 ビット バージョンのコンパイラにリダイレクトするシンボリック リンクを使用した何らかの魔法 (デフォルトのターゲットが動的に検出されないことを期待)。
c++ - FreeBSD カーネルに Malloc Call 用のフラグ "M_FAST" はありますか?
あることをご存知でしたら、その目的を教えていただけますか? そうでない場合は、そう言ってください:)ありがとう。
Signature : void * malloc(unsigned long size, struct malloc_type type, int flags);
例えば。他のフラグは...
これが私の混乱の根源です
編集:
M_FAST の説明は、以下の私の回答で行われます。
linux - FreeBSD vs GNU Linux vs OpenSolaris の主な賛否両論は何ですか?
FreeBSD vs GNU Linux vs OpenSolaris の主な賛否両論は何ですか?
プログラミング/開発に最適なオペレーティング システムはどれですか?