Discuss Scratch

sei6sei
Scratcher
500+ posts

ScratchでOSを作るには?

無理です。
Cだけじゃ実装できない部分がOSを作る際に出てきます
kur0nekop0315
Scratcher
34 posts

ScratchでOSを作るには?

sei6sei wrote:

無理です。
Cだけじゃ実装できない部分がOSを作る際に出てきます

asm類なら構文的には簡単…..あ、そこらの分類がむずいのか。
うーん定義ブロの名前でどーにか?
sei6sei
Scratcher
500+ posts

ScratchでOSを作るには?

できそうだと思うなら、作ってみてはいかがでしょうか?
すべての構文を網羅せずに、UEFI環境でHelloWorldするだけのものならScratchVMを改造すればできると思いますよ
newmomizi_txt
Scratcher
1000+ posts

ScratchでOSを作るには?

もっとも大きな問題は、JavaScriptのような高レイヤープログラムと低レイヤープログラムでは、設計思想が全く異なるということです。これはどういうことかというと、Scratchにあるほとんどのブロックは低レイヤープログラミングに使用できないということになります。

一応、方法を考えるとしたら、
定義 asm (instruction)
これはダミーの定義

asm [MOV AL, 1h]
asm [MOV CL, 2h]
asm [MOV DL, 3h]
といった感じにインラインアセンブラを作り、コンパイラ側をこれに対応させるといった手法もあるかもしれませんが、「Scratchで作った」と言い張るのはちょっと無理があるように見えます。(「最初から別の言語で書けばよかったのに」となってしまう)

Scratchのもっとも大きな強みは、グラフィカルなものを簡単に作れることでしょうから、低レイヤー部分の管理は既存のブートローダー・カーネルプログラムに任せて、フロントエンドに注力すべきだと思います。
その裏側との連携については、#501, #508, #509などで私が示した方法などが使用できるでしょう。

Last edited by newmomizi_txt (Nov. 19, 2025 07:44:28)

sei6sei
Scratcher
500+ posts

ScratchでOSを作るには?

localhostに立てたwsを変更してコマンドを実行できることを確認しました。
おそらくこれでフロント的なGUIは作れると思います
AZINOMOTO-20_RE
New Scratcher
2 posts

ScratchでOSを作るには?

他者製造Projectみたいのってどういう原理で動いてるんですか?
作ってみようと思うんですがイマイチ理解ができなくて
yahhi3110
Scratcher
38 posts

ScratchでOSを作るには?

ミスのため削除

Last edited by yahhi3110 (Yesterday 12:10:47)

yahhi3110
Scratcher
38 posts

ScratchでOSを作るには?

#546
AZINOMOTOさん他者制作プロジェクトとは?
アプリ制作キット的なものを使用してメインの作者が作ったものではないアプリなどを実装するようなことですか?
AZINOMOTO-20_RE
New Scratcher
2 posts

ScratchでOSを作るには?

#548
ちょっと私の言い方が悪かったようなので訂正します@yahhi3110さんが言っているように言いたかったことはアプリの製作キットのことですすみません.
kur0nekop0315
Scratcher
34 posts

ScratchでOSを作るには?

一応。
定義 .asm_mov (引数1) (引数2)
定義 .asm_add (引数1) (引数2)

.asm_mov (.rax) (5)
.asm_mov (.rbx) (3)
.asm_add (.rax) (.rbx)

mov rax, 5
mov rbx, 3
add rax, rbxにコンパイルする的なやつは。

Last edited by kur0nekop0315 (Yesterday 23:40:07)

sei6sei
Scratcher
500+ posts

ScratchでOSを作るには?

できると思うなら「自分で作ってみる」のが一番です。
この世に技術的な不可能はないと思っているので、できるはずです。
ですが、それが今できるとは言えません。

可能かどうかは実装する人次第ですし、また、Scratchで(私の作ったやつですが)こういうコードを書くのは現実的ではありません(ブロックが増えすぎる)
newmomizi_txt
Scratcher
1000+ posts

ScratchでOSを作るには?

544で私が言っているように、インラインアセンブラしか使わないのであれば、「最初からアセンブリで直書きすればいいのでは?」になりませんかね…

Last edited by newmomizi_txt (Today 05:17:40)

syoma1124
Scratcher
1 post

ScratchでOSを作るには?

ワープロを作りたいと思うんですがワープロの作り方ってわかりますか?
yahhi3110
Scratcher
38 posts

ScratchでOSを作るには?

#549
アプリ制作キットは…
  • OS制作者がアプリ製作キットをつくる(Windowシステムがついていたり、システムを呼び出しできるようなものがついている)
  • 第三者がアプリ製作キットを使ってアプリを作成する
  • それをOS制作者が自分のOSに取り込む
的なものですね。Windowを製作キットの中に入れたり、メッセージや変数をつかうと比較的かんたんにアプリ製作キットを作ることができます。
ちょっと例として作ってみますね
yahhi3110
Scratcher
38 posts

ScratchでOSを作るには?

https://scratch.mit.edu/projects/1246000277/
できました!。中のアプリ製作キットを編集すればなんとなく作れます。URLあとちょっとでキリ番だったな…

Powered by DjangoBB