PDA

View Full Version : گفتگو: Memory Dumping



ŋµxXle
پنج شنبه 03 بهمن 1387, 16:47 عصر
میخواهم یکی یک Memory dumper معرفی کنه یا اگر نیست بسازه که خوب کاربرد های زیادی داره و کار خیلی ها رو راه میندازه
برنامه یک همچین چیزی هست:
مثلا یکی داره یک بازی ای که Pause نداره رو بازی میکنه که یکی صداش میکنه که مثلا تلفن رو جواب بده. اگه بره زحمت هاش به باد میره چون بازیش توقف نداره.راهش اینه که از حافظه بک آپ بگیره و دوباره اونو برگردونه تا بازی از اونجا دوباره شروع بشه.
البته ویندوز خودش قابلیت hibernate را دارد ولی خوب سیستم رو خاموش کنی و دوباره روشنش کنی خیلی طول میکشه و کسی خوشش نمیاد این کارو کنه.یک چیزی اگه باشه که سریع از محتوای رم(حافظه سیستم) بک آپ بگیره و بشه اونو برگردوند تا بازی دوباره از همان لحظه که بک آپ گرفته شده ادامه پیدا کنه اینطوری خیلی خوب میشه . اگه همچین چیزی رو بسازید و تو sourceforge بزارید خیلی توپ میشه:لبخندساده:

خوب کی پایه اس واسه این پروژه ؟ :شیطان:

pswin.pooya
پنج شنبه 03 بهمن 1387, 19:30 عصر
این مبحث مربوط به بازی سازی نیستش

smile17
پنج شنبه 03 بهمن 1387, 20:09 عصر
مثلا یکی داره یک بازی ای که Pause نداره رو بازی میکنه که یکی صداش میکنه که مثلا تلفن رو جواب بده. اگه بره زحمت هاش به باد میره چون بازیش توقف نداره.راهش اینه که از حافظه بک آپ بگیره و دوباره اونو برگردونه تا بازی از اونجا دوباره شروع بشه.
پس عمل بك آپ گيري بايد به صورت اتوماتيك باشد
ضمنا :
چه جوري ميشه فهميد كه بازي از كدام بلاك هاي حافظه استفاده ميكنه كه از اونا بك آپ بگيريم؟ و چگونه بك آپ مورد نظر را دوباره برگردونيم؟ به نحوي كه مجددا مورد استفاده قرار بگيره؟
به نظر شما در اين صورت حجم بك آپ گيري و بار گذاري مجدد زياد نمي شود(البته به بازي بستگي دارد)
يه كار ديگه هم ميشه كرد كه ميشه گفت مثل save كردن بازي هست و اين كه فقط از حساس ترين اطلاعات پشتيبان تهيه كنيم مثل خون و مرحله و مثلا اسلحه ها و ... در بازي كه براي بازي كن حساس هستن.ا.نم فقط در يك زمان هاي خاص
حالا مساله اينه كه يه بازي كه در حال اجرا هستاز كجا بدونيم كه مثلا اسلحه هاي بازي كه بازيكن در حال استفاده از اونا هست چيا هستن و در كدام محل حافظه ذخيره ميشن و مجددا چه جوري پشتيبان گرفت و چه جوري برگردوند؟؟؟؟؟؟؟
نكته ي آخر :
آيا نمونه اي براي گفته ي ŋµxXle موجود هست يا بايد از اول نوشته شود؟
memory dumper كه البته زياده

smile17
پنج شنبه 03 بهمن 1387, 20:12 عصر
این مبحث مربوط به بازی سازی نیستش
شما سوال كرديد يا توضيحي ارايه داديد؟
متوجه منظورتون نشدم

pswin.pooya
پنج شنبه 03 بهمن 1387, 22:05 عصر
شما سوال كرديد يا توضيحي ارايه داديد؟
متوجه منظورتون نشدم

فکر کنم به طور کامل متوجه شدید. مبحث اصلا مربوط به بازی نیستش و اینجا انجمن بازی سازی هستش.

به نطر من مدیر حتما باید این پست رو حذف کنه (به اندازه کافی پست اضافی و بیخود داریم)

در ادامه:
dumper با اون چیزی که شما دنبالش هستید فرق میکنه. اگر میخواید یه وقفه توی بازی ایجاد کنید باید نخ اصلی برنامه رو suspend کنید و این کافیه. این مساله بیشتر به مباحثی مثل سیستم عامل و هکینگ مربوطه.

ŋµxXle
پنج شنبه 03 بهمن 1387, 23:05 عصر
پس عمل بك آپ گيري بايد به صورت اتوماتيك باشد
ضمنا :
چه جوري ميشه فهميد كه بازي از كدام بلاك هاي حافظه استفاده ميكنه كه از اونا بك آپ بگيريم؟ و چگونه بك آپ مورد نظر را دوباره برگردونيم؟ به نحوي كه مجددا مورد استفاده قرار بگيره؟
به نظر شما در اين صورت حجم بك آپ گيري و بار گذاري مجدد زياد نمي شود(البته به بازي بستگي دارد)
يه كار ديگه هم ميشه كرد كه ميشه گفت مثل save كردن بازي هست و اين كه فقط از حساس ترين اطلاعات پشتيبان تهيه كنيم مثل خون و مرحله و مثلا اسلحه ها و ... در بازي كه براي بازي كن حساس هستن.ا.نم فقط در يك زمان هاي خاص
حالا مساله اينه كه يه بازي كه در حال اجرا هستاز كجا بدونيم كه مثلا اسلحه هاي بازي كه بازيكن در حال استفاده از اونا هست چيا هستن و در كدام محل حافظه ذخيره ميشن و مجددا چه جوري پشتيبان گرفت و چه جوري برگردوند؟؟؟؟؟؟؟
نكته ي آخر :
آيا نمونه اي براي گفته ي ŋµxXle موجود هست يا بايد از اول نوشته شود؟
memory dumper كه البته زياده والا حجم مهم نیست . همینکه از حافظه به طور کامل بک آپ گرفته بشه خوبه و tracking فقط انرژی تلف کردن هست. من خودم 256 مگ رم دارم و سیصد و خورده ای گیگ هارد دیسک ! (همیشه موقع بازی همه حافظه هم اشغال نمیشه که و یک کمیش پر میشه)

------
PS:فقط یک شورتکات هم داشته باشه بک آپ گرفتن خوبه چون من موقع بازی کردن همش کار واسم پیش میاد :لبخند:

ŋµxXle
پنج شنبه 03 بهمن 1387, 23:21 عصر
با توجه به مطالب دوستان تاپیک را به بخش مهندسی معکوس منتقل کردم ....

smile17
پنج شنبه 03 بهمن 1387, 23:26 عصر
همینکه از حافظه به طور کامل بک آپ گرفته بشه خوبه
آخه چه لزومي داره از همه ي حافظه به طور کامل بک آپ گرفته بشه ؟؟؟؟؟؟

Nima NT
پنج شنبه 03 بهمن 1387, 23:37 عصر
بک آپ گرفتن کار اشتباهی هست , همون طوری که دوستمون آقا پویا گفتن به حالت تعلیق درآوردن Thread اصلی و مرکزی فایل بازی کافیه , برای این کار هم میتونید از برنامه Kernel Detective استفاده کنید که یکی از پرکاربرد ترین ها در کرک هست.

ŋµxXle
جمعه 04 بهمن 1387, 20:03 عصر
بک آپ گرفتن کار اشتباهی هست , همون طوری که دوستمون آقا پویا گفتن به حالت تعلیق درآوردن Thread اصلی و مرکزی فایل بازی کافیه , برای این کار هم میتونید از برنامه Kernel Detective استفاده کنید که یکی از پرکاربرد ترین ها در کرک هست.

آخه چه لزومي داره از همه ي حافظه به طور کامل بک آپ گرفته بشه ؟؟؟؟؟؟
برای توقف بازی من خودم میتونی از طریق نرم افزار CE (http://cheatengine.org/) مموری رو دستکاری کنم و بازی رو متوقف کنم ولی بعضی بازی ها هستن که یک خورده پیچیدگی دارن و وقتی دستکاری میکنم حافظه رو بازی یا کرش میکنه یا بعدش دیگه با مشکل اجرا میشه و امتیازاتش قاطی پاتی میشه

بک آپ از حافظه بهترین راه و مطمئن ترین هست. ممنون میشم دوستانراهنمایی کنن چون فکر کنم راهش خیلی ساده باشه که از مموری بک آپ بگیریم ولی هر چی میگردم چیزی پیدا نمیکنم :لبخندساده:

ŋµxXle
جمعه 04 بهمن 1387, 23:09 عصر
یک راهی هم باشه که عین هایبرنتویندوز عمل کنه ولی سیستم رو خاموش نکنه بازم خوبه (یعنی اطلاعات رو عین هایبرنت ویندوز روی هارد ذخیره کنه ولی سیستم رو شات داون نکنه ...)

ممکنه؟:لبخندساده:

mithridates
دوشنبه 03 فروردین 1388, 23:08 عصر
شما چرا لقمه رو دور سرت میچرخونی. دوستان گفتن که! برنامه هم معرفی کردن. نوشتن برنامه هم چندان سخت نیست میشه کلید تعریف کرد هر جای بازی کلید رو فشار بدی بازی مورد نظرت به حالت pause درمیاد