PDA

View Full Version : سوال: هنگ شدن سیستم بعد از باز بودن برنامه در مدت طولانی



Mask
یک شنبه 09 آبان 1389, 12:14 عصر
با سلام
برنامه تحت شبکه ای طراحی و برنامه نویسی کردم . که بنا به احتیاج از صبح تا بعد از ظهر در حدود 13 ساعت بازه.
مشتریم میگه وقتی حدود 8-9 ساعت با برنامه کار میکنم سیستمم هنگ میکنه و باید برنامه رو ببندم و سیستم رو ری استارت کنم و وقتی سیستم میاد بالا دیگه مشکلی نیست و سیستم دوباره مثل قبل سرعتش رو بدست میاره.
فکر کردم به دلیل مدیریت حافظه برنامم باشه.
هر چی برنامم رو چک میکنم . پس از ایجاد اون مقادیر رو free میکنم.
چرا برنامم زمانی که زیاد بازه سیستم رو هنگ میکنه؟
ممنون.

pezhvakco
یک شنبه 09 آبان 1389, 12:25 عصر
فکر کنم برمی گرده به سخت افزار سیستم کاربر .
درست نبودن و یا کار نکردن، بیش تر هارد و گاهی رم این مشکل رو بوجود میاره .
هارد اگه از نظر پارتیشن بندی درست نباشه و یا مشکل بد سکتوری داشته باشه در در هنگام خواندن و نوشتن داده ها یا سرهت کار را پایین میاره و یا قفل می کنه .

ویندوز بخشی از هارد را برای بیش تر شدن سرعت اجرای برنامه ها در نظر می گیره ( حافظه مجازی ) و این بخش در مدت زمان زیاد اگه درست کار نکنه ( داده ها به سرعت پاک و ساخته نشن ) سرعت کار پایین میاد و به همین دلیل با خاموش و روشن شدن ( ویندوز اون بخش رو آزاد می کنه ) دوباره سرعت درست میشه .

Mask
یک شنبه 09 آبان 1389, 12:51 عصر
ممنون.
چطوری از طریق نرم افزاری میتونم این مشکل رو برطرف کنم؟
حافظه اشغال شده بی دلیل برنامه ها رو free کنم.
ممنون.

Felony
یک شنبه 09 آبان 1389, 12:54 عصر
چطوری از طریق نرم افزاری میتونم این مشکل رو برطرف کنم؟
حافظه اشغال شده بی دلیل برنامه ها رو free کنم.
مدیریت حافظه مجازی کار ساده ای نیست چون برای سیستم عامل به نوعی حافظه اصلی به حساب میاد و کوچکترین خطایی ممکنه باعث از دست رفتن اطلاعات موجود تو حافظه بشه ، بنابراین ویندوز به شما در حالت User Mode همچین اختیاری رو نمیده .

اگر هم بحثتون روی یک سری از نرم افزارهای خاص هست و میخواین حافظه پروسه های مربوط به اونها رو مدیریت کنید در ویندوز پروسه ها از هم کپسوله هستن و با توابع API معمول نمیتونید بهشون دسترسی داشته باشید ؛ اون هم دسترسی برای مدیریت حافظه یه پروسه دیگه !!!

pezhvakco
یک شنبه 09 آبان 1389, 13:12 عصر
ممنون.
چطوری از طریق نرم افزاری میتونم این مشکل رو برطرف کنم؟
حافظه اشغال شده بی دلیل برنامه ها رو free کنم.
ممنون.
منظورم حافظه برنامه شما نبود ؟

ویندوز برای اجرای خودش و هر برنامه ایی، داده ها را که روی هارد در مسیری که هستند خوانده و آن ها را به رم و بعد سی پی یو ... جا به جا و انجام کار می کند .
در این روند کاری برای این که سرعت خواندن از روی هارد بیش تر بشه ( هر بار لازم نباشه دنبال مسیر بره ) داده هایی را که به هم ارتباط دارند و در ادامه هم هستند را در بخش حافظه مجازی که از هارد گرفته بارگذاری می کند تا دسترسی سریعتر داشته باشد . این داده ها باید پشت سره پاک و جایگزین شوند که این کار به هارد و درست بودن بستگی داره .

کد نویسی برای این بخش را نمی دونم چگونه انجام میشه .
استادانی مانند جناب کشاورز ، محمود، تاجیک و ... راهنمایی کنند .

Mahmood_M
یک شنبه 09 آبان 1389, 14:33 عصر
توی برنامتون از چه کامپوننتها و ابزارهایی استفاده میکنید ؟ ، در طول کار برنامه چه پردازشهایی توی برنامه انجام میشه ؟ ، از مدیریت حافظه در برنامه ی خودتون اطمینان دارید ؟

هنوز خیلی زوده که مشکل رو به گردن هارد و مدیریت حافظه ویندوز و سایر برنامه ها بندازید ، اول برنامه ی خودتون رو بررسی کنید ، و مشکلات احتمالی رو رفع کنید تا بعد بتونید با خیال راحت مشکل رو به جایی خارج از برنامه ی خودتون نسبت بدید ...

متاسفانه توضیحاتی که در مورد برنامه دادید کافی نیست !

با سلام
برنامه تحت شبکه ای طراحی و برنامه نویسی کردم . که بنا به احتیاج از صبح تا بعد از ظهر در حدود 13 ساعت بازه.
مشتریم میگه وقتی حدود 8-9 ساعت با برنامه کار میکنم سیستمم هنگ میکنه و باید برنامه رو ببندم و سیستم رو ری استارت کنم و وقتی سیستم میاد بالا دیگه مشکلی نیست و سیستم دوباره مثل قبل سرعتش رو بدست میاره.
فکر کردم به دلیل مدیریت حافظه برنامم باشه.
هر چی برنامم رو چک میکنم . پس از ایجاد اون مقادیر رو free میکنم.
چرا برنامم زمانی که زیاد بازه سیستم رو هنگ میکنه؟
ممنون.
چطور باید بفهمیم که برنامه ی شما در طول این 8 - 9 ساعت چه کارهایی انجام میده ؟!