ورود

نسخه کامل مشاهده نسخه کامل : پردازش های 32 بیتی در win64



iranch
16-08-2013, 16:53
درود
پردازش های 32 بیتی در win64 امکان هست؟ حالا زورکی هم باشه طوری نیست
چون یک قطعه کد برای تست 64 یا 32 بیتی ویندوز هست.میخواهیم ببینیم امکان خطاش هست یا خیر


if (IntPtr.Size == 4)
{
txt_num.Text = "32";
}
else if (IntPtr.Size == 8)
{
txt_num.Text = "64";
}

Msba
16-08-2013, 18:25
امکان خطا که وجود ندارد. اما راه کار بهتری دارد:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
کدی که شما نوشته اید تشخیص 32 بیت و یا 64 بیت برنامه خودتان هست نه سیستم عامل.

موفق باشید.

iranch
17-08-2013, 12:26
درود
کد شما برای .نت جدید هست و قدیمی ها کاربرد نداره.
کلا میشه این جمله رو توضیح بدید؟


پردازش های 32 بیتی در win64

Msba
17-08-2013, 17:38
یعنی نرم افزار هایی که برای پردازش X86 ساخته شده اند را تحت یک پردازش 64 بیتی اجرا کنید.:n01:
خوب این کار امکان ندارد. چرا که پردازنده در مود 64 بیتی قرار دارد و تمام آدرس ها را با طول 8 بایت می بیند. پس اشاره گر ها هم به هم می خورند. از طرفی command های اجرایی CPU نیز تفاوت کلاک خواهند داشت یعنی ممکن است همزمانی های مورد نیاز نیز به هم بخورد.
پس از لحاظ ساختاری نمی شود، پس چگونه ما یک برنامه ی قدیمی را روی ویندوز 64 بیتی خودمان اجرا می کنیم؟
-----------
WoW64 : یا Windows32 on Windows64 .
تعریفی که مایکروسافت برای غلبه به این مشکل ایجاد کرد. این اصطلاح یک اجراگر اصلی اما شبیه سازی شده است(Emulator). (مانند اجرای بازیهای playstaion روی کامپیوتر.)
زمانی که در خواست اجرای یک پردازش 32 بیت به سیستم عامل 64 بیتی می رسد Wow64 فعال شده و حالت یک سیستم عامل 32 بیتی را برای برنامه ایجاد می کند. یعنی نحوه ی پردازش برای برنامه ی فوق تغییر می کند.
برای پیاده سازی این حالت سیستم عامل منابع 32 بیت و 64 بیت را از هم جدا کرده است. برای همین هم شما زمانی که داخل پوشه ویندوز می روید دو پوشه System32 و SysWow64 دارید.
این امولاتور در نسخه های فعلی آنقدر دقیق کار می کند که می توان گفت تفاوتی بین 32 بیتی و 64 بیتی در اجرای برنامه ها دیده نمی شود.برای کسب اطلاعات بیشتر در مورد WoW64، نحوه ی کار و منابع جدا شده می توانید از لینک های زیر استفاده کنید:

[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ](v=vs.85).aspx
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ](v=vs.85).aspx
[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ](v=vs.85).aspx

موفق باشید.