タグ付けされた質問 「operating-system」

5
組み込みシステム設計でオペレーティングシステムが必要になるのはいつですか?
PICプロセッサおよびx86プロセッサ用のベアメタルコードを多数作成しました。誰かがオペレーティングシステムを必要とする方法とタイミングを教えてもらえますか?逆に、オペレーティングシステムを使用する場合も使用しない場合も、どのアプリケーションまたは状況に対処できますか?

4
アセンブリプログラムがオペレーティングシステムをクラッシュさせるのを止めるものは何ですか?[閉まっている]
閉じた。この質問はより集中する必要があります。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集するだけで1つの問題に焦点を当てるように質問を更新します。 10か月前に閉鎖されました。 まず第一に、私は初心者なので、この質問が馬鹿げているように思える場合は、間違った仮定を指摘してください。 私が理解したことから、オペレーティングシステムの仕事は、OS上で実行されるハードウェアとソフトウェアを管理することです。また、私が理解していることから、アセンブリプログラムを使用すると、ハードウェアをほぼ直接制御できます。アセンブリプログラムでは、データをレジスタに読み書きしたり、RAMにデータを読み書きしたりできます。 レジスタとRAMを台無しにするこの自由を考えると、アセンブリプログラムがオペレーティングシステムに影響を与えることは不可能でしょうか?OSが重要な情報を格納するためにレジスタAを使用しており、そのOSでアセンブルされたプログラムを実行するとします。プログラムがジャンクをレジスタAに正常に書き込むと、OSが確実に影響を受けます。 質問: 上記の方法でレジスタAを台無しにすることは可能ですか? そうでない場合、アセンブリプログラムがOSによって使用されるレジスタを変更するのを妨げるものは何ですか?

1
リアルタイムと他の種類のOSを区別する機能は何ですか?
私は、基本的に次の素数に数えることしかできない、いわゆるリアルタイムカーネルで実験しています。割り込み駆動型I / Oを使用します。しかし、なぜリアルタイムカーネルなのでしょうか? 2002年にLinuxがリアルタイムカーネルになったことを読みましたが、それは正しいですか? アルテラDE2を使用しており、ベースとするコードは1つのアセンブリファイル、1つのヘッダーファイル、2つのCファイルです。理解してください。 # Uart_0 at 0x860 .equ de2_uart_0_base,0x860 # Timer_1 at 0x920, interrupt index 10 (mask 2^10 = 0x400) .equ de2_timer_1_base,0x920 .equ de2_timer_1_intmask,0x400 # Timeout value for 0,1 ms tick-count interval (CHANGED in every version) .equ de2_timer_1_timeout_value,4999 # Required tick count per time-slice, meaning # the number …

3
非プリエンプティブOSの利点は何ですか?これらの特典の価格は?
むき出しの金属MCUの場合、バックグラウンドループとタイマー割り込みアーキテクチャを備えた自家製コードと比較して、非プリエンプティブOSの利点は何ですか?これらの利点の中で、プロジェクトがバックグラウンドループアーキテクチャで自家製コードを使用するのではなく、プリエンプティブOSを採用するのに十分魅力的ですか? 。 質問の説明: これらすべてが私の質問に答えてくれたことに本当に感謝しています。答えはもうすぐそこにあると感じています。ここで質問にこの説明を追加します。これは、私自身の考慮事項を示しており、質問を絞り込んだり、より正確にしたりするのに役立ちます。 私がやろうとしているのは、一般的なプロジェクトに最適なRTOSを選択する方法を理解することです。 これを実現するには、すべてのアプリケーションに最適なRTOSが存在しないため、さまざまな種類のRTOSおよび対応する価格からの基本概念と最も魅力的な利点のより良い理解が役立ちます。 数年前にOSに関する本を読みましたが、もう持っていません。ここに質問を投稿する前にインターネットで検索したところ、この情報が最も役立つことがわかりました:http : //www.ustudy.in/node/5456。 さまざまなRTOSのWebサイトでの紹介、プリエンプティブスケジューリングと非プリエンプティブスケジューリングを比較する記事など、他にも多くの役立つ情報があります。 しかし、プリエンプティブではないRTOSを選択する場合、およびタイマー割り込みとバックグラウンドループを使用して独自のコードを作成する方がよい場合について言及したトピックは見つかりませんでした。 確かな答えはあるが、満足していない。 特に業界の実践において、より経験のある人々からの答えや見解を知りたいです。 私のこれまでの理解は 、OSの使用の有無にかかわらず、特定の種類のスケジューリングコードは常に必要です。たとえ次のようなコードの形式であってもです。 in the timer interrupt which occurs every 10ms if(it's 10ms) { call function A / execute task A; } if(it's 50ms) { call function B / execute task B; } 利点1: ノンプリエンプティブOSは、スケジューリングコードの方法/プログラミングスタイルを指定するため、エンジニアが以前に同じプロジェクトにいなくても同じビューを共有できます。次に、コンセプトタスクに関する同じビューを使用して、エンジニアはさまざまなタスクに取り組んでテストし、可能な限り独立してプロファイルを作成できます。 しかし、これから実際にどれだけ得ることができますか?エンジニアが同じプロジェクトで作業している場合、プリエンプティブOSを使用せずに同じビューをうまく共有できます。 あるエンジニアが別のプロジェクトまたは会社の出身である場合、以前にOSを知っていれば、その恩恵を受けることができます。しかし、もし彼がそうしなかったとしても、新しいOSや新しいコードを学ぶことは彼にとって大きな違いにはならないようです。 利点2: …
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.