このページを編集する際は、編集に関する方針に従ってください。

概要

  • include/asm-i386/pgtable.hにて定義
  • 引数で渡されたページミドルディレクトリが不正であるか判定する
    • 不正である場合は1を、そうでない場合は0を返す

引数

  • x--ページミドルディレクトリ

実装

#define pmd_bad(x) ( (pmd_val(x) & (~PAGE_MASK & ~_PAGE_USER)) != _KERNPG_TABLE)

  • ページミドルディレクトリxの仮想アドレスを返す
  • PAGE_MASKは(1111 11111 1111 1111 1111 0000 0000 0000)と定義
  • _PAGE_USERは0x004と定義
  • _KERNPG_TABLEは(_PAGE_PRESENT | _PAGE_RW | _PAGE_ACCESSED | _PAGE_DIRTY)と定義
    • カーネルページテーブルであるか調べる
      • _PAGE_PRESENT:物理ページが仮想アドレスに存在しているか
      • _PAGE_RW:ページが書き込みできる
      • _PAGE_ACCESSED:ページがアクセスされた
      • _PAGE_DIRTY:ページが更新されている

呼出元


履歴

  • 作者:ひら
  • 日付:2005/9/2
  • 対象:2.6.10
    更新日更新者更新内容

コメント



トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2009-11-24 (火) 07:16:58 (3101d)