◆Dual◆デュアルCPUを語ろうぜ!!◆デュアル◆
>>930 タイムクォンタムってなんだよオイ。
その説明はタイムスライスだろ。
NTはそれにクォンタムが加わる。
割り込みはタイムスライスで入るが、割り当て時間はクォンタムだ。
ついでにNTのタイムスライス値は固定じゃないぞ。
それから割り込みはスレッドの優先順位でかかる。
現在実行中のスレッドより優先度の高いスレッドが入ると、そちらにスレッドが切り替わる。
ちなみにNTのタスクマネージャで設定できるのは、スレッドじゃなくてプロセスの優先度な。
前に自作板でもスレッドとプロセスを混同してるヤツがいたが、意味合いが全く違ってくるので要注意。
割り込みいうから、勘違いされるんだろう?
実効中のタスクが、持ち時間の終了、カーネルの呼び出し、デバイスの操作、
Wait等のアイドルといった状態になると、次のタスクが実効される。
他のスレッドがアイドル状況なら、今動いてたスレッドは引き続きCPU時間を
利用できるが、そのスレッドより優先順位の高いスレッドがあると、
キューには優先して登録されるので、タスク切り替わりのタイミングで
高優先順位のスレッドが実行される。
この、キューに優先して登録される部分が、「割り込ませる」処理では
あるけど、実行中のタスクを中断し別のプロセス・スレッドを割り込ませる
という意味ではない点に注意。
あれだ、今にもウンコ漏れそうなやつを個室の前に並んでる列の最前に
いれてやるようなもんで、脱糞中のやつを個室から引っ張り出して代わっ
てやるわけではない。
で、便所掃除のおばちゃんが紙を補充してくれるわけだけど、
おばちゃんの優先順位が低いと、脱糞待ちの連中が一息つくまで
紙を補充できない。
おばちゃんの優先順位を高くしておけば、おばちゃんの作業時間の
タイミングで(個室前にどんなに人が並んでいようと)紙の有無を
チェックし、不足していたら補充することができる。
個室が二つの場合、脱糞野郎が一人ならどちらかの個室は開いてるんで、
おばちゃんは紙の補充を行うことができるが、脱糞野郎が二人以上いると、
結局紙の補充は待たされることになる。
「脱糞野郎は糞するのが遅いから、おばちゃんのために個室を増やそう」って
いうのは本末転倒な話で、シングルでもデュアルでもおばちゃんの優先順位は
正しく設定してあげないと、紙がないから手で拭いてもったいないから食べちゃう
ことになるわけだ。
そういうこと。
>>940 リンクは知ってても中身は理解できないんか…。
哀 れ だ な
同じ事言ってるようにしか見えない。
>>941 >この、キューに優先して登録される部分が、「割り込ませる」処理では
>あるけど、実行中のタスクを中断し別のプロセス・スレッドを割り込ませる
>という意味ではない点に注意。
実行中のスレッドを中断して別スレッドが割り込みます。
引用:
スレッドの実行中に、そのスレッドよりもプライオリティの高いスレッドがレディの状態になれば、
クォンタムが残っていようと、そのスレッドは「レディ」の状態にされて、
プライオリティの高いスレッドが「実行」されることになる。
ええとですね、あげてもらった記事の次のページ
http://www.atmarkit.co.jp/fwin2k/special/win9xorwin2k/win2kprocess_5.html を見てもらえばわかるとはおもうんすが(というかわかってると思うんすが)
一つのクォンタムっていうのは複数のタイムスライスで構成されててですね、
タスクのコントロールはタイムスライスでなされてるんですわ。
各々の優先度毎にクォンタムの長さは決められてスレッドの実行が行われる
わけなんすが、一方でタスクのコントロールはタイムスライスで実行される。
キューへの積み上げはタイムスライスベースだが、スレッドのコントロールは
クォンタム単位でおこなわれるんで、一見、別スレッドの実行途中に割り込み
してるかに見えるけど、タスクを中断しているわけじゃない。
言ってることは一緒。
>>943 「タスク」って何だか知ってる?
わけないよな。
多分スレッドもタイムスライスもクォンタムも理解してないっぽかったから
>>940の
「Windows 2000のプロセス管理メカニズム(1)」
からリンク張ったんだが、全然理解してないな。
>複数のタイムスライス
タイムスライスは時間軸であって、複数存在しません。
>タスクのコントロールはタイムスライスでなされてるんですわ。
一番解り易く教えてあげるよ。
タスクマネージャのアプリケーションタグを見てみな。
リストの見出しに何て書いてある?
それが「タスク」だよ。
>スレッドのコントロールはクォンタム単位でおこなわれるんで
スレッドのコントロールがタイムスライスで行われ、割り当てる長さがクォンタムで決まる。
厳密にハッキリ言うと、クォンタムが残ってる状態で別スレッドに処理が移る事を「割り込み」と言う。
この辺の話はWinでロガーや制御系のコード打ってれば、先輩に嫌という程叩き込まれるよ。
別に一般人が知ってる必要のない知識だから、こんな事知らなくても別に恥ずかしくもなんともないぞ。
ただ知ったかするのは禿しくカッコワルイがな。
まぁあれだ
優先順位設定でヨシとしてるやつは、そっとしといてやれよ
俺らはデュアルやHTOnでのクアッドのCPUモニタ見てるだけで幸せじゃないか
それでいいじゃないか
各CPUの負荷が5%だとしてもだ
マウス動かすとちょっと上がるぞヽ(`Д´)ノ
946 :
930:04/07/29 20:16 ID:wzI2EaY/
まず訂正させてください。
タイムクォンタムというのは便宜的な呼び方で、正式なものではないらしい。
1クォンタムあたりの時間にクォンタムの値をかけたもの。
シングルプロセッサは、ワークステーション版は20msec、サーバ版は120msec。
マルチプロセッサは、ワークステーション版は30msec、サーバ版は180msec。
ただし、HALが決めていることなので、上記はx86の場合の値。
947 :
930:04/07/29 20:17 ID:wzI2EaY/
>>937 >>938 >>943 割り込みはタイムスライスでクォンタム減算により0になった時だけでなく、途中でも入ります。
・自発的にスレッドがCPUを放棄した時
・優先度の高いスレッドが実行可能状態になった時
InsideWindows2000第三版日本語版 361ページから引用:
このシナリオでは、優先度の高いスレッドを実行する準備ができると、優先度の低いスレッドの実行は優先度の高いスレッドに先取り(プリエンプション)される。これは次の2つの状況で発生する。
・優先度の高いスレッドの待機が完了した(ほかのスレッドが待っていたイベントが発生した)。
・スレッドの優先度が増加または減少した。
【引用ここまで】
948 :
930:04/07/29 20:18 ID:wzI2EaY/
>>937 > ちなみにNTのタスクマネージャで設定できるのは、スレッドじゃなくてプロセスの優先度な。
わかってる。
スレッドの優先度を変更することが非現実的なので、プロセスの優先度を変えるわけ。
InsideWindows2000第三版日本語版 346ページから引用:
Win32 APIではまず、作成時に割り当てられた優先度クラス別にプロセスを分類し、
次にプロセス内の個々のスレッドを相対的な優先度で分類する。
Win32 APIでは、各スレッドは、プロセスの優先度クラスとスレッドの相対的優先度
との組み合わせに基づいた優先度を持つことになる。
〜
スレッドは開始時にはプロセス基本優先度を継承するが、タスクマネージャ、
またはWin32 SetProcessPriority関数を使って優先度を変更できる。
【引用ここまで】
>>944 ありゃ、なんだ、まともにマルチタスクシステムのカーネルソースも読んだことがない
請け売り厨だったのか…ごめんな、そしたら教えられた定義でしか理解できないわな。
もし、もうちょっと好奇心があるなら、その「割り込み」がどのタイミングで、
誰の手によって行われてるか調べてごらん ^^
自分で調べて納得できんとたぶんこれ以上言っても理解してもらえないだろうけど
ちょっとだけ解説な。
藻前さんや930さんがいうてる「割り込み」っていうのはWin2kのプロセス管理機構
によってスレッド・プロセスに対して提供される一つの仕組みな。
どんなに優先されたプロセスも、連続してCPUを占有はできなくて途中かならず
カーネルの処理が挟まる。これにより擬似的・計画的に提供される「割り込み」。
ホントに進行中のプログラムを中断させてまで処理を奪う割り込みっていうのは、
タイムスライスなどに利用されるタイマー割り込みやデバイスからのデータ転送
につかわれるDMA割り込み、また仮想記憶上の非実メモリにアクセスした際発生する
例外割り込みなんかがそれにあたる。こいつらは真に実行中のプログラムの進行を
止めて、必要な処理を行う。
まぁ、聞ける人がいるならもっかい聞いて来いってこった。
950 :
930:04/07/29 22:29 ID:wzI2EaY/
>>949 それは教科書的な実装での話で、キュー中の並び順しか弄らないOSの話ではありませんか?
第三者の俺からするとID:9eHNMBebも930もOS(Win2000系カーネル)の
プロセス管理について話してると思われ
ことごとく間違いを指摘されてID変えて恥の上塗りしてさらにINTの
話に摩り替えようと必死になってるようにしか見えんぞ
ID:9eHNMBebも930も勘弁してやれよ
大人気ないぞ
952 :
951:04/07/29 22:41 ID:gWRZjdMf
953 :
928:04/07/30 01:17 ID:P30PzQoh
>>940見た。
そこでWindows 2000では、プライオリティをブーストするのではなく、クォンタム値をブーストすることにより、
このような場面でも、より円滑にフォアグラウンド アプリケーションとバックグラウウンド アプリケーションの処理を
進められるようにした。代わりに、フォアグラウンド側のレスポンスは、従来の方式よりも低下する危険があるが、
システムのプロセッサ性能は飛躍的に向上し続けているので、これが深刻な問題になることはないだろう。
>クォンタム ブーストが行われるのはWindows 2000 Professionalだけ
つまり、僕が使っているWindows2000 Professionalでシングルプロセッサの場合、
>フォアグラウンド側のレスポンスは、従来の方式よりも低下する危険がある
→づあるなら緩和?
つまり、間違ってないんでしょ?僕は。
954 :
930:04/07/30 02:23 ID:EqsANXsf
クォンタムブーストの他に、プライオリティブーストもあるんですよ、2000には。
>>940のリンク先では説明されていないけど。
でも、プライオリティブーストの効果よりも、プロセスのプライオリティのほうが、効果が大きいです。
ちなみに、
>>928さんは、USBスピーカのためにデュアルが必要なのだから、
これらの議論は気にしなくていいはず。
間違いでない事をわざわざ強引に否定する為に
代替手法を必死で力説するヤツって…(ry
否定はしないよ。
プライオリティに差をつけるのでも、デュアルにするのでも、どちらも解決策になる。
ただし、
プライオリティに差をつける → シングルでもデュアルでも有効
プライオリティに差をつけず、デュアルにする → 他のbusyなスレッドが1つだけの場合に有効
どっちが汎用的だと思いますか?
どっちかデュアルの有効活用だと思いますか?
せっかくCPUが2個あって、シングルの倍の処理能力があるのに、
無策のままレスポンスを良くするために、CPUを1個空けておくのですか?
プライオリティに差をつければ、シングルの倍の処理能力のまま、レスポンスを良くできるのに。
デュアルにする理由が変な人がいるんですよ。
オンボードのサウンドが壊れているのを直さずに使うためにCPUを追加する人、
IDEのPIO転送のまま使うためにCPUを追加する人、
常にUIのためにCPUを一個あけておくためにCPUを追加する人・・・
所有欲を満たすとか、かっこいいとか、そういう理由のほうがよっぽど良いよ。
>>957 禿堂
難しいこと考えなくても、Pen4 3.6GよりXeon 3.6G ヅアルのがかこいいし
何の設定もせずに負荷掛かっても遅くならない
シングルより遅いと気づく事もまずない
高かろうが、電気代掛かろうが、うるさかろうが
未だにマルチプロセッサに対応してないソフトが多かろうが
俺はヅアルが好きだ!!!!!!!!
おっと言い忘れた
俺のマシンはAbit BP6 セロリン ヅアルだ
ゲームでもしなきゃ、そんなに遅いと感じる事はないな、、
ママー、メモリ、電源、ケース、Nocona2.8G*2で10万ちょい?
憧れのXeonヅアルの為にバイト頑張るぜ
>>903で正解だったとは
まだまだ長いぞ夏休み、はぁ〜。
>>960 俺の事?
俺のマシンもアニキからもらったお古だしな
アニキも今はアスロンのゲーム専用マシンみたいなの使ってるけど
俺はBP6だろうがCPUが2つあるのを見て惚れた
絶対金貯めてXeon買うんだ
Xeonヅアル買っても負荷掛かるからてプライオリティつつくことってある?
2.8G位しか買えないんだけども、、
いいや、Xeonヅアルなら
オプに負けてようがゲームにはヅアル関係なかろうが
欲っし〜
ダウトって言葉で明らかな否定だったんですが、否定はしないよって…?
あっ 人格Dualだから良い訳ですね、はいはい。
>>962 本筋だというのは否定
一つの解決策だというのは肯定
何もしらん俺にはイイ勉強になるスレだ。
965 :
953:04/07/30 23:08 ID:P30PzQoh
>>957 >オンボードのサウンドが壊れているのを直さずに使うためにCPUを追加する人、
壊れていて直らないから中古で売ってたんだよ。ちくしょう。ソーテックのだよ。直したら壊れるんだよ。
>IDEのPIO転送のまま使うためにCPUを追加する人、
PIOの方が高速な転送モードが利用できる。あえてそうする人もいるんじゃないですか?
HDDが眠りから覚める時ってしばらく応答しなくなるけど、づあるなら平気だったような。
>常にUIのためにCPUを一個あけておくためにCPUを追加する人・・・
UI処理を優先すると言っても優先度の高いバックグラウンドのとぶつかるでしょと。
優先度変更?設定すべき数字がよくわかりません。そんなことに頭使いたくない。優先度を落とすだけならしてもいいけど。
>シングルより遅いと気づく事もまずない
????????????????
>高かろうが、電気代掛かろうが、うるさかろうが
気にするからデュアルコアにする。
>未だにマルチプロセッサに対応してないソフトが多かろうが
あまり見かけないけど?
あったとしても、・・・
そんなことより誰が誰だかワカラン。
意見を何度も書き込むんならまず名乗り、
どれに対する意見なのかはっきりしてほしい。
優先度ってすべてのプログラムに影響するのに
混乱するレスする人が正しく優先度を設定できるとは思えないね。
>常にUIのためにCPUを一個あけておくためにCPUを追加する人・・・
常にUDのためにCPUを二個使うためにCPUを追加してます・・・
>>963 いくつか有る特徴の中から一つを好んで話題にした人に対して
それが絶対的な選択条件であるかのように誤解して必死で否定してた訳ね
まぁ初心者にはよくある思い込みってやつだよ、あまり気にするな。
スロットが1本空いてたので、とりあえずCPUを挿して、塞ぎました。
970 :
不明なデバイスさん:04/07/31 22:59 ID:MlFLieqn
971 :
969:04/07/31 23:17 ID:1vK5xgi5
>>970 Windows2000ですが、何か。
まだPCIもDIMMも空いてる。埋めなくては。
972 :
970:04/08/01 00:02 ID:pQUkrHz/
>>971 ふつう、「2つ目は動いてない」とか「まったく変わってない」とか言って藁貸してくれるところじゃないですか?
残念ですが、座布団は差し上げられません。
ごめん。WindowsMeとか言わなきゃいけなかったのね。
次スレのテンプレどうしましょう。
方向性つけてあげないと、不毛な話が続くような気がするので。
>965
_, ._
( ゚ Д゚) ガシャ
( つ O. __
と_)_) (__()、;.o:。
゚*・:.。
>PIOの方が高速な転送モードが利用できる。あえてそうする人もいるんじゃないですか?
おまいはアホか?
DOSの時代じゃあるまいし なんでPIOになるんだよ
CPUから直結したほうが速いという話はDOSだよDOS
そもそもシングルタスクのOSのアーキテクチャだぞ わかってんのか
>ソーテックのだよ
このあたりでおまいのスキルもわかるというもんだ
お前はこのスレで答えるほどのスキルは持っていない
もう一度ハードの勉強をし直して来い!
>>974 ◆Lindenhurstマジ脂肪◆デュアルCPUを語りませう◆Tamwateマジ脂肪◆
977 :
不明なデバイスさん:04/08/01 10:36 ID:AKXQw+Dz
今時のセレだと2.4G以上あるからデュアルできればいいなと思うんだけど、やっぱムリ?
可能ならみんなやってるべ。
979 :
965:04/08/01 17:46 ID:pQUkrHz/
どーしよう。
自分で自分の傷に塩塗りに来ちゃってるよ・・・
自分の否を素直に認めるやつも居れば
棚上げして言い訳ぐだぐだの知ったか夏厨も居る
と、いうふうに思って欲しいのかな?Dualクンとしては
次スレどうするよ・・・
DualスレではなくMPスレとして(ry
マルチコアのCPUでデュアル組む