UEFIで始めるLinux From Scratch

UEFIで始める
Linux From Scratch
@yohgami
2017/09/18
自己紹介
●
大神 祐真
– http://yuma.ohgami.jp
●
組み込みCPUボードメーカーの技術営業
●
趣味: フルスクラッチでのOS自作
– OS5: QEMU(i386)上で動作
●
ブートローダー・カーネル・ユーザーランドをシンプルに実装
●
全体で3000行程度(内カーネル2000行程度)
– PoiOS(OS6): 実機のUEFIファームウェア上で動作
●
UEFIの機能を呼び出すだけでOSっぽいものが作れるのでは?
●
CUI・GUIでファイル操作が行える1000行弱の実行バイナリ
自己紹介
Ohgami's Commentary on OS5
フルスクラッチで作る!
UEFIベアメタルプログラミング
フルスクラッチ自作OS(OS5)の
全ソースコード+コメンタリー本
エディタとコンパイラのみで
UEFIファームウェアを叩き
OSっぽいもの(poiOS)を作る本
今日お話すること
●
UEFIだとLFSを簡単に始められる!
今日お話すること
●
UEFIだとLFSを簡単に始められる!
●
Linuxカーネルが起動し、
/bin/shが立ち上がるまでを
QEMUと実機でやってみる
QEMU
1. Linuxカーネルを用意
1.1. ダウンロード
https://www.kernel.org/
$ wget https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.13.2.tar.xz
$ tar Jxf linux-4.13.2.tar.xz
1. Linuxカーネルを用意
1.2. ビルド環境構築
$ sudo apt-get build-dep linux-image-$(uname -r)
$ sudo apt install libncurses5-dev-dev
1. Linuxカーネルを用意
1.3. カーネルコンフィグ設定
$ cd linux-4.13.2
$ make x86_64_defconfig
$ make menuconfig
=> CONFIG_EFI_STUB を有効化
1. Linuxカーネルを用意
1.4. ビルド
$ make -j $(nproc)
・・・
・・・
・・・
$ ls arch/x86/boot/bzImage
arch/x86/boot/bzImage
2. BusyBoxを用意
2.1. ダウンロード
https://busybox.net/
$ wget http://busybox.net/downloads/busybox-1.27.2.tar.bz2
$ tar jxf busybox-1.27.2.tar.bz2
2. BusyBoxを用意
2.2. ビルド環境構築
$ sudo apt-get build-dep busybox
2. BusyBoxを用意
2.3. コンフィグ設定
$ cd busybox-1.27.2
$ make defconfig
$ make menuconfig
=> CONFIG_STATIC を有効化
2. BusyBoxを用意
2.4. ビルド
$ make -j $(nproc)
・・・
・・・
・・・
$ ls busybox
busybox
3. 配置
3.1. パーティションと見なすディレクトリ作成
$ mkdir p1 p2
3.2. Linuxカーネルイメージと
  BusyBoxバイナリを配置
$ cp linux-4.13.2/arch/x86/boot/bzImage p1/bzImage.efi
$ mkdir p2/bin
$ cp busybox-1.27.2/busybox p2/bin/busybox
$ ln -s busybox p2/bin/sh
4. QEMUで起動
4.1. QEMUとUEFIファームウェアインストール
$ sudo apt install qemu-system-x86 ovmf
4.1. QEMU起動
$ qemu-system-x86_64 -bios OVMF.fd -hda fat:p1 -hdb fat:p2
4.1. UEFI ShellからLinux起動
Shell> fs0:
fs0> bzImage.efi root=/dev/sdb1 init=/bin/sh rootwait
終了はウィンドウを閉じてしまっても良いが、
Ctrl+Alt+2 でQEMUモニターへ入り、quitコマンドでも終了できる
実機
1. USBフラッシュメモリ準備
1.1. パーティション作成
$ sudo fdisk /dev/sdb
Welcome to fdisk (util-linux 2.25.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Command (m for help): d
Partition number (1,2, default 2):
Partition 2 has been deleted.
Command (m for help): d
Selected partition 1
Partition 1 has been deleted.
Command (m for help): d
No partition is defined yet!
Could not delete partition 1
既存のパーティションを全て削除
1. USBフラッシュメモリ準備
1.1. パーティション作成
Command (m for help): o
Created a new DOS disklabel with disk identifier 0x4c953ff5.
Command (m for help): n
Partition type
p primary (0 primary, 0 extended, 4 free)
e extended (container for logical partitions)
Select (default p):
Using default response p.
Partition number (1-4, default 1):
First sector (2048-31277055, default 2048):
Last sector, +sectors or +size{K,M,G,T,P} (2048-31277055, default 31277055): +128M
Created a new partition 1 of type 'Linux' and of size 128 MiB.
UEFIファームウェア用パーティション作成
1. USBフラッシュメモリ準備
1.1. パーティション作成
Command (m for help): n
Partition type
p primary (1 primary, 0 extended, 3 free)
e extended (container for logical partitions)
Select (default p):
Using default response p.
Partition number (2-4, default 2):
First sector (264192-31277055, default 264192):
Last sector, +sectors or +size{K,M,G,T,P} (264192-31277055, default 31277055):
Created a new partition 2 of type 'Linux' and of size 14.8 GiB.
ルートファイルシステム用パーティション作成
1. USBフラッシュメモリ準備
1.1. パーティション作成
Command (m for help): t
Partition number (1,2, default 2): 1
Hex code (type L to list all codes): b
If you have created or modified any DOS 6.x partitions, please see the fdisk 
documentation for additional information.
Changed type of partition 'Linux' to 'W95 FAT32'.
Command (m for help): w
The partition table has been altered.
Calling ioctl() to re-read partition table.
Syncing disks.
パーティションタイプ設定、設定反映
1. USBフラッシュメモリ準備
1.2. フォーマット
$ sudo mkfs.vfat -F 32 /dev/sdb1
$ sudo mkfs.ext4 /dev/sdb2
2. 配置
2.1. マウント
$ mkdir mp1 mp2
$ sudo mount /dev/sdb1 mp1
$ sudo mount /dev/sdb2 mp2
2.3. アンマウント
$ sudo umount mp1
$ sudo umount mp2
2.2. Linuxカーネルイメージと
  BusyBoxバイナリを配置
$ sudo cp p1/* mp1/
$ sudo cp -r p2/* mp2/
2. 配置
2.3. UEFI Shellをダウンロード、配置
$ wget 
https://github.com/tianocore/edk2/raw/master/EdkShellBinPkg/FullShell/X64/Shell_Full.efi
2.3. アンマウント
$ sudo umount mp1
$ sudo umount mp2
https://github.com/tianocore/edk2/tree/master/EdkShellBinPkg/FullShell/X64
$ sudo mkdir -p mp1/EFI/BOOT
$ sudo cp Shell_Full.efi mp1/EFI/BOOT/BOOTX64.EFI
3. 実機で起動
3.1. 起動ディスクの優先順位を変更し、
  USBフラッシュメモリから起動
3.2. UEFI ShellからLinux起動
PCメーカー毎に、適宜行ってください
Shell> fs0:
fs0> bzImage.efi root=/dev/sdb2 init=/bin/sh rootwait
shutdown、haltコマンド等無いので、電源ボタンで終了させてください
ルートファイルシステム(USBフラッシュメモリ第2パーティション)は、
Read Onlyでマウントされているため、ファイルシステム破壊の問題はありません。
おまけ: debootstrap
LFSでは無くなりますが、
aptが使えるルートファイルシステムを
手っ取り早く構築するには、
debootstrap というツールがあります。
$ sudo mount /dev/sdb2 mp2
$ sudo debootstrap sid mp2
(Debianのunstableを構築)
その後、UEFI Shellから以下の様なコマンドで
起動できます
Shell> fs0:
fs0> bzImage.ef root=/dev/sdb2 rootwait
技術書典3に参加します!
配置: か13
新刊
【技術書典3】
日時: 2017/10/22(日)
   11:00〜17:00
場所: アキバ・スクエア
1 of 27

Recommended

UEFIによるELFバイナリの起動 by
UEFIによるELFバイナリの起動UEFIによるELFバイナリの起動
UEFIによるELFバイナリの起動uchan_nos
5K views29 slides
OSを手作りするという趣味と仕事 by
OSを手作りするという趣味と仕事OSを手作りするという趣味と仕事
OSを手作りするという趣味と仕事uchan_nos
1.2K views25 slides
ゼロからはじめるKVM超入門 by
ゼロからはじめるKVM超入門ゼロからはじめるKVM超入門
ゼロからはじめるKVM超入門VirtualTech Japan Inc.
22.2K views18 slides
initramfsについて by
initramfsについてinitramfsについて
initramfsについてKazuhiro Nishiyama
14.3K views53 slides
はりぼて OS で ELF なアプリを起動してみた by
はりぼて OS で ELF なアプリを起動してみたはりぼて OS で ELF なアプリを起動してみた
はりぼて OS で ELF なアプリを起動してみたuchan_nos
2.4K views30 slides
30分で分かる!OSの作り方 by
30分で分かる!OSの作り方30分で分かる!OSの作り方
30分で分かる!OSの作り方uchan_nos
40.3K views38 slides

More Related Content

What's hot

Ansible 入門 #01 (初心者向け) by
Ansible 入門 #01 (初心者向け)Ansible 入門 #01 (初心者向け)
Ansible 入門 #01 (初心者向け)Taro Hirose
6.2K views34 slides
不揮発メモリ(NVDIMM)とLinuxの対応動向について by
不揮発メモリ(NVDIMM)とLinuxの対応動向について不揮発メモリ(NVDIMM)とLinuxの対応動向について
不揮発メモリ(NVDIMM)とLinuxの対応動向についてYasunori Goto
21.2K views59 slides
x86とコンテキストスイッチ by
x86とコンテキストスイッチx86とコンテキストスイッチ
x86とコンテキストスイッチMasami Ichikawa
8.6K views76 slides
10分で分かるLinuxブロックレイヤ by
10分で分かるLinuxブロックレイヤ10分で分かるLinuxブロックレイヤ
10分で分かるLinuxブロックレイヤTakashi Hoshino
16.3K views14 slides
何となく勉強した気分になれるパーサ入門 by
何となく勉強した気分になれるパーサ入門何となく勉強した気分になれるパーサ入門
何となく勉強した気分になれるパーサ入門masayoshi takahashi
35.8K views43 slides
DockerコンテナでGitを使う by
DockerコンテナでGitを使うDockerコンテナでGitを使う
DockerコンテナでGitを使うKazuhiro Suga
18.8K views8 slides

What's hot(20)

Ansible 入門 #01 (初心者向け) by Taro Hirose
Ansible 入門 #01 (初心者向け)Ansible 入門 #01 (初心者向け)
Ansible 入門 #01 (初心者向け)
Taro Hirose6.2K views
不揮発メモリ(NVDIMM)とLinuxの対応動向について by Yasunori Goto
不揮発メモリ(NVDIMM)とLinuxの対応動向について不揮発メモリ(NVDIMM)とLinuxの対応動向について
不揮発メモリ(NVDIMM)とLinuxの対応動向について
Yasunori Goto21.2K views
x86とコンテキストスイッチ by Masami Ichikawa
x86とコンテキストスイッチx86とコンテキストスイッチ
x86とコンテキストスイッチ
Masami Ichikawa8.6K views
10分で分かるLinuxブロックレイヤ by Takashi Hoshino
10分で分かるLinuxブロックレイヤ10分で分かるLinuxブロックレイヤ
10分で分かるLinuxブロックレイヤ
Takashi Hoshino16.3K views
何となく勉強した気分になれるパーサ入門 by masayoshi takahashi
何となく勉強した気分になれるパーサ入門何となく勉強した気分になれるパーサ入門
何となく勉強した気分になれるパーサ入門
masayoshi takahashi35.8K views
DockerコンテナでGitを使う by Kazuhiro Suga
DockerコンテナでGitを使うDockerコンテナでGitを使う
DockerコンテナでGitを使う
Kazuhiro Suga18.8K views
ARM LinuxのMMUはわかりにくい by wata2ki
ARM LinuxのMMUはわかりにくいARM LinuxのMMUはわかりにくい
ARM LinuxのMMUはわかりにくい
wata2ki6.7K views
AnsibleによるInfrastructure as code入門 by kk_Ataka
AnsibleによるInfrastructure as code入門AnsibleによるInfrastructure as code入門
AnsibleによるInfrastructure as code入門
kk_Ataka62.7K views
FPGA+SoC+Linux実践勉強会資料 by 一路 川染
FPGA+SoC+Linux実践勉強会資料FPGA+SoC+Linux実践勉強会資料
FPGA+SoC+Linux実践勉強会資料
一路 川染4.4K views
CXL_説明_公開用.pdf by Yasunori Goto
CXL_説明_公開用.pdfCXL_説明_公開用.pdf
CXL_説明_公開用.pdf
Yasunori Goto3.9K views
エンジニアなら知っておきたい「仮想マシン」のしくみ (BPStudy38) by Takeshi HASEGAWA
エンジニアなら知っておきたい「仮想マシン」のしくみ (BPStudy38)エンジニアなら知っておきたい「仮想マシン」のしくみ (BPStudy38)
エンジニアなら知っておきたい「仮想マシン」のしくみ (BPStudy38)
Takeshi HASEGAWA9.4K views
分散ストレージ技術Cephの最新情報 by Emma Haruka Iwao
分散ストレージ技術Cephの最新情報分散ストレージ技術Cephの最新情報
分散ストレージ技術Cephの最新情報
Emma Haruka Iwao16.5K views
【2000行弱!】x86用自作カーネルの紹介 by Yuma Ohgami
【2000行弱!】x86用自作カーネルの紹介【2000行弱!】x86用自作カーネルの紹介
【2000行弱!】x86用自作カーネルの紹介
Yuma Ohgami8.2K views
C++でできる!OS自作入門 by uchan_nos
C++でできる!OS自作入門C++でできる!OS自作入門
C++でできる!OS自作入門
uchan_nos46.5K views
自宅サーバ仮想化 by anubis_369
自宅サーバ仮想化自宅サーバ仮想化
自宅サーバ仮想化
anubis_36914.1K views
「おうちクラウド」が今熱い! by Hirotaka Sato
「おうちクラウド」が今熱い!「おうちクラウド」が今熱い!
「おうちクラウド」が今熱い!
Hirotaka Sato1K views
OSC2011 Tokyo/Fall 濃いバナ(virtio) by Takeshi HASEGAWA
OSC2011 Tokyo/Fall 濃いバナ(virtio)OSC2011 Tokyo/Fall 濃いバナ(virtio)
OSC2011 Tokyo/Fall 濃いバナ(virtio)
Takeshi HASEGAWA5.2K views
15分でわかるGit入門 by to_ueda
15分でわかるGit入門15分でわかるGit入門
15分でわかるGit入門
to_ueda55.8K views
コンセプトから理解するGitコマンド by ktateish
コンセプトから理解するGitコマンドコンセプトから理解するGitコマンド
コンセプトから理解するGitコマンド
ktateish42.6K views

Similar to UEFIで始めるLinux From Scratch

Yocto Project ハンズオン / 参加者用資料 by
Yocto Project ハンズオン / 参加者用資料Yocto Project ハンズオン / 参加者用資料
Yocto Project ハンズオン / 参加者用資料Nobuhiro Iwamatsu
8.4K views10 slides
The Art of Network Protocols - RIP編 - by
The Art of Network Protocols - RIP編 -The Art of Network Protocols - RIP編 -
The Art of Network Protocols - RIP編 -kirin_gumi
2.5K views68 slides
あなたのAppleにもEFIモンスターはいませんか? by Pedro Vilaça - CODE BLUE 2015 by
あなたのAppleにもEFIモンスターはいませんか? by Pedro Vilaça - CODE BLUE 2015あなたのAppleにもEFIモンスターはいませんか? by Pedro Vilaça - CODE BLUE 2015
あなたのAppleにもEFIモンスターはいませんか? by Pedro Vilaça - CODE BLUE 2015CODE BLUE
2.3K views173 slides
UEFI向け自作OSの紹介 by
UEFI向け自作OSの紹介UEFI向け自作OSの紹介
UEFI向け自作OSの紹介Yuma Ohgami
1.5K views11 slides
20110715 osc2011 kyoto by
20110715 osc2011 kyoto20110715 osc2011 kyoto
20110715 osc2011 kyotoYamauchi isamu
856 views68 slides
GPD-WINや中華ノートPCなどATOM機器に 各種Linuxディストリを入れて遊ぼう Install Linux Distributions on G... by
GPD-WINや中華ノートPCなどATOM機器に 各種Linuxディストリを入れて遊ぼう Install Linux Distributions on G...GPD-WINや中華ノートPCなどATOM機器に 各種Linuxディストリを入れて遊ぼう Install Linux Distributions on G...
GPD-WINや中華ノートPCなどATOM機器に 各種Linuxディストリを入れて遊ぼう Install Linux Distributions on G...Netwalker lab kapper
10.3K views23 slides

Similar to UEFIで始めるLinux From Scratch(20)

Yocto Project ハンズオン / 参加者用資料 by Nobuhiro Iwamatsu
Yocto Project ハンズオン / 参加者用資料Yocto Project ハンズオン / 参加者用資料
Yocto Project ハンズオン / 参加者用資料
Nobuhiro Iwamatsu8.4K views
The Art of Network Protocols - RIP編 - by kirin_gumi
The Art of Network Protocols - RIP編 -The Art of Network Protocols - RIP編 -
The Art of Network Protocols - RIP編 -
kirin_gumi2.5K views
あなたのAppleにもEFIモンスターはいませんか? by Pedro Vilaça - CODE BLUE 2015 by CODE BLUE
あなたのAppleにもEFIモンスターはいませんか? by Pedro Vilaça - CODE BLUE 2015あなたのAppleにもEFIモンスターはいませんか? by Pedro Vilaça - CODE BLUE 2015
あなたのAppleにもEFIモンスターはいませんか? by Pedro Vilaça - CODE BLUE 2015
CODE BLUE2.3K views
UEFI向け自作OSの紹介 by Yuma Ohgami
UEFI向け自作OSの紹介UEFI向け自作OSの紹介
UEFI向け自作OSの紹介
Yuma Ohgami1.5K views
GPD-WINや中華ノートPCなどATOM機器に 各種Linuxディストリを入れて遊ぼう Install Linux Distributions on G... by Netwalker lab kapper
GPD-WINや中華ノートPCなどATOM機器に 各種Linuxディストリを入れて遊ぼう Install Linux Distributions on G...GPD-WINや中華ノートPCなどATOM機器に 各種Linuxディストリを入れて遊ぼう Install Linux Distributions on G...
GPD-WINや中華ノートPCなどATOM機器に 各種Linuxディストリを入れて遊ぼう Install Linux Distributions on G...
Netwalker lab kapper10.3K views
Osc201703 tokyo-clonezilla-v1.2 j by Akira Yoshiyama
Osc201703 tokyo-clonezilla-v1.2 jOsc201703 tokyo-clonezilla-v1.2 j
Osc201703 tokyo-clonezilla-v1.2 j
Akira Yoshiyama510 views
20160619_LPICl304 技術解説セミナー in AP浜松町 by Takahiro Kujirai
20160619_LPICl304 技術解説セミナー in AP浜松町20160619_LPICl304 技術解説セミナー in AP浜松町
20160619_LPICl304 技術解説セミナー in AP浜松町
Takahiro Kujirai420 views
20130126 第2回福岡debian勉強会 debian wheezyとdebian installerのはなし by Tsuyoshi Yamada
20130126 第2回福岡debian勉強会 debian wheezyとdebian installerのはなし20130126 第2回福岡debian勉強会 debian wheezyとdebian installerのはなし
20130126 第2回福岡debian勉強会 debian wheezyとdebian installerのはなし
Tsuyoshi Yamada2.2K views
Raspberry pi で始める v sphere 7 超入門 by Satoshi Imai
Raspberry pi で始める v sphere 7 超入門Raspberry pi で始める v sphere 7 超入門
Raspberry pi で始める v sphere 7 超入門
Satoshi Imai7.1K views
32bit UEFIマシンで遊ぶ by shimadah
32bit UEFIマシンで遊ぶ32bit UEFIマシンで遊ぶ
32bit UEFIマシンで遊ぶ
shimadah24.8K views
LPICレベル1技術解説セミナー(2012/11/11) by Kazuko Itoda
LPICレベル1技術解説セミナー(2012/11/11)LPICレベル1技術解説セミナー(2012/11/11)
LPICレベル1技術解説セミナー(2012/11/11)
Kazuko Itoda2K views
x86_64向け自作OSの紹介 by Yuma Ohgami
x86_64向け自作OSの紹介x86_64向け自作OSの紹介
x86_64向け自作OSの紹介
Yuma Ohgami1.1K views
Yocto bspを作ってみた by wata2ki
Yocto bspを作ってみたYocto bspを作ってみた
Yocto bspを作ってみた
wata2ki7.2K views

More from Yuma Ohgami

バイナリ生物学でデイジーワールド by
バイナリ生物学でデイジーワールドバイナリ生物学でデイジーワールド
バイナリ生物学でデイジーワールドYuma Ohgami
32 views24 slides
去年「バイナリ生物学」で今年「PDP-7」だったのはなぜなのか? by
去年「バイナリ生物学」で今年「PDP-7」だったのはなぜなのか?去年「バイナリ生物学」で今年「PDP-7」だったのはなぜなのか?
去年「バイナリ生物学」で今年「PDP-7」だったのはなぜなのか?Yuma Ohgami
21 views18 slides
60年代ゲームハードPDP-7のご紹介 by
60年代ゲームハードPDP-7のご紹介60年代ゲームハードPDP-7のご紹介
60年代ゲームハードPDP-7のご紹介Yuma Ohgami
72 views15 slides
セキュリティ・ネクストキャンプ2022 オンライン [N5] バイナリ生物学入門 by
セキュリティ・ネクストキャンプ2022 オンライン [N5] バイナリ生物学入門セキュリティ・ネクストキャンプ2022 オンライン [N5] バイナリ生物学入門
セキュリティ・ネクストキャンプ2022 オンライン [N5] バイナリ生物学入門Yuma Ohgami
23 views20 slides
「へにゃぺんて」のこれまでを振り返るブログ記事の紹介 by
「へにゃぺんて」のこれまでを振り返るブログ記事の紹介「へにゃぺんて」のこれまでを振り返るブログ記事の紹介
「へにゃぺんて」のこれまでを振り返るブログ記事の紹介Yuma Ohgami
25 views6 slides
セガサターンで動く自作シンセサイザーの紹介 by
セガサターンで動く自作シンセサイザーの紹介セガサターンで動く自作シンセサイザーの紹介
セガサターンで動く自作シンセサイザーの紹介Yuma Ohgami
266 views29 slides

More from Yuma Ohgami(20)

バイナリ生物学でデイジーワールド by Yuma Ohgami
バイナリ生物学でデイジーワールドバイナリ生物学でデイジーワールド
バイナリ生物学でデイジーワールド
Yuma Ohgami32 views
去年「バイナリ生物学」で今年「PDP-7」だったのはなぜなのか? by Yuma Ohgami
去年「バイナリ生物学」で今年「PDP-7」だったのはなぜなのか?去年「バイナリ生物学」で今年「PDP-7」だったのはなぜなのか?
去年「バイナリ生物学」で今年「PDP-7」だったのはなぜなのか?
Yuma Ohgami21 views
60年代ゲームハードPDP-7のご紹介 by Yuma Ohgami
60年代ゲームハードPDP-7のご紹介60年代ゲームハードPDP-7のご紹介
60年代ゲームハードPDP-7のご紹介
Yuma Ohgami72 views
セキュリティ・ネクストキャンプ2022 オンライン [N5] バイナリ生物学入門 by Yuma Ohgami
セキュリティ・ネクストキャンプ2022 オンライン [N5] バイナリ生物学入門セキュリティ・ネクストキャンプ2022 オンライン [N5] バイナリ生物学入門
セキュリティ・ネクストキャンプ2022 オンライン [N5] バイナリ生物学入門
Yuma Ohgami23 views
「へにゃぺんて」のこれまでを振り返るブログ記事の紹介 by Yuma Ohgami
「へにゃぺんて」のこれまでを振り返るブログ記事の紹介「へにゃぺんて」のこれまでを振り返るブログ記事の紹介
「へにゃぺんて」のこれまでを振り返るブログ記事の紹介
Yuma Ohgami25 views
セガサターンで動く自作シンセサイザーの紹介 by Yuma Ohgami
セガサターンで動く自作シンセサイザーの紹介セガサターンで動く自作シンセサイザーの紹介
セガサターンで動く自作シンセサイザーの紹介
Yuma Ohgami266 views
セガサターンマシン語プログラミングの紹介 by Yuma Ohgami
セガサターンマシン語プログラミングの紹介セガサターンマシン語プログラミングの紹介
セガサターンマシン語プログラミングの紹介
Yuma Ohgami952 views
ハードの作りで振り返るセガサターン by Yuma Ohgami
ハードの作りで振り返るセガサターンハードの作りで振り返るセガサターン
ハードの作りで振り返るセガサターン
Yuma Ohgami590 views
エミュレータのコードを読んでわかるセガサターン by Yuma Ohgami
エミュレータのコードを読んでわかるセガサターンエミュレータのコードを読んでわかるセガサターン
エミュレータのコードを読んでわかるセガサターン
Yuma Ohgami440 views
エミュレータのコードを読んでわかる「セガサターン」 by Yuma Ohgami
エミュレータのコードを読んでわかる「セガサターン」エミュレータのコードを読んでわかる「セガサターン」
エミュレータのコードを読んでわかる「セガサターン」
Yuma Ohgami158 views
シェルスクリプトでセガサターンマシン語ベアメタルプログラミング by Yuma Ohgami
シェルスクリプトでセガサターンマシン語ベアメタルプログラミングシェルスクリプトでセガサターンマシン語ベアメタルプログラミング
シェルスクリプトでセガサターンマシン語ベアメタルプログラミング
Yuma Ohgami570 views
ゲームボーイ向けOSの作り方 by Yuma Ohgami
ゲームボーイ向けOSの作り方ゲームボーイ向けOSの作り方
ゲームボーイ向けOSの作り方
Yuma Ohgami679 views
メガドラ実機で自作のROMファイルを動かしてみた話 by Yuma Ohgami
メガドラ実機で自作のROMファイルを動かしてみた話メガドラ実機で自作のROMファイルを動かしてみた話
メガドラ実機で自作のROMファイルを動かしてみた話
Yuma Ohgami726 views
/dev/kvmを直接叩いて自作VM by Yuma Ohgami
/dev/kvmを直接叩いて自作VM/dev/kvmを直接叩いて自作VM
/dev/kvmを直接叩いて自作VM
Yuma Ohgami1.1K views
CybozuのOSS(WalB)へコミットしてみた/使ってみた by Yuma Ohgami
CybozuのOSS(WalB)へコミットしてみた/使ってみたCybozuのOSS(WalB)へコミットしてみた/使ってみた
CybozuのOSS(WalB)へコミットしてみた/使ってみた
Yuma Ohgami946 views
GPD WINでStretchを動かす by Yuma Ohgami
GPD WINでStretchを動かすGPD WINでStretchを動かす
GPD WINでStretchを動かす
Yuma Ohgami414 views
UEFIベアメタルプログラミング by Yuma Ohgami
UEFIベアメタルプログラミングUEFIベアメタルプログラミング
UEFIベアメタルプログラミング
Yuma Ohgami1.5K views
【シェル芸】コマンド7つで簡易コンテナ by Yuma Ohgami
【シェル芸】コマンド7つで簡易コンテナ【シェル芸】コマンド7つで簡易コンテナ
【シェル芸】コマンド7つで簡易コンテナ
Yuma Ohgami935 views
フルスクラッチ自作OS(OS5)の紹介 by Yuma Ohgami
フルスクラッチ自作OS(OS5)の紹介フルスクラッチ自作OS(OS5)の紹介
フルスクラッチ自作OS(OS5)の紹介
Yuma Ohgami1.1K views
QEMUでARM64bitベアメタルプログラミング by Yuma Ohgami
QEMUでARM64bitベアメタルプログラミングQEMUでARM64bitベアメタルプログラミング
QEMUでARM64bitベアメタルプログラミング
Yuma Ohgami3.8K views

UEFIで始めるLinux From Scratch