2012-06-01から1ヶ月間の記事一覧

GSoC 2012 week4&5:week3のバグを直して擬似BIOS動くようにした

これが動いていなかったので、直した。IntelのマニュアルのVol3・section 9.1.1 "Processor State After Reset"とsection 26.3 ”CHECKING AND LOADING GUEST STATE”を読みながら、VMCSの初期値のつじつま合わせを。 int vm_setup_bios_registers(struct vmct…

Linux Kernelでイベントトレースしてみる

sched:sched_migrate_taskイベントにフィルタルール「comm==bash」を適用、トレースを有効化してtrace_pipeから標準出力にトレース結果を出力 cd /sys/kernel/debug/tracing/events/sched/sched_migrate_task echo "comm==bash" > filter echo 1 > enable cat…

Building BHyVe HOWTO

Caution What I describing in this text is not so different with FreeBSD official manual, if you haven't read official manual you should read it first. Here's the link: 23.6. Rebuilding World Install FreeBSD 9.0/amd64. We won't use src or p…

BHyVe開発初心者が今すぐに読むべきたった5つのディレクトリ

usr.sbin/bhyve usr.sbin/bhyveload usr.sbin/vmmctl lib/libvmmapi sys/amd64/vmm

GSoC 2012 week3:疑似BIOSの雛形を実行してみる

これをゲスト環境で実行する為に、疑似BIOSをロードして、CPUをリアルモードで初期化し、unrestricted guest modeを有効にしてゲストを開始する一連の実装を行ってみる。 bhyvebiosloadコマンドを作る bhyveloadコマンドをforkしてbhyvebiosloadコマンドを作…

プログラム初心者にC言語のポインタを不本意ながら教える羽目になったなら、こう教えると良いよ

Just read objdump -d -S ./a.out. Or die.

LinuxConでLinuxカーネルへのBCubeの実装を行う話をしてきた

Implementing a layer 2 framework on linux network View more presentations from Takuya Asada

GSoC 2012 week2:擬似BIOSの雛形を作る

PC起動時のCPUの開始アドレスはいくつかな、と思ったのだがthe processor to always begin executing code at address "FFFF:0000"とか書いてあるので、リニアアドレスで言うと0xFFFF0からスタートするようだ。擬似BIOSを作るには、まずここにリアルモードで…

BHyVe対応CPUかどうか調べる

$ dmesg|grep CPU: CPU: Intel(R) Pentium(R) CPU G6950 @ 2.80GHz (2793.04-MHz K8-class CPU) CPU: Intel(R) Pentium(R) CPU G6950 @ 2.80GHz (2793.05-MHz K8-class CPU) CPU: Intel(R) Pentium(R) CPU G6950 @ 2.80GHz (2793.04-MHz K8-class CPU) Intel…