X



アセンブリ言語勉強したから次はOS自作に挑戦してる
■ このスレッドは過去ログ倉庫に格納されています
0001以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 17:35:14.274ID:Pml38e870
きっつい
0002以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 17:35:54.763ID:E/ZYzNPa0
x86?aarch64?
0003以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 17:35:55.040ID:MKY65wZE0
osが終わったら次はcpuな
0004以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 17:36:34.336ID:f4Y6UI2s0
今の時代人力でアセンブリでOSなんか書けないぞ
0005以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 17:36:35.109ID:Pml38e870
>>2
x86だね
性格にはi686かも
0006以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 17:37:02.248ID:Pml38e870
>>3
それな
FPGA欲しい
0007以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 17:37:08.138ID:kN/HvH1r0
イキり初学者ダサいぞ🙄
0008以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 17:37:38.642ID:Pml38e870
>>4
アセンブリが必要なところはアセンブリで書いて、C言語でいけるところはCで書いてる
0009以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 17:37:54.629ID:Pml38e870
>>7
それな
初心者すぎてつらい
0010以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 17:38:10.466ID:5O8LtnMJd
自作してるとか言う奴は雑魚
自作した(公開済み)なら認めてやってもいい
0011以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 17:38:38.808ID:Pml38e870
>>10
まあ本読んで写してるだけだよ
0012以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 17:39:12.255ID:Pml38e870
現在、ページングがわからなくて泣いてる
0013以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 17:39:54.810ID:f4Y6UI2s0
>>8
アセンブリが必要なところってのは今の時代は無いはずだぞ
多分お前が参考にしてる文献はBIOSの時代のものだろうが、今はBIOSなんてどのパソコンも使ってない
かわりにUEFIを使ってる訳だが、これを操作するにはC言語のフレームワークであるgnu-efiとかを使う

まぁ組み込みのOS作ってるとかQEMUで動けばいいとかなら知らんけど
0014以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 17:40:20.459ID:f4Y6UI2s0
あーあれか
30日自作本だろ
0015以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 17:40:21.396ID:E/ZYzNPa0
>>5
ほーすごいな
x86系は命令いっぱいある上オペコードやオペランドも可変長で読みづらくてめっちゃ苦手だわ
頑張ってくれ
0016以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 17:41:25.197ID:Pml38e870
>>13
そんなことなくね?
割り込みテーブル作るときとか、ページングの設定するときは、アセンブリ必要じゃね?
ちなみに__asmみたいなやつは使ってなくて、アセンブリで関数書いてCから呼び出してる。
0017以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 17:41:45.853ID:NgE1yqhG0
変態行為だけど、アセンブラできると無駄の無い美しいプログラムになるよな
0018以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 17:42:12.983ID:Pml38e870
>>14
それじゃないけどまあそんな感じの読んでる
0019以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 17:43:00.677ID:Pml38e870
>>15
まあOS自作で使う命令は限られてるから出てきたら調べる程度でなんとかなる
むしろ16bit時代の遺産を全て理解しなきゃいけないのがつらい
0020以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 17:43:22.172ID:Pml38e870
>>17
ん?そんなことないぞ
0021以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 17:45:04.035ID:f4Y6UI2s0
>>18
最近のみかん本とか読んだ方がいいよ
UEFI使うならいきなり64ビット状態から始まるから16ビットの事とか全部考えなくていいはずだけど、その文献古いんじゃない?
0022以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 17:46:18.445ID:Pml38e870
intelはセグメントレジスタとかA20ラインとかそのへんを理解するのがつらい
早くこれ終わらせて、arm64向けのOS作りたい
0023以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 17:47:20.597ID:Pml38e870
>>21
まあ俺の文献はBIOSから起動してるね
つらい……
でもこれで進むと決めたからこれで進むしかない
0024以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 17:47:25.239ID:E/ZYzNPa0
x86全然わかんねーけどarm系は割り込みテーブル作る時やpsrいじる時asm使うな
0025以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 17:47:58.106ID:Pml38e870
>>24
だよな
アセンブリは必ず必要になるよな
0026以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 17:48:51.699ID:Pml38e870
てか、x86やらずにarmのosって作れんの?
どの本もx86前提に書かれてるからx86やらなきゃいけないのかと思ってた
0027以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 17:49:47.195ID:f4Y6UI2s0
>>23
実機で動くもの作った方が面白いと思うけどね
まぁ好きにやりな
0028以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 17:50:45.033ID:Pml38e870
>>27
俺のOSも実機で動くぞ
USBに焼けば古いx86_64のノートパソコンでで動いたし
0029以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 17:51:06.044ID:VrTxbDvb0
>>25
アセンブリ必要になるっていっても1行とかだぞ?
コントロールレジスタのビットを弄るだけだ
お前の場合はそれ以外もガッツリアセンブリでやってそうで心配になった
0030以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 17:51:32.476ID:O4Aox9cf0
>>22
おっさんだけどそのレベルなら簡単
0031以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 17:51:33.070ID:Pml38e870
UEFI使うのはなんか負けた感じするんだよなぁ
OS起動する瞬間にファイルシステムの存在を前提としてるってなんか気持ち悪い
0032以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 17:51:47.724ID:f4Y6UI2s0
>>28
動くならモチベになっていいな
0033以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 17:52:07.131ID:Pml38e870
>>29
やってないよ
関数にしてCから呼び出してるだけ
0034以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 17:53:16.306ID:Pml38e870
>>30
おっさんはいいよな
おっさんだからこの辺知って産まれてきてるわけじゃん
俺はおっさんじゃないからつらいんだよ
メモリ管理といえばページングだし、20bitでメモリアクセスとか意味不明ってなる
0035以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 17:55:02.072ID:O4Aox9cf0
>>34
16bitしかないからね
巨大メモリアクセスへの苦肉の策
0036以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 17:55:14.251ID:Pml38e870
OS作り始めたことで、パソコンの中でハードウェアによって担保されてる領域と、ソフトウェアによって担保されてる領域がわかって良かった
mallocはソフトウェアでページングはハードウェアなんだね
0037以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 17:55:58.896ID:Pml38e870
>>35
64bitが当たり前の世代からするとその辺がイメージしづらくてつらいんだよねぇ
0038以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 17:56:37.088ID:Pml38e870
wikipedia めっちゃよんで
intel 8086とintel 80386とintel 80686の違いを理解することになる
0039以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 17:58:35.909ID:jidTyVpra
コピペでやるならまだしも、まともにPCのOSを作るのは無理げーだぞ
ハードに関するドキュメントが少なすぎる
stm32とかのマイコンで作ってくべき
0040以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 18:00:00.459ID:Pml38e870
>>39
そうなん?
とりあえずネットワークルーターみたいなやつ作りたい
0041以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 18:04:37.069ID:jidTyVpra
ネットワークにアクセスしたかったら
LANボードについてるチップのデータシートが必要になる
0042以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 18:05:39.005ID:Pml38e870
>>41
なるほど
たしかに
そのへんはLinuxからパクりたいなぁ
0043以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 18:06:07.456ID:Pml38e870
ラズパイを自作OSのソフトウェアルーターにしたい。
0044以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 18:11:21.248ID:f4Y6UI2s0
ルーターって結構レイヤーの違う話だな

OSって言ったら一般的には
・プロセス管理(タスクスケジューリングやメモリ管理など)
・I/O(デバイスの仮想化)
・ファイルシステム
を提供するソフトウェアって感じだと思うから
まずはハードはキーボードとマウス、補助記憶だけサポートする事にして、上の機能を持つシェルを作ってみてはどうか
0045以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 18:13:07.098ID:Pml38e870
>>44
多分俺がやってる本ではマルチプロセスOSを作るらしいから、シェルあたりまで作れるはず
そのうえで、OS上でソフトウェアルーターを作って動かしたい
0046以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 18:14:21.360ID:f4Y6UI2s0
>>45
なるほど、頑張れ
0047以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 18:17:00.614ID:Pml38e870
>>46
頑張ってる
0048以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 18:17:32.872ID:Pml38e870
ちなみにこれ頑張ったらどっか雇ってくれる?
0049以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 18:25:16.619ID:f4Y6UI2s0
ウェブかAIを頑張る方が受けはいいと思う
競プロの実績も評価される
0050以下、5ちゃんねるからVIPがお送りします垢版2024/02/23(金) 18:31:05.134ID:Pml38e870
WebもAIも競プロも飽きたんだよ
だからこそ低レイヤーやってる
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況