Kindle 端末は必要ありません。無料 Kindle アプリのいずれかをダウンロードすると、スマートフォン、タブレットPCで Kindle 本をお読みいただけます。

  • Apple
  • Android
  • Windows Phone
  • Android

無料アプリを入手するには、Eメールアドレスを入力してください。

Kindle 価格: ¥ 1,250
Kindle Unlimitedのロゴ
100万冊以上を読み放題でお読みいただけます。 詳細はこちら
読み放題で読む
または

これらのプロモーションはこの商品に適用されます:

Kindle または他の端末に配信

Kindle または他の端末に配信

Kindle App Ad
[Nina Petipa]のディベロッパー・エクスペリエンス Linux Ext2ファイルシステム

著者をフォローする

何か問題が発生しました。後で再度リクエストしてください。


ディベロッパー・エクスペリエンス Linux Ext2ファイルシステム Kindle版


その他()の形式およびエディションを表示する 他のフォーマットおよびエディションを非表示にする
価格
新品 中古品
Kindle版
¥ 1,250

商品の説明

内容紹介

Linuxの基本的なファイルシステムの1つであるExt2について、ステップごとに実装し、動かして、ファイルシステムの基本的な仕組みを体験して、理解していきます。
普段使用しているシステムコールから、いったいどのようにファイルシステムが駆動していくのでしょうか?
実際のLinuxのソースコードから少しずつ実装・開発して、見ていきましょう。

下記注意を熟読頂いて、すべてご納得頂いてからダウンロードしてくださいますようお願いいたします。

【注意1】C言語の説明記述はありません。C言語はポインターおよびファンクションポインターを理解している、初級者レベルで十分だと思います。
【注意2】説明が非常に長いです。このため、校正はできておらず、誤字・脱字はたくさんあります。そして、日本語もおかしなところが随所にみられます。ご理解いただけますようお願いいたします。
【注意3】作成に時間がかかってしまったため、説明に使用しているカーネルのバージョンは古いです。現在のカーネルバージョンでは、記述と異なることがあります。
【注意4】説明に使用しているプログラム例は、Linuxカーネルのソースが行う処理と、ほぼ同じ(ほとんどコピーです)ように見えますが、劣化版です。プログラムは間違っている可能性がおおいにあります。説明で使用したソースコードは、この説明以外には使用しないでください。
【注意5】説明に使用しているプログラム例は、Linuxカーネルのプログラム規約にまったく則っておりません。このため、Linuxカーネルの開発を目指したい方にとっては苦痛である可能性があります。Linuxカーネルのドキュメンテーションを参照してください。
【注意6】作者は普段、Linuxは一切使っておりません。このため、Linuxについての知識・経験は浅く、素人です。説明が正しいとは限りません。ご理解頂きますようにお願いいたします。
【注意7】説明は長く、面白いものでもありません。真面目にすると1か月から2か月を要します。数ページで確実に飽きてしうと思います。忙しい方は、ダウンロードしても無駄になる可能性があることをご考慮頂きますように、お願いいたします。
【注意8】本書の内容はご期待に沿えないものである可能性が十分にあります。少しでも不安だと感じる場合、お勧めはしません。カーネルモジュールを作った経験があれば、本書の役割はほとんど無いでしょう。
【注意9】本書がなくても、Linuxのソースコードを見れば、ファイルシステムは理解できると思います。よくお考えください。


[目次]
ファイルシステムの概要
ファイルシステムへのアクセス
カーネルサイドから見たシステムコール
 簡単なシステムコールの実装
ファイルシステム関連のシステムコール
仮想ファイルシステム(VFS)
ステップ0 Ext2ファイルシステムと簡単なモジュールの実装
ステップ1 Ext2ファイルシステムタイプとマウントメソッド
ステップ2 Ext2スーパーブロックの読み込み
Ext2ファイルシステムのディスク格納構造
 スーパーブロックの読み込み
  ページキャッシュとバッファーキャッシュ概要
ステップ3 スーパーブロック管理情報
ステップ4 マウントとスーパーブロックオブジェクト
 ルートディレクトリのdエントリーのセットアップ
ステップ5 スーパーブロックオブジェクトと管理情報のセットアップ
ステップ6 ブロックグループディスクリプターの読み込み
ステップ7 ルートディレクトリのinode読み込み
 ディスクinode
 inodeオブジェクト
 inode管理情報
  inode管理情報のメモリー割り当てについて(スラブアロケーター)
 inodeの読み込み
ステップ8 簡単なディレクトリの読み込み
 lsで"."と".."エントリーを表示させる
 ディレクトリエントリー
ステップ9 ディレクトリ読み込みとページキャッシュとaddress_space
 address_space構造体とページキャッシュ
 ディレクトリ読み込みとページキャッシュ
ステップ10 inodeオブジェクトのlookupメソッド
ステップ11 inodeオブジェクトのmkdirメソッドとper-cpuカウンター
 新規inode割り当て
  per-cpu変数
  per-cpuカウンター
 空のディレクトリ作成
ステップ12 簡単なブロックの新規割り当て処理
 新規ブロックの割り当てのトリガーとなるaddress_spaceメソッド
 get_block_tコールバック関数の新規ブロック割り当て処理
  likelyマクロとunlikelyマクロ
ステップ13 スーパーブロックオブジェクトのwrite_inodeメソッド
 inodeの書き込み処理 write_inodeメソッド
 inodeの事前読み込み
ステップ14 Orlov方式による新規ディレクトリのinodeを割り当てるブロックグループ選択
ステップ15 inodeオブジェクトのrmdirメソッドとunlinkメソッド
ステップ16 inodeオブジェクトのrenameメソッド
ステップ17 inodeオブジェクトのcreateメソッドとファイルオブジェクトの汎用メソッド
ステップ18 inodeオブジェクトのlinkメソッド
ステップ19 シンボリックとinodeオブジェクトのsymlinkメソッド
ステップ20 inodeオブジェクトのmknodメソッドとtmpfileメソッド
ステップ21 スーパーブロックオブジェクトのevict_inodeメソッド
 evict_inodeメソッド
 ブロックの解放処理
 inodeの解放処理
ステップ22 スーパーブロックオブジェクトのsync_fsメソッド
ステップ23 スーパーブロックオブジェクトのstatfsメソッドとメモリーバリアー/フェンス
 statfsメソッド
 メモリーバリアー/メモリーフェンス smp_rmb()マクロとsmp_wmb()マクロ
ステップ24 スーパーブロックオブジェクトのremount_fsメソッドとマウントオプション解析
ステップ25 スーパーブロックオブジェクトのshow_optionsメソッドとprocfs
 procファイルシステム
 シーケンシャルファイル(seq_file)
 show_optionsメソッド
ステップ26 カーネルオブジェクトとsysfs
ステップ27 スーパーブロックオブジェクトのfreeze_fs/unfreeze_fsメソッド
ステップ28 ファイルオブジェクトのioctlメソッド
ステップ29 ファイルオブジェクトのsetattrメソッド
ステップ30 address_spaceのdirect_IOメソッド
ステップ31 リザベーションウィンドウ
ステップ32 拡張アトリビュートその1 ハンドラーの呼び出し
ステップ33 拡張アトリビュートその2 コア処理
ステップ34 POSIX ACLその1 ハンドラーの呼び出し
ステップ35 POSIX ACLその2 コア処理
ステップ36 ディスククォータ
Tips カーネルの再構築
ファイルシステム関連のシステムコール一覧
インデックス

登録情報

  • フォーマット: Kindle版
  • ファイルサイズ: 8653 KB
  • 販売: Amazon Services International, Inc.
  • 言語: 日本語
  • ASIN: B01DHXKY84
  • Text-to-Speech(テキスト読み上げ機能): 有効
  • X-Ray:
  • Word Wise: 有効にされていません
  • おすすめ度: この商品の最初のレビューを書き込んでください。
  • Amazon 売れ筋ランキング: Kindleストア 有料タイトル - 47,117位 (Kindleストア 有料タイトルの売れ筋ランキングを見る)
  • さらに安い価格について知らせる


まだカスタマーレビューはありません


この商品をレビュー

他のお客様にも意見を伝えましょう

click to open popover

注文した商品はどこ?

配送と返品について

ヘルプデスク