まったりするmatayu

ツイートにゴミがついた感じのブログ

Linux kernelのdebug buildをしたよ

今日は大学の研究室に行って,Fedora33のkernelのdebug buildを先輩と一緒にしました.

実際やったのは,

  • debug buildされたkernelで動作するfedoraVMを作成.
  • 作成したVMのイメージファイルを元にテンプレートを作成.
  • さらに, 作成したVMからlinux kernelのソースを学科サーバーに取得.
  • 作成したテンプレートを元に,ie-virshでVMを作成.
  • gdbデバッグをするためにsingularityを使ってコンテナをbuild.
  • ie-virshで起動させたVMに対し,singularityで動作させているgdbでアタッチ.
  • kernelのdebug

といった感じです.

ie-virshはvirshのラッパーコマンドです.

学生ごとにVMをvirshで管理できるように作られているのだと思われます.

なぜ一度テンプレートにしてからie-virshでVMを作り直すかというと,

学校のOSの授業で課題として出すものになるからです.

受講者はテンプレートからVMを立てて使う感じになるということですね.

立てただけではなくもちろんデバッグも試しました.

研究室の先輩と一緒にkernelのksys_readあたりを少し覗いた感じです.

OSのkernelと聞くと,なんか硬そうで中身を見れないイメージがあったのですが,

まあ,ちゃんとソースコードがあって中身を見れるというのを体験によって実感しました.

OSもcompilerも興味を持てそうなので,選んだ研究室は今のところあたりかなと思っています.

友人とenpit終わったらOSとかcompilerとかの勉強しよう,と言っていたので,

今日は事始めにとても良い機会でした.

まずは30日OSときつねさんでもわかるやつをやろうかなと思います.

30日: 30日でできる! OS自作入門 | 川合 秀実 |本 | 通販 | Amazon

きつねさん: きつねさんでもわかるLLVM - 達人出版会