PDA

View Full Version : مديريت Process ها در Windows



ICEMAN
جمعه 13 اردیبهشت 1387, 10:19 صبح
سلام دوستان ...
چند تا سوال در مورد مديدريت Process ها داشتم :

1) فرق HANDLE با ID براي شناسايي Process ها چيه ؟
2) منظور از Process Group چيه و چطوري ايجاد ميشه ؟
3) يك JOB با يه Process معمولي يا يه Thread چه فرقي ميكنه ؟
4) آيا امكان Pause و Resume كردن يك Process يا Thread يا JOB وجود داره ؟چطور؟
5) WaitForSingleObject اين تابع زماني كه يه Process كارش تموم بشه Return ميكنه يا با توجه به DWORD dwMilliseconds بعد از يه زماني اون Object و Terminate ميكنه؟
6)Process Affinity
Handle Count
برنامه Process Explorer يه TAB به نام String داره اون String ها چي هستن چطوري بدست مي آن ؟

با تشكر

Nima_NF
یک شنبه 15 اردیبهشت 1387, 16:34 عصر
لطفا تعداد زیادی سوال در یک تاپیک مطرح نکنید.

پاسخ به برخی از سوالات شما:

1) ID یک شماره شناسایی هست که در کل سیستم منحصر به فرد است و قایل استفاده توسط سایر پروسه ها هست، اما handle منحصر به برنامه خود شما می باشد.

4) می توانید از توابع thread استفاده کنید مانند SuspendThread ، چرا که اگر برنامه شما فقط یک thread داشته باشد آنگاه برنامه به حالت تعلیق می رود، اما برگشت آن غیر ممکن می شود.
لذا روش درست ، استفاده از روش های همزمان سازی مانند انواع wait می باشد.

5)وقتی سیگنالی از طرف object ارسال شده باشد و یا وقتی زمان به پایان برسد تابع مقدارش را بر می گرداند.

ICEMAN
سه شنبه 17 اردیبهشت 1387, 09:49 صبح
چشم!
جواب سوال 6 رو هم خودم از MSDN پيدا كردم
ممنون ميشم اگه كمكي در مورد 2-3 هم يه كمكي بكنيد

Inprise
چهارشنبه 18 اردیبهشت 1387, 15:51 عصر
يك فصل كامل در Windows Internals به Process Management پرداخته . ببينش