- ベストアンサー
実時間処理ってなんですか?
Fookyの回答
どうも、2つの軸が混ざってる気がするんですが。 リアルタイムか否か、ということと、バッチ処理か 否かというのは、確かに無関係ではないですが、 別の軸じゃないですか? リアルタイムというのは、ぶっちゃけて言うと、 「じゅうぶんに速い」ってだけのことでしょう。 例えば、リアルタイムOSなんかでは、計測機器や 制御機器を制御するために、数10μ秒ごとに 機器からデータを取ったり機器に制御信号を 送ったりしないといけないわけで、そのために、 機器への入出力のための割り込みイベントが、必ず、 ある一定の時間ごとに実行されることを 保証します。この例では、リアルタイム(十分な 速さ)とは、「数10μ秒」であるわけです。 他の例として、私はソフトウェア関係の基礎研究を しているんですが、こういった分野でも、よく 「実時間でできる」とか言い方をします。これは、 「この技術をシステムに応用したときに、利用シーンから 考えて、なんとか待つことができる時間、現実的な時間」 といったような意味合いです。 例えば、現在ほどに検索エンジンが流行っていない時代に、 「100万件のデータベースから、1単語をキーにして 全文検索をするのに、たった3分で可能です!」というのは、 驚くべき実時間性だった、と言えるんじゃないでしょうか? 当然、現在では使い物にならない、即ち、非現実的、 実時間じゃない、ということになります。 これらの差は、上で言った、利用シーンの差であるわけです。 100万件/3分でも、例えば、研究者が過去の研究論文を検索する、 と言った利用シーンを想定すると、全く現実的な時間ですが、 現在のように、世界中の人がちょっとした調べものにも利用する、 というシーンを想定すると、到底、許容できない時間に なってしまうわけです。 実時間とは、機器制御だったり、文献調査であったり、趣味の ホームページを探すことだったり、という利用シーンに対して、 「じゅうぶんに速い」ことだ、という主張は、こういうこと だったわけです。 一方、 バッチ(オフライン)処理<->インタラクティブ(オンライン) 処理という軸は、その名の通り処理方式の差です。 たいていのプログラムは、入力→処理→出力という流れですが、 ユーザや環境からのデータ入力および結果出力が、処理と平行して (入力→処理→出力→ユーザの解釈・行動→次の入力→処理→…) 行われるのがオンライン、まず一旦、必要なデータをまとめて 入力して、処理して、最後に完全な出力を出す、というのが オフライン処理です。 前半のリアルタイム性と後半のインタラクティブ性が 無関係でない、と言ったのは、リアルタイムなバッチ処理、 というものはあり得るが、リアルタイムでない インタラクティブ処理というのは(ユーザに余程の忍耐を 強いない限り)あり得ないといったことから来ています。
関連するQ&A
- バラツキが大きすぎたデータの処理
泣きたいです。 誰か助けていただけるかたいませんか。 統計処理を勉強し直し中ですが、今までの実験データの変動係数(CV)を計算してみたら、大きい方で40%にまで達してしまっています。 一年あまりも取り組んで集めてきたデータです。 どういう風に処理(?)、或いは解釈すれば良いでしょうか。 もしかして、0からやり直すしかないかと思うと、時間もないし、おしまいです.......
- 締切済み
- 農学
- アプリケーションソフトの処理時間について
こんにちは。 XP上で数値計算をやっています。同一のプログラムの実行にも関わらず、計算させる度に処理時間にばらつきがあって、通常4時間程度かかる処理が4日もかかったりすることがあります。入力データの量もほとんど変わらず、基本的に全く同じ計算の繰り返しです。 自分の推測ですが、Windowsのアプリケーションに対する設定が悪さしてるのでは、と思ってます。 長時間の数値計算を実行させるとき、計算に影響が出るようなOSの要素として、どのようなものが考えられるでしょうか? なお、アプリケーションはmatlabで、スクリーンセーバーは切っています。 よろしくお願いします
- 締切済み
- Windows XP
- Visual c++でダイアログと処理の切り離し
初心者ですので簡単なものですが質問させてください。 Visual c++2005のMFCのダイアログベースで作られたタイマーで周期処理されるプロジェクトがあります。 ダイアログと処理を別々のプロジェクトに切り離してUDPで通信したいと考えています。 まずは簡単なモノで試したいのですが、どうすればよいのかわからないのでご教授いただけたらと思います。 例えば、処理としてはテキストボックスに数字を入力しボタンを押したら計算結果が表示される簡単なものです。 まずは、これが動作するモノを作りました。 そして同じものをコピペしてソケットを利用してプロジェクト間で通信を行えばよいと考えています。 内部処理としては下記のようになると思うのですが、、、 1.入力した変数をまとめてパケットに変換(ダイアログ側) 2.パケットを送信(ダイアログ側) 3.パケットを受信(処理側) 4.受信したパケットを解釈(処理側) 5.解釈したデータを計算処理(処理側) 6.計算処理結果をパケットに変換(処理側) 7.パケットを送信(処理側) 8.パケットを受信(ダイアログ側) 9.受信したパケットを解釈(ダイアログ側) 10.解釈したデータをダイアログに表示(ダイアログ側) ※通信ではafxsock.hを利用すればよいとのことでした。
- 締切済み
- C・C++・C#
- 処理時間について
今、仕事で既存の処理のレスポンス調査をしているのですが、 行き詰ってしまったので質問させていただきます。 本番環境とテスト環境で全く同じ処理を実行した所、テスト環境では 1分程度で処理が正常終了するのに本番環境だと 2時間経過しても処理が終わらず、なぜ同じ処理なのに本番環境と テスト環境で処理時間に違いがありすぎるのか分からず困っています。 処理としては25万件程あるデータ(テキストベース)を PL/SQLで読み込みTable_AにInsert または キーが同じデータが 存在しているならUpdateをし、 それと同時にトリガーで更新前と更新後の値を Log_TableにInsertします。 検証したときの手順としては、 (1)Table_AとLog_TableをCreate (2)トリガーのコンパイル (3)Table_Aのインデックスの作成 (4)PL/SQLのコンパイル (5)Table_AとLog_Tableの統計情報の取得 となっております。 ちなみに、テスト環境と本番環境の両方について、 実行されたSQLの実行計画を取得し比較したのですが、 同じ実行計画になっていました。 また、統計情報を取らずに処理を実行した場合は、テスト環境でも 2時間経過しても処理が終わりませんでした。
- 締切済み
- Oracle
- バッチ処理するには?
初心者です。 DOS窓で動くデータの変換プログラムでフォルダ内の膨大なデータ(ファイル名ばらばら)をバッチ処理でまとめて変換したいんですが、時間も無くどうしていいかわかりません。 例えばd:\export.exe d:\dat\sozaia001.dat > d:\dat\sozai001.text というふうに手入力でやってます。 これを一括処理できますでしょうか? よろしくお願いします。
- ベストアンサー
- その他([技術者向] コンピューター)
- 量子コンピュータについて
昔、量子論の解説書の中で、イギリスの物理学者ドイッチュの以下の言葉が引用されていました。 「量子コンピュータが並行処理を行えるのは、同時並行して存在する複数の世界で計算処理をしているからだ。つまり量子コンピュータが完成すれば、それは多世界解釈の正しさの証拠になる」 そこで、D-Waveが量子コンピュータを作成したと聞いたのですが、上の発言通りに多世界解釈は現実味を帯びてきたのでしょうか? または、もう多世界解釈は廃れてしまったのでしょうか。
- ベストアンサー
- 物理学
- ダイス鋼の熱処理の時間
SKD61を電気炉で熱処理したいのですが、 電気炉の説明書などで25tで約15分と書いて あるのですが、旋盤で加工したテーパー状の肉厚が変化してるのはどういう様な計算をするのでしょうか? 重量とかで焼き入れ(焼き戻し)時間が決まるのですか? 戻しの時も2時間を二回戻すのと一度に4時間戻すのとでは意味が違うのでしょうか? また、2時間を二回戻すのを4時間で2回戻した時は硬度下がってしまうのですか? よろしくお願いします。
- 締切済み
- 熱処理
- [Windowsプログラミング] スレッドでリアルタイムにキーボード入力を処理したいのですが
いつもお世話になっております。 最近Windowsプログラミングを始めたばかりです。 今スレッドの勉強をしているのですが、キーボードの入力をスレッドが処理したいと考えております。 受け渡しでは生成時点での入力しか処理できず、うまくいきません。 プロシージャとスレッドでリアルタイムにデータをやり取りする方法はないでしょうか? ご指導よろしくお願いします。
- ベストアンサー
- C・C++・C#
- ガントチャートが作れません。細かい作業が同時進行で
ガントチャートが作れません。細かい作業が同時進行で行われ、行ったり来たりします。ほかに良いツールはありませんか? 例 データ受け取る ⬇︎ データ入力 ⬇︎ データ確認 これを3日で200件処理します。 データを受け取る期間が決まってないので、来たら随時やる、だからガントも五月雨式になるというか、1日目は、これ、2日目はこれ、と言えないのです。
- ベストアンサー
- その他(業務ソフトウェア)
- プログラムの処理速度について
プログラムを拡張してみたですが、実行してみると処理は5秒以上かかります。あまり望ましくない-.-;;。どこの部分が(例えばどの関数)時間を食うのか?どうやって調べますか? ファイル処理や計算処理をやっていて、ファイル処理時間を抑えるため一応二分探索やってますが。。。それでもまだ時間かかるんです。。。ちなみにネストのデータ構造は結構処理に影響でるんでしょうか? よろしくお願いします。
- ベストアンサー
- C・C++・C#
お礼
さすが専門家さん、詳しく教えて下さって ありがとうございます。 検索エンジンの例、とても分かりやすいです。