32ビットOSのコンピューターに4 GBを超えるRAMをインストールするとどうなりますか?


10

だから私はプログラマーであり、私は完全な馬鹿者ではないので、ポインターを置くことができない場所でメモリにアクセスできない理由を正確に理解しています。しかし、私はこれを試したことは一度もありませんし、お金や時間の浪費のように思われるので、私はこれを試したことはないと思います。

ヒメムにアクセスするためのツールがあるかどうか疑問に思っています(この問題はすでに解決されていると思います)。


同じ質問の別の言い回しを確認してください。superuser.com/ questions /
ここから

よろしくお願いします。こちらも良い答えです。この質問を閉じなければならない場合があります。 serverfault.com/questions/3342/...
ピーター・ターナー

回答:


20

物理アドレス拡張機能を備えたプロセッサー(おそらくそうするでしょう)と正しいOS(たとえば、コンシューマーバージョンのWindowsではなく、PAEを使用しますが、上限が4GBである)を使用している場合、メモリは通常どおりにマップして使用できます。さもなければ、メモリは単にアドレス指定されず、OSはチップがいくつあっても、いくつあっても、アクセスできるメモリの量に追加されないことを通知します。


3
通常のバージョンのWindowsがPAEをサポートしないのはなぜですか?Linuxを使用するもう1つの理由...
Zifre 2009

1
64ビット/サーバーバージョンの方がコストが高いからです。
マーティンベケット

2
WindowsのコンシューマーバージョンでもPAEをサポートしていますが、互換性とマーケティング上の理由により、4 GBに制限されています。(PAEは引き続き「データ実行防止」機能で使用されます。)
user1686 '27

3
@Zifre、多くの消費者向けドライバは、WindowsでPAEおよび> 4GのRAMに対応できません。そのため、PAEを有効にすると不思議なクラッシュが発生することがよくあります。したがって、PAEはサーバーエディションでのみ使用されます。この場合、おそらく大量のメモリ用に設計された高品質のドライバーをインストールします。
bdonlan 2009

bdonlan:PAEはコンシューマーバージョンでも有効になっています。そのため、4 GBの制限があります。
user1686 2009

1

4 GBは32ビットプロセッサの制限であるため、状況は適切に機能します。 ここだより深くなり、実際には32ビットOS上で非常に4GB以上をインストールして使用できることを示して記事として。


ただし、すべての実際のアドレス空間が必ずしも物理メモリ専用であるとは限りません。
Jason S

申し訳ありませんが、4GB以上、2 ^ 32を超える範囲のものを意味しました。
Peter Turner、

1

技術的には、オペレーティングシステムが適切に設計されていれば、4 GB以上を使用できると思います。仮想メモリ機能を備えたOSが32ビットの仮想アドレスと64ビットの実際のアドレスを使用できなかったと考える理由はありません。


1

32ビットOSによって異なります!

もちろん、最新のオペレーティングシステムでは、マザーボードを問題なく使用できる限り、ほとんど差し込むことができます(ただし、すべてを使用できるわけではありません)が、少なくともWindowsでは常にそうであるとは限りませんでした。

512MBを超えるメモリがインストールされている場合、Windows 95、98、SE、およびMEのバグが発生します。

http://answers.google.com/answers/threadview/id/333688.html


0

最初に理解することは、現代のコンピュータシステムは仮想メモリを使用することです。32ビットを超える物理アドレスを持つ一方で、アプリケーション用に32ビットの仮想アドレスを持つことができます。

2番目に理解する必要があるのは、物理アドレス空間がさまざまなものに使用されていることです。最も重要なのは、メインRAMとメモリにマップされた周辺領域です。特にグラフィックカードには、多くの場合、大きなメモリマップ領域があります。その結果、使用可能な物理アドレススペースが4GBしかない場合、使用可能なRAMが4GBより大幅に少なくなる可能性があります。使用可能な約3.5 GBが一般的ですが、2.5 GBと低いシステムも見ました。

4GB以上の物理アドレス空間をサポートするPCでは、PAEと呼ばれるメカニズムが使用されます。これが機能するには、いくつかのことが必要です。

  1. CPUがサポートする必要があります。
  2. チップセットはそれをサポートする必要があります。
  3. BIOSがそれをサポートしている必要があります。
  4. OSがサポートしている必要があります。

CPUは古くからPAEをサポートしていますが、これは問題ではありません。

古いチップセットの多くは、4GBの物理アドレス空間に制限されていました。IIRC Intelラップトップチップセットは、2007年の "Santa Rosa"世代で4GB以上のアドレススペースをサポートしました。デスクトップチップセットについてはよくわかりませんが、ほぼ同じ時間だったと思います。ワークステーション/サーバーのチップセットは明らかにずっと以前にサポートされていました。

Afaict BIOSは、チップセットがサポートしている場合、ほとんどがサポートしています。いくつかの例外があっても私を驚かせないでしょう。

OSは厄介なものです。LinuxとWindowsはどちらも年齢を問わずPAEをサポートしています。残念なことに、Windows XP Service Pack 2以降、MSは物理アドレス空間を人為的に4GBに制限しています。彼らはバグのあるドライバーのためにこれを行ったと主張し、皮肉屋は人々がサーバーエディションを購入することを強制するためにそれをしたと疑います。

Windows XPでは、これはカーネルに組み込まれており、基本的に元に戻すことはできません。しかし、それ以降のバージョンでは、カーネルへのいくつかのマイナーなハックでバイパスすることができます。詳細については、https://wj32.org/wp/を参照してください。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.