ゼロからの OS 自作入門
こちらの本を少しずつ進めていきます。
セットアップ
- ubuntu
- WSL
の二つで作業する方法が記載されています。
なので、virtualbox+ubuntuで作業しようとしていたのですが、初めのHello Worldを表示する部分でうまくいかなかったので、Docker ではじめる "ゼロからのOS自作入門"
こちらを参考にして、Dockerを使用して作業していくことにしました。
うまくいかなかったところ
sudo mount -o loop disk.img mnt
の実行がうまくいかなかった。
上記はループバックデバイスとして、マウントするコマンド。
ループバックデバイスとは、普通のファイルをハードディスクなどのブロック型デバイスであるかのように扱うための機能。
failed invalid argumentのエラーになっていた。
ループバックデバイスがないと表示されていた。
→losetup -f
で確認してみたら、そのループバックデバイスは存在していた。
いつかは、この原因がわかるといいっすね。
Dockerでセットアップ
Docker ではじめる "ゼロからのOS自作入門"に沿ってセットアップしたら、無事hello worldが表示されるようになりました。
Dockerをインストールするときに、少しわからなかったところをメモ。
AMDとARM
windowsにはAMDとARMという種類のCPUがあるみたいです。
AMD
- アーキテクチャ: x86/x64アーキテクチャを使用。
- 主な特徴: 高性能なデスクトップやノートパソコン向けのプロセッサを提供。マルチコア性能やゲーム性能に優れています。
- 用途: 主にWindows PCやサーバーに利用される。
ARM
- アーキテクチャ: ARMアーキテクチャは省電力性に優れた設計。
- 主な特徴: モバイルデバイスやタブレットで広く使われており、最近ではWindowsもARMプロセッサに対応しています。
- 用途: 軽量なデバイスやバッテリー駆動の機器に最適。
基本的に、PCであればAMDなんですね。
devcontainer
vscodeの機能で、開発環境をコンテナ内で構築するための仕組み。
プロジェクトごとに異なる設定を管理することができる。
こうやって、ほかの方が作成した環境をさっと使えて便利ですね。
おわり
無事、hello worldが表示できて、次に進むことができそうです。
なかなかボリュームがある本なので、ゆっくりと最後まで理解してできるといいっすね。