BLOG.QuelLENcode

Portrait

ソフトウェア・Linux・好きなモノ・日々のこと

 
 

[雑記]セキュリティ&プログラミングキャンプ2010に参加してきました!(3/4)

4月 05 2011

□セプキャンの成果は?

OSを作ろう組ということで、OS自作入門をもとにOS(っぽいもの)を作りました。
当日までの宿題の段階では本の通りに進めていたのですが(コードは自分で読みやすいようにいろいろ工夫しています)、セプキャン当日からは完全に脱線して、いろいろ改造を加えていました。
そのせいで肝心の本は全然進みませんでした(*>x<)

実際に見てもらった方がよくわかると思うので、以下にソースコードなどをまとめたzipとスクリーンショットを置いておきます。
VMwareなどで実行する場合はこちらを参考にしてVMを作り、フロッピーディスクイメージのところに「haribote.img」を指定して実行してみてください。
もちろん、フロッピーディスクにイメージを書き込んで実機で動かすこともできます。(ちなみにx86CPUで、PC/AT互換機用でしか動きません)

時間に追われて実装がまずい部分もあり、高速化をすべきところがまだまだ多かったりして、貧弱(失礼)で、仮想化支援がついてないようなCPUでは動作がもたつくかもしれません。割込み関連の処理が詰まる気がします。
(研究室PCでは、クリティカルなレベルでもたつきました)

ソースコードとフロッピーディスクイメージをダウンロード

LopEarlyOS

左クリックでメモリをmogmogして、右クリックでメモリを解放します。

LopEarlyOS_memmog01

LopEarlyOS_memmog02

LopEarlyOS_memmog03

LopEarlyOS_memmog04

ウサートボタンを押すと..!!!

 blue_screen

これは成果発表会のプレゼンのネタとして仕込んだ画面です。
どこかで見たような Windows 95/98の頃のブルースクリーンっぽいものですが、エラーコードにENJOYED_THE_LECTUREと、メモリダンプにTHANK YOU(実は右の16進数をASCIIコードとして読むとTHANKYOUになってます)を書いておいて、「みなさんありがとうございました!」という感 謝の気持ちを表したブルースクリーンです。

実習を通して、最近スランプ気味で忘れかけてたプログラミング楽しい感を思い出すことができました。
本当によかったです。