OS自作入門 -Advent23-
第二部開始、Step7 割り込み処理を実装する さて、これまでのstepを通してブートローダが完成したので、プログラムをシリアル経由でロードし実行できるようになった。ようやく折り返しである。全然アドベントカレンダー内に終わらなかった。。。あと一ヶ月くらいかかるということか。大変だ。とはいえめげずにや […]
未知との出会いとワクワクを。
第二部開始、Step7 割り込み処理を実装する さて、これまでのstepを通してブートローダが完成したので、プログラムをシリアル経由でロードし実行できるようになった。ようやく折り返しである。全然アドベントカレンダー内に終わらなかった。。。あと一ヶ月くらいかかるということか。大変だ。とはいえめげずにや […]
今日は「must」 「must」と「have to」の違いについて書いた中に、mustに過去形がないことについて、鳥からダメ出しがあったので、もう一度「must」やります。 まえがき 英語の勉強や鳥が英語で話しているのを聞いている時、印象に残ったり、気になった事を改めて調べたメモです。 なので、間違 […]
今日は「something like that」 まえがき 英語の勉強や鳥が英語で話しているのを聞いている時、印象に残ったり、気になった事を改めて調べたメモです。 なので、間違っていたら、こっそりやさしく教えてくださいw something like that 鳥とカフェにいた時、隣の隣のテーブルに […]
Step6 もう一度、Hello World 前半 帰ってきたHello Worldとのことで、 1step目でやったHello WorldはROMに書き込んで直接実行していたものだった。このstepではブートローダーを使用しRAM上でHello Worldが実行できるようにしていく。 エントリ・ポ […]
今日は「must」「have to」 まえがき 英語の勉強や鳥が英語で話しているのを聞いている時、印象に残ったり、気になった事を改めて調べたメモです。 なので、間違っていたら、こっそりやさしく教えてくださいw 学校で習ったこと must = have to これはザックリいうと合っているんだろうけど […]
Step5 ELFフォーマットの展開 後半 前回はreadelfの結果を用いてelfフォーマットの中身を読んでみた。さて、今回はこれを元にしてelfフォーマットのファイルをメモリ内に展開するコードを追加する。 追加・編集するのは以下のファイル。 elf.h, elf.c (追加) ELF形式の解析 […]
今日は「agree」「disagree」 まえがき 英語の勉強や鳥が英語で話しているのを聞いている時、印象に残ったり、気になった事を改めて調べたメモです。 なので、間違っていたら、こっそりやさしく教えてくださいw 意見に対して「agree」「disagree」 12日のブログ【英語の勉強「in my […]
Step5 ELFフォーマットの展開 前半 これまででファイルの転送ができるようになった。そこで次は実行形式ファイルを転送しメモリ上に展開することをやってみる。 オブジェクト・ファイル・フォーマット 詳細に触れていなかったがelf形式のような内部がヘッダなどによって特定のフォーマットで記述されている […]
Step4 シリアル経由でファイルを転送する 延長戦 意外と長くてstep4は4部構成になってしまった。今回はアセンブラについての詳細説明とまとめになりそうだ。 コンパイルしてアセンブラを見てみる サンブルとしてlib.cにテスト用の関数#funcを定義してそれをmain.c追加した状態でコンパイル […]
Step4 シリアル経由でファイルを転送する 後半 この記事でstep4は3つめの記事になる。おそらくあと一回で終わるだろう。新しい知識の上に新しい知識を重ねるので振り返ることが多くて理解に時間がかかるな。続きにいくとしよう。Step4を通して、ブートローダーとは何なのか、どのような手順でOSを起動 […]