التطبيقات والعمليات: جولة في Task Manager / Activity Monitor
في هذا الدرس 11 موضوعات
نظرة عامة على الدرس
يستخدم الناس كلمات "برنامج" و"تطبيق" و"عملية" كأنها تعني الشيء نفسه. هي كلمات مترابطة، لكنها ليست متطابقة. والفرق بينها من أنفع الأفكار في هذه الوحدة.
انتبه إلى كلمة "عملية" بالذات. في كلامنا اليومي تعني أي عمل أو إجراء، مثل "عملية حسابية" أو "عملية شراء". أما في هذا الدرس فهي مصطلح تقني له معنى محدد هو العملية (process)، وستعرف معناها بعد قليل.
في هذا الدرس ستتعلم معنى كل كلمة من هذه الكلمات، ولماذا قد يعمل تطبيق واحد على شكل عدة عمليات. وستتعلم أيضًا كيف ترى العمليات التي تعمل على حاسوبك، بالأداة الموجودة أصلًا في نظامك: Task Manager في Windows، أو Activity Monitor في macOS، أو top وps في Linux.
لماذا هذا مهم؟ عندما تكون خدمة backend بطيئة، أو عالقة، أو تستهلك ذاكرة كثيرة، فأول ما يفعله المهندس هو أن ينظر إلى عمليتها (process). يسأل: كم تستهلك من وحدة المعالجة المركزية (CPU)؟ وكم تستهلك من الذاكرة العشوائية (RAM)؟ ومنذ متى تعمل؟ وهل ما زالت تعمل أصلًا؟ والمهارة التي تتدرب عليها هنا واحدة، سواء على حاسوب محمول أو على خادم.
يبني هذا الدرس على الدروس السابقة: العمليات تستخدم وقت وحدة المعالجة وتستخدم الذاكرة العشوائية، ونظام التشغيل هو الذي يديرها.
أهداف التعلّم
بنهاية هذا الدرس ستكون قادرًا على:
- شرح الفرق بين البرنامج والتطبيق والعملية.
- شرح ما هو معرّف العملية (process ID، ويُختصر PID) ولماذا هو مفيد.
- شرح لماذا قد يؤدي فتح البرنامج نفسه مرتين إلى إنشاء عمليتين، ولماذا قد يستخدم تطبيق واحد عدة عمليات.
- فتح قائمة العمليات على نظامك، والعثور فيها على اسم العملية، وPID الخاص بها، ومقدار ما تستخدمه من وحدة المعالجة ومن الذاكرة.
- شرح الفرق بين التطبيق الذي يعمل في المقدّمة (foreground) والعملية التي تعمل في الخلفية (background) أو الخدمة.
- وصف ما يحدث للعمل غير المحفوظ عندما تُجبر عملية على التوقف.
الشرح
البرنامج والتطبيق والعملية
ثلاث كلمات، وثلاث أفكار:
| الكلمة | المعنى | أين توجد | تشبيه المطبخ |
|---|---|---|---|
| البرنامج (program) | مجموعة تعليمات محفوظة في ملف | التخزين | وصفة مكتوبة في كتاب طبخ |
| التطبيق (application أو app) | برنامج يستخدمه شخص لأداء مهمة | التخزين | وصفة تستخدمها كثيرًا، مثل وصفة "الفطائر" |
| العملية (process) | برنامج يعمل الآن، وله ذاكرته الخاصة | الذاكرة العشوائية، ووحدة المعالجة تعمل عليه | طاهٍ يحضّر الفطائر فعلًا في هذه اللحظة |
احفظ هذه الجملة: البرنامج هو الوصفة، والعملية هي الطبخ نفسه.
الوصفة المكتوبة في كتاب الطبخ لا تفعل شيئًا وحدها. تصبح مفيدة فقط عندما يتبعها أحد. وكذلك ملف البرنامج الموجود على الـ SSD: لا يفعل شيئًا وهو محفوظ هناك. وعندما تفتحه، ينسخه نظام التشغيل إلى الذاكرة العشوائية ويبدأ عملية. ولهذه العملية منطقة ذاكرة خاصة بها، ودور خاص بها في جدول عمل وحدة المعالجة، ورقم خاص بها.
وينتج عن ذلك أمران:
- قد تكون لديك عمليات كثيرة من برنامج واحد. إذا حضّر شخصان الفطائر من الوصفة نفسها في الوقت نفسه، فهناك طاهيان وطبختان منفصلتان. وبالمثل، إذا فتحت التطبيق نفسه مرتين، فقد تحصل على عمليتين. (بعض التطبيقات تستخدم عملية واحدة لكل نوافذها، فما تراه يعتمد على طريقة بناء التطبيق.)
- قد يتكوّن التطبيق الواحد من عدة عمليات. متصفح الويب مثلًا كثيرًا ما يشغّل عمليات منفصلة لعلامات التبويب المختلفة أو لأجزائه المختلفة، حتى إذا تعطّل جزء منها لا يتعطّل المتصفح كله. وطريقة تقسيم التطبيق لعمله يقررها مطوّروه، وقد تتغير من إصدار إلى آخر.
النسخة النصية من هذا الرسم
على اليسار صندوق باسم Program (البرنامج): ملف تعليمات مخزَّن على SSD. سهمان يقودان إلى مجموعة بعنوان In RAM: running processes (في الذاكرة: العمليات الجارية) تضم صندوقين: عملية بمعرّف PID 5120 وعملية بمعرّف PID 5388. لكل عملية ذاكرتها الخاصة وهي تعمل الآن. تشغيل البرنامج نفسه مرتين يعطي عمليتين بمعرّفين مختلفين.
معرّف العملية (PID)
عندما يبدأ نظام التشغيل عملية، يعطيها رقمًا فريدًا اسمه معرّف العملية (process ID)، أو PID اختصارًا. هذا الرقم يدل على هذه العملية بعينها. فتستطيع أن تشير إليها بدقة، حتى لو كانت هناك عمليات كثيرة بالاسم نفسه.
حقائق مفيدة عن الـ PID:
- لا يمكن أن يكون لعمليتين تعملان في الوقت نفسه PID واحد.
- الـ PID مرتبط بهذه المرة من التشغيل فقط. إذا أغلقت التطبيق ثم فتحته مرة أخرى، فعادةً يحصل على PID مختلف.
- بعد أن تنتهي العملية، قد يُعطى رقمها لاحقًا لعملية جديدة. لذلك لا تعامل الـ PID كأنه اسم دائم.
إذا قلت لزميلك "هناك مشكلة في عملية Java"، فقد يسألك: "أي واحدة؟". أما إذا قلت "PID 4312"، فقد حدّدتها بدقة.
العمليات في المقدّمة والخلفية
ليس لكل عملية نافذة تراها.
- التطبيق في المقدّمة (foreground application) هو التطبيق الذي تتعامل معه بنفسك: المتصفح، أو نافذة دردشة، أو لعبة.
- العملية في الخلفية (background process) تعمل دون نافذة. ومن أمثلتها برنامج يزامن ملفاتك، أو برنامج يبحث عن التحديثات، أو البرنامج الذي يُظهر لك الإشعارات.
- الخدمة (service) في Windows، أو الـ daemon في macOS وLinux، هي عملية في الخلفية يبدؤها نظام التشغيل لتؤدي وظيفة مستمرة. وغالبًا يبدؤها عند تشغيل الجهاز، حتى قبل أن يسجّل أي مستخدم دخوله. وخادم الويب على جهاز الـ backend يعمل كخدمة من هذا النوع.
في الحاسوب العادي، يكون جزء كبير من العمليات عمليات نظام أو عمليات خلفية، وهذا طبيعي. فإذا رأيت عشرات، بل مئات، الصفوف في قائمة العمليات، فهذا لا يعني أن هناك مشكلة.
كيف ترى العمليات على جهازك
في كل نظام تشغيل أداة لهذا الغرض. وأسماء القوائم والأزرار تتغير قليلًا من إصدار إلى آخر، فاعتبر الخطوات التالية دليلًا عامًا، لا تعليمات حرفية.
Windows: Task Manager
- افتحه بالضغط على Ctrl + Shift + Esc، أو انقر بزر الفأرة الأيمن على زر Start واختر Task Manager. وإذا فُتح في عرض مختصر، فاختر More details لترى التفاصيل.
- علامة التبويب Processes تعرض التطبيقات وعمليات الخلفية، مع أعمدة مثل CPU (استخدام وحدة المعالجة) وMemory (استخدام الذاكرة). انقر على عنوان أي عمود لترتيب القائمة حسبه.
- علامة التبويب Details تعرض كل العمليات، ومع كل عملية الـ PID الخاص بها. وهذا أسهل مكان تجد فيه أرقام الـ PID. (وفي بعض الإصدارات تستطيع أيضًا إضافة عمود PID إلى علامة التبويب Processes، بالنقر بالزر الأيمن على صف عناوين الأعمدة.)
- لإيقاف عملية، حدّدها ثم اختر End task.
وتذكر وثائق Microsoft أن علامة التبويب Details هي المكان الذي يُظهر معرّف كل عملية في عمود PID.
macOS: Activity Monitor
- افتح Activity Monitor من Applications > Utilities، أو ابحث عنه باستخدام Spotlight.
- علامات التبويب CPU وMemory وغيرها تعرض العمليات، ومع كل عملية ما تستخدمه من موارد الجهاز. انقر على عنوان أي عمود لترتيب القائمة حسبه.
- استخدم قائمة View لتختار أي العمليات تُعرض (مثلًا كل العمليات)، ولتختار الأعمدة الظاهرة، ومنها عمود PID.
- لإيقاف عملية، حدّدها واضغط زر Stop (علامة X) في شريط الأدوات، ثم اختر Quit (إغلاق عادي) أو Force Quit (إغلاق إجباري).
وتصف Apple العمليات بأنها البرامج التي تعمل على جهاز Mac، وقد تكون تطبيقات، أو تطبيقات نظام يستخدمها macOS، أو عمليات خلفية لا تراها.
Linux: top وps
في الطرفية (terminal)، يعرض الأمر top العمليات وهي تعمل، في قائمة تتحدّث باستمرار، مرتبة افتراضيًا حسب استخدام وحدة المعالجة، والـ PID في العمود الأول. أما الأمر ps aux فيطبع قائمة ثابتة بالعمليات لحظة تنفيذه، مثل صورة ملتقطة (snapshot). وبهذه الطريقة تُفحص الخوادم عادةً، لأنها غالبًا بلا واجهة رسومية.
قراءة الأرقام
| العمود | ماذا يخبرك | انتبه |
|---|---|---|
| Name | أي برنامج تشغّله هذه العملية | قد تحمل عدة عمليات الاسم نفسه |
| PID | الرقم الفريد لهذه العملية | يتغير إذا أُعيد تشغيل العملية |
| CPU % | إلى أي حد تُبقي هذه العملية وحدة المعالجة مشغولة | الأدوات تختلف: بعضها يعرض النسبة من الجهاز كله، وبعضها من النواة الواحدة، لذلك قد تختلف القيم من أداة إلى أخرى |
| Memory | كم تستخدم العملية من الذاكرة العشوائية تقريبًا | كل أداة تقيس الذاكرة بطريقتها، فقارن الأرقام داخل الأداة نفسها، لا بين أداتين مختلفتين |
عادتان مفيدتان، حاول أن تتعوّد عليهما:
- خذ قيمة الأساس (baseline) أولًا. أي سجّل الأرقام والجهاز خامل لا يفعل شيئًا يُذكر، ثم سجّلها مرة أخرى بعد أن تفعل شيئًا. الفرق بين القراءتين يخبرك كم كلّف ما فعلته.
- رتّب القائمة حسب العمود الذي يهمك. رتّبها حسب Memory لتعرف أكثر العمليات استهلاكًا للذاكرة، وحسب CPU لتعرف ما الذي يُبقي وحدة المعالجة مشغولة.
إنهاء عملية، وما تخسره
إذا تجمّد تطبيق ولم يعد يستجيب، يمكنك أن تُجبر عمليته على التوقف (باستخدام End task، أو Force Quit، أو الأمر kill في Linux). هذا يوقف العملية فورًا ويحرّر ذاكرتها، أي يعيدها إلى نظام التشغيل.
تذكّر الدرس 2: العمل الذي لم تحفظه موجود في الذاكرة العشوائية، داخل ذاكرة العملية. وعندما تنتهي العملية، تضيع تلك الذاكرة بما فيها. لذلك إجبار تطبيق على الإغلاق يُضيّع أي عمل لم يُحفظ. بل قد تفقد بعض التطبيقات آخر التغييرات حتى لو كان فيها حفظ تلقائي. استخدم الإغلاق الإجباري عند الضرورة فقط. ولا تستخدمه مع عمليات لا تعرفها، لأن بعضها تابع لنظام التشغيل، وإنهاؤها قد يجعل الجهاز يعمل بشكل غريب أو يعيد تشغيل نفسه.
أمثلة
المثال 1: نافذتان لتطبيق واحد (بسيط)
تفتح محرر نصوص، ثم تفتحه مرة ثانية لتكتب ملاحظة أخرى. في قائمة العمليات قد ترى صفين بالاسم نفسه، لكن رقمي الـ PID مختلفان، مثل 5120 و5388. إذن هما عمليتان من البرنامج نفسه. (بعض المحررات تفتح النافذة الثانية داخل العملية نفسها، وفي هذه الحالة سترى صفًا واحدًا فقط. وما تراه يعتمد على التطبيق.)
المثال 2: أي عملية تستهلك ذاكرتي؟ (عملي)
صار حاسوبك المحمول بطيئًا. تفتح Task Manager أو Activity Monitor، وتنقر على عمود Memory لترتيب العمليات من الأكثر استهلاكًا إلى الأقل. في أعلى القائمة المتصفح، برقم كبير. وبعده بصفوف قليلة محرر فيديو نسيت أنه مفتوح. تغلق المحرر بالطريقة العادية. فتنخفض الذاكرة المستخدمة، ويصبح الجهاز أسرع. لم تحتج إلى التخمين: الأداة أظهرت لك أي عملية كانت تشغل مساحة سطح العمل (أي الذاكرة العشوائية).
المثال 3: تطبيق متجمّد (واقعي)
برنامج جداول البيانات (spreadsheet) الذي تعمل عليه توقف عن الاستجابة. تنتظر دقيقة، ثم تفتح قائمة العمليات، وتجد برنامج الجداول، وتختار End task أو Force Quit. تتوقف العملية، وتُحرَّر ذاكرتها العشوائية. والتغييرات التي أجريتها منذ آخر حفظ تضيع. أما النسخة المحفوظة في التخزين (من آخر حفظ) فما زالت موجودة. هذا ما تعلمته في الدرس 2 يحدث أمامك: ما في الذاكرة العشوائية يختفي مع العملية، وما في التخزين يبقى.
من منظور الـ Backend
على الخادم، التطبيق الذي كتبته هو عملية، وغالبًا عملية تظل تعمل أسابيع دون أن ينظر إليها أحد.
- يجدها المهندسون باسمها وبالـ PID الخاص بها، ثم يفحصون ما تستخدمه من وحدة المعالجة والذاكرة ليعرفوا هل هي بحالة جيدة.
- إذا كان استخدام العملية للذاكرة يزيد باستمرار ولا ينخفض أبدًا، فهذه علامة معروفة على مشكلة في الذاكرة. وقائمة العمليات هي أول مكان تلاحظ فيه ذلك.
- إذا قيل إن الـ backend "متوقف" (down)، فقد يعني ذلك أن العملية تعطّلت (crashed) أو أُنهيت قسرًا (killed). والأدوات التي تعيد تشغيل الخدمات المتوقفة تلقائيًا تعمل بمراقبة العملية.
- يمكن تشغيل عدة نسخ من البرنامج نفسه كعمليات منفصلة لتتقاسم الحِمل، ولكل نسخة PID خاص بها.
مفردات هذا الدرس (البرنامج، والعملية، والـ PID، والخدمة) هي المفردات التي يستخدمها من يشغّل الـ backend ويتابعه.
أخطاء شائعة
الخطأ 1: اعتبار البرنامج والعملية شيئًا واحدًا
- خطأ: "البرنامج يستهلك 400 MB."
- صحيح: "البرنامج ملف على القرص. أما العملية التي تعمل الآن فتستخدم 400 MB من الذاكرة العشوائية."
الخطأ 2: افتراض أن كل تطبيق يساوي عملية واحدة
قد يستخدم التطبيق الواحد عدة عمليات، وقد يستخدم تطبيق له نوافذ كثيرة عملية واحدة فقط. انظر إلى أرقام الـ PID بدل التخمين.
الخطأ 3: إنهاء عمليات لا تعرفها
الاسم الغريب لا يعني أن هناك فيروسًا. فكثير من هذه الأسماء عمليات نظام عادية. ابحث عن الاسم أولًا، ولا تُنهِ عمليات النظام ما لم تعرف ما وظيفتها.
الخطأ 4: مقارنة أرقام الذاكرة بين أدوات مختلفة
كل أداة تقيس الذاكرة بطريقتها، لذلك ليس بالضرورة أن تتطابق الأرقام بين أداتين. قارن القراءات المأخوذة من الأداة نفسها.
الخطأ 5: افتراض أن كثرة العمليات تعني وجود مشكلة
من الطبيعي أن يكون في النظام عمليات خلفية كثيرة. انظر إلى ما تستهلكه هذه العمليات (من وحدة المعالجة والذاكرة)، لا إلى عددها.
التمارين
جرّب كل تمرين بنفسك قبل أن تفتح الحلول. التمارين المكتوب بجانبها "على جهازك" (hands-on) تنفّذها على حاسوبك أنت.
المستوى A: الأساس
A1. عرّف البرنامج والتطبيق والعملية، بجملة واحدة لكل منها.
أظهر الحل A1
A1. البرنامج مجموعة تعليمات محفوظة في ملف. التطبيق برنامج يستخدمه شخص لأداء مهمة. العملية برنامج يعمل الآن، وله ذاكرته الخاصة ومعرّفه الخاص.
A2. ما هو الـ PID؟ هل يمكن أن يكون لعمليتين تعملان في الوقت نفسه الـ PID نفسه؟
أظهر الحل A2
A2. الـ PID هو الرقم الفريد الذي يعطيه نظام التشغيل لكل عملية تعمل. لا يمكن أن تشترك عمليتان تعملان في الوقت نفسه في PID واحد. لكن الرقم قد يُستخدم مرة أخرى بعد أن تنتهي العملية.
A3. أين يوجد البرنامج عندما لا يكون قيد التشغيل؟ وأين يوجد عندما يصبح عملية؟
أظهر الحل A3
A3. عندما لا يعمل: يكون محفوظًا كملف في التخزين. وعندما يعمل: يُحمَّل في الذاكرة العشوائية، وتنفّذه وحدة المعالجة على شكل عملية.
المستوى B: تطبيق المفاهيم
B1. (على جهازك) افتح قائمة العمليات على حاسوبك. كم عملية فيها؟ اختر أي ثلاث منها، واكتب لكل منها الاسم والـ PID ومقدار الذاكرة المستخدمة.
أظهر الحل B1
B1. تختلف الإجابة حسب جهازك. يكون العدد غالبًا بالعشرات أو بالمئات، وهذا طبيعي. تأكد أنك سجّلت ثلاثة أرقام PID مختلفة.
B2. أعطِ مثالًا على تطبيق في المقدّمة، ومثالًا على عملية في الخلفية، ومثالًا على خدمة.
أظهر الحل B2
B2. مثال: التطبيق في المقدّمة: نافذة متصفح ويب. العملية في الخلفية: برنامج مزامنة ملفات. الخدمة: برنامج يبدؤه نظام التشغيل عند تشغيل الجهاز ليقدّم وظيفة شبكة أو طباعة. وأي أمثلة صحيحة أخرى مقبولة.
B3. تغلق تطبيقًا ثم تفتحه مرة أخرى. هل تتوقع أن يحصل على الـ PID نفسه؟ اشرح.
أظهر الحل B3
B3. لا، في العادة لا. في كل مرة تشغّل فيها البرنامج، ينشئ نظام التشغيل عملية جديدة ويعطيها PID جديدًا. قد يُستخدم الرقم نفسه مرة أخرى لاحقًا، لكن لا تعتمد على أنك ستحصل عليه.
المستوى C: التحدي
C1. (على جهازك) افتح تطبيقًا يمكن تشغيله مرتين. عُدّ عملياته قبل أن تفتحه مرة ثانية وبعدها. اشرح ما تراه، واستخدم كلمة PID في شرحك.
أظهر الحل C1
C1. تختلف الإجابة حسب التطبيق. إذا ظهرت عملية ثانية، فسيكون للصفين رقما PID مختلفان، أي أنهما عمليتان من برنامج واحد. وإذا لم تظهر عملية جديدة، فالتطبيق يدير عدة نوافذ داخل عملية واحدة. والحالتان طبيعيتان.
C2. صديقك أجبر محرر مستندات متجمدًا على الإغلاق (force-quit)، ثم قال: "ضاع مستندي، ولا بد أن الحاسوب نفسه تعطّل". اشرح ما حدث مستخدمًا مفاهيم الذاكرة العشوائية والتخزين والعمليات، وماذا يمكنه أن يفعل ليخسر أقل في المرة القادمة.
أظهر الحل C2
C2. كان المستند موجودًا في الذاكرة العشوائية فقط، داخل ذاكرة عملية المحرر، لأنه لم يُحفظ في التخزين. والإغلاق الإجباري أنهى العملية وضيّع تلك الذاكرة، فضاع النص غير المحفوظ. أما الحاسوب فسليم. وفي المرة القادمة عليه أن يحفظ عمله كثيرًا، أو يشغّل الحفظ التلقائي، الذي ينسخ المستند من الذاكرة العشوائية إلى التخزين بانتظام.
C3. عملية backend تبدأ وهي تستخدم 200 MB من الذاكرة العشوائية، ويزيد استخدامها بنحو 50 MB كل ساعة. ماذا تتوقع بعد 24 ساعة، وماذا ستفحص؟
أظهر الحل C3
C3. بعد 24 ساعة: 200 + 24 × 50 = 1,400 MB (نحو 1.4 GB)، إذا ظلت الزيادة ثابتة. والزيادة المستمرة التي لا تنخفض أبدًا تدل على مشكلة في الذاكرة، مثل بيانات يحتفظ بها البرنامج ولا يتخلص منها أبدًا. افحص ذاكرة العملية على مدى الوقت، وهل يُعاد تشغيلها بانتظام، وافحص سجلّات أحداث التطبيق (logs)، ثم أبلغ المطورين بالمشكلة.
تحدٍّ صغير
اصنع "بطاقة تعريف بالعمليات" (process profile) لتطبيق واحد تستخدمه يوميًا.
- سجّل إجمالي الذاكرة العشوائية المستخدمة، والتطبيق مغلق والجهاز خامل لا تفعل عليه شيئًا آخر.
- افتح التطبيق وابحث عن كل عملياته. سجّل أسماءها، وأرقام الـ PID، وCPU %، والذاكرة.
- نفّذ عملًا واحدًا ثقيلًا في التطبيق (افتح ملفًا كبيرًا، أو شغّل فيديو، أو افتح صفحة ويب ثقيلة)، ثم سجّل الأرقام نفسها مرة أخرى.
- اكتب جملة واحدة عمّا تغيّر ولماذا، مستخدمًا الكلمات: وحدة المعالجة (CPU)، والذاكرة العشوائية (RAM)، والعملية، والـ PID.
راجع عملك: هل أخذت كل القراءات من أداة واحدة؟ وهل يشرح كلامك ما فعلته العملية، لا مجرد ما كانت عليه الأرقام؟
الملخص والدرس التالي
أهم النقاط
- البرنامج ملف فيه تعليمات. أما العملية فهي ذلك البرنامج وهو يعمل، ولها ذاكرتها الخاصة وPID فريد.
- قد يكون لبرنامج واحد عدة عمليات، وقد يتكوّن تطبيق واحد من عدة عمليات.
- التطبيقات في المقدّمة لها نوافذ. أما العمليات في الخلفية والخدمات والـ daemons فتعمل دون نافذة، وكثير منها طبيعي.
- يعرض Task Manager (في Windows) وActivity Monitor (في macOS) و
topأوps(في Linux) العمليات، وأرقام الـ PID، واستخدام وحدة المعالجة والذاكرة. - إنهاء العملية يضيّع كل ما كان موجودًا في ذاكرتها العشوائية فقط، لذلك يضيع العمل غير المحفوظ.
- عندما تكون خدمة بطيئة أو عالقة، ينظر مهندسو الـ backend إلى العمليات أولًا.
الدرس التالي
أصبحت الآن تعرف كيف تقرأ قائمة العمليات. والدرس التالي عرض عملي: ستراقب الذاكرة العشوائية ووحدة المعالجة وأنت تفتح التطبيقات، وتسجّل ما يتغير، ثم تشرحه بمصطلحات هذه الوحدة.
اختبر نفسك
- ما الفرق بين البرنامج والعملية؟
- فيمَ يُستخدم الـ PID؟
- هل يمكن لتطبيق واحد أن يستخدم أكثر من عملية؟
- أي علامة تبويب في Task Manager على Windows تعرض أرقام الـ PID بأسهل طريقة؟
- لماذا يضيع العمل غير المحفوظ عند إجبار تطبيق على الإغلاق؟
أظهر الإجابات
- البرنامج ملف فيه تعليمات، والعملية هي ذلك البرنامج وهو يعمل.
- لتحديد عملية واحدة بعينها، من بين العمليات التي تعمل، تحديدًا دقيقًا.
- نعم، كثير من التطبيقات تستخدم عدة عمليات.
- علامة التبويب Details.
- لأن العمل غير المحفوظ موجود فقط في الذاكرة العشوائية الخاصة بالعملية، وإنهاء العملية يحرّر تلك الذاكرة.
المراجع
- Microsoft Learn, Finding the process ID. يشرح كيف تفتح Task Manager وتجد معرّف كل عملية في عمود PID في علامة التبويب Details.
- Apple Support, View information about Mac processes in Activity Monitor. يصف العمليات بأنها تطبيقات، وتطبيقات نظام، وعمليات خلفية لا تراها، ويشرح ترتيب القائمة حسب العمود. أما عمود PID واختصار Ctrl + Shift + Esc فغير مذكورين في هاتين الصفحتين؛ لكنهما موثّقان على نطاق واسع في أدلة من مصادر أخرى، فتأكد منهما على نظامك.
التطبيق
طبّق هذا الدرس بمختبر الوحدة وتمارينها واختبارها.
تعليم الدرس كمكتمل اختياري ويمكنك التراجع عنه في أي وقت. يبقى تقدمك محفوظًا في هذا المتصفح.