سر بدء تشغيل الخدمات تلقائيًا: كيف يعمل نظام Windows على تسريع عملية بدء التشغيل؟

في العصر الرقمي الحالي، يعد بدء التشغيل السريع والتشغيل الفعال للنظام أمرًا في غاية الأهمية للمستخدمين. يمكن لنظام Windows تشغيل العديد من الخدمات في فترة زمنية قصيرة. وتوجد وراء ذلك عملية نظام تسمى Service Control Manager (SCM). يعد تشغيل SCM أمرًا بالغ الأهمية لتحسين سرعة بدء تشغيل النظام. دعنا نلقي نظرة فاحصة على كيفية عمل هذه العملية.

SCM هي عملية نظام خاصة ضمن أنظمة التشغيل Windows NT. وهي مسؤولة عن بدء وإيقاف وإدارة عمليات خدمة Windows.

يقع الملف القابل للتنفيذ لـ SCM في %SystemRoot%\System32\services.exe، ومهمته الرئيسية هي بدء تشغيل جميع الخدمات التي تم تكوينها للبدء تلقائيًا. عند بدء تشغيل النظام، ستبدأ عملية Wininit تشغيل SCM مبكرًا وتبدأ سلسلة من مهام التهيئة.

أثناء عملية بدء التشغيل، يقوم SCM أولاً بقراءة المعلومات المتعلقة بالخدمة من السجل. يتضمن هذا إدخالين رئيسيين في التسجيل:

<أول>
  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ServiceGroupOrder\List - يحتوي على أسماء وترتيب بدء تشغيل مجموعات الخدمة.
  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services - قاعدة البيانات الفعلية للخدمات وبرامج تشغيل الأجهزة.
  • تساعد هذه المعلومات إدارة سلسلة التوريد على تحديد ترتيب بدء تشغيل كل خدمة وترابطاتها. يتحقق SCM أيضًا مما إذا كانت برامج تشغيل الأجهزة التي يجب بدء تشغيلها أثناء عملية التمهيد قد تم تحميلها بنجاح، ويخزن برامج التشغيل الفاشلة في قائمة تسمى ScFailedDrivers.

    عند معالجة كل خدمة يتم بدء تشغيلها تلقائيًا، سيأخذ SCM أيضًا في الاعتبار تبعيات ترتيب التحميل لتجنب حدوث تبعيات دائرية.

    بعد معالجة جميع خدمات التشغيل التلقائي غير المتأخرة، سيبدأ SCM في تحميل خدمات التشغيل التلقائي المتأخرة، وهي ميزة جديدة تم تقديمها منذ نظام التشغيل Windows Vista لتسريع بدء تشغيل النظام. عادةً، يتم تهيئة هذه الخدمات المتأخرة بعد حوالي 120 ثانية من بدء تشغيل النظام.

    التحقق من الخدمة وبدء التشغيل

    لكل خدمة يتم بدء تشغيلها، يقوم SCM باستدعاء الدالة ScStartService() للتحقق من أن الحساب الذي يتم تشغيل العملية تحته يتطابق مع الحساب المحدد بواسطة الخدمة. أثناء هذه العملية، إذا لم تكن الخدمة قيد التشغيل ضمن حساب النظام، فسوف يقوم SCM باستدعاء دالة LSASS LogonUserEx() للحصول على معلومات تسجيل دخول المستخدم الضرورية. يتم تخزين هذه المعلومات في مفتاح التسجيل HKLM\SECURITY\Policy\Secrets\، ويمكن فقط للخدمات التي تتمتع بإمكانية الوصول الكامل الحصول على كلمات المرور "السرية" هذه.

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

    بمجرد بدء عملية الخدمة بنجاح، سيقوم SCM بإنشاء قناة اتصال مع عملية الخدمة عن طريق إنشاء أنبوب مسمى. تنضم عملية الخدمة إلى هذه القناة عن طريق استدعاء الدالة StartServiceCtrlDispatcher()، ثم يقوم SCM بإرسال أمر "بدء" إلى الخدمة.

    خدمة تأخير التشغيل التلقائي الفريدة

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

    عملية بدء تشغيل برنامج تشغيل الجهاز

    يقوم SCM أيضًا بإدارة برامج تشغيل الأجهزة. يتم تمييز أنواع الخدمات لهذه الخدمات باسم SERVICE_KERNEL_DRIVER أو SERVICE_FILE_SYSTEM_DRIVER في السجل. في هذه الحالات، يقوم SCM باستدعاء الدالة ScLoadDeviceDriver() لتحميل برنامج التشغيل المقابل في النظام، وهو ما يتطلب عادةً استدعاء استدعاء النظام NtLoadDriver.

    يمكن لـ SCM أيضًا إرسال رسائل إلى تطبيقات واجهة المستخدم الرسومية مثل Windows Explorer لإعلامها بالتغييرات في اتصالات أحرف محرك الشبكة.

    باختصار، يلعب مدير التحكم في الخدمة في نظام Windows دورًا لا غنى عنه في عملية بدء تشغيل النظام. فهو يقوم بتحميل الخدمات وبرامج تشغيل الأجهزة الضرورية بطريقة فعّالة للحفاظ على الاستجابة السريعة والتشغيل المستقر للنظام الإجمالي. عندما نستخدم هذه التقنيات، هل أخذنا في الاعتبار مبادئ التشغيل والتحديات التقنية التي تكمن وراءها؟

    Trending Knowledge

    لغز الشاشة الزرقاء: ما هي التغييرات المفاجئة التي ستحدث إذا قمت بإنهاء Services.exe؟
    <ص> في أنظمة تشغيل Windows الحديثة، يعد Service Control Manager (SCM) أو Services.exe أحد المكونات الأساسية لتشغيل النظام. هذه العملية مسؤولة عن بدء تشغيل خدمات Windows المختلفة وإيقافها و
    الحارس السري لنظام Windows: كيف يعمل Service Control Manager بصمت خلف الكواليس؟
    عند بدء تشغيل نظام التشغيل Windows، يتم تشغيل العديد من الخدمات بصمت في الخلفية، وهي تشكل حجر الزاوية المهم لاستقرار نظام التشغيل. تقع مسؤولية بدء تشغيل هذه الخدمات وإدارتها في الغالب على عاتق مدير ال

    Responses