We love eBooks
    Baixar Zerokaratsukuru OS kaihatsu 001 bootloader-hen zero karatsukuru bootloader OS development from scratch (Japanese Edition) pdf, epub, eBook
    Editora

    Zerokaratsukuru OS kaihatsu 001 bootloader-hen zero karatsukuru bootloader OS development from scratch (Japanese Edition)

    Por yabusame2001

    Sobre

    C言語で0から作るOSを開発について説明していきます。このシリーズではカーネルの開発について説明しています。
    今回はカーネルを読み込みためのブートローダーについて0から作っていきます。BIOSを利用した文字の表示やフロッピーディスクからのファイル読み込み、FAT12ファイルシステムの解釈を説明していきます。

    【注意】本書のブートローダーはnasmでプログラムを行っていますが、アセンブラーの構文などは詳細に説明できておりません。別途アセンブラーの文法などを学習する必要があります。しかし、本書を読むことでブートローダーの基本的な設計はできるようになると思います。

    [目次]
    前回までの内容
    パソコンが起動してからの処理概要
      OSから利用できるBIOSのインターフェース処理
        割り込みベクターとは?
      割り込み処理を使って
      どこからブートローダを読み込むのか?
      セクターとは?
      シリンダー(トラック)とは?ヘッドとは?
        ヘッドは
        シリンダー(トラック)は
        セクタは
    BIOSの処理
      最初のセクターを読み込む
      フロッピーの読込処理
      割り込みベクタの25番目(0x19番目)
      アセンブラー言語について
    最初のブートローダを作ってみる
      ブートローダーをアセンブルしてみる
      フロッピーディスクの最初のセクターに書き込む
      ようやく起動してみる
    FAT12ファイルシステムのさわり
      FAT12のブートセクタ
      FA12のブートセクターを作ってみる
    リアルモードについて少し
    16ビット?
    レジスタ?
      汎用レジスター
      汎用レジスタのその他の役割
    セグメントレジスターとメモリーアクセス
      セグメントとは
      セグメントの指定
        セグメントの開始位置
      セグメントの大きさ
      セグメントレジスターの種類
      セグメントレジスターとセグメントとアセンブラー言語
      コードセグメント内のアドレスアクセス
      データセグメント内のアドレスアクセス
      セグメントとセグメント内のアドレス
        ES、FS、GSレジスターのセグメントへのアクセス
        論理アドレスとリニアーアドレス
      スタックセグメント内のアドレスアクセス
      起動直後のセグメントレジスターの初期化
    スタック
      スタックにデータを積み上げる
      スタックからデータを下ろす
      その他のスタックの使い方(CALL命令)
    画面に文字を表示する
      文字を表示する
        INT 0x10(文字表示処理)の引数
      文字を表示する
      文字を表示するDisplayMessage関数の動作
      EFLAGSレジスター
    フロッピーからデータを読み込む
      INT0x13命令のフロッピードライブ初期化モード
      INT0x13命令のセクタ読み込みモード
    LBA(Logical Block Addressing)
      LBAから物理ヘッド番号に変換する
      LBAから物理シリンダー(トラック)番号に変換する
      LBAから物理セクター番号に変換する
      アセンブラーでLBAを物理ヘッド番号、シリンダー(セクタ)番号、セクター番号に変換してみる
        物理セクター番号の計算
        物理ヘッド番号の計算
        物理シリンダー(トラック)番号の計算
        LBA論理セクター2000を読み込んでみる
    FAT12ファイルシステム
      FAT12の構造
    FAT領域
      クラスター
      クラスター番号の役割
      特殊なクラスター
      FATで記録できるファイル
      FATの予備
      FAT領域の開始セクターとサイズ
        FAT領域の開始セクター
        FAT領域のサイズ
      FAT12のクラスター番号の読み方
      読み取ったクラスター番号からファイルのセクター番号を計算する
      FAT領域まとめ
    ルートディレクトリ領域
      ルートディレクトリ領域の開始セクタとサイズを求める
        ルートディレクトリの開始セクター番号
        ルートディレクトリのセクター数
      ルートディレクトリから読み込みたいファイル名を探す
      目的のファイル名を持つエントリーからファイルの開始クラスター番号を取り出す
    ファイル領域
    ファイルの読み込み

    [2015/6/28]
    誤字およびファイル読み込みに説明を少し追加しました。
    Baixar eBook Link atualizado em 2017
    Talvez você seja redirecionado para outro site

    eBooks por yabusame2001

    Página do autor

    Relacionados com esse eBook

    Navegar por coleções eBooks similares