تكنولوجيا

ما هي العمليات التي يطلق عليها مصطلح daemons

العمليات التي يطلق عليها مصطلح daemons

عمليات Daemons هي عمليات تبدأ غالبا عند تشغيل النظام وتستمر حتى يتم إيقاف تشغيل النظام، حيث تعمل في الخلفية بدون واجهة تحكم، وتتوفر في أنظمة UNIX العديد من البرامج المساعدة التي تقوم بأنشطة يومية

يستكشف البرنامج كتابة البرنامج الخفي، نظرًا لأن البرنامج الخفي لا يحتوي على طرف تحكم متحكم، وبالتالي يحتاج المستخدمون إلى معرفة كيفية إبلاغ البرنامج الخفي بحالات الأخطاء عند حدوثها.

خصائص daemons

يشرح هذا القسم بعضًا من الأنظمة الشائعة للتشغيل مع مفاهيي المجموعات ومحطات التحكم، ومن بين هذه العمليات أو المفاهيم ما يلي:

  • ps -axj
  • الخيار -a يعرض حالة العمليات التي يمتلكها الآخرون.
  • يعرض خيار -x العمليات التي ليس لديها محطة تحكم.
  • يعرض الخيار -j المعلومات المتعلقة بالوظيفة:
  • معرف جلسة العمل
  • معرف مجموعة العمليات
  • محطة التحكم
  • معرف مجموعة العمليات الطرفية

كما يبدو الإخراج من ps على Linux 3.2.0 كما يلي:

  • UID PID PPID PGID SID TTY CMD
  • جذر 1 0 1 1؟ / sbin / init
  • جذر 2 0 0 0؟ [kthreadd]
  • ما هو جذر 3200؟ [ksoftirqd / 0]
  • جذر 6 2 0 0؟ [الهجرة / 0]
  • جذر 7 2 0 0؟ [حراسة / 0]
  • جذر 21 2 0 0؟ [cpuset]
  • جذر 22 2 0 0؟ [خيلبر]
  • جذر 26 2 0 0؟ [sync_supers]
  • جذر 27 2 0 0؟ [bdi- افتراضي]
  • جذر 29 2 0 0؟ [kblockd]
  • جذر 35 2 0 0؟ [kswapd0]
  • جذر 49 2 0 0؟ [scsi_eh_0]
  • جذر 256 2 0 0؟ [jbd2 / sda5-8]
  • جذر 257 2 0 0؟ [ext4-dio-unrit]
  • 847 1843 843؟ rsyslogd -c5
  • جذر 906 هو /usr/sbin/cupsd -F 1906906؟
  • ما هو جذر 1037 مرفق في /usr/sbin/inetd؟
  • جذر 1067 1 1067 1067؟ كرون
  • الشيطان 1068 1 1068 1068؟ ATD
  • ما هو جذر 8196 مرفق / usr / sbin / sshd -D
  • جذر 13047 2 0 0؟ [kworker / 1: 0]
  • جذر 14596 2 0 0؟ [تدفق -8: 0]
  • ما هو جذر 26464؟ rpcbind -w
  • statd 28490 1 28490 28490؟ statd -L
  • جذر 28553 2 0 0؟ [rpciod]
  • جذر 28554 2 0 0؟ [nfsiod]
  • جذر 28561 1 28561 28561؟ idmapd
  • جذر 28761 2 0 0؟ [مغلق]
  • جذر 28764 2 0 0؟ [nfsd]
  • ما هو جذر 28775؟ /usr/sbin/rpc.mountd -manage-gids 1 28775 28775؟

عناوين الأعمدة

عناوين الأعمدة بالترتيب هي ما يلي:

  • معرف المستخدم
  • معرف العمليه
  • معرف العملية الأصل
  • معرف مجموعة العمليات
  • معرف جلسة العمل
  • اسم المحطة
  • سلسلة الأمر

وظيفة daemons

تعتمد عمليات الإخراج في هذا النظام على تنفيذ نظام التشغيل، وعادة ما يتم تعريف أي شيء في هذا السياق على أنه عملية أصلية تنطلق من نواة النظام، والتي تبدأ كجزء من عملية الإقلاع باستثناء عملية “init” التي تنشأ على مستوى المستخدم وتبدأ بواسطة النواة أثناء عملية الإقلاع. تعتبر عمليات النواة خاصة وموجودة على مدار عمر النظام بأكمله، حيث يتم تشغيلها بامتيازات المستخدم المميز دون وجود واجهة تحكم أو سطر أوام

في نموذج إخراج ps، توجد أسماء شيطان kernel بين قوسين مربعين، وكذلك kthreadd هي عملية kernel خاصة في نظام Linux تقوم بإنشاء عملية kernel أخرى، وبالتالي تظهر كمصدر لعناصر kernel الأخرى، وعادة ما يكون لمكون kernel الذي يجب تشغيله في سياق عملية، ولكنه لا يتم استدعاؤه من سياق عملية على مستوى المستخدم. ويحتوي البرنامج الخفي لـ kernel الخاص به على بعض الأدوات والوظائف

kswapd هو برنامج الحمل الذي يساعد في إدارة الذاكرة الظاهرية عبر كتابة الصفحات المتسخة على القرص ببطء مع مرور الوقت، بحيث يمكن استعادة هذه الصفحات فيما بعد. ويقوم هذا البرنامج الخفي بمسح الصفحات المتسخة ونقلها إلى القرص عندما تكون الذاكرة المتاحة في أدنى حدودها، ويقوم أيضا بمسح الصفحات المتسخة مرة أخرى إلى القرص بشكل منتظم لتقليل فقدان البيانات في حالة فشل النظام.

يمكن أيضا وجود عدة شياطين فعالة لكل جهاز دعم، وإخراج العينة flush-8: 0 يعني أن جهاز الدعم يتم تحديده من خلال رقم الجهاز الرئيسي ورقم الجهاز الفرعي

يقوم برنامج sync_supers الخفي بشكل دوري بمسح البيانات الوصفية لنظام الملفات وينقلها إلى القرص، كما يساعد برنامج jbd daemon في تنفيذ المجلة في نظام الملفات ext4. وعادة ما يكون البرنامج الأول مسؤولا عن بدء خدمات النظام في مستويات التشغيل المختلفة، بالإضافة إلى توفير خدمة تعيين أرقام المنافذ لبرامج RPC عبر rpcbind

تقدم شياطين nfsd و nfsiod و lockd و rpciod و rpc.idmapd و rpc.statd و rpc.mountd دعما لنظام ملفات الشبكة (NFS). يجب ملاحظة أن الأربعة الأولى هي شياطين kernel، بينما الثلاثة الأخيرة هي شياطين على مستوى المستخدم. يمكن لبرنامج rsyslogd تسجيل رسائل النظام لأي برنامج، ويتم طباعة الرسائل على وحدة التحكم أو كتابتها في ملف وفقا لأوامر cron في التواريخ والأوقات المجدولة

  • يتم التعامل مع عدة مهام لإدارة النظام بواسطة برامج تشغيل cron بشكل منتظم
  • ATD مشابه لـ cron ويسمح للمستخدمين بتنفيذ المهام في أوقات محددة ومرة واحدة فقط
  • كبسد هو التخزين المؤقت للطباعة الذي يتعامل مع طلبات الطباعة على النظام
  • يقدم الـ sshd سهولة في عملية تسجيل الدخول والتنفيذ عن بعد
  • يعمل معظم الشياطين بامتيازات المستخدم المتميز (الجذر)

لا يوجد أي من الشياطين محطة تحكم تعيين اسم الجهاز عليها في علامة استفهام، ويتم بدء تشغيل شياطين النواة بدون محطة تحكم، وربما يكون عدم وجود محطة تحكم في الشياطين على مستوى المستخدم ناتجًا عن استدعاء الشياطين سيتسيد

في معظم الحالات، يكون معظم الشياطين على مستوى المستخدم هم قادة مجموعة العمليات وقادة الجلسات، وهم العمليات الوحيدة في مجموعة العملية والجلسة، والاستثناء الوحيد هو rsyslogd. ويكون أصل الشياطين على مستوى المستخدم هو عملية البادئ.

قواعد الترميز

يشرح هذا القسم القواعد الأساسية لتشفير البرنامج الخفي الذي يمنع حدوث التفاعلات غير المرغوب فيها، وبعد ذلك يأتي وظيفة daemonize التي تنفذ هذه القواعد. يتم الاتصال بـ umask لتعيين قناع إنشاء وضع الملف على قيمة معروفة عادة، وإذا تم إنشاء ملفات من العملية الخفية، فقد ترغب في تعيين أذونات محددة

ومن جهة أخرى، إذا كان البرنامج الخفي يتطلب وظائف المكتبة التي تؤدي إلى إنشاء الملفات، قد يكون من المنطقي تعيين وضع الملف لإنشاء قناع على قيمة أكثر تقييدا، وذلك لأن وظائف المكتبة قد لا تسمح للمستخدم بتحديد الأذونات عن طريق حجة صريحة. وإذا بدأ البرنامج الخفي كأمر shell بسيط، فإن إنهاء الأمر الأبوي يجعل القذف يعتقد أن الأمر قد تم تنفيذه

– تتمثل الخطوات الثلاث التي يتم مناقشتها في مجموعات الاتصال لإنشاء جلسة جديدة

  • يصبح قائد جلسة جديدة
  • يصبح قائدًا لمجموعة عمليات جديدة
  • ويتم فصله عن محطة التحكم الخاصة به

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

المراجع

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

زر الذهاب إلى الأعلى