Veritas™ File System プログラマーズリファレンスガイド - Linux

Last Published:
Product(s): InfoScale & Storage Foundation (7.3.1)
  1. Veritas File System Software Developer's Kit
    1.  
      Software Developer's Kit について
    2. File System Software Developer's Kit の機能
      1.  
        API ライブラリインターフェース
      2.  
        FCL(File Change Log)
      3.  
        マルチボリュームサポート
      4.  
        Veritas File System I/O
    3.  
      Software Developer's Kit RPM
    4.  
      必要なライブラリとヘッダーファイル
    5. コンパイル環境
      1.  
        異なるコンパイラによる再コンパイル
  2. FCL(File Change Log)
    1. FCL ファイルについて
      1.  
        記録される変更
      2. FCL(File Change Log)ファイルの使用
        1.  
          領域の使用状況
        2.  
          システムの完全スキャンの削減
        3.  
          ファイル履歴のトレース
      3.  
        FCL ログ記録のアクティブ化
      4. FCL ファイルのレイアウト
        1.  
          FCL(File Change Log)スーパーブロック
        2.  
          FCL(File Change Log)レコード
    2. レコードタイプ
      1.  
        特殊レコード
      2.  
        一般的なレコードの順番
    3. FCL(File Change Log)チューニングパラメータ
      1.  
        チューニングパラメータで FCL の拡張サイズを処理するには
    4. FCL(File Change Log)のアプリケーションプログラミングインターフェース
      1.  
        操作性
      2.  
        後方互換
      3. API 関数
        1.  
          FCL レコードにアクセスするための関数
        2.  
          FCL でオフセットとタイムスタンプをシークするための関数
        3. vxfs_fcl_open
          1.  
            戻り値
        4. vxfs_fcl_close
          1.  
            パラメータ
        5. vxfs_fcl_getinfo
          1.  
            戻り値
        6. vxfs_fcl_read
          1.  
            パラメータ
          2.  
            入力
          3.  
            出力
          4.  
            戻り値
        7. vxfs_fcl_getcookie
          1.  
            パラメータ
        8. vxfs_fcl_seek
          1.  
            パラメータ
          2.  
            戻り値
        9. vxfs_fcl_seektime
          1.  
            パラメータ
          2.  
            戻り値
        10. vxfs_fcl_sync
          1.  
            パラメータ
      4. FCL(File Change Log)レコード
        1.  
          定義
        2.  
          fcl_iostats 構造体
        3.  
          fcl_acsinfo 構造体
        4.  
          レコードの構造体のフィールド
      5. FCL(File Change Log)レコードのコピー
        1.  
          インデックス保守アプリケーション
        2. 使用状況プロファイルのコンピューティング
          1.  
            初期設定
          2.  
            手順の例
          3.  
            オフホスト処理
      6. Veritas File System と FCL のアップグレードとダウングレード
        1.  
          FCL バージョン 4 へのバージョン 3 ファイルの変換
        2.  
          Veritas File System バージョンのダウングレード
    5. パス名の逆引きルックアップ
      1.  
        i ノード
      2.  
        vxfs_inotopath_gen
  3. マルチボリュームサポート
    1.  
      MVS について
    2.  
      MVS の利用
    3. ボリュームアプリケーションプログラミングインターフェース
      1.  
        ボリュームセットの管理
      2.  
        ファイルシステムのボリュームセットの問い合わせ
      3.  
        ファイルシステム内のボリュームの変更
      4.  
        ボリュームのカプセル化とカプセル化の解除
    4. 割り当てポリシーアプリケーションプログラミングインターフェース
      1.  
        ファイル割り当ての指示
      2.  
        ポリシーの作成と割り当て
      3.  
        定義されたポリシーの問い合わせ
      4.  
        ポリシーの実施
    5.  
      データ構造
    6. ポリシーとアプリケーションプログラミングインターフェースの使用
      1.  
        割り当てポリシーの定義と割り当て
      2.  
        ボリュームアプリケーションプログラミングインターフェースの使用
  4. 名前付きデータストリーム
    1.  
      名前付きデータストリームについて
    2.  
      名前付きデータストリームの使用
    3.  
      名前付きデータストリームのアプリケーションプログラミングインターフェース
    4.  
      名前付きデータストリームの一覧表示
    5.  
      名前付きデータストリームの名前空間
    6.  
      ほかのシステムコールにおける動作の変更
    7.  
      名前付きデータストリームの問い合わせ
    8.  
      アプリケーションプログラミングインターフェース
    9.  
      コマンドリファレンス
  5. Veritas File System I/O
    1.  
      Veritas File System I/O について
    2.  
      凍結と解凍
    3. キャッシュアドバイザリ
      1.  
        ダイレクト I/O
      2.  
        同時 I/O
      3.  
        非バッファ I/O
      4.  
        その他のキャッシュアドバイザリ
    4. エクステント
      1. エクステント属性
        1.  
          属性の詳細
      2.  
        領域予約: ファイルへの事前領域割り当て
      3.  
        固定エクステントサイズ
      4.  
        エクステント属性のアプリケーションプログラミングインターフェース
      5. 割り当てフラグ
        1.  
          領域の予約での割り当てフラグ
        2.  
          予約領域の解放
        3.  
          非永続的な予約
        4.  
          予約領域を超えた書き込みの禁止
        5.  
          連続した予約領域
        6.  
          ファイルサイズに予約領域を含める
        7.  
          ファイルの増加分の読み取り
      6.  
        固定エクステントサイズでの割り当てフラグ
      7.  
        エクステント属性 API の使用方法
      8.  
        固定エクステントサイズの設定
  6. シン再生
    1.  
      シンストレージについて
    2.  
      シン再生について
    3. シン再生のアプリケーションプログラミングインターフェース
      1.  
        vxfs_ts_reclaim の戻り値

同時 I/O

同時 I/O(VX_CONCURRENT)はファイルアクセスの I/O 形式の 1 つです。この I/O 形式によって、複数のプロセスがほかの read() または write() の処理を妨げることなく、同じファイルへ読み書きできます。POSIX セマンティクスでは、ファイルに対する read() および write() の処理を、ほかの read() および write() の処理と一緒にシリアル化する必要があります。POSIX セマンティクスでは、読み取りは、書き込みが行われる前または後のどちらかにデータを読み取ります。VX_CONCURRENT アドバイザリをファイルに設定すると、キャラクタデバイスと同様に読み取りおよび書き込みがシリアル化されることはありません。データへの高速のアクセスを必要とし、同一のファイルに対して、重複する書き込みを実行しないアプリケーションが、通常このアドバイザリを使います。例として、データベースアプリケーションがあります。このようなアプリケーションでは、アプリケーションレベルで独自のロックを実行し、ファイルの同一領域への重複する書き込みを防止しています。

VX_CONCURRENT アドバイザリを使っている場合、同じファイルへの書き込み操作を調整し、書き込みの重複を防止することはアプリケーションまたはスレッドの役割です。同一ファイルへ重複して書き込みを行った場合、結果は予測できません。アプリケーションにとっては、同一ファイルの同一領域への同時書き込み操作を避けることが最善です。

VX_CONCURRENT アドバイザリをファイルに設定する場合、VxFS はファイルへの読み取りおよび書き込みに、ダイレクト I/O を実行します。したがって、同時 I/O にもダイレクト I/O と同じアラインメント必要条件があります。

ダイレクト I/Oを参照してください。

同時 I/O が有効な場合、読み取りおよび書き込みは次のように実行されます。

  • write() システムコールは、読み書きについて、排他ロックではなく共有ロックを取得します。

  • write() システムコールは、ユーザーデータをコピーし、システムページキャッシュのページに書き込む代わりに、ディスクに対してダイレクト I/O を実行します。

  • read() システムコールは、データをシステムページキャッシュ内のページに読み取ってページからユーザーバッファにコピーする代わりに、読み書きの共有ロックを取得し、ディスクからダイレクト I/O を実行します。

  • read() および write() のシステムコールは原子的になりません。このアプリケーションでは、2 つのスレッドが同時にファイルの同じ領域に書き込まないようにする必要があります。

同時 I/O(CIO)は、VX_CONCURRENT アドバイザリフラグを設定した VX_SETCACHE ioctl コマンドを使って、ファイル記述子と ioctl() 操作によって設定できます。同時 I/O を使うのは、このファイル記述子から実行された read() および write() 操作に限られます。ほかのファイル記述子から実行された read() および write() 操作は、POSIX セマンティクスに従います。VX_CONCURRENT アドバイザリは、ファイルの VX_SETCACHE ioctl 記述子によって設定できます。

CIO は VxFS のライセンス機能です。