• ベストアンサー

CPUで動作?

汎用CPUのPentium上でWindowsやLinuxなどのOSを動作させる事が可能でありますが、 なぜ全く異なるOSが同一のCPUで動作するんでしょうか?

  • smry
  • お礼率95% (20/21)

質問者が選んだベストアンサー

  • ベストアンサー
noname#58440
noname#58440
回答No.6

  では貴方が理解できる様に砕いて説明しましょう。 OSとはCPUを動かすために作られた物で、人とのインターフェイスの違いによりWindowsとかLinuxと言われる物が存在します。 例えるならエンジンとは車両を動かす物でCPUと考えます、速度を調節するのは人がすることで、そのインターフェイスはアクセルと言われてますが、車なら足で踏むペダル、単車なら手で回すグリップ、機関車なら手で押すハンドルと色々な形の物があります。 この状態を貴方の質問に重ねると 汎用のエンジンをペダルやグリップやハンドルのアクセルで動作させる事ができます。 なぜ異なるアクセルで単一のエンジンを動かせるのでしょう。 答え)エンジンを動かせる様にペダルやハンドルやレバーが作られてるからです。 WindowsはX86互換のIntelやAMDのCPUでは動きますが、MACに搭載されてるCPUであるPowerPCでは動きません(PowerPC様に作られてないから)  

smry
質問者

お礼

ご丁寧な回答ありがとうございます!!! これでOSがCPUにあわせて作られているんですね!!

その他の回答 (5)

  • parts
  • ベストアンサー率62% (6364/10149)
回答No.5

汎用CPUで、異なるOSが動くのは普通の動きですね。何せ汎用ですし・・・ Pentiumはインテルが開発した8086をベースに拡張した第5世代プロセッサです。そのブランド名を継承したのが現在のPentiumシリーズでNetburstやCore系のプロセッサとなります。このインテル互換のプロセッサは、インテルが8086の後に486に至るまでx86と名乗る名称を用いたためx86系と呼ばれるようになりました。 ソフトウェアで大事なのはハードウェアに対応しているかどうかです。x86プロセッサは計算の仕方を決めた物でしかありません。まあ、人間に言語の種類があるように機械語にも種類があるということですかね。 英語を日本語に訳せば、英語の書籍でも日本語になりますよね。 ソフトウェアも同じでx86で動作させようと思って作ればコンパイル(機械語に変換する作業のこと)でx86にもできますし、Power系にそれを変更し動作させることもできるでしょう。コンパイルだけでは他プラットフォームに対応できないケースもありますが、それでもソースコードを多少手直しすればx86でなくとも動きます。 ソフトウェアは柔軟性があるからソフトウェア(software)と呼ばれます。ハードウェアはある定義にそって作られ一度製造されたものの仕組みを変えることはできません。ソフトはハードに適応できるように手直しすれば、x86では出荷されていない例えばSPARC向けソフトでもx86に対応させることはできるでしょう。後は、ソフトウェアを開発する人がその気があるかどうかだけです。 ちなみに、各ハードウェアプラットフォームには開発環境(統合プラットフォーム)が存在します。それが人が記述したソースコード(機械語の元となるプログラミング言語のこと、C言語、アセンブリなど)を対象のハードウェアプラットフォーム(この場合はx86ですね)専用の機械語に翻訳してくれます。 最後に、開発ソフトウェアはどうできるかというと人がハードを元に設計します。最終的には機械語を直接設計したものかそれに相当する作業を行ったソフトウェアがベースです。 <用語> 機械語=電子機械を動かす元となる言語のことで2進数や16進数といった数値で記述された言語のこと。 プログラミング言語(ソースコード)=ソフトウェアをプログラムするときに使う原語。人間が分かる形(英語や日本語、計算式)で記述できる言語のこと。 コンパイル=プログラミング言語を実行可能な機械語に変換すること。コンパイルするためのソフトをコンパイラという。

smry
質問者

お礼

ご丁寧な回答ありがとうございます! 回答が相当レベルが高いですね・・・汗 理解できるように頑張ります。

回答No.4

こういう疑問を持つ人には、おそらく理論的な事よりも、何か身近なものに置き換えて考える方がわかりやすいのでしょう。 私は車に例えるとわかりやすいと思っています。 「車両」というCPUは単体では動きません。inputされた情報からoutputを作り出すためだけのものです。 スロットルをコントロールするinputの仕組みからエンジンをコントロールする為のoutputの仕組み、ハンドルで操舵するinputの仕組みからタイヤを曲げる為のoutputの仕組み、停止する為のinputの仕組みからブレーキをコントロールするoutputの仕組み等々が用意されています。 でも、そのままでは只の機械ですから勝手には動きません。 そこで、動かす為のOSである「人間」が必要になります。 「私」というOSが動かす事もできれば、「あなた」というOSでも動かす事ができます。 もちろん、OSは車両の構造を理解していて、そのHardwareをどうコントロールすればどういう結果が得られるかというルールを知っていなければなりません。 そのルールに基づいたコントロールを行う事ができれば、異なる「OS」が操作しても動かす事ができるのです。 普段、口頭で説明する分には大抵の人に理解してもらえるのですが、いざ文章にしてみると、伝わるかどうか怪しいものですね。 他にうまい喩えが無いものか…

smry
質問者

お礼

こんな丁寧な回答!!!ありがとうございます!!! 結局OS次第ということになってしまうんですかね?

  • gatyan
  • ベストアンサー率41% (160/385)
回答No.3

CPUってのは、単に基本的な命令を実行することしかできません 基本的な命令を沢山組み合わせて、ある特定の機能を実現したものがいわゆるプログラムです で、プログラムを実行するための準備やいろいろな管理等をするためのプログラムがOSと呼ばれます CPUそのものがWindowsやlinuxというようなOSの機能をはじめから持っているわけではありません もし、そのような 特定の/特化した機能 を持っていたら 汎用 といえません…よね?

smry
質問者

お礼

丁寧な回答ありがとうございます。 、、、が、難しいですね・・・汗 結局、対応とかではなくCPUはOSというプログラムを実行しているに他ならないからということでいいのでしょうか?

  • koj705
  • ベストアンサー率37% (112/295)
回答No.2

意図した答えでないかもしれませんが、CPUが対応しているのではなくOSが対応していると解釈ではダメですか? CPUの動作条件はハード的な仕様のみで、OSの場合はCPUやメモリ・グラフィック等様々です。

smry
質問者

お礼

なるほど。 実際にはどっちなんでしょうか? CPUが対応してるのかOSが対応してるのか。 どちらともなんですかね? 回答ありがとうございます。

noname#58440
noname#58440
回答No.1

  そのCPUで動作する様に作られてるからです。  

smry
質問者

お礼

それはそうだと思いますが、それではどのようにそうやって作られているのでしょうか? 回答ありがとうございます。

関連するQ&A

  • CPUの動作確認の質問

    IntelマザーでCPU PentiumD この組み合わせでOS Vistaを入れましたCPUだけ交換して PCを作ろうと思いバルク品を購入してPentium4 のCPUの動作確認だけしようとしたらBIOS起動の時エラー音のピー音が出て電源が切れます最初にPetiumDでDualでOS入れたからですかPentium4はシングルだからですかそれとも破損してますか? 双方ともLGA775ですCPUだけの動作確認するのはどうしたら確認出来るのでしょうか? 教えて頂けませんかよろしくお願いします。

  • CPUの動作状況について

    Pentium4 3.0GHzでWindows7 RCを試用しています。 タスクマネージャではCPUは2つ(HT)表示されていますが、エクスペリエンスでは数値が1.9と低くどうもHTでは動作していないようです。ちなみにCPUZでは、HTが1つしか表示されません。 Pentium4 2.4GHzではエクスペリエンスが2.5と表示されていたのでHTが動作していたようです。 また、電源の管理でCPUのパフォーマンスで最大・最小の状態が表示されません。 これらはWindows7 RC版のバグでしょうか。 マザーボードはASUSU P4V800DXです。

  • CPUが正しく動作しない

    最近自作でPCを組み立てたてました。 その際CPUをPentium4の3.0Ghzをつけました(ノースウッドコア) 完了し起動したときに最初の画面にて1.5Ghzで動作していることがわかりました。 どうしてなのかがわかりません。何か設定等必要でしょうか? マザー:gigabyte 8PE667 Ultra CPU:Pentium4(soket478)3Ghz メモリ:PC2700 512×2 チップ:intel 845PE どなたかわかる方いらっしゃいましたらお願い致します。

  • CPUを交換しましたが正しいクロック数で動作しません。

    CPUを交換しましたが正しいクロック数で動作しません。 CPUをセレロンからPentium4 3.2GHzのCPUに交換しましたが2.1GHz程で認識されており正しいクロック数で動作しません。 マザーボードはPCーCHIPS製で型番はM925G V9.1bです。 マザーボードにFSB533と書かれています。 OSはXPでメモリ1GBです。 BIOSの更新はまだ試していません。 3.2GHzで動作させる事は出来そうでしょうか? よろしくお願い致します。

  • ソフトの動作環境のCPUについて

    動作環境のCPUがIntel Pentium 4 1.4 GHzもしくはそれ以下 のソフトは、CPUがCore i5 でも動作しますか?

  • 動作環境(CPU)について

    中国語を勉強するソフトを買おうと思っています。マイクに向かって発音するようなやつです。本格的なパソコンのソフトを買うのはたぶんはじめてです。そこで質問があります。 動作環境のCPUの欄に、”Pentium III-450MHz以上”や、”Pentium-200MHz以上(MMX Pentium-233MHz以上推奨)”、”Pentium II以上”とありますが、うちのノートパソコン(Intel® Celeron® M プロセッサー 410 (2次キャッシュ1MB、動作周波数1.46GHz))でもちゃんと使えるのか教えていただきたいのです。 CPU以外のメモリー等は全然問題なさそうなので大丈夫かな~、とも思ったのですが、調べてみるとCeleronはPentiumの廉価版と知りちょっと不安になりました。それに、そもそもCeleronでは使えないってこともあるのかな、とも思い質問しました。あと、今後のために、うちのパソコンのCPUはPentiumのどの辺と対応しているのか(PC初心者です。訳わからないこと言ってたらすいません。)も教えて頂けたらうれしいです。 どうかよろしくお願いします。

  • オンラインゲームの動作環境のCPUについて

    オンラインゲームをやってみようかと思ったのですが、推奨動作環境に 「CPU:Pentium(R) 4 1.6GHz 以上」 と書いてありました。 私のPCのCPUはPentium(R) M processor 1.60GHzなのですが、Pentium(R) 4とPentium(R) Mの違いがわからないので 推奨動作環境にまで届いているのかどうかわかりません。 1.60GHzなので大丈夫なのかな?とも思ったのですが… 同じような質問をいくつか見たのですが、Pentium(R) Mの方が性能が上だということまではわかったのですが オンラインゲームをやる際には大丈夫なのかいまいちよくわからなかったので質問させて頂きました。 PCのスペックと推奨動作環境は以下のものになります。 ■PCのスペック OS:Windows XP CPU:Pentium(R) M processor 1.60GHz グラフィックカード:NVIDIA GeForce FX Go5700 メモリー:2 GB サウンドカード:SoundMAX Digital Audio DirectX:DirectX 9.0c ■オンラインゲームの推奨動作環境 CPU:Pentium(R) 4 1.6GHz 以上 メモリ:512MB以上 グラフィックカード:VRAM64MB以上 HDDの空き容量:1GB以上 対応OS:Windows 2000 / XP / Vista DirectX:DirectX 9.0c以上 よろしく御願い致します。

  • 動作確認CPUについて

    ソースネクトの動画作成ソフト Power Producer Expertを購入しようとおもいますが、動作確認でPentium 42.4GHz以上推奨となっていますが、小生のPC(FMV CE70E7)はIntel(R)Pentium(R)4cpu 2.60GHz 一般名 Intel Pentium40.13u です。CPUのことよくわかりません。 小生のこのPCでうまく起動するのでしょうか。おたずねいたします。

  • トラフィック、CPU、メモリ動作等の監視を行うソフトを探しています。

    トラフィック、CPU、メモリ動作等の監視を行うソフトを探しています。 Windowsで使えるものとしてMRTGがありますが、 今回、これ以外で探しています。 HotSaNICはLinux用なので使えません… よろしくお願いします。

  • デュアルCPUでCPUが1つ壊れた場合

    LinuxでデュアルCPUで動作していて、1つCPUが故障した場合 壊れたCPUを外せばサーバーは稼動し続ける事ができるでしょうか?