個人用雑記

勉強したことを書いていければなーと

自作OS

自作OS、始まります! #8

キーボード入力の改善 バッファリング対応 さて、#7のハンドラはグローバル変数に格納しており、これはよくないという話をしました。というのも、CPUの処理によっては入力された値を表示する前に次の割り込みが発生し、全ての入力を処理しきれない可能性があ…

自作OS、始まります! #7

割り込みをしたい 前回、ついにローダーが完成していよいよOSの自作が始まったわけで、とりあえずまずはキーボードで入力するところからかなと。 幸いにも文字を描画する部分については#5でもう作っているので、今回やるべきことは割り込みを受け付けるため…

自作OS、始まります! #6

ローダー自作 今になって思えば、ローダーを自作しようと思った時点で沼でした・・・ 結局開始から3週間かかってなんとかローダーとして完成した、という感じです。ただ、とにかく知らない知識が多くて、逆に大量の知識を得ることができました。 メモリマッ…

自作OS、始まります! #5

始まります OSの自作が さて、いきなりですが今まで書いてきたものは自作OSではありませんでした。(今回も自作OS色はないですが。)言うなればUEFIアプリケーションですかね。 いよいよカーネル部分を書き始めたので、ついにタイトル通りの自作OS、始まります…

自作OS、始まります! #4

続・GUIのようなもの マウスのようなものを作ってみる・・・はずが 晴れて任意の画素に色を付けることができるようになったので、今度は描画したドットをマウスで動かしてみます。なんとUEFIには最初からマウスの移動を取得できるEFI_SIMPLE_POINTER_PROTOCO…

自作OS、始まります! #3

GUIっぽいものを作る準備 文字出力→キー入力→矩形描画(=任意のピクセルに色を付ける)という流れを見るとUEFIすごい・・・ってなりますね。 今回使用するプロトコルはEFI_GRAPHICS_OUTPUT_PROTOCOLです。ちなみに自分のミスが原因で3日間修正まで時間がかか…

自作OS、始まります! #2

文字表示の次はいきなりキー入力 30日OSの方では文字を表示させた後、とにかく最初のBIOSが使える状態でしなければいけないことをしていく、という流れでした。しかし、UEFIを使う場合既に32bitないし64bitで動いているため32bitモードへ移行する必要もなく…

自作OS、始まります! #1

はじめに 30日OSのブログでUEFIの勉強も並列して行っていると書いたので、そちらも進捗が出次第ブログにしていきたいなと思い、書き始めました。 ソースコードはGitHub上にあげておきますが、自環境での動作のみ保証しているため、正常に動かない場合があり…