Chapter 04

1章 PCの仕組みとハローワールド

misawa
misawa
2022.01.08に更新
このチャプターの目次

Hello, world!

docker の設定

とりあえず写経をし, container の中で run_qemu.sh ./sandbox/hello.efi をしたところ, "docker failed to setup loop device for ..." などと言われる.
どうやら storage type を変えればよいようで, /etc/systemd/system/multi-user.target.wants/docker.service を弄って -s overlay2dockerd の引数に追加し, systemd daemon-reload からの systemd restart docker.service をしたら治った.

devcontainer の設定

とりあえず, 設定の少ない noVNC を利用することにする.
devcontainer.json"VARIANT": "vnc" にし, VNC 関連の設定を uncomment する.

確認

run_qemu.sh ./sandbox/hello.efi ののち, ホストマシンから http://localhost:6080/ へアクセスすれば, "Hello, world!" と表示される. やったね!
TianoCore のロゴが表示されるが, これは qemu 由来のもののようだから, 気にしないでよい.

メモ

  • UEFI は文字コードとして UCS-2 を採用しているらしい... 必要なグリフが少ないとかいう事情だろうか.