私はかなりしっかりとしたLinux経験を持っていますが、組み込み/小型システムの世界ではほとんど経験がないので混乱しています。
私は小さなx86準拠のSBCを使用するプロジェクトで友人の仕事を助けることに同意しました。センサーセットとUSB ADCを使用してアプリケーションを監視するためのデータロガーとモニターとして使用されます。非常に迅速に起動する必要があるため、さまざまな起動最適化、サービスの無効化などを試しています。
彼に必要な最終結果は、ランレベル2(ネットワークなし、コンソールのみ、データのロギングおよび表示に必要なサービスを除くすべてのサービスをスキップする)で素早く起動したり、SSHなどおよびネットワークサービスを介して起動できるマシンです。ランレベル3にはDHCPが含まれています。 SCPを介して記録されたデータを他のホストにコピーするためのリモートアクセスとスクリプトを許可します。
残念ながら、これは最終的に組み込みシステムになるため、シミュレートされたハードウェア入力(スイッチやボタンなど)を使用してブートローダ/カーネルにランレベル2または3で起動するように指示する方法を見つける必要があります。
この話を聞いた人はいますか?一種のIO(シリアル、パラレル、または一種のGPIOと推測されます)をポーリングするためにGRUBまたはカーネル自体をパッチすることに加えて、提案/アイデアはありますか?
ありがとう、ジェイソン
答え1
正確な答えはわかりませんが、その可能性が低いか難しいようです。
したがって、私の提案は常にランレベル2で起動し、10秒ごとにシリアルポート(または使用するポート)のスイッチ状態を確認するプログラムを作成してランレベル3に変更することです。これにより、すばやく起動でき、大きな問題なくランレベルを変更できます。