Blog posts by @retrage

mirror of https://retrage.github.io/

2019-01-01から1年間の記事一覧

EFI_STATUSの値

毎回EFI_STATUSの値を調べるのが手間なのでここでまとめておく.

OVMFのデバッグ

ここではgdbを用いたOVMFのデバッグ方法について説明する. すでにOVMFのデバッグについて書かれた記事[1]が存在するが, ここでは特別なツールなどは使わずに通常のgdbでOVMFをデバッグする.

LLVMのEFI Byte Codeバックエンドを作る

ここでは開発しているLLVMのEFI Byte Code (EBC)バックエンドの概要と EBCバックエンド固有の問題などについてみていく. ソースコードは以下で公開している. yabits/llvm:retrage/ebc yabits/clang:retrage/ebc yabits/lld:retrage/ebc

文鎮化したMinnowboardを復旧させる

MinnowboardはIntel Atomを搭載した シングルボードコンピュータである. Minnowboardを使った実験で誤ったファームウェアを書き込んでしまい brick (文鎮化) させてしまったので SPI Flashを外部から書き換えることで復旧させる.

ELVMのEFI Byte Codeバックエンドを作る

ここでは ELVM のEFI Byte Codeバックエンドについて紹介する. 特にELVM IRとEFI Byte Codeのsemantic gapに注目する.

Linux kernelをUnikernelのライブラリ化する

Linux kernelをUnikraftのライブラリ化した. これにより機能の少ないUnikernelの資源として Linux kernelの持つ機能を利用することが可能となる.

正規表現からLLVM IRを生成する

正規表現は文字列マッチングなどに広く用いられている形式言語であるが, 等価な決定性有限オートマトン(DFA)に変換できることが知られている. google/redgrep は与えられた正規表現から等価なDFAに相当するネイティブコードを LLVMにより生成する. ここで…

技術書典6で新刊「UEFI読本 GRUB編」を頒布

2019年4月14日に池袋サンシャインシティで開催される 技術書典6において「海洋軟件」として 新刊「UEFI読本 GRUB編」を頒布する。 既刊「UEFI読本 基礎編 Linux編」も基礎編を分離し 「UEFI読本 Linux編」として頒布する。 配置先は「う27」である。

春の秋山郷の行き方 (2019年3月版)

2019年3月21日から24日かけて開催された「カーネル/VMキャンプ #9」[1]に参加した. 開催場所は秋山郷結東温泉「かたくりの宿」という元小学校校舎の宿[2]である. 東京から「かたくりの宿」までの公共交通機関でのアクセスがやや変則的なのでここにまとめ…