Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
OSもどきOS
Search
Sora Arakawa
May 30, 2026
Programming
620
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
OSもどきOS
Kernel/VM探検隊@関西 12回目
Sora Arakawa
May 30, 2026
More Decks by Sora Arakawa
See All by Sora Arakawa
オープンソース電車運転ゲーム「もっと! 地下鉄 大名古屋」の紹介
arkw
0
31
今からFlash開発できるわけないじゃん、ムリムリ! (※ムリじゃなかった!?)
arkw
0
440
令和最新版Android Studioで化石デバイス向けアプリを作る
arkw
0
700
お前も同人作家にならないか? 技術系同人誌制作入門
arkw
3
110
非root化Androidスマホでも動く仮想マシンアプリを試してみた
arkw
0
1.4k
技術島の指定ツール「LaTeX」で同人誌を作ろう
arkw
2
450
ポスト・パソコン時代のジャンク遊び スマートデバイス編
arkw
0
230
ジャンカーよ、車も買え ~10分でわかる!? 中古車選び入門~
arkw
2
220
arkw vs. サーバ移転 -2024年1月版-
arkw
0
400
Other Decks in Programming
See All in Programming
1年で人数1.5倍、PR数5.5倍増。 品質とアウトカムはどうなったか、 何が効いたか
ike002jp
0
140
琵琶湖の水は止められてもNet--HTTPのリトライは止められない / You might be able to stop the water flow of Lake Biwa but you can't stop Net::HTTP retries
luccafort
PRO
0
380
分散システム、なんですぐ死んでしまうん?耐障害性を高めたいあなたのためのレジリエンスパターン入門
mshibuya
7
6.2k
Prismを使った型安全な暗号化_関数型まつり2026
_fhhmm
0
140
継続モナドとリアクティブプログラミング
yukikurage
3
600
Haskell/Servantを通してWebミドルウェアを捉え直す
pizzacat83
1
580
AIキャラアプリkaiwaの低遅延音声通話基盤をどう作ったか - AWS Gravitonで支える低遅延・低コストAI Agent基盤
mogamit
0
170
PHP Application における Kubernetes 内 gRPC 通信
ganchiku
0
440
LaravelLive Japan の裏方のすべて — 第188回 PHP勉強会@東京 (2026-06-24)
suguruooki
2
150
共通化で考えるべきは、実装より公開する型だった
codeegg
0
240
AI駆動開発を妨げる技術的負債の解消アプローチ / ai-refactoring-approach
minodriven
17
9.1k
act2-costs.pdf
sumedhbala
0
110
Featured
See All Featured
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.6k
First, design no harm
axbom
PRO
2
1.2k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
510
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.8k
A Tale of Four Properties
chriscoyier
163
24k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.5k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
65
56k
Git: the NoSQL Database
bkeepers
PRO
432
67k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
180
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
72
40k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
220
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3k
Transcript
荒川 奏良 (Sora Arakawa, arkw) OSもどきOS 2026/05/30 Kernel/VM探検隊@関西 12回目 さくらインターネット株式会社
Blooming Camp + オンライン (YouTube Live) (c) 2026 Sora Arakawa all rights reserved. https://arkw.net/
(c) 2026 Sora Arakawa all rights reserved. https://arkw.net/ 自己紹介 •
荒川 奏良 (Sora Arakawa, arkw) • 静岡大学 情報学部 行動情報学科 卒 • おもんない会社でおもんない仕事 • 愛知県岡崎市出身→三重県四日市市在住 • 趣味 : プログラミング、デザイン、移動など • 最近は同人誌即売会によく出ています • 次は当落待ちのコミックマーケット108 • https://arkw.net/ • Twitter (現X) : @arkw0 • Misskey (ActivityPub) : @
[email protected]
X (Twitter) / Misskey Discord
(c) 2026 Sora Arakawa all rights reserved. https://arkw.net/ 自己紹介
(c) 2026 Sora Arakawa all rights reserved. https://arkw.net/ 導入 OSもどき
(c) 2026 Sora Arakawa all rights reserved. https://arkw.net/ What’s “OSもどき”
? • OSを模倣したジョーク (ランチャー) プログラム • 単独でOSとして動かすことはできない • 開発言語は主にHSP (Hot Soup Processor) • Highly Sensitive Personではない • 2010年代プロガキ (※プログラミング中毒のガキ) の必修科目 • 流石にオワコンか?…と思いきや、未だに年1~2本はHSPプログラムコンテスト で見る地味に長寿なコンテンツ
(c) 2026 Sora Arakawa all rights reserved. https://arkw.net/ [PG_MANA 2016]
出典: https://x.com/PG_MANA_/status/712253671497539584
(c) 2026 Sora Arakawa all rights reserved. https://arkw.net/ 導入 OSもどきを
Linuxに載せよう (他候補: Windows PE、ReactOSなど…)
(c) 2026 Sora Arakawa all rights reserved. https://arkw.net/ 導入 =OSもどきOS
(c) 2026 Sora Arakawa all rights reserved. https://arkw.net/ 方針 •
Windows向けのOSもどきをLinux+Wineで動かす • ディストロにはカスタマイズが容易かつ軽量なTiny Core Linuxを選定 • 現在も開発中で、最新バージョンは2026年2月の17.0 • ただし、今回は少し古い12.0 (+Wine 5.x) を使用 • 以降のリリースに付随するWineは初期化中にフリーズするため • ライブCD形式で実機/仮想マシンから起動直後にOSもどきを立ち上げる • 開発環境に普段と同じWindowsを活用 (WSL+VSCode+VirtualBox)
(c) 2026 Sora Arakawa all rights reserved. https://arkw.net/ まずはISOイメージを解体 $
mkdir iso $ sudo mount -o loop TinyCore-12.0.iso iso $ cp -a iso iso_data $ sudo umount iso $ rmdir iso
(c) 2026 Sora Arakawa all rights reserved. https://arkw.net/ core.gz (ルートファイルシステム)
も解体 $ mkdir core $ cd core $ zcat ../iso_data/boot/core.gz | sudo cpio -i -H newc -d
(c) 2026 Sora Arakawa all rights reserved. https://arkw.net/ OSもどきの選定 •
当初はインターネットで適当に探して突っ込む予定でしたが… • 著名なOSもどきが既にインターネットから消えていた • OSもどきブーム? は2015年前後 • 黒歴史の封印、移転に伴うリンク切れ、etc...でバイナリを発見できず • 仕方が無いので簡易的なものを自作 • 開発言語はもちろんHSP3 • 機能はロック解除、時刻、電源周りだけ • 実行ファイルとアセットを /opt/osmodoki/ に配置
(c) 2026 Sora Arakawa all rights reserved. https://arkw.net/ Wineのインストール •
Tiny Core LinuxはTCZファイルでソフトウェアを追加できる • 内蔵のApps または http://www.tinycorelinux.net/17.x/x86/tcz/ • 依存ファイルは*.tcz.depに記載 • 特に必須ライブラリの無いパッケージでは404エラー • 自作のPythonスクリプトで*.tczと*.tcz.md5.txtをまとめて取得 し ./iso_data/cde/optional/ へ保存 • onboot.lst (+copy2fs.lst) にWineと依存ライブラリを全て記述 • このファイルに記載したパッケージは、起動時に自動で読み込まれる • wbar.tczを消すと画面下部のDock風ランチャーが消える • wine-gecko.tczとwine-mono.tczも忘れずに!! • 入れておかないとWineの初回実行時にエラーダイアログが出てしまう
(c) 2026 Sora Arakawa all rights reserved. https://arkw.net/ シャットダウン/再起動用のシェルスクリプト •
折角なのでOSもどきから電源を制 御できるようにする • WineからLinuxコマンドの直接実行 は難しいらしく、右のシェルスクリ プトを挟み対応 • バックグラウンドで1秒毎に動作 • Wineアプリケーションから poweroffファイルを生成すると シャットダウン、rebootファイル を生成すると再起動 (内容不問) • HSP3ではbsaveまたはnotesave #!/bin/sh POWEROFF_TARGET="/opt/osmodoki/poweroff" REBOOT_TARGET="/opt/osmodoki/reboot" while true do if [ -f "$POWEROFF_TARGET" ]; then rm -f "$POWEROFF_TARGET" sudo /sbin/poweroff exit 0 fi if [ -f "$REBOOT_TARGET" ]; then rm -f "$REBOOT_TARGET" sudo /sbin/reboot exit 0 fi sleep 1 done
(c) 2026 Sora Arakawa all rights reserved. https://arkw.net/ OSもどきを自動実行 •
Tiny Core Linuxでは、X11の起動時に /home/tc/.X.d/ 内の *.sh ファイル が全て実行される • デフォルトユーザtcは起動中に自動生成 • ただし、フォルダだけ先に作っておくことも許容される • パーミッションを間違えるとエラーを吐くため注意 • X11が絡まない処理は予め用意された /opt/bootlocal.sh にも書けます #!/bin/sh export LANG=ja_JP.UTF-8 export LC_ALL=ja_JP.UTF-8 fc-cache -r -v nohup /opt/osmodoki/monitor.sh >/tmp/monitor.log 2>&1 & wine /opt/osmodoki/osmodoki.exe
(c) 2026 Sora Arakawa all rights reserved. https://arkw.net/ core.gzとISOイメージを元に戻す $
cd core $ sudo find . | sudo cpio -o -H newc | gzip -2 > ../core.gz $ cd ../ $ sudo mv ./core.gz ./iso_data/boot/ $ cd iso_data $ sudo mkisofs -l -J -R -V TinyCore -no-emul-boot -boot- load-size 4 -boot-info-table -b boot/isolinux/isolinux.bin -c boot/isolinux/boot.cat -o ../TinyCore-12.0- osmodokios.iso .
(c) 2026 Sora Arakawa all rights reserved. https://arkw.net/ core.gzとISOイメージを元に戻す •
x86_64版はBIOS/UEFI両対応のため、コマンドが微妙に変わります • 最近のマシンでも動くぞ!! • ISOイメージは20MB→313MBに大増量 • Wine一式が収まってこのサイズは驚異的とも $ sudo mkisofs -pad -l -J -R -V TinyCorePure64 -no-emul- boot -boot-load-size 4 -boot-info-table -b boot/isolinux/isolinux.bin -c boot/isolinux/boot.cat - hide-rr-moved -eltorito-alt-boot -e EFI/BOOT/efiboot.img -no-emul-boot -o ../TinyCorePure64-12.0-osmodokios.iso
(c) 2026 Sora Arakawa all rights reserved. https://arkw.net/ 動いた! •
起動時間はCPU2コア+メモリ1GB設定で2分程度 (Wineの初期化含む) • メモリ使用量は900MB弱 10fpsでも結構モッサリ
(c) 2026 Sora Arakawa all rights reserved. https://arkw.net/ 今後の課題 •
実機での挙動は未確認 • ここまでのスクリーンショットは全てVirtualBox • 64ビット対応が微妙 • Tiny Core Linux 64ビット版のwine.tczでは32ビットバイナリが動作しない • 32ビット版から新しめのWineを移植 or OSもどき側を64ビット化 • HSP 3.5以降はhsp3_64.asのインクルードに対応 • 音が出ない • ALSAとPulseAudioのインストールで解決しそう • 日本語入力に未対応 • Tiny Core Linux 11まではインターネット上にAnthyの導入実績有 • Windows (ReactOS) 用のIMEって動くんですかね
(c) 2026 Sora Arakawa all rights reserved. https://arkw.net/ 宣伝 •
技術書典20 新刊「イロイロ・アンドロイドplus!!」 • 元々のハード/ソフトを破壊しない範囲で、スマートフォンなどAndroidデバイス を限界まで活用する方法を紹介 • 昨年秋に出した「イロイロ・アンドロイド!!」の増補版 • 表紙イラストはXで最近人気のまほろさん (@maho__ron1) • B5サイズ/表紙のみカラー/本文124Pで500円 • 次のリアルイベは夏コミ? BOOTHにも出品予定 • 本日も数冊持ち込んでいます。お求めの方は荒川まで • 「エンジニアの中国語入門 第3版」メロブ委託中 • 2023年以来、総発行500部超の人気作 • 書泉ブックタワー入荷分は完売の模様 (2026/05/11現在)
(c) 2026 Sora Arakawa all rights reserved. https://arkw.net/ ご清聴ありがとうございました