مرجع
آخر الزيارات

عملية الطفل

446 كلمة•0 مشاهدة•🗒️ منذ 23 ساعة
باختصار: عملية الطفل في الحوسبة هي عملية تم إنشاؤها بواسطة عملية أخرى عملية الأصل (الأب). تجد هنا «عمليات الطفل المنشأة بأمر Fork»، «التاريخ» و«نهاية الحياة» ضمن 4 أقسام.
المحتويات
  1. عمليات الطفل المنشأة بأمر Fork
  2. التاريخ
  3. نهاية الحياة
  4. exit

على سبيل التعريف، عملية الطفل في الحوسبة هي عملية تم إنشاؤها بواسطة عملية أخرى عملية الأصل (الأب). وتتعلق هذه التقنية بأنظمة التشغيل متعددة المهام، وتسمى أحيانًا عملية فرعية. وتعرض الأقسام التالية جوانب أخرى من الموضوع.

من جانب آخر، هناك إجراءان رئيسيان لإنشاء عملية الطفل: (متواجد في أنظمة Unix-like وPOSIX standard). والنسل أو التوالد (متواجد في المعالجات الحديثة لمايكروسوفت ويندوز، وفي بعض أنظمة التشغيل التاريخية).

عمليات الطفل المنشأة بأمر Fork

علاوةً على ذلك، كل عملية تنشأ بامكانها إنشاء الكثير من عمليات الطفل ولكن سيكون لها عملية أصل (أب) واحده، فإذا لم يكن للعملية الطفل عملية أصل (أب) فهذا يشير إلى انه تم انشاؤها مباشرة بواسطة Kernel.

إضافةً إلى ذلك، في بعض الأنظمة، بما في ذلك أنظمة linux-based تبدأ أول عملية في وقت التشغيل (تسمى init) بواسطة Kernel ولا تنتهي أبدًا (راجع عملية بدء تشغيل Linux)؛ ويتم إنشاء الكثير من عمليات الطفل بدون أصل (أب) لتنفيذ مهام خفية مختلفة في مساحة المستعملين. وأيضا هنالك طريقة أخرى لعملية الطفل تنتهي بدون أصل (أب) إذا مات أصلها (الأب) فتصبح عملية يتيمة وسيتم تبنيها بفترة قصيرة بواسطة init.

عمليات الطفل المنشأة بالنسل

وعلى صعيد آخر، ترث عملية الطفل أغلب سماتها مثل واصفات الملفات من أصلها (الأب). وفي يونكس، يتم إنشاء عملية فرعية عادة كنسخة من الأصل (الأب)، باستخدام Frok. يمكن أن تندمج/تتداخل العملية الفرعية مع برنامج مختلف (باستخدام exec) حسب الحاجة.

ومن ناحية أخرى، إشارة SIGCHLD ترسل من عملية الأصل (الأب) إلى عملية الطفل عند خروجها أو مقاطعتها أو استئنافها بعد مقاطعتها وبشكل افتراضي يتم تجاهلها.

التاريخ

ومن ناحية أخرى، يعود تاريخ عمليات الطفل إلى أواخر الستينيات، مع شكل مبكر من (البرمجة المتعددة مع عدد ثابت من المهام) الإصدار الثاني (MFT-II) لنظام التشغيل IBM OS / 360، والذي قدم مهمة فرعية (انظر المهمة).و يعتمد النموذج الحالي في يونكس على مولتكس (1969)، بينما يعتمد نموذج مايكروسوفت ويندوز NT على VAX / VMS ، من RSX-11 (1972).

نهاية الحياة

إضافةً إلى ذلك، POSIX.1-2001 يتيح لعملية الأصل (الأب) ان تقترح إلى Kernel ان تحصد عمليات الطفل بشكل تلقائي عند تغيير SIGCHLD to SIG_IGN في الاداره -The disposition-.أو عن طريق وضع علامة SA_NOCLDWAIT لإشارة SIGCHLD.

انظرأيضاً

ومن جهة أخرى، عندما تنتهي عملية الطفل، يتم إرجاع بعض المعلومات إلى عملية الأصل.

ومن جهة أخرى، و عندما تنتهي عملية الطفل قبل استدعاء عملية الأصل (الأب) لأمر- wait- ، يحتفظ - kernel- ببعض المعلومات حول عملية الطفل مثل حالة الخروج لتمكين عملية الأصل (الأب) من استدعاء أمر - wait- في وقت لاحق. وأيضاً تعرف عملية الزومبي بانها عملية الطفل التي لا تزال تستهلك موارد النظام ولا تنفذها. ويتم استدعاء أمر -wait- في معالج SIGCHLD .

كذلك، تلتزم Linux 2.6 kernels بهذا السلوك، ويدعم فري بي ‌إس ‌دي كلا الطريقتين منذ الإصدار 5.0. [4] على كل حال، بسبب الاختلافات التاريخية بين سلوكيات النظام V وBSD فيما يتعلق بتجاهل SIGCHLD ، يظل استدعاء أمر -wait- هو أكثر نموذج محمول للتنظيف بعد عمليات الطفل.[5]

exit

المراجع

الملاحظات

كذلك، pstree, for UNIX to find the child process (pstree PID, where PID is the process id of the process).

ما رأيك في هذه المقالة؟

📝 هل في هذه المقالة خطأ؟

إذا وجدت معلومة تحتاج تصحيحاً أو إضافة، أو أردت حذف المقالة، أرسل لنا طلباً وسنراجعه.