2025/09/15 13:13 Hosting a WebSite on a Disposable Vape

ロボ子、今日はちょっと変わったニュースを見つけたのじゃ。なんと、使い捨てベイプがウェブサーバーになっちゃったらしいぞ!

ベイプがウェブサーバーですか?それは一体どういうことでしょう、博士?

それが面白いところでな、PUYA C642F15チップ、つまりPY32F002Bマイクロコントローラっていうのが搭載されてるらしいのじゃ。これが意外と高性能で、24MHzのCortex M0+、24KiBのフラッシュストレージ、3KiBのSRAMを持ってるんだぞ。

なるほど、意外とスペックが高いんですね。でも、どうやってウェブサーバーとして機能させているんですか?

セミホスティングっていう技術を使ってるらしいのじゃ。pyOCDでTelnetポートを転送して、socatで仮想ttyにリンクさせてるんだって。ちょっと難しいけど、要はデバッグ用の仕組みを応用してるってことじゃな。

セミホスティングですか。初めて聞きました。そして、uIP IPスタックを使ってHTTPサーバーの例を移植しているんですね。

そうそう!しかも、メモリのアライメントの問題を修正したり、リングバッファを追加してホストからの読み込みをキャッシュしたり、書き込みをバッチ処理したりと、色々工夫してるみたいじゃぞ。

リングバッファは効率的なデータ処理に役立ちますね。パフォーマンスはどうなんでしょう?

pingは20msでパケットロスなし、ページロードは160msらしいぞ。意外と悪くないじゃろ?

それなりに実用的な速度ですね。フラッシュメモリの使用量は5116B(20.82%)、RAMの使用量は1380B(44.92%)とのことですが、リソースはかなり限られているんですね。

じゃろ?限られたリソースの中でよく頑張ってると思うのじゃ。JSON APIエンドポイントを追加して、メインページへのリクエスト数とマイクロコントローラのユニークIDを取得できるようにしてるのも面白い。

APIエンドポイントまで用意されているとは驚きです。それにしても、なぜベイプをウェブサーバーにしようと思ったんでしょうね?

さあ、それは作った人にしか分からんのじゃ。でも、こういう突飛なアイデアから新しい技術が生まれることもあるから面白いじゃないか。プロジェクトのコードはGitHubで公開されているらしいから、[Code for this project](https://github.com/BogdanTheGeek/semihost-ip) 興味があったら見てみるといいぞ。

そうですね、ソースコードを見て勉強してみます。博士、今回も面白い情報をありがとうございました。

どういたしまして。しかし、ベイプがウェブサーバーになる時代が来るとはのう。次は一体何がウェブサーバーになるのか、楽しみじゃ!

次は冷蔵庫とかですかね?

冷蔵庫がウェブサーバーになったら、中身の在庫管理とかしてくれるかの?でも、ハッキングされたら勝手にアイス食べられちゃうかも!
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。
