なぜ彼らはハードドライブに「プロセッサ」を置いているのですか?


54

ハードドライブにプロセッサが搭載されているとはどういう意味ですか?どのように機能し、どのような利点がありますか?

わかりません-コンピュータのCPUはプロセッサであり、ハードドライブはその内容をホストコンピュータのRAMに転送します。追加のプロセッサは何らかの形でデータを前処理しますか?

ここではいくつかの例を示します。

  1. Western Digital WD Black WD1002FAEX 1TB「デュアルプロセッサスピード」
  2. NETGEAR ReadyNAS 312 2ベイディスクレスネットワーク接続ストレージ「デュアルコアIntel 2.1GHzプロセッサーおよび2GBオンボードメモリ」

また、ルーターにもプロセッサーが搭載されています。なぜそれが必要なのですか?私はそれが一種の理にかなっていると思います-どのポートに送信するかを知るためにパケットを読み込むためにいくつかのロジックが発生する必要がありますが、なぜ古いルーターはそれらを必要としなかったのですか?

プロセッサを搭載したワイヤレスルーターの例:「デュアルコアプロセッサ」

フォンノイマンマシンモデルにはストレージ上のプロセッサが含まれていないため、驚いています 図


19
そのNetgearは単なるルーターではなく、本格的なファイルサーバーです。ハードドライブを使用すると、1つでいくつかの前処理を行い、他ではIOを行います。理論的には少し高速ですが、SSDは依然として速度の王です。ASUSルーターには、処理能力が必要なVPN機能やその他の空想機能があるため、デュアルコアです。
user341814 14

17
Von Neumannモデルは、I / Oデバイスの構造については何も述べていません。モニターを駆動するのにグラフィックカードが必要ですが、そのモデルはすべてを単一の「出力」ブロックの下にまとめます。
user253751 14

10
フォンノイマンアーキテクチャ(1945年以降)は、ストアドプログラムコンピューターを理解するための(概念的に)優れた出発点です。最新のコンピューター(ほとんどの周辺機器を含む)の実際の実装は、非常に詳細です。1945年には「スマートペリフェラル」がなかったため、図には表示されません。車の概念は1945年と同じですが(4輪、エンジン、ステアリングホイール)、1945年の車の簡略図が今日の包括的な理解をもたらすとは思わないでしょう。
マックスデイモン

7
フォンノイマンアーキテクチャ図には、「メモリ」と「ストレージ」の間に矢印も含まれていません。DMAを検討してください。
CVn

3
(アップルとは別に、Wozのおかげで)初期の家庭用マイクロコンピューター(と思う)にはすべて、フロッピードライブにプロセッサが搭載されていたことをご存知ですか?初期のAppleフロッピードライブのチャンクチャンクサウンドを覚えていますか?これは、ドライブアームを最大距離まで3回移動することでセクター0を見つけたためです。
エリオットフリッシュ14

回答:


81

さて、HDDには常にプロセッサがあり、主にデータをキャッシュしたり、不良ブロックのマーク付けなど他のHDD処理を行ったりします。

リンクしたNetgear製品はNASであり、ネットワーク経由でメディアをストリーミングできるため、実際にはHDDではありません。ネットワークに接続されたHDDに、ネットワークを介して情報をストリーミングできるようにするいくつかの派手なソフトウェアを備えたものに似ています。

古いルーターにもプロセッサが搭載されていましたが、以前は速度が遅く、まったく広告されていませんでした。2002年に発表されたWRT54Gには、125Mhzで動作するBroadcom BCM4702が搭載されていました。それほど速くありません。ただし、最近ではルーターからの要求が増えており、VPNなどの機能にはより高速なプロセッサーが必要です。


14
HDDには認識可能な「プロセッサ」が常にあるわけではありませが、15〜20年は確かに一般的です。
ダニエルRヒックス14

21
ST-506ドライブは「ダム」ドライブであり、1990年代初頭まで人気がありました。IDE(Integrated Drive Electronics、別名「スマート」ドライブ)は、SCSIと同様に、コントローラー(CPU)をドライブに直接配置します。
マックスデイモン

11
プロセッサを含むハードドライブは限り早くもさかのぼる1960年CDC 6000シリーズの周辺プロセッサと同等IBMシステムで/ 360(そしておそらくそれ以前のマシン)。
アンドリューメディコ14

3
さて、あなたはキャッシュにどのようなデータを決定するように、最適に機能するためにキャッシュするためのプロセッサが必要です
matthew5025

3
ハードディスクは、必ずしも内部的に不良ブロックを追跡しているとは限りません。MS-DOS 6.0がスキャンディスクとその表面スキャン機能を導入して、FATに不良クラスターのリストを追加したのはなぜだと思いますか?
CVn 14

125

わかりません-コンピュータのCPUはプロセッサであり、ハードドライブはその内容をホストコンピュータのRAMに転送します。追加のプロセッサは何らかの形でデータを前処理しますか?

CPUであるプロセッサ。他にもあります。プロセッサはプログラムコードを実行するものであるため、ファームウェア(コード)を備えたデバイスには何らかのプロセッサがあります。

ハードドライブには、インターフェイスプロトコル(SATAやSCSIなど)を実装し、ドライブのモーターを制御するファームウェアを実行する独自の(小さな)プロセッサがあります。ハードドライブは、コンピューター内の専用コンピューターと考えてください。SATAケーブルは、「メイン」コンピューターと通信できるネットワークケーブルのようなものです。CPUは、必要なデータをドライブに伝えるメッセージ(SATAコマンドパケットなど)を作成し、ケーブルを介してドライブに送信します。ドライブのプロセッサはCPUからのメッセージを確認し、ドライブのモーターと磁気ヘッドを制御して実際にデータを読み書きします。

NASは、ファイルサーバーソフトウェアを実行しているコンピューターです。原則として、PCで共有フォルダーを設定することと違いはありません。NASはより低速のプロセッサでより軽量のオペレーティングシステムを実行していますが、基本的に同じ作業を行っています。ルーターについても同様です。


53
私はこの答えが好きです。CPUは中央処理装置であるため、他のものが必要です。
グロノスタジ14

19
重要な点は、「ファームウェア(コードを実行)を備えたデバイスには、何らかのプロセッサが搭載されている」ことです。ウェイザードへの道!
マインドウィン14

2
電力損失保護は、プロセッサとプログラムコードを備えたハードドライブに実装できる機能の例です。ドライブは、MBから電力が失われたことを検出できます。HDのプロセッサで実行されているプログラムは、バッファされたデータの最後のビットをディスクに書き込むことができます(オンボードコンデンサーからの電力で)。MBには電力が供給されていないため、その上のCPUには電力が供給されておらず、未完成のHD書き込み操作には役に立たない。そのため、HDには独自のパワー、プロセッサ、およびプログラムコードがあり、バッファリングされた書き込みを完了し、クリーンにシャットダウンするのは理にかなっています。
MikeM 14

2
ウィキペディアから:「初期の一部のPC HDDは、電源が時期尚早に切断され、ヘッドがデータに到達したときに、自動的にヘッドを停止しませんでした。-プロセッサとプログラムコードにより、この問題も解決されました。
MikeM 14

@gronostaj分散処理ユニットも必要ですか?
トールビョーンラヴンアンデルセン14

33

一般的なデスクトップPCの動作を詳しく見ることができれば、至る所にプロセッサがあります。USBポートにキーボードとマウスが接続されている場合、キーボードの内部にプロセッサがあり、マウスの内部にUSBプロトコルを話すプロセッサがあります。

ハードドライブの場合、そのプロセッサが行うべきことは山ほどあります。1つには、プロセッサがヘッドの位置を決め、適切な瞬間を待ってから、データをプラッターに送信する必要があります。CPUが大量のデータの読み取りを要求すると、プロセッサはディスクからそのデータを取得する最適な順序を見つけ、場合によっては、CPUが要求した場合にキャッシュの下に置くためにヘッドの下を通過する余分なデータをフェッチすることもあります次。

最新のハードドライブは、バックグラウンドでSMARTヘルスチェックも実行できます。CPUは、定期的に結果を要求する場合を除いて、これらのことを考慮する必要はありません。

現代のソーホー「ルーター」は単なるルーターではありません。また、アクセスポイント、スイッチ、DHCPサーバー、Webサーバーであり、NAT、ファイアウォール、場合によってはNAS機能なども実装します。彼らのプロセッサーにはやるべきことが山ほどあります。

基本的に、プロセッサは最近実装するのに非常に安価であるため、ほとんどすべての場合に使用できます。例外は、タスクが非常に単純な場合、または高いパフォーマンスが必要な場合です。ちなみに、ファンの速度を管理し、電力消費を最適化するために、おそらく電源が1つもあります。


1
「キーボードとマウスをUSBポートに接続している場合、キーボードの内部にプロセッサがあり、マウスの内部にUSBプロトコルを話すプロセッサがあります。」これはコントローラーの仕事だと思った。コントローラーはプロセッサーと同じものと見なされることがありますか?
セレリタス14

1
コントローラ純粋なハードウェアでもかまいませんが、それらに対する要件は増加する傾向があり、ハードウェアはますます複雑になります。複雑な特定のポイントでは、プロセッサを使用してソフトウェアで処理する方が簡単です。ただし、コントローラーに別の名前は付けられません。ユーザーは通常、コントローラーがどのように実装されているかを知りたくない、または知る必要はありません。また、最近の複雑なハードウェアASICとFPGAでは、プロセッサの区別が少し曖昧になります。
ガントラムブローム14

私はそれを最初は「マウスのきしみ」と読みました:)
トムジーチ14

21

現在の多くの「スマート」アプライアンスは、実際には本格的なコンピューターであり、多くの場合、Linuxのクローンを実行しています。デバイスが十分に許容される場合、またはルート化/ジェイルブレイクされている場合、デバイスをいじったり、新しいパッケージをインストールしたり、OSを変更したりすることができます。もちろん、CPUを使用します。

例としては、電話、テレビ、DVDプレーヤー、電子書籍リーダー、NASボックス、ホームルーター、モデム、サーバー内の帯域外管理などがあり、これらは実際には独自のOSを備えたコンピューター全体です。

しかし、ダムデバイスでさえ、多くの場合マイクロコントローラと呼ばれる、データの読み取りと書き込みを行うプロセッサを備えています。電話機のMicro SDカードにはプロセッサが含まれ、SIMカードにはJavaアプリケーションを実行できる別のカードが含まれています。

信号機のような単純な子供用おもちゃでさえ、マイクロコントローラを備えています。これは、ディスクリートコンポーネントよりもマイクロコントローラのソフトウェアに光ロジックを実装するが簡単で安価なためです。


8
実際、SIMカードが実際のコンピューターであることを知っている人はほとんどいません。特別なSMSを使用して、オンザフライで再プログラムすることもできます-phuclv 14
13:22


SIMカードだけでなく、ISO規格に準拠した任意のチップ&ピンスマートカード。銀行カード、ロイヤルティカード、その他多くのものは現在これらのものを搭載しており、それらのいくつかは驚くほど強力です。
ショーティ14

20

誰も対処していないと思われるハードディスクドライブに関する特定の質問に答えるため。

SATA(および私が考えることができる他のすべてのディスク接続インターフェース)はブロックで動作します。コマンドは(他の多くのものの中でも)特定の物理ストレージブロックを読み書きするために定義されており、データは接続インターフェースケーブルを介して提供されます。そのコマンドはどこかで処理する必要があります。これは、オンボードプロセッサ上で実行されるソフトウェアで実行するか、おそらくほぼ同じことを行う必要がある何らかの純粋なハードウェアセットアップを使用して実行できます。

安価で、物理的に小さく、扱いにくいとは思えないほど遠く、通常ははるかに汎用性が高いと思いますか?そうです、プロセッサ、少量のプログラムメモリ(フラッシュ、EPROM、ROM、またはあなたのニーズに合うもの)と少量のRAM。あなたのニーズが十分に控えめであれば、後者の2つはプロセッサ自体(たとえば、マイクロコントローラのPICファミリを参照)。

また、ディスクプラッタは実際にはビットを保存しないことに注意してください。ビットの磁束エンコードを 保存します。何かが読み取りヘッドからの磁束の測定値を処理し、または書き込みヘッドに与えられる磁束遷移にデータを処理しなければなりません。読み取りが不完全である場合には、誤り訂正データ(データとともに保存された)に使用され、理想的に(これは残念ながらあり、常にそうではありません)、問題があまりにもある場合は、エラーを訂正し、むしろゴミより良いデータを返すか、エラーを返します修正可能であると深刻です。繰り返しますが、それは何かで実行する必要があるソフトウェアに実装するのが最も簡単であり、メモリを備えたプロセッサが再び非常にうまく適合します。

多くの処理能力をオンボードに搭載することは、より高度なエンコードおよびエラー回復スキームを使用できることを意味します。これは、ハードディスクの場合、同じ物理的表面により多くのデータを詰め込むことができることを意味します。最終的な結果は、他の方法で可能なストレージ容量よりも大きくなります。ただし、ハードディスクマイクロコントローラー自体の処理能力は、ドライブのユーザーにとってそれほど重要ではありません。


1
「ある種の純粋なハードウェアセットアップの使用」について詳しく説明すると、マイクロコントローラ(おっしゃるとおり)とカスタムASICがはるかに一般的でした。今日では、ROMから組み込みOSを実行する「実際の」プロセッサを使用して構築する方が、カスタムASICを設計および製造し、マイクロコントローラ用の高度に特化したファームウェアを作成するよりも安価で簡単です。ハードウェアの問題はソフトウェアの問題になり、コンポーネントはより標準化されます。どちらもコストを削減し、新しい機能への扉を開きます。

12

この点を読み過ぎていても、まだ答えを読んでいない場合はご容赦ください(他のすべての答えは素晴らしいですが)。

また、プロセッサをハードウェア機器に展開すると、メインボード上のCPUである中央処理装置の作業負荷が軽減されます。

実行する必要があるすべての作業を実行する必要がある単一のCPUを搭載したコンピューターを考えてください。メモリの制御、バスの制御、ハードドライブ固有の計算の管理(ドライブのスピン、アクセス、書き込みの大きさ、読み取りなど)

実行する必要があるすべてがCPUによって実行される場合、実際のタスクに残される時間はあまりありません。


9

明らかなことから始めましょう-それらの「プロセッサ」は常にあるレベルで存在していました。古いドライブでは、これらは、コントローラカードにあった、と何かがで近づいて近代的な、ハードドライブが持っていたディスクコントローラを - PATAドライブの「IDE」指定は別々のカードを持つとは対照的に、エレクトロニクスは、オンボードだったという事実を指します。

伝統的にこれらはマイクロコントローラでしたが、私のssd-サムスン840は3コアアームベースのプロセッサを備えています。これらのチップは、様々な内部(ATA変換またはSCSIドライブエレクトロニクスはgroks何かにコマンドなど)の翻訳、および2つの要因を扱う、ウェアレベリングのようなことを行う-そのハードウェアがある多く、それがために使用よりも複雑、かつプロセッサは、安価かつ高速化以前よりも、汎用のコアを削減してドライブに固定するのが理にかなっています。ただし、はい、これらのプロセッサは常に存在しています。

ルーターでは、常にミップまたはアームコアがありました。基本的に、Webサーバーを実行したり、ルーティングなどを行うためのパワーが必要です。多くのネットワーク接続ドライブは、smbや管理ページなどを処理できるように、類似またはより優れたコアを使用しています。

長年にわたり、そのことについては、キーボードを使用すると、多くの古いコンピュータに見つけるだろうと同じM68Kプロセッサを持っていた、とありますマウス派手な照明のようなものを処理するためのARMコアとは、これまでより速い応答。


キーボードに68Kマイクロプロセッサが搭載されたのはいつですか?また、ST-225のようなドライブには実際にプロセッサが搭載されていましたか?
supercat 14

まあ、これは4〜5年前に分解した古い、くだらないパッカードベルキーボードで、当時は中古でした。ちょっと驚きました。ST 225はIDEに先行していたため、別のコントローラーが必要でした。私はほとんどあなたが最後の15年かそこらからPCに見つけるだろう何か、それを考慮していないと思います
ジャーニーマンオタク

68HC05のようなものに対して68Kでしたか?
supercat 14

ST 225について。MFMドライブは十分に古く、メインコンピューターのCPUを使用します。ドライブ自体には、ドライブヘッドからの生信号、トラックを変更するための信号、トラック変更方向の信号(より高いトラックまたはより低いトラックへの信号)、およびトラックゼロを示す信号を持つケーブルのみがあります。到達しました。すべての管理(ディスクラベルに印刷されている不良セクタの追跡を含む)は、メインコンピューターのソフトウェアで行われました。
ヘネス14

5

また、ルーターにもプロセッサーが搭載されています。なぜそれが必要なのですか?私はそれが一種の理にかなっていると思います-どのポートに送信するかを知るためにパケットを読み込むためにいくつかのロジックが発生する必要がありますが、なぜ古いルーターはそれらを必要としなかったのですか?

ルータには常にプロセッサが搭載されています。2つの元のルーターはPDP-11で実行されているソフトウェアでした(はい、Unixが最初に書かれたマシンの後継機です)。1つはスタンフォードで開発され、もう1つはMITで開発されました。スタンフォードのルーターは、その後シスコシステムズという当時の小規模な新興企業にライセンス供与されました。シスコは、PDPコンピューターをカスタムエンクロージャーに再パッケージ化し、「Cisco」ラベルを貼ってルーターとして販売しました。

そのため、古いルーターで使用されていたのはプロセッサです。

シスコの創業者の一人が「ソフトウェアを金属製の箱として販売することの利点です。友人にコピーを渡さないように説得する必要はありません」と言ったインタビューを読んだことを覚えています。私のgoogle-fuは今日私に失敗したので、実際の見積もりを見つけることができません。マイクロソフトと呼ばれる小さな会社のある創業者が、ソフトウェアにお金を払わなければならないと人々に納得させる前の時代でした(当時はBasicの初期バージョンでした)。


4

コンピュータ革命の誕生以来、すべての半自律的な機器には何らかの「プロセッサ」が搭載されていましたが、今までそういうものとしてフラグが立てられたことはありませんでした。

ここであなたが見ているのは、熱心なマーケティング代理店によって私たちの社会に広まっている進行中の腐敗と半分の真実です。利益。

問題の事実はこれですが、プロセスの次の反復が前の反復と異なる可能性がある一連のタスクを実行する必要があるものはすべて、デバイスに与えられた命令を理解できる何らかの種類のインタープリターを持っている必要があります、そしてそれらの指示に何らかの方法で反応します。

昔の「コントローラー」などの用語に戻るが、これらはまだ同じものに煮詰められている。

たとえば、「IDE IDEコントローラを搭載したIDEハードドライブ」を考えてみましょう。これは、PCのメインボード上のCPUと同じ意味でのCPUではありませんが、CPUの形ではありません。

ホストPCは、バス(PCI、ISA、MCI、PCIeなど)を介してドライブコントローラーに「OPコード」(オペレーションコードの短縮)を送信し、コントローラーはこのコードと、提供されたデータを読み取り、それらを有効にしますその後、ドライブがヘッドを正しい場所に移動し、要求されたデータを読み取るようにする物理的な操作に移行します。

ルーターにはさらに長い歴史があり、シスコは過去50年以上の最高の部分でネットワーク機器を構築しており、これらのデバイスには常にカスタムコントローラー/ CPUが搭載されています。このCPUは、シスコがすべての範囲またはルーターとスイッチをプログラミングおよび制御する目的で明示的に設計されています。

グラフィックスカードは別のものです。グラフィックスだけを行う神秘的なもののように、人々は「GPU」という用語をまとうと聞きます。それは、超並列数学アルゴリズムプロセッサではなく、Nvidia CUDAの本の技術的な編集を終えたばかりで、Nvidia GPUについて学んだことはかなり驚くべきことでした。これらはプロセッサ自体のプロセッサですスペシャリストのジョブセットを実行するように設計されていますが、まだ半インテリジェントであり、さまざまなタイプの操作が可能です。

すでに指摘したように、Netgear Readynasは、実際にはそれ自体が完全なPCに似ています。リモートストレージデバイスとしてのみ機能するように特別に設計されています。

望むなら、新しいソフトウェアでNetgearデバイスを再プログラミングし、Webサーバー、データベースサーバー、または小さなLinux開発サーバーとして完全に機能させることを妨げるものは何もありません。(クイック検索により、これらのNASユニットでそのようなことを行うことを目的とした少数のプロジェクト以上が表示されます)

プロセッサに関しては、最近では「プロセッサ」を搭載しているのはハードドライブだけではないことを知って驚くかもしれません。この小さな実験を試してください。

キッチンに立ち、CPUの数を数えます。

冷蔵庫/冷凍庫、洗濯機、食器洗浄機、オーブン、電子レンジ(少なくとも)に何らかのプロセッサが搭載されていることは間違いありませんが、Intel Core i7ではないかもしれませんが、それでもプロセッサです。そして、静かに座って、他の電気/デジタル回路から送られてきた命令を解釈し、それが目に見える物理的な動作に変わるように設計されています。

プロセッサの定義は何ですか?

さて、最近のことを特定するのは少し難しいですが、一般的に「プロセッサ」の定義は、「任意の自己完結型ユニット」に沿ったもので、半インテリジェントな方法で外部入力に作用し、これらの入力から派生した既知の出力セット」

したがって、事前定義された入力のセットに基づいて既知のプロセスの物理的な兆候をもたらすことができるスタンドアロンのユニット、回路、チップ、または自律マシンは、最も基本的かつ一般的な意味で何らかの説明のプロセッサと見なすことができます。


+1は、これをさらに考え抜かれた良い答えだと考えています。GPUの大規模なパララリゼーションについて、「1024コアがすべて同じ命令を同時に実行する」という観点から読みたいと思っていましたが、とにかくあなたの答えが好きです:)
Stefan 14

1
ありがとう:-) GPUの大規模な並列処理に興味があるなら、「CUDA Succintly」のSyncfusions無料電子ブックの範囲に目を光らせてください。遠い将来にリリースされるべきであり、無料でダウンロードできます。
shawtyの

4

ハードドライブやフラッシュメディアカードは常にプロセッサが含まれていないが、彼らのデザインはかなり単純な原理に従うもの:何かプロセッサとは、データを格納および取得する必要があるかを知る必要があります。ストレージデバイスにプロセッサが含まれていないが、接続されているものに接続されている場合、ハードウェアは、接続されたデバイスが期待する正確な手順を使用して情報を保存および取得できるようにする必要があります。他の方法で情報を保存および取得する方が効率的であっても、接続されたシステムがそれについて知る方法はないかもしれません。

例として、ほとんどのハードドライブは、ディスクの各部分を2つの方向のいずれかに磁化することで機能します。「L」が特定の時間の一方の方向の磁化を表し、「R」がその同じ時間のもう一方の磁化を表す場合、「L」を使用してデータを直接保存して「1」と「 「0」を表すR」は、次の2つの要因により、非常に信頼性が低くなります。

  1. 1または0の長い文字列は、LまたはRの長い文字列を表します。これらは、わずかに長いまたはわずかに短い文字列として誤読される可能性があります。たとえば、データが書き込まれたときよりも読み取られたときの方が駆動モーターが5%遅い場合、20 Lの文字列として書き込まれたものは21 Lの文字列として誤読される可能性があります。

  2. 少数のRで区切られた2つのLの文字列が、その小さなRの文字列に広がり、「それをゴブアップ」する場合があります。同様に、少数のLで区切られたRの2つのストリング。

これらの要因により、ドライブは通常、長さが最大値と最小値の間にあるLとRの実行に情報をコーディングする必要があります。最大長と最小長の最適値は、電子機器、モーター、ヘッド、およびメディアの品質によって異なる場合があります。さらに、ディスク上の外側のトラックは内側のトラックよりも長いため、外側のトラックよりも短いLおよびRのランを格納できる場合があります。

情報をドライブに保存するには、メディアが保持できるLとRの文字列にデータを変換する方法を知っている何かに接続する必要があります。LとRを変換する行為がドライブ自体とは別のコントローラーの責任である場合、ドライブは接続先のコントローラーが理解できるフォーマットのみを使用する必要があります。コントローラーをドライブアセンブリに移動すると、この問題が軽減されます。各メーカーがデータの保存方法を理解できるコントローラーを備えたドライブを出荷する場合、他のコントローラーがそのデータを理解するかどうかを心配する必要はありません。ドライブアセンブリに含まれるコントローラーによって保存および取得されます。


3

すでに説明したように、多くの周辺機器/デバイスにはコア機能を提供するプロセッサが常にあり、比較的基本的なルーターでさえ事実上小さなサーバーです(エンドユーザーにとって最も目に見える側面はWebベースの構成ウィザードです。 IPスタック、Webサーバーなど、およびそれらを実行するプロセッサー)。

しかし、最新のコンシューマーNASはそれ以上であることも理解する必要があります。通常は、Webブラウザーからログオンでき、多くのアプリケーション、ソフトウェアパッケージ管理システム、メディアファイルをストリーミングする複数のサービスを備えたGUIにアクセスできます。自動更新の実行、USBポートに接続された他のストレージデバイスの読み取りなど、ほぼ完全なデスクトップ環境(GUIの一部の作業は明らかにクライアントマシンと共有されますが)。


2

すべてのハードドライブには常にプロセッサが搭載されています。 すべてのルーターには常にプロセッサーが搭載されています。

グラフィックカードにはプロセッサが搭載されています。常に持っています。ネットワークインターフェイスカードにはプロセッサが搭載されています。常に持っています。プリンタには、プロセッサ、キーボード、マウス、およびオンとオンがあります。何らかのプロセッサを搭載していないコンピューターに接続されているデバイスを考えるのは難しいでしょう。

私たちはこれらのデバイスにますます多くのことを依頼しているため、パフォーマンスがより重要であるため、これらは現在より多く宣伝されています。


2

コンピュータエレクトロニクスには、プロセッサなしでその役割を実行できるほど愚かなデバイスはほとんどありません。少なくとも、ほとんどの場合、いつでも信号を入出力する必要があります。そのシグナルが変化する場合、その変化のルールが必要であり、プロセッサーはそれらのルールを実施します。

質問から少し離れていますが、すべてのものを強化することはプロセッサのテーマです。80年代に戻って、私はいくつかのVAX / VMSメインフレームを担当するシステム管理者でした。

私たちは、高速で高張力のバンドを打つハンマーの列を走らせる非常に高速な(ノイズの多い)バンドプリンターを持っていました。毎分600行のプリンターだったと思います。これは、ドットの行ではなく、完全に132文字の行で構成されています。

ハンマーがバンドに当たるタイミングを制御するために、単純な電子回路がありました。これには、バンドに応じて異なるプログラムが必要でした-大文字のみのバンド(1つのバンドに複数のASCIIのセット)がある場合もあります。

そのプロセッサー用のプログラムは、プリンターの電源を入れるたびに連続ループで読み取られる紙テープに保存されていました(ほとんどの場合実行されたままです)。

私は、オペレーターがプリンターを熱心にクリーニングし、紙テープを見つけたときだけ知りました。幸いなことに、彼はそれが単なる紙切れではないことに気付き、それを削除しようとしませんでした。


2

ハードドライブにプロセッサが搭載されているとはどういう意味ですか?

ドライブのCPUが小さいことを意味します。一般に、CPUを搭載したデバイスにはファームウェアがあります。

どのように機能し、どのような利点がありますか?

コンピュータ周辺機器は複雑です。たとえば、データをフロッピーディスクドライブに読み書きする行為はかなり複雑です。ドライブヘッドを移動するハードウェアを操作してから、セクターヘッダーを探し、プロトコルに従って読み取りラインに入力されたデータが意味を成しているかどうかを確認する必要があります。

フロッピードライブの読み取りの簡単な例を見てみましょう。おそらく、CPUが外部と通信できる最も基本的な方法は、I / Oポートを使用することです。これらのポートは、マザーボードまたはソケットのラインに接続されています。ラインに電気が流れている場合、ポートのCPUは読み取り時に1を認識し、そうでない場合はCPUに0を認識します。書き込みの場合も同様に、CPUはポートに1を書き込んで電気を通すか、0に設定して停止します。

したがって、フロッピードライブの場合、フロッピーの読み取り/書き込みヘッドに接続された回線があるとしましょう。データを読み取るには、「磁束の反転」を待つ必要があります。これは基本的に、ラインが0から1または1から0になる磁気エネルギーの変化です。その後、どのくらいの時間を追跡する必要があります2回目のフラックス反転を検出し、セクター内のすべてのビットが得られるまでそれを続け、それらの測定された期間をまとめてデータを再作成します。これは、ドライブヘッドを動かしたり、ドライブモーターが通常の速度に達するのを待って時間を乱さないようにすることや、2つのモーターがまったく同じではない可能性があるため、必要になることさえありません何らかの方法で測定値に柔軟に対応します。

うまくいけば、それは複雑に聞こえます。

確かに、通常のコンピューターCPUをプログラムすることはできますが、非常に時間に敏感であるため、コンピューターのCPUはこれが行われている間、他のことを実際に行うことはできません。古いApple IIeのように、お金を節約するためにすべてのCPU /すべてのソフトウェアで実際にこのようなことを行った古いコンピューターは、この理由でディスクの読み取り/書き込み中に他に何もできませんでした。

ドライブに小さなCPUを配置し、実際には単なる通信バスであるコントローラーをマザーボードに搭載することで、CPUは他のプログラムを実行し、バスを使用してドライブにデータを取得/送信し、物理的な低負荷のほとんどをオフロードできます。ドライブ自体に対する作業レベル。さらに、技術が向上しても、それを処理する低レベルのプログラミングはドライブにとどまることができ、異なる内部ドライブ形式で動作するようにコンピューター上のプログラムを変更する必要はありません。

ルーターに関しては、実際の低レベルルーティング機能をハードウェアで実行することは難しくなく、多くのエンタープライズレベルのルーターはそれを実行しますが、ファイアウォール、ポート転送、アクセス制御、および必要なほど複雑なWebインターフェイスまたはコンソールなどです。それを行うCPU。

フォンノイマンマシンモデルにはストレージ上のプロセッサが含まれていないため、驚いた

フォンノイマンモデルには、ペリフェラル自体がフォンノイマンマシンになることはできないという記述はありません。周辺機器を周辺機器にするのは、CPUが何らかのバスまたは他のI / Oメカニズムを介してコマンドを送信し、結果を取得できるという事実です。


2

----このページのすべての回答は長すぎました(またはそう感じました)---ですので、idを追加したいです...

  • ディスクのプロセッサは、ディスク上の「スポット」から「スポット」に移動する身体活動が、適切な順序で行われるため、やや難しいタスクです。

  • それぞれの距離などに基づいて、「悪い」または「遅い」順序でデータを読み書きすると、データ転送が大幅に遅くなる可能性があります。

それを説明する最良の方法は、店で働いており、途中ですべてを手に入れる前に、最も遠いコーナーからアイテムを手に入れるように言われた場合です。

賢いコマンドは、途中ですべてを取得することです= =これは、AHCIがNCQと連携する方法です。

NCQはシークをより適切に計画するため、よりインテリジェントな処理が必要です。

これが行われる前は、PIOまたは「Processorcontrolled ... umm ... I / O。」と呼ばれるものがありました。低速転送2. CPUは他の処理を行います(実行する必要があります)3.それは...本当に重要なことです。

コンピューターは、ここここにファイルを要求します 。ディスクは、コンピューターにそれを取得する「HOW」を担当します。

...完了


あなたが説明していることはエレベーターアルゴリズムとして知られています。コマンドキュー(SATAのNCQなど)を使用すると、CPUは複数のコマンドをグループとしてドライブに送信できるため、ドライブはコマンドを実行する最も効率的な順序を決定できます。コマンドキューを使用しない場合、CPUはドライブが各要求を処理するのを待ってから次の要求を送信する必要があるため、ドライブはCPUが送信する順序で要求を処理する必要があります。CPUはディスクの内部物理レイアウトを認識しないため、効率が低下する可能性があります。
ワイザード

ただし、PIOは異なるものです。これは、CPUがコードを実行してドライブによって読み取られるデータを受信する必要があるモードであり、非効率的です。通常はDMAに置き換わります。DMAは、CPUが他の処理を実行している間、ドライブがデータをRAMに直接保存できるようにします。
ワイザード

ええ、私は[正確] [正確]ではありませんでしたが、パフォーマンスの機能は、トランザクションごとのレイテンシです。
TardisGuy
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.