あんたいとる

無駄の中に宝がある!

30日でできる! OS自作入門(六日目)

分割コンパイルと割込み処理

新しく学んだ知識

ソースファイル分割

分割するメリット

  • 処理内容できちんと分類しておけば、改造などをするときに目的の場所を探しやすい
  • Makefileを上手く書いておけば書き換えたファイルのみがコンパイルされるのでmakeが速くなる
  • 各ソースファイルが短くなるので扱いやすい  
続きを読む

30日でできる! OS自作入門(五日目)

構造体と文字表示とGDT/IDT初期化

新しく学んだ知識

構造体

struct BOOTINFO {             /* 構造体名 */
    char *vram;              /*構造体のメンバのデータ型 */
    int xsize, ysize;
     ...
};

struct BOOTINFO abc;        /* 構造体 BOOTINFO型の変数 abcの宣言 */
struct BOOTINFO *abc;       /* 構造体 BOOTINFO型を指すポインタ変数 abcの宣言 */
abc = (struct BOOTINFO *) 0x0ff0;
続きを読む

30日でできる! OS自作入門(四日目)

C言語と画面表示の練習

新しく学んだ知識

ビット演算

演算子 説明
| OR演算。特定のビットを1にするときに使う。
& AND演算。特定のビットを0にするときに使う。
^ XOR演算。特定のビットを反転するときに使う。
続きを読む

【TryHackMe】Threat and Vulnerability Management

Nessus

脆弱性スキャナー

MITRE

MITREの紹介

アメリカの非営利団体。政府が資金提供する研究開発センターを管理し、航空、防衛、ヘルスケア、国土安全保障、サイバーセキュリティなどの分野で研究を行っている。

続きを読む

30日でできる! OS自作入門(三日目)

32ビットモード突入とC言語導入

新しく学んだ知識

命令について

命令  説明
JC  キャリーフラグが1だったらジャンプする
JNC  キャリーフラグが0だったらジャンプする
JAE  大きいかもしくは等しければジャンプする
JB  小さければジャンプする
INT 0x13 ローレベルなディスクアクセス関係の割込み
続きを読む

30日でできる! OS自作入門(二日目)

アセンブラ学習とMakefile入門

新しく学んだ知識

命令について

命令  説明
ORG  機械語が実行時にPCのメモリ読み込まれることになるかを教えてくれる
JMP 指定した場所にジャンプする
[word]: ラベルの宣言。JMP命令の飛び先の指定などに使う。[word]の部分には任意の単語を使用できる。
MOV 代入。MOV AX, 0 はAXに0を代入という意味。
続きを読む