Rust part10at TECHRust part10 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト216:デフォルトの名無しさん 21/04/22 06:34:32.34 WQGVMWvQ.net で、別の観点の話をする、 OSがpanic上等というのはそれはそれでも良いが、 とにかくスタックのアンワインド処理は言語依存性が強いので 例外が通過する関数(ゼロコストの奴も含む)の巻き戻しのためには 関数のアドレスとスタックのアンワインド方法の対応表をランタイムが把握せねばならない というわけでカーネル内の例外を認めると、その例外を最終的に捕捉する奴より 上の関数を全部同一言語・同一コンパイラで書かねばならないという縛りが生じる 現実にはそれで問題など生じないかしらんが、とにかくレイヤー分けに縛りが生じる Redoxの一部をC++(等)で書くことは事実上不可能に、 217:デフォルトの名無しさん 21/04/22 13:01:11.46 hZdbeIl+.net >>212,213 なんでカーネルの話してるのに言語ランタイムとプラットフォーム依存の話してるんだ? >>213 Linusがカーネル書くのに信用してないだけで C++でもフリースタンディング書けるだろ。 C++のフリースタンディングは最低限の標準ライブラリは持つからrustのcoreクレートと同じ。 C++ならexception、abort,exitがある。 >>213がホストとベアメタルの区別がついてないだけじゃないか? あと、redoxのpanicはスタックトレース吐いてx86のhltループするだけだから。 そもそもカーネルで標準のexitなんか呼ぶか。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch