Real Time Operating Systemスレ
みなさんは組み込みマイコンのRTOSになにをつかっていますか?
ITRON?
Linux? >>60
プログラム実行領域限定のSWAPなら
バスフォルトが起こるとCPUは、NOP
が読めるようにして割り込みをかける
と自力でSWAP出来ると思うがどうな
んだろ? >>60
> ちょと先を実行、とか事実上無理。RISCみたいに各命令のクロック数が同じでもないし。
簡単だよ。
メモリコントローラは今何処を実行しているかが判る。
あとは適時wait信号を出すだけ。 FPGA使ってバスに繋ぐメモリサーバ的な物を作ったら面白いかと思った。
機能的にはMMU+メモリコントローラ+キャッシュ+スワップデバイスへのI/Oてな感じ。
CPU側からは待たされるだけで、透過的に仮想記憶にアクセスできる。
まあ、外部メモリ用のピンが出てて、仮想記憶を積んでないチップなんて多くないけど。 キャッシュとして積むメモリをCPUのリニア空間に実装した方が、はるかに
柔軟性が高くアクセス速度も速いと思うが?
想定しているCPUの動作クロックは?MMUのルックアップテーブルの容量と
レイテンシーはいくら? ターゲットは、ST32F103CB6でRTOSを
使うとしたらどれが良いでしょうか?
freeRTOS、toppers、cooCox coOS
他にお薦めはありますでしょうか。 >>65
ソフト屋さん?
SRAMがDRAMよりどれほど高コストなのか、知らないの? >>66
FreeRTOS。確かSTMicroがリリースしてた筈 >>64 だけど
>>65
少ない高速メモリを仮想記憶に使う話を書いたつもりなんだが、リニア空間に実装ってなんだよ。 RT性を考えるとスワップは要らんが、それ以外メモリ一式が丸投げできるデバイス
が有ると、色々捗るな。 >>65
学生?SRAMが高コストなのは、記憶ビットあたり、同等プロセスなら4倍の
トランジスタ数(≒ダイ面積)が必要なのと、市場が小さいからだよ。
>>69
少ないのはオマイの脳細胞じゃないか?
小容量のメモリは、必然的にヒット率が低い。したがって、頻繁にミス
ヒットして外部記憶へのアクセスが発生して効率が上がらない。
おまけに、いくらメモリが高速でもキャッシュ書き換えと、外部記憶への
ライトバックは、外部記憶のアクセス速度によって頭打ち。
I/Oバッファと基板上の配線による遅延が生じない同一ダイ上ならともかく、
アクセスタイム数ns程度が高速メモリを基板に並べてキャッシュに使う
なんて486DX時代の発想。
当時ですら一次キャッシュはCPUに内蔵されていたのに。
キャッシュではなく仮想記憶だといい、それもFPGA経由でぶら下げるなんて
妄想ができる知識レベルはある意味羨ましい。きっとタンポポがいっぱい
咲いているんだろうな。
>>70
それ、HDDやSSDが積んでいるディスクキャッシュと何が違うの? うだうだ話しに何マジレスしてんだよ。
馬鹿なの? しかも亀レスだし。 >>71
>それ、HDDやSSDが積んでいるディスクキャッシュと何が違うの?
ディスクキャッシュは、DRAMコントローラの面倒を一切見てくれない。
>486DX時代の発想。
SH4ベースの組込みRTシステムなんて、i486DX時代の技術レベルで止まってますが何か?
せいぜい当時はchipsetにやらせてたメモリコントローラが内蔵されたぐらいの違い。
抱き合わせでRAMまで1chipに内蔵してしまうから、マルチメディア機器なんかだと
容量足りなくなるので、DRAMは外付けにしたいのだがそうするとメモコンやキャッシュ
周りも新規に起こさないといけなくなって面倒臭いな、と思ってたところ。
SHはもうオワコンだからARMでやるとして、CCDの1行分が入るぐらいの小さい
キャッシュと、DRAMコントローラがFPGA1chipに丸投げできれば便利かもしれない。
スマホ向けSoCなら山ほど有るんだがなぁ。 ARM Cortex M3/M4あたりであれば、SRAM内蔵で、かつSDRAM用のインター
フェース持ってるデバイスは、各社それなりに揃っていますが?
SDRAMは、組込用としてMobile SDRAMが残るが、DDR2は既に縮小、DDR3も
主な需要先のPC市場の動向で、そのうちDDR4へ移行することになるだろう。
中途半端にFPGA使うとか、組込で向こう10年くらい修理サポートが必要に
なるとか、考えているのかね?
趣味の工作レベルならともかく、画像を扱うのに内部SRAMしかないデバイス
を選ぶのが間違っているし、ST MicroのSTM32Fあたりは、CCDカメラ用I/Fを
内蔵しているデバイスがあるので、DMA転送でRAMへ読み込めばいいだけ。
それどころか、元々車載向けに強かったMotorolaから分社化したFreescale
あたりだったと思うが、ARMベースで車載バックモニタ向け等に特化したSoC
もある。
i486DX時代の技術レベルで止まっているのは、ガラパゴスとその住人だけ。 >>76
支離滅裂になっているが、大丈夫か?
> M3/M4あたりであれば、SRAM内蔵で、かつSDRAM用のインター
> SDRAMは、組込用としてMobile SDRAMが残るが、DDR2は既に縮小、DDR3も
M3/M4にDDRをサポートしてるのなんて、無いよ。
話が随分逸れたな。
>>64
古典かもしれないが、現代に復活させるなら技術的に面白いな。 >>76
ARM7TDMIの頃はSDRAMif付き多かったけど
Cortex-MになってからはSDRAMif付きはめっきり見なくなった。
Cortex-A系との差別化の為だと思うけど。
なので低価格コントローラ向けSoCのSDRAMif付きには
まだまだARM926EJが位座ってたりするのだ。 >>78
Cortex-MでもSDRAMインターフェース付きはあるけど、ARM7の
頃と品種の数自体は大差ない感じがしてるなあ
MとAの間にRがあるはずなんだけどちっとも聞かないからARM9が
残ってるだけじゃねw >i486DX時代の技術レベルで止まっているのは、ガラパゴスとその住人だけ。
そうは言われてもまだまだガラパゴスSH4の(国内)シェアは大きいわけで。
>Cortex M3/M4あたり
で、これは!…と思う石で外付けSDRAMif付きの奴って、そのSDRAMもChip on Chip
の2階建てSoCに成ってて、思うようなSDRAMを「外付け」出来ない奴ばっかなんだよな。
小さいCCDでも画素数が無駄に多過ぎなモノだらけなのも困った現状だが。
画素数より、感度とフレームレート(リアルタイム性)が欲しいのに。 このオッサン ID:0dmWfovc なんで最初から喧嘩腰なんだよ。 >>78
そうか? M3でも上位は結構あるけどな。
>>82
個人的には、日の丸CPUとしてSH-4Aには頑張ってほしいな。
>>64
> FPGA使ってバスに繋ぐメモリサーバ的な物を作ったら面白いかと思った。
面白いな。ターゲットはSH-2AかCortex-M3/M4あたりか?
ただ、SH-2Aには64MBの壁があって、連続させても128か256MBが限界か。
CPUは2つ以上繋げたいな。
かつ、CPUは仮想の仮想空間で実行。
実空間外にアクセスするとMPU(メモリープロテクト)が働く。
それをFPGAが検知出来ればいいんだか。
おっと、FPGAがDRAMとして振る舞えばもっと広いメモリ空間に見せることも出来るな。
そうすれば話はグッと簡単になるな。
デュアルにしたときのL1キャッシュの整合性はどうすんべ。
…と、知的好奇心的に興味深いな。
スレタイとは無関係だかw SHシリーズは設計が古すぎるし、FPGAがDRAMとして振る舞うとか、
ワケワカメ。 DRAMコントローラって、何のためにあるのか知らないの?w DRAMコントローラとDRAMは別だよね〜。恥ずかしいヤツ。
第一、いまどきMCUでも外部バスがあるマイコンならDRAMコントローラ内蔵
がフツーだよね。キャハ 設計が古いSHに期待なんて言っている浦島脳じゃあ、
知らないのも無理ないかな。w
もしかして、SDRAMじゃなくて、昔のマルチプレクサとRAS/CASでアドレス
を多重化していた時代とか、CASオンリーリフレッシュとかで止まっている
人なのかな?w
それとね、MMUを積んでもアクセス違反でトラップされた命令を再実行でき
るCPUアーキテクチャでないと、バンク切替でメモリ空間が拡張されるだけ
で仮想記憶にはならんよ。 RTOSには邪魔なだけのMMUの話は他でやってくれ >>87
> DRAMコントローラとDRAMは別だよね〜。恥ずかしいヤツ。
その通り。
で、DRAMコントローラはバンクを切り替えたり(重要)、アクセスとリフレシュを調停したり、そんなのをDRAMにコマンドを送りながら制御している訳だ。
>>85
> FPGAがDRAMとして振る舞うとか、ワケワカメ。
振る舞ったらどうよ?
バンク切り替え時にスワップイン/アウトしたらどうよ?
それはFPGAに繋いだDRAMが小容量でも、CPUのDRAMコントローラから見れば大容量DRAMに見える。
> 恥ずかしいヤツ。
こんな簡単な話を理解出来なかったお前に、そっくりそのまま返すわw >>89
学生か?意味も判らず頭に残ってるカタカナ語を並べているだけにしか
聞こえん。 ハード・リアルタイム・パフォーマンス
OS-9はあなたが決定論的なサブマイクロセカンド応答時間を外部イベントに必要とするアプリケーションに優れています。
Windowsやリナックスベースのシステムと異なって、OS-9は時間的クリティカルな組み込みソフトアプリケーションの高性能と高信頼性需要にこたえるように始めから設計されています。 >>94
OS-9ってリロケーションフリーが特徴なんだっけ? 相対アドレスモジュールのフル駆使だったような気が。
再配置して、コンテキストスイッチは楽だろうな。 6809+MMUには、確かプロセスIDの設定を切り替えるだけでメモリバンクが変わる、
みたいな機能もあったはず。 キャッシュ外れても、DRAMリフレッシュ中でも、決定論的なハードRTって可能なのかな? >>94
2MHzのCPUが500nsecで応答出来るの? >>97
CPUやOSによるけど、コアなところはキャッシュに留めておける。
正しくはキャッシュとして使わないんだけど。
OS-9が出来るかどうかは知らない。 でも最新インテルcpuみたいに凄く先読みしたあげくにミスキャッシュすると再読み込みで凄く待たされると思うけどね
それなら少量キャッシュでミス頻発するけど、その遅延も考慮するリアルタイム性を実装しとけば大幅に遅延なんてのも避けられるんじゃない
特急に乗れば平常運転の時は快適だけど、事故とかで詰まっちゃうとのろのろ運転で全然停車駅にたどり着けないと
普通に乗れば平常運転でも時間掛かるけど、事故で詰まっても最寄り駅停車まではいけると
みたいな感じ
リアルタイム性を重視するとmmuもdmaも邪魔だな
osが気づかない所で勝手に割り込みするなって感じ
例えばクアッドコアとかで4つのコアで全く同じ処理を並列実行させれば実コア数の4チャンネル分はリアルタイムで遅延泣く実行出来そうだけど、実際はコア間の同期で時間喰われるから凄く遅く成るなあ >>102
TIのDSPがどうなっているか、見てみたら? >>104
NuttXと eCosの違いって、なんなのさ? つーかさ、CPUはARMで統一しはじめてるが、
RTOSもどっか1つに統一できねーもんかな。
どれも似たようなもんだし。
歌うほど、たいした差じゃねーし、
なきゃないでなんとでもなるだろ。
RTOSで1番っていったらどれ?
もうそれだけでやってけねーかね。 無理矢理1つと言うならVxWorksになるなのかな? 思うに大半のオプソなRTOSは使う事が目的じゃなくてOSを作る事が目的なんだと思うよ。それにこういうのは環境や目的によって適材適所だろ。メモリ一つとっても数KBから数GBオーダーまであるんだし。それを一番はどれとか意味不明。 その環境や目的というものに応じて、機能を限定し、多少メモリ利用効率を上げれば、
省メモリ動作なんて言うほど難しい話ではない。
RTOSが1つに統合出来れば、その程度の事にリソースをさくのはたいしたもんじゃない。 >>109
アーミーナイフ(十徳ナイフ)的なRTOSか、、、
小さい事に特化した精密ドライバーには負けるし、力持ちの電工ドライバーにも負ける。
一通りハサミやらも付いているが、、
結局中途半端なRTOS欲しいの? >>110
省メモリ動作(数K)なんて、RTOSの基本機能に限定すれば簡単に
実現出来ると思う。
>>107
現在、RTOSで最も主流なのはVxWorksなのかね?
今後、"CPU"で言う"ARM"の立ち位置、つまり、"RTOS"という
分野のスタンダードになれるのか?
Linuxは今、最も勢いがあり素晴らしいが、ライセンス制約が厳しすぎる。
コード修正や保守が難しく、メモリ使用量削減が出来ない点や、
CPUにMMUが必要となる点で、CPUを選ぶOSとなってしまう。 RTOS枠でLinux語る人ってリアルタイム性なんて要らないんだろうな。>>111とかuLinuxみたいな亜流の話とも思えないし。
なぜ一本化出来ないんだろうって話はかつて日本ではスタンダードみたいな位置にいたitron系が最近はだんだん減っている理由を考えてみるといいよ。
というかCPUはARMに一本化されて・・・の下りから間違ってるんだけどな。組み込みの世界分かってなすぎ。 WindowsCEも、一応 RTOSなんだよね。びっくりだよねw
iTronって廃れたんだっけ?
ルネ系だと全然スタンダードな印象なんだけどぉ
ARMなら廃れたに同意 >>114
リッチな方はitron離れが進んでいる印象。だから減りつつあると書いた。そっち方面はQNX, VxWorksそしてリアルタイム性かなぐり捨ててAndroidを含むLinux系じゃないかな。
残念ながらCEはオワタと思ってる。俺の周りの環境ではitron, OS-9からCEになってQNXだわ。なんて書くと身バレしそうガクブル お、さっそく登場か。
やっぱりGUIとかネットワークとかファイルシステムとか、POSIX API くらい無いとやってらんないっす。 >>119
「Real Time Operating Systemスレ」で、スレ違の話する文意て何ぞ? >>120
スレ違いと言うほどAndroidの話なんて出てないじゃん。何が不満なのさ? >120
なるほど。その返答で能力が無いのがすごくよくわかった。
だからもう黙っててくれない? >>122
RTOSからAndroidに変わった例でも挙げてみてからなんか言え >123
尽く見当外れな事しか言えないのなら黙ってろ、というのがわからないの? >>124
Androidの話が見当はずれだと言ってる。馬鹿は黙ってろ。 >125
このスレで誰よりも一番Android、Androidと連呼しているスレ違いのバカはお前だろw
自覚ないのか? そっくり返すよ、「馬鹿は黙ってろ」と。 >>126
>このスレで誰よりも一番Android、Androidと連呼しているスレ違いのバカはお前だろw
あれ? 文意によってはAndoroidの話してもいーだろって主張じゃなかったの? >127
文意という語を誤解している印象だが、それはさておきそもそも何が不満なんだ?
「RTOSスレでAndoroidの語が出る事自体、どんな理由であれ一切まかりならん!」
と言いたいわけ? >>128
>文意という語を誤解している印象だが、
http://dictionary.goo.ne.jp/leaf/jn2/197140/m0u/
> ぶん‐い【文意】
> 文章の表現しようとしている趣旨。文章の意味。「―をつかむ」
これ以外の意味があれば教えて呉。
>「RTOSスレでAndoroidの語が出る事自体、どんな理由であれ一切まかりならん!」
>と言いたいわけ?
「RTOSスレでお前なんで関係ない話してんの?」程度だな。 >129
その意味で合ってる。それを踏まえて自身の文章を読み返しても違和感を覚えないなら何も言うまい。
次。話の流れとか一切関係無く僅かでも非RTOSに言及したらそれ即ちスレに関係ない話である、って事? >>130
>話の流れとか一切関係無く僅かでも非RTOSに言及したらそれ即ちスレに関係ない話である、って事?
RTOSを捨てる話の流れなんてないだろ。 >131
誤読ならすまないがそれはつまり、RTOSから非RTOSへの移行の話題はスレ違いで禁止、という主張? そもそもそんな話題出てませんが?何と戦ってるんだ? >133
131の意図する所はこうですか?という確認。
あれが正しい解釈なのか確証がないからこそ誤読ならと初めに断ってる。
違うなら違うでどう違うか言えばいいだけ。そんな言い方ではなく。 >>132
>RTOSから非RTOSへの移行の話題はスレ違いで禁止、という主張?
必要があって使ってたRTOSを何らかの理由で使わなくて良くなった、という話は
誰がしてるの? これから個人の趣味としてRTOSを勉強するなら何がお勧め?
有償でもいいけど何十万円とかは無理。 >139
ありがとう。良い本だと思う。ただいきなりRTOS自体の設計と実装から
始めたいのではなくて、まずは既存RTOSのユーザから始めたいので。 >>140
ブラックボックス相手に悩むより、中身がどう実装されているか知っていると、対処しやすい。 RTOSってピンキリだから対象の環境ややりたい事、自分の持ってる開発環境でも選択肢変わって来るしまずはそこ晒したら?漠然と言ってるなら>>139みたいな話になるよ。
ただ簡単に動かしてみたいというなら中身ちゃんと読んだこと無いけどFreeRTOSはコード少なくてビルドしやすかった。一応本もある。 なるほど。漠然としか考えてなかった。特に明確な用途も無いので、使い方よりも
先にRTOS自体の仕組を学ぶのも面白そうに思えてきた。皆さん親切にありがとう。 CQ出版の桑野さんが書いたヤツが良かった
RTOSの使い方じゃなくて、作り方だけど 昔はナビにrtos必要と言われてたけど
アンドロイドでも十分だったね
しかも大量生産で安く成ってるし
rtosとはなんだったのか そうやってけむにまく所がrtosのよくないところ
情報弱者にも分かりやすく説明出来ない様な技術じゃ実用性低くて採用されないよ
rtos載せれば消費者が飛びついて勝っていく訳でもないんだし
売りには成らん
非rtosのほうが充実してる事ばかりだ 何年という期間をノートラブルで動作し続ける組み込み機器の開発に情弱は不要。
JavaかPHPでもやってろ。 >>147
はぁ?RTOSとラウンドロビンの選定基準がお前みたいな情弱に説明できるか否かて、馬鹿か?wwww
ラウンドロビンでいい用途はラウンドロビンを使うし、ターンアラウンド規定がシビアな制御用途にはRTOSを使う
RTOS営利目的で販売してるところもこれを情報端末に使ってほしいなんて思ってない。
それがわからないやつはこのスレから立ち去れ >>145
エンジン制御にラウンドロビン使ってみろ馬鹿 イメージしてるのがRPiみたいなちょっと趣味でいじるマイコンボードレベルまでなんだろうね RTOS以外はラウンドロビン、ていう意味不明の信仰を広めてるのはTRON方面だっけ? RTOSとラウンドロビン程度のテクニカルタームすら理解できないアホはすっこんでな RTOSとラウンドロビン程度のテクニカルタームしか理解できないアホ↑ 今時の汎用OSはラウンドロビンじゃないし…
Linuxですら、わざわざRT-Linux持って来なくても、本家のconfigいぢるだけで
RTOSに出来てしまう時代に…
産総研のロボット制御なんかも、これでRTOSだね。 原発にrtosなんて使ってるから40年前の前世紀の遺物が保守されてないし新基準にも適合出来ずに廃炉に成るんじゃ
ちゃんと保守されてるrtosは何年もパッチ当てずに動いてるなんて事は無いよ
そんなのrtosの技術者は何年も生活費得る手段が亡くなってしまう
リナックスのrtos機能はなんちゃってだろ
あんなので満足されても困る
ユニックス機能と同じくらい似て非なるものだよ
ちなみにリナックスはユニックスのライセンスは受けていないから > リナックスのrtos機能はなんちゃってだろ
> あんなので満足されても困る
別に困らんだろう。
世の中その程度の機能・性能で済むアプリケーションがほとんどだ。
Linux を動かすリソースさえ確保できれば。
お前のレベルが低いだけと言いたいだろうが、誰もがミッションクリティカルな
システムを手掛けているわけではない。そんなのはごく一部。 >>157
>世の中その程度の機能・性能で済むアプリケーションがほとんどだ。
勝手に決めんなアホ > ちゃんと保守されてるrtosは何年もパッチ当てずに動いてるなんて事は無いよ
海外の原発だかで、RSX-11で動いてるとかいうのがあるんじゃなかったっけ? >>156
ワインバーグの工学の第一法則を思い出した。
「壊れてないものを治すな」
問題を起こしていないシステムを改良すると故障する
ワインバーグのテスト
「あなたはそのシステムに、自分の命をあずけられますか」