2026年04月27日

マイクラのサーバー、C言語で書き直したらメモリ消費16GBから16MBに。オブジェクト指向は愚かな考え

1:2026/04/27(月) 15:31:37.51 ID:Roqp5JCo0.net
Minecraftのサーバーは、16GBを超えるメモリを積んだPCで動かすのが当たり前になっている。そこに挑んだのが、Redditユーザー angelthebox(GitHub: 4ngel2769)氏の自作プロジェクト「Macerun」だ。16MBのフラッシュとOctal PSRAMを搭載したESP32-S3マイコン上で、Minecraft Java Edition 1.16.5のサーバーをベアメタルで動作させる。

(省略)

全文
https://fabscene.com/new/make/macerun-minecraft-server-esp32-s3-bare-metal/









【画像】 「うひょー!缶コーヒーうまっ!」とか抜かしてるアホって土方や鳶職くらいだよねwww

【悲報】 Z世代さん、有給を使いたがる...

朝日「ボート事故と強まる萎縮 平和学習こそが最良の「防衛策」」

高野連の宝会長が不祥事で電撃辞任 厳重注意も理由は不明

【画像】 アクスタ界隈、なぜか立体感を求める





3:2026/04/27(月) 15:36:55.01 ID:RFtPy+nU0.net
マイクラ戦争の動画が面白かったなー


4:2026/04/27(月) 15:37:07.10 ID:RFtPy+nU0.net
あと監獄のやつ


5:2026/04/27(月) 15:38:36.63 ID:1ZZs4Itq0.net
じゃasmだったら?


13:2026/04/27(月) 15:48:49.95 ID:yA72hnZ80.net
>>5
コンパイラが最適化したCのほうが遥かに速い
人間が直接バイナリやそれに準ずる物を書いても現在の複雑怪奇なCPUに対して最適化しきれない



18:2026/04/27(月) 16:06:38.89 ID:1ZZs4Itq0.net
>>13
そうなんだ、以前どっかで何かをasmで書き換えたらすごい良くなったと書いてあったから、気になった
ありがとう



23:2026/04/27(月) 16:10:58.80 ID:30k5+mBA0.net
>>18
ffmpegだろ
信号処理やデコーダの類は
アセンブリ言語で速くなりえる



36:2026/04/27(月) 16:40:30.95 ID:yCMCBy3n0.net
>>18
書く人次第
特に昔は命令毎に処理に要するクロックが下手すると数十倍の差があったから
例えば掛け算を足し算に分解するようなテクニックもあった
今はどの命令も数クロック……どころか、複数の相性のいい命令を組み合わせて同時に実行させるかや
メモリに読みに行かせない(昔に比べるとメモリの速度が“相対的”に遅い)か等が重要になってくるから人の手には余る所がある
厄介なのはCPU毎に最適解が大きく違ったりすること
Cならば共通のコードでいいけど、ASMだとCPU毎に書き分ける必要がある



6:2026/04/27(月) 15:39:48.50 ID:AI+a+rwi0.net
多少大学院のとき統計ソフト自作した時プログラムやってたけど構造体とクラスの概念がこっちゃや


9:2026/04/27(月) 15:41:37.37 ID:riO7Va7Z0.net
最近のプログラムは、メモリ節約とか考えないんだろ


65:2026/04/27(月) 18:30:41.17 ID:WgdEhs5e0.net
>>9
無理に節約しようとするからバッファオーバーフローとか起きると考えるんだよね。



12:2026/04/27(月) 15:48:36.99 ID:HXIsUvgy0.net
こんなポンコツサーバが動くという話


14:2026/04/27(月) 15:56:30.14 ID:xLRjinoU0.net
BORLAND C++が良いな


15:2026/04/27(月) 15:57:24.03 ID:52Hep3l10.net
オブジェクト指向関係ないだろ


37:2026/04/27(月) 16:42:03.05 ID:yCMCBy3n0.net
>>15
くっそ関係あるよ
オブジェクトの数だけ管理情報が必要



41:2026/04/27(月) 16:50:27.77 ID:52Hep3l10.net
>>37
ちゃんと1読めよ



16:2026/04/27(月) 15:58:17.75 ID:vp3rNoaR0.net
ソシャゲの紙芝居ゲームとか10年前の1GBスマホでも動きそうだよね


17:2026/04/27(月) 15:59:55.45 ID:P9ayTD9H0.net
>FreeRTOS上で動作し、ネットワーク処理はlwIPの生TCPソケットを直接扱う。

今そんな方法あるんだな、自分はlinux配下でしか通信系作ったこと無いわ



19:2026/04/27(月) 16:09:16.76 ID:30k5+mBA0.net
生ソケットでやりたい放題

あまり奇抜なプレイはOSが干渉して禁止させてのかな



20:2026/04/27(月) 16:10:11.29 ID:BJZkxMaY0.net
オブジェクト指向はやってる感出すだけのガチのゴミやぞ


22:2026/04/27(月) 16:10:45.19 ID:NrNiw81E0.net
いや仕様変えたら似てるだけの別ゲーだろ
それで軽いって自慢されても



24:2026/04/27(月) 16:18:23.07 ID:30k5+mBA0.net
アセンブリ言語で「FFmpeg」を記述する方法のチュートリアルが
中略
なお、学習はC言語(特にポインター)の知識が必要とのこと。


いや
Cもポインタもアセンブリ言語もわからないやつはITから去れ
セキュリティが悪くなるだけ



25:2026/04/27(月) 16:19:40.21 ID:LBJZLiKS0.net
ポインタは一つの登竜門で、こんなのもわからない馬鹿は諦めてくれてたからな
javaはバカを参入させた



26:2026/04/27(月) 16:21:52.99 ID:v8kNI5Fu0.net
ランタイムがデカ過ぎるだけだろ


27:2026/04/27(月) 16:22:25.44 ID:tDxbxjvn0.net
Cでオブジェクト指向的な設計してないとなんで分かるんや


30:2026/04/27(月) 16:25:21.12 ID:lvOvZri+0.net
統合版もCで書いてるから軽いようなこと聞いた気がする


31:2026/04/27(月) 16:32:16.32 ID:yCMCBy3n0.net
16bitにすると更にコンパクトに


32:2026/04/27(月) 16:34:04.24 ID:IGowB6KG0.net
Windowsがクソ重い理由もこれか


33:2026/04/27(月) 16:36:13.61 ID:F0lzdSFN0.net
同時接続4人までなどの機能制限版か


35:2026/04/27(月) 16:39:19.94 ID:7tykMDwq0.net
16Mはストレージでしょ。メモリは512kbっぽい。


38:2026/04/27(月) 16:43:27.22 ID:zKKZZt3t0.net
よくわからん
ガンダムかドラゴンボールで例えてください



40:2026/04/27(月) 16:47:24.27 ID:JdjT2u9H0.net
void *p = null;


43:2026/04/27(月) 17:00:30.71 ID:pWVZ9tbz0.net
>>40
俺なら16kBにしてやんぜ



44:2026/04/27(月) 17:02:23.91 ID:reKb6oDp0.net
昔ポケコンでむりやりPokeやCall使ってピンポンゲームとか作ったな
面白い時代だった



45:2026/04/27(月) 17:02:48.46 ID:FE00O6Lp0.net
まだ出来てないんだよね


46:2026/04/27(月) 17:14:13.84 ID:KGkcqkcq0.net
昔のBSDのカーネルはサイズが1MBぐらいしかなかったんだがな。いまはLinuxとかブクブクに膨れてる。32ビットから64ビットになったからだけじゃない。


59:2026/04/27(月) 18:05:10.47 ID:jk0D0aKY0.net
>>46
しかも昔はカーネルを自分のハードに合わせてリコンパイルが普通だったな



64:2026/04/27(月) 18:22:50.80 ID:wjSSDgpj0.net
>>46
そりゃカーネルを仮想メモリに入れるわけにはいかないからな
当時のマシンの物理メモリに収まるようなものしか実装できない



47:2026/04/27(月) 17:18:38.73 ID:xTb/xm7M0.net
Cよりアセンブラで記述したほうがオーバーヘッドを減らせそう


48:2026/04/27(月) 17:22:16.51 ID:ZsEUCD8x0.net
つかクリフトより無能だよなAI
クリフトは嘘は作らなかったし



49:2026/04/27(月) 17:23:08.75 ID:fmS91kIq0.net
AI使ってマシン語レベルに最適化出来そうだね


50:2026/04/27(月) 17:25:18.92 ID:JQJ6sVzU0.net
じゃあrustならどうなるのっと


52:2026/04/27(月) 17:33:13.91 ID:40u4ro760.net
いままでJavaだったのか


53:2026/04/27(月) 17:39:38.23 ID:wUFsV32f0.net
オブジェクト指向がメモリ食うのは知ってたがそんなに違うのか


54:2026/04/27(月) 17:41:13.33 ID:h/rv8yCw0.net
Javaって時点で


60:2026/04/27(月) 18:08:36.35 ID:ZhfBk1fy0.net
車輪の再発明が極まってるなぁ
よっぽど時間余ってそうで羨ましい



62:2026/04/27(月) 18:16:49.91 ID:AQGdYuDn0.net
初めてのC()


63:
マイクラはマルチプラットホーム戦略で移植性を最大限に考えて作られてるから冗長性のあるプログラムになってるわけで、単一プラットホームに特化するなら小さく作れて当然


辺野古転覆 文科省現地聴取終了 同志社理事長「責任痛感」 でも校長は続投・参考人招致拒否

生活保護で330万円貯めたって言ったら返還しろって言われるんだけど、

高野連の宝会長が不祥事で電撃辞任 厳重注意も理由は不明

俺「むかしメロンの形した容器のアイスあっただろ」Z世代後輩「ないですね」俺「いやあったんだけどさ」後輩「ないです」

経済崩壊の中国・上海の地下鉄で、おばちゃん同士の殴り合いが発生


気になるAmazonの本


 コメント一覧 (19)

    • 1. 名無しさん@まとめたニュース
    • 2026年04月27日 19:16
    • 僕の〇門も閉鎖されそうです定期
    • 0
      まとめたニュース

      まとめたニュース

      likedしました

      liked
    • 2. 名無しさん@まとめたニュース
    • 2026年04月27日 19:18
    • ちょっと誤解させるタイトルだな コードも見たけど、どれも500行も無い
      >Macerun implements a highly constrained subset of the Minecraft Java protocol (version 754).
      のとおり、Tinyマイクラサーバって感じで、既存のサーバを置き換えるようなものじゃないよ
      ESP32知ってるならわかるはず
    • 0
      まとめたニュース

      まとめたニュース

      likedしました

      liked
    • 3. 
    • 2026年04月27日 19:24
    • ���Υ����ȤϺ���ޤ�����
    • 0
      まとめたニュース

      まとめたニュース

      likedしました

      liked
    • 4. 名無しさん@まとめたニュース
    • 2026年04月27日 19:35
    • 相変わらず半可通のしょうもねー議論と思って見てるが、まだこういう話が出来る人類が生き残ってるだけありがたいのかもしれないな。。
    • 0
      まとめたニュース

      まとめたニュース

      likedしました

      liked
    • 5. 名無しさん@まとめたニュース
    • 2026年04月27日 19:41
    • >16Mはストレージでしょ。メモリは512kbっぽい。
      こことフルセットとの機能比較をちゃんと書かないと記事になってないね
      試み自体は面白いけど
    • 0
      まとめたニュース

      まとめたニュース

      likedしました

      liked
    • 6. 名無しさん@まとめたニュース
    • 2026年04月27日 20:07
    • サーバーなんだから大容量メモリ必要なのはプログラムを動かすためじゃなくてユーザーを収納するためじゃないのか?
      オブジェクト指向言語はヒープ使いまくるから最低動作メモリが多いのは確かだがCでもユーザー多いとクライアントにヒープ割り当ててくから最悪値はそこまで大差ないはず
    • 0
      まとめたニュース

      まとめたニュース

      likedしました

      liked
      • 10. 名無しさん@まとめたニュース
      • 2026年04月27日 21:17
      • >>6
        元記事を読むと、同時接続のユーザー数は4人だってさ
        実用と言うよりも教育用だって書いてある
      • 0
        まとめたニュース

        まとめたニュース

        likedしました

        liked
    • 7. 名無しさん@まとめたニュース
    • 2026年04月27日 20:18
    • >昔ポケコンでむりやりPokeやCall使ってピンポンゲームとか作ったな
      POKEと聞くとパソコンサンデーを思い出す
    • 0
      まとめたニュース

      まとめたニュース

      likedしました

      liked
    • 8. 名無しさん@まとめたニュース
    • 2026年04月27日 20:36
    • AI時代になって、過去の言語が見直されるかもな。人が介在しないなら、可読性やデータ構造に気を配らずリソース追い求めても良いからな
    • 0
      まとめたニュース

      まとめたニュース

      likedしました

      liked
      • 16. 名無しさん@まとめたニュース
      • 2026年04月27日 22:32
      • >>8
        生のC書くとかただのバカだと言われてるので復権はあり得ないよ
      • 0
        まとめたニュース

        まとめたニュース

        likedしました

        liked
    • 9. 名無しさん@まとめたニュース
    • 2026年04月27日 21:16
    • > 特徴はJavaランタイムもLinuxカーネルも使わず、ソースコードはすべてC言語で記述されている点だ
      JavaとLinuxがデカそうだよな。オブジェクト指向も(オブジェクト指向の考え方に沿って作ると)メモリ効率は良くないし
      それに機能制限してるってのも省メモリの要因か
    • 0
      まとめたニュース

      まとめたニュース

      likedしました

      liked
    • 11. 名無しさん@まとめたニュース
    • 2026年04月27日 21:31
    • オンライン要素があると、新規の付け足し分を古い言語で組んだものに差し込めるかって点は?

      今までの分だけ最適化できても、次は?
      それを作業するコストはって話だよ、そういう話をすっ飛ばした与太
    • 0
      まとめたニュース

      まとめたニュース

      likedしました

      liked
    • 12. 名無しさん@まとめたニュース
    • 2026年04月27日 21:36
    • >オブジェクト指向は愚かな考え

      視野が狭い愚か者の極論
    • 0
      まとめたニュース

      まとめたニュース

      likedしました

      liked
    • 13. 名無しさん@まとめたニュース
    • 2026年04月27日 22:04
    • 本スレ64
      >そりゃカーネルを仮想メモリに入れるわけにはいかないからな

      スワップと仮想メモリ(virtual memory)の区別がついてない無能
    • 0
      まとめたニュース

      まとめたニュース

      likedしました

      liked
    • 14. 名無しさん@まとめたニュース
    • 2026年04月27日 22:13
    • どうせAIが上手いことやってくれるんだろ?
    • 0
      まとめたニュース

      まとめたニュース

      likedしました

      liked
    • 15. 名無しさん@まとめたニュース
    • 2026年04月27日 22:30
    • オブジェクト指向が悪いのではなくJVMのメモリ効率がネイティブプログラムに比べると極めて悪いだけ
      そこをどうにかしようという取り組みはかれこれ5年くらい続けられていて、今のペースなら来年くらいには開発中フラグが取れて正式化する
    • 0
      まとめたニュース

      まとめたニュース

      likedしました

      liked
    • 17. 名無しさん@まとめたニュース
    • 2026年04月27日 22:54
    • 元々のサーバの機材や仕様が向いてなかっただけ定期
    • 0
      まとめたニュース

      まとめたニュース

      likedしました

      liked
    • 18. 名無しさん@まとめたニュース
    • 2026年04月27日 23:33
    • ぬるぽ
    • 0
      まとめたニュース

      まとめたニュース

      likedしました

      liked
    • 19. 名無しさん@まとめたニュース
    • 2026年04月28日 06:33
    • 問題はあとでコードがクソ見づらくなることなんよ
    • 0
      まとめたニュース

      まとめたニュース

      likedしました

      liked


コメントフォーム
記事の評価
  • リセット
  • リセット

コメントを投稿してくれる方へ
いくつかのエロい単語やURL等は使えません。
下記の投稿は無断で削除する場合があります。予めご了承ください。
・荒らし行為(宣伝行為含む)
・犯罪的なコメント
・差別的なコメント
・過激な下ネタ

他ブログのネタ満載 アンテナページへ


スポンサードリンク
記事検索
月別アーカイブ
QRコード
QRコード
読者登録
LINE読者登録QRコード
スポンサードリンク