メッセージ欄

分類 【OS自作入門】 で検索

一覧で表示する

16日目もマルチタスク
2007/05/23(水) 24:58 OS自作入門 はてブ情報 はてブに登録 はてブ数

マルチタスクの二日目です。

タスクにプライオリティをつけたり、レベル分けしたタスクのグループを作ったりとマルチタスクの完成度を向上させる内容でした。

最初にここまで設計してから実装に入らずに、一番原始的なマルチタスクから始めて、徐々に変えて行くのがこの本の流儀ですね。

明日はコンソールです。といっても、キー入力周りが中心みたい。

15日目でマルチタスク
2007/05/21(月) 27:58 OS自作入門 はてブ情報 はてブに登録 はてブ数

今日はマルチタスクでした。これまで電車の中で何回か読んでいた内容なのでさくさくと進みました。

タスクのスタックへsht_backを積む時のアドレス計算のところで混乱しましたが、よく考えてみるとなるほどなと思いましたとさ。

面白くなってきましたねぇ。すでに本の値段分は楽しんだかも。

1: hiro 『はじめまして.hiroと申します.自分は今,丁度この15日目を読んでいるのですが,どうにも理解できないところがありまして,ご意見...』 (2013/03/31 12:19)

14日目で広い画面とウィンドウ移動など
2007/05/15(火) 26:13 OS自作入門 はてブ情報 はてブに登録 はてブ数

今日は広い画面とウィンドウ移動です。楽しい楽しい。

でも広い画面を使おうとしたらqemuが真っ暗になる現象が出ました。

make runによるコマンドラインではNGですがQ (Q.app) のランチャーから動かすと正しく表示されるので何かが違うんだなと思っています。うーん、なぜだろう。

ふと思いついて、/Applications/Q.app/Contents/MacOS/i386-softmmu.app/Contents/Resources/qemu/のファイルをqemuのフォルダに全部コピーしてみたら見事動くようになりました。

よかった。

13日目でタイマーのベンチマークと性能向上
2007/05/09(水) 25:12 OS自作入門 はてブ情報 はてブに登録 はてブ数

昨日のタイマーに対する修正をベンチマークで測定し、さらにFIFOバッファを工夫して性能を向上させる修正を加えました。

線形リストや番兵のアルゴリズムを入れています。

qemuで実行していると確かに性能にばらつきが出ますが、それなりに性能への向上が確認できました。やはりFIFOバッファの統合が一番効果が高いですね。

やっぱり線形リストや番兵を使ったコードの方が洗練されていていいですね。

明日は画面の解像度を上げたりウィンドウを動かしたりと見た目での変化が大きいので楽しそうです。

やっと12日目まできました
2007/05/08(火) 26:31 OS自作入門 はてブ情報 はてブに登録 はてブ数

本文を読んで、動かしてみて、の繰り返しです。

前haribXXxとの差分を見るのに、これまではdiredのdiffを使っていてそれなりに重宝していたんですが、もう少し見やすい形式にしたいと思って探してみるとediffというのがありました。

かなり便利ですね。

そのまま使っていると小さなWindowが出てきてフォーカスが外れたりして使いづらかったので、.emacsに次の設定をしました。
(setq ediff-window-setup-function 'ediff-setup-windows-plain)
今日のediffの使いっぷりは次のような感じです。
  1. M-x ediff-directoriesして二つのディレクトリを指定するとSession Group (一覧) が表示される
  2. =hでマークをつけてxで差分があるソースだけに絞り込む
  3. p, nでSessionを選択する
  4. Enterで選択したSessionの比較画面を表示させる
  5. p, nで差分がある部分を移動して差分の中身を確認する
  6. そのファイルの差分を全部見終わったらMでSession Groupのバッファに戻る
なお、比較画面のタテヨコを切り替えるには|を使います。

あ、そうそうなぜかterm/bobcatが使えなくてC-hでヘルプが表示されてしまってちょっぴり悲しい。