PDA

View Full Version : سوال: حداکثر میزان رم قابل استفاده چقدره ؟



mat1368
شنبه 05 آذر 1390, 15:09 عصر
سلام
من یه پروژه دانشجویی به زبان C++ CLR نوشتم . یه کار عددیه که با ماتریس های خیلی بزرگ سر و کار داره
1 : می خواستم بدونم سیستم عامل 32 و 64 بیت هر کدوم چقدر به من رم قابل استفاده برای برنامه ام می ده ؟
2 : شنیدم تو 64 بیت میزان رمی که به هر برنامه اختصاص پیدا می کنه خیلی بیشتر از 32 بیته درسته ؟



ممنون

vcldeveloper
شنبه 05 آذر 1390, 22:25 عصر
در سیستم عامل های 32 بیتی، حداکثر 3 گیگابایت، در سیستم عامل های 64 بیتی، برای برنامه های 32-بیتی، حداکثر 4 گیگابایت، و برای برنامه های 64-بیتی، حداکثر 8 ترابایت برای یک یک پروسه قابل آدرس دهی هست، به شرطی سخت افزار مورد نیاز هم فراهم باشه:

http://msdn.microsoft.com/en-us/library/windows/desktop/aa366778%28v=vs.85%29.aspx



شنیدم تو 64 بیت میزان رمی که به هر برنامه اختصاص پیدا می کنه خیلی بیشتر از 32 بیته درسته ؟
میزان حافظه قابل آدرس دهی (نه لزوما RAM) در سیستم های 64 بیتی در صورتی "خیلی بیشتر" از سیستم عامل های 32 بیتی هست که برنامه شما هم 64 بیتی باشه. اگر برنامه شما 32 بیتی باشه، نهایتا فقط یک گیگابایت حافظه قابل آدرس دهی برای برنامه شما افزایش پیدا میکنه.

mat1368
شنبه 05 آذر 1390, 22:39 عصر
با تشکر از جوابتون ، ولی
فکر کنم 3 گیگا بایت تمام رمی باشی که در ویندوز 32 بیت شناسایی و استفاده میشه در حالیکه مشکل من این نیست مشکل من حداکثر رمیه که به هر برنامه تعلق می گیره و مطئنم که از 2 گیگ کمتره چون در حالیکه 1.5 تا 2 گیگ رم آزاد دارم برنامه بعد از استفاده از این مقدار رم ارور Out of Memory می ده ، راستش یه کم درباره اش مطالعه کردم ولی نتونستم عدد دقیقش رو پیدا کنم که "دقیقا تو ویندوز 32 بیت به هر برنامه CLR نهایتا چقدر رم داده میشه ؟" .
ولی چیزی که هست اینه که من در هر صورت رم کم می آرم ، کسی می دونه که برنامه های این تیپی چگونه خودشون رو مدیریت می کنند که تو مقدار رم مشخصی که دارند کار کنند مثلا نرم افزار های تحلیلی بزرگ مثل ANSYS یا Fluent البته نمی دونم دوستان با این نرم افزار ها آشنا هستند یا نه ، اگه لازمه توضیح بیشتری بدم