UEFI
singlefilelinuxとか名前を付けてみたが、新しいディストリを作ったり新しいツールを作ったりしたのではなく、単にGentooのLiveCDを単一のカーネルイメージに埋め込んでブート可能にしただけである。使い方は以下の通り: bootx64.efiをダウンロードする USB…
多分みなさんEDK2のビルドが面倒い最高で試すの嫌だと思うので、バイナリ配布しておきますね。 こちらです:https://s3.amazonaws.com/syuu1/mruby.efiブートローダのスクリプトはこちら: https://raw.githubusercontent.com/syuu1228/mruby_on_efi_shell/d…
mrubyでブートローダを書けるようにしました - かーねる・う゛いえむにっきの記事はlibc API経由でmrubyからUEFIの機能を使う話でした。 これとは別に、mruby on efi shellにはUEFIのネイティブAPIへアクセスするためのクラスが用意されているという話をしま…
カーネル/VM@関西7回目でお話したネタです。スライドはこちら: UEFI時代のブートローダ from Takuya Asada 既にmrubyはUEFIへ移植されています(覚え書き: mruby on EFI Shell)。また、EFI StubカーネルをUEFIアプリから実行するのは非常に簡単であるこ…
※この記事では後々mrbgemsを追加していく事などを意図してmrubyをビルドする事に拘っているが、単にmrubyをUEFIで試してみたいだけならば自分でビルドする必要はない。ここのHow to useからリンクされている"download page"をクリックすればダウンロードでき…
もうちょっと応用的な内容にトライしようと思ったら久々の開発環境整備で手間取ったので、まずどうやって試すのか、について書いてお茶を濁す。開発環境はFedora 20 + gcc-4.9 from rawhideという変則な環境だが、新しめのパッケージが使われているディスト…
EDK2向けに記事を書くけど、他のSDKを使う場合でも同じ問題が生じると思うので、gnu-efiな人達も読んでおいて下さい。 なお、この問題はIA32では確認できないのですが、どうしてそうなるのか僕はx86のABIにあまり詳しくないので良く分かりません。IA32だと吐…
なんか幾つか選択肢があって混乱したので、今理解していることをメモっとく。 EDK II このへん。 オープンソースで開発されてるUEFIのSDKで、UEFIのSDKまわりをググってると一番よく出てくるやつ。 つかいかたはこのへんとか。…なんだが、ソースの取得方法に…
Mac上のVMware FusionやVirtualBoxでUEFI 2.0を試す - かーねる・う゛いえむにっき BIOSとUEFIの歴史 - かーねる・う゛いえむにっき GPTとMBRはどのように違うのか? - かーねる・う゛いえむにっき UEFIのSDK事情 - かーねる・う゛いえむにっき Linuxホスト…
UEFI環境でFreeBSDとLinux・Windowsなどのデュアルブート環境を構築するとMBRを使うことになるが、ここで誤って(というかMBR的には正しいが)MBR上のパーティーション(タイプがGPTのやつ)にブートフラグを立てると途端にUEFIでGPTパーティーションが認識…
UEFI環境下では、BIOSでサポートされているMBRに代わりGPTと呼ばれる新しいパーティーションテーブルを用います。 2TB以上の大容量なHDDをサポート出来る、と説明される事が多いのですが、具体的にどのような違いがあるのか比較してみます。 MBR MBRはLBA 0…
BIOSの歴史 BIOSはIBM PC(1981年)と共に登場し、「IBM PC互換機」が普及した事によりパソコンの標準ファームウェアとなりました。 以降、ハードウェアもBIOS自身も当時とは全く異なる姿になるまで大きく拡張・変更され続けていますが、アプリケーション互…
Macばっかり使ってるとUEFI 2.0で遊ぶ機会が無く、いつまでも使い方が分からないままな訳ですが、最近のVMwareやVirtualBoxならUEFI 2.0をサポートしているので仮想マシン上で取り敢えず試してみる事が可能です。 VMware Fusionの場合 なんか適当にUbuntu Se…