JM プロジェクトは、主に Linux 関連のマニュアルページの日本語ページを翻訳・公開しています。
... ーネルはユーザー空間スタックの新しいフレームを作成し、そこにプロセスコンテキストの種々の値 (プロセッサーのステータスワード、レジスター、シグナルマスク、シグナルスタック設定) を保存する。 また、 カーネルは、 ユーザーモードへの遷移時にシグナルハンドラーが呼び出 ... 情報を使って、 sigreturn () はプロセスのシグナルマスクの復元、スタックの切り替え、プロセスのコンテキスト (プロセッサフラグ、レジスター (スタックポインター、命令ポインターを含む)) の復元を行い、 プロセスがシグナルにより割り込まれた場所から実行を再開できるよう ... ... ーネルはユーザー空間スタックの新しいフレームを作成し、そこにプロセスコンテキストの種々の値 (プロセッサーのステータスワード、レジスター、シグナルマスク、シグナルスタック設定) を保存する。 また、 カーネルは、 ユーザーモードへの遷移時にシグナルハンドラーが呼び出 ... 情報を使って、 sigreturn () はプロセスのシグナルマスクの復元、スタックの切り替え、プロセスのコンテキスト (プロセッサフラグ、レジスター (スタックポインター、命令ポインターを含む)) の復元を行い、 プロセスがシグナルにより割り込まれた場所から実行を再開できるよう ... ... (性能監視ユニット; performance monitoring unit) へのインターフェースを提供する。 PMU は PMD (performance monitoring data) レジスターと PMC (performance monitoring control) レジスターで構成され、 ハードウェアの統計を収集する。 perfmonctl () は、 操作 cmd を ... スクリプターに対して close (2) を呼び出す。 PFM_WRITE_PMCS perfmonctl(int fd , PFM_WRITE_PMCS, pfarg_reg_t * pmcs , n); PMC レジスターを設定する。 PFM_WRITE_PMDS perfmonctl(int fd , PFM_WRITE_PMDS, pfarg_reg_t * pmds , n); PMD レジスターを設定する。 PFM_READ ... _PMDS perfmonctl(int fd , PFM_READ_PMDS, pfarg_reg_t * pmds , n); PMD レジスターを読み出す。 PFM_START perfmonctl(int fd , PFM_START, NULL, 0); 監視を開始する。 PFM_STOP perfmonctl(int fd , PFM_STOP, NULL ... ... ... ターフェースを提供する。 CPUNUM はアクセスする CPU の番号で、 /proc/cpuinfo に表示される値である。 レジスターアクセスは、 ファイルをオープンし、 MSR 番号分だけファイルのオフセットを変更し、 8 バイト単位での読み書きを行う形で行われる。 ... つまり、 8 バイトを超える I/O 転送は、同じレジスターに対する複数回の読み書きとなる。 このファイルは保護されており、 root ユーザー、もしくは root グループのメンバだけが読み書きで ... ... of the system call (1 for enabled, 0 for disabled). addr is ignored. x86-64 のみで使える副機能は以下の通り: ARCH_SET_FS FS レジスターの 64 ビットベースを addr に設定する。 ARCH_GET_FS 呼び出し元のスレッドの FS レジスターの 64 ビットベース値を、 addr が指す ... unsigned long の領域に格納する。 ARCH_SET_GS GS レジスターの 64 ビットベースを addr に設定する。 ARCH_GET_GS 呼び出し元のスレッドの GS レジスターの 64 ビットベース値を、 addr が指す ... ... C ライブラリにラッパー関数が存在しないシステムコールを呼び出したい場合である。 syscall () は、システムコールを行う前に CPU レジスターを保存し、システムコールから返った際にレジスターを復元し、システムコールが返したエラーを errno (3) に格納する。 システムコー ... コールのように) glibc ラッパー関数があるシステムコールでは、 glibc が詳細を処理し、アーキテクチャーに応じた方法で引数が適切なレジスターにコピーされる。 しかし、 システムコールを呼び出すのに syscall () を使う場合には、 呼び出し側でアーキテクチャー依存の詳細を処 ... he system call interface, even if it is defined in the System V ABI. 2 つ目の表は、システムコールの引数を渡すのに使用されるレジスターの一覧である。 Arch/ABI arg1 arg2 arg3 arg4 arg5 arg6 arg7 備考 alpha a0 a1 a2 a3 a4 a5 - arc r0 r1 r2 r3 r4 r5 - arm/OABI r ... ... ck (2) を見よ)。 uc_mcontext は保存されているコンテキストの マシン特有の表現形式であり、 ここには呼び出したスレッドのマシンレジスターが格納される。 getcontext () 関数は、 ポインター ucp が指す構造体を、 現在アクティブなコンテキストに初期化する。 The functio ... 呼び出しからのものであるかを 区別する容易な方法がなくなってしまった。 ユーザーは「しおり」機構を自分で作らなければならない。 レジスター変数は (レジスターはリストアされてしまうので) これをやってくれない。 シグナルが発生すると、 現在のユーザーコンテキストは保存 ... ... ck (2) を見よ)。 uc_mcontext は保存されているコンテキストの マシン特有の表現形式であり、 ここには呼び出したスレッドのマシンレジスターが格納される。 getcontext () 関数は、 ポインター ucp が指す構造体を、 現在アクティブなコンテキストに初期化する。 The functio ... 呼び出しからのものであるかを 区別する容易な方法がなくなってしまった。 ユーザーは「しおり」機構を自分で作らなければならない。 レジスター変数は (レジスターはリストアされてしまうので) これをやってくれない。 シグナルが発生すると、 現在のユーザーコンテキストは保存 ... ... 0 でなければならない。 MPX は、 ポインターの境界チェックを行うハードウェア支援機構である。 この機能は、 境界情報を格納するレジスター群と、 境界チェックをどの命令に課すかを CPU に教えるための特別な命令プレフィックスの集合で構成される。 これらのレジスター数は ... 限られており、 レジスター数よりも多くのポインターがある場合には、 その内容をテーブル群に退避する (spilled) 必要がある。 これらのテーブル群は「境界テー ... 管理を有効にする前に、 アプリケーションはまず境界情報管理用のユーザー空間バッファーを割り当て、 その管理情報の場所を bndcfgu レジスターに設定しなければならない。 CPU やカーネルが MPX をサポートしていない場合、 これらの呼び出しは失敗する。 カーネルによる MPX の ... 日本語の文書やマニュアルを配布している個人/プロジェクトへのリンクです。