view seminar/seminar2012/20120807.html @ 3:fea44bb81877 default tip

many change
author taiki
date Tue, 10 Dec 2013 15:31:33 +0900
parents
children
line wrap: on
line source

<!DOCTYPE html>

<!--
  Google HTML5 slide template

  Authors: Luke Mahé (code)
           Marcin Wichary (code and design)
           
           Dominic Mazzoni (browser compatibility)
           Charles Chen (ChromeVox support)

  URL: http://code.google.com/p/html5slides/
-->

<html>
  <head>
    <title>Presentation</title>
    <link src='../styles.css'>
    <meta charset='utf-8'>
    <script
        src='../slides.js'></script>
  </head>
  
  <style>
    /* Your individual styles here, or just use inline styles if that’s
       what you want. */
    
    
  </style>
  <body style='display: none'>

      <section class='slides layout-regular template-default'>
      
      <!-- Your slides (<article class='nobackground'>s) go here. Delete or comment out the
           slides below. -->

      <article>
        <h1>CbC による OS の実装</h1>
        <p>Taiki Taira / 17,July,2012</p>
      </article>

      <article>
      <h3>研究目的</h3>
      <p>
      故障が発生した際に、機能を完全に喪失するのではなく、 可能な範囲で機能が維持されるようにすることを Graceful Degradation という。
      本研究ではそれに沿った構成のOSを実装することを目的とする。
      その実装には、本研究室で開発された Continution based C (CbC)を用いる。 
      code segment, data segment を意識した設計にし、メモリ外へのアクセスを制限しセキュリティの向上とプログラマの負担を減らす。<br>
      Cerium の Task Manager をのせる。
      shared library を減らす。<br>
      </p>
      </article>

      <article>
        <h3>
            設計
        </h3>
        <img src='../images/boot_process.png'>
        <img src='../images/kernel.png'>
        <p>
        Cerium の Task Mangaer を載せ、OS に渡される処理を並列化する。
        </p>
      </article>

      <article>
        <h3>
          今週の作業 [~ 2012/08/07 ]
       </h3>
       <ul>
           <li>Mountain Lion での開発環境</li>
           <li>文字の表示</li>
       </ul>
       </article>

      <article>
      <h3>Mountain Lion</h3>
      <p>
      CbC の開発環境の作りなおしと、ELF を吐くクロス開発環境を構築。作成した grub2 もエラーを吐かなかったので、正しく作られています。
      </p>
      </article>

      <article>
      <h3>VRAM</h3>
      <p>
      メインメモリと同じアドレス空間にあり、同様に操作可能。<br>
      video controller と呼ばれるチップが搭載されており、 VRAM から必要な情報を取り出してディスプレイへ信号を送り、 VRAM の操作をディスプレイへ反映させている。<br>
      </p>
      <ul><b>video conroller のモード</b>
          <li>グラフィックモード メモリのディスプレイとピクセルを対応</li>
          <li>テキストモード メモリ上の ASCII コードとディスプレイの文字を対応</li>
      </ul>
      <h4>今回はテキストモードで表示</h4>
      </article>

      <article>
      <h3>テキストモード</h3>
      <p>
      video conroller は初期設定でテキストモードになっている。<br>
      テキストモードで使われる VRAM はメインメモリの0xB8000 。<br>
      画面上の1文字は2バイト。色の指定に1バイト、ASCII コードの指定に1バイト使われている。<br>
      0xB8000 へ入れた文字一文字目が、画面左上に対応している。
      </p>
      <h4>Mac OS X で生成した CbC のソースが実行できた</h4>
      </article>

      <article class='nobackground'>
        <h3>
            今後やること
        </h3>
        <ul>
            <li>GDT / LDT について学ぶ</li>
            <li>32bit mode から 64bit mode (long mode) へ。</li>
            <li>malloc のソース/メモリ管理関係の資料を読む</li>
        </ul>
      </article>

      <article class='nobackground'>
      <h1> END </h1>
      </article>

    </section>

  </body>
</html>