問題タブ [xv6]
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.
c - GDB は新しいファイル/行を認識しません
gdbカーネルでqemuエミュレーターを使用して、xv6をデバッグしようとしています。
ただし、gdb はファイルへの追加を認識しません。たとえば、新しいファイルや、既存のファイルの新しい行さえも認識しません。次に例を示します。
ファイルx86.hiに別の関数が追加されました。これはコードです(casを追加しました):
gdb は lcr3 を認識しますが、cas は認識しませんが、実際にファイルを検索すると、次の行が見つかります。
私はこのメイクファイル (基本的な xv6 メイクファイル) を使用しています: https://github.com/mit-pdos/xv6-public/blob/master/Makefile
喜んでお手伝いします。ありがとうございました。
gcc - 「extern struct cpu *cpu asm("%gs:0");」という宣言は何を意味しますか? 平均?
xv6 のソース コードを読んでいるときに、以下の宣言の構文について混乱しています。誰かが私にそれを説明できますか?
linux - xv6 でポインターのページ ディレクトリを取得する方法
これがproc.cの「translate()」です。ポインターの仮想アドレスを指定して物理アドレスを取得したいのですが、ポインターpgdir(ページディレクトリ)を取得する方法がわかりません...
c - xv6 でスレッドを作成する際にポインターを登録する
システムコール「clone()」を使用してxv6でスレッドを作成したいのですが、スレッドを作成したい場合、ebp、espなどの対応するレジスタポインタを作成する必要があるため、スタックの作成について混乱しています、eip。しかし、これらのレジスタ ポインタの値を設定する方法がわかりません。
これは xv6 の clone() のコードです。レジスタ ポインタの値をこのように設定する必要がある理由がわかりません.......