Windows স্লো বুটের কারণ ডায়াগনোস করার জন্য বেশ কিছু শক্তিশালী টুল ও লগ অ্যানালिसিস টেকনিক রয়েছে যা সিস্টেম বুট এবং সার্ভিস স্টার্টের সকল ধাপের বিস্তারিত ডিবাগিং করতে দেয় (Windows Performance Toolkit / Analyzer-র xperf/xbootmgr)। কিন্তু এদের ব্যবহার নতুন সিস্টেম অ্যাডমিনিস্ট্রেটরদের জন্য কিছু সমস্যা সৃষ্টি করতে পারে। এই আর্টিকেলে আমরা দেখাবো কীভাবে সহজে ও দ্রুত শনাক্ত করতে হয়, সিস্টেম স্টার্টের সময় কোন অ্যাপস, সার্ভিস এবং ড্রাইভার স্লো কাজ করছে, যা মোট বুট টাইম বেড়াচ্ছে।
নিঃসন্দেহে, সকল Windows সিস্টেম অ্যাডমিনিস্ট্রেটর Sysinternals সিস্টেম ইউটিলিটি কিটের Process Monitor-এর সাথে পরিচিত। Process Monitor রানিং প্রসেসের কার্যকলাপ, ফাইল সিস্টেম ও রেজিস্ট্রি অ্যাক্সেস রিয়েল টাইমে মনিটর করতে দেয়। Process Monitor-এর কম পরিচিত ফিচারlerden একটি হলো Windows স্টার্টআপে শুরু হওয়া প্রসেসগুলোর মনিটরিং সক্ষম করার সুযোগ।
বুট স্টেজ ডায়াগনোস করতে, Process Monitor রেজিস্ট্রির HKLM\SYSTEM\CurrentControlSet\Services সেকশনে একটি আলাদা সার্ভিস তৈরি করে। এই সার্ভিস বুট মোড ড্রাইভার procmon23.sys লোড করে যা Winload.exe চালু হওয়ার পর শুরু হয় এবং সিস্টেম বুট ও ইউজার লগইন চলাকালীন সকল প্রসেসের কার্যকলাপ লগ করে।
- Process Monitor-এর আর্কাইভ ডাউনলোড ও আনপ্যাক করুন (https://download.sysinternals.com/files/ProcessMonitor.zip)
- procmon.exe অ্যাডমিনিস্ট্রেটর প্রিভিলেজ সহ চালান
- Options মেনুতে Enable Boot Logging সিলেক্ট করুন
- পরবর্তী উইন্ডোতে, Generate thread profiling events -> Every second সিলেক্ট করুন। এই মোডে, procmon ড্রাইভার প্রতি সেকেন্ডে সকল প্রসেসের স্টেট ক্যাপচার করবে
- আপনার কম্পিউটার রিস্টার্ট করুন এবং ডেস্কটপ আসার পর্যন্ত অপেক্ষা করুন
- procmon23.sys সকল ইভেন্ট লগ করবে যতক্ষণ না একজন ইউজার Process Monitor শুরু করে। এরপর বুট লগিং মোড নিষ্ক্রিয় হয়
- Process Monitor উইন্ডোতে, সংগৃহীত ডেটা ফাইলে সংরক্ষণের অফার এক্সেপ্ট করুন
নোট. আপনি যদি Process Monitor বন্ধ না করেন, তবে টেম্পোরারি লগ ফাইল %windir%\procmon.pmb শেষ পর্যন্ত সিস্টেম ড্রাইভের সকল ফ্রি স্পেস নিলাম করবে।
- ফাইল সংরক্ষণের জন্য ডিরেক্টরি সিলেক্ট করুন এবং সেভ হওয়ার পর্যন্ত অপেক্ষা করুন। আমার কেসে, তিনটি ফাইল: Bootlog .pml, Bootlog-1.pml এবং Bootlog-2.pml মোট সাইজ 700 MB টার্গেট ডিরেক্টরিতে তৈরি হয়েছে।
- ProcMon উইন্ডোতে, টেবিলের হেডারে ক্লিক করুন, তারপর Select Columns-এ ক্লিক করুন এবং Duration কলাম ডিসপ্লে সক্রিয় করুন
- Filter মেনুতে একটি নতুন ফিল্টার তৈরি করুন
- Duration-কে ফিল্টার প্যারামিটার হিসেবে সিলেক্ট করুন, more than কন্ডিশন হিসেবে এবং ভ্যালু ১০ নির্দিষ্ট করুন
- এভাবে, প্রসেস লিস্টে শুধু সেই প্রসেসগুলো থাকবে যারা কিছু অপারেশন করতে ১০ সেকেন্ডের বেশি সময় নিচ্ছে। (আমি ১০ সেকেন্ড বেছে নিলাম উদাহরণকে আরও ডেমনস্ট্রেটিভ করতে)।
- বুট প্রক্রিয়া অ্যানালাইজ করতে, আপনি Tools -> Process Tree ফিচারও ব্যবহার করতে পারেন যা সকল প্রসেসকে একটি গ্রাফিক্যাল ট্রি হিসেবে প্রদর্শন করে যেতে প্রতিটি প্রসেসের শুরু, আবদ্ধতা এবং সমাপ্তি সম্পর্কে তথ্য থাকে।
আপনার পাওয়া প্রসেস লিস্টটি অ্যানালাইজ করতে হবে (প্রয়োজনে, এক্সিকিউটেবল ফাইলের নাম দিয়ে ফিল্টার সক্ষম করে সমসামূলক প্রসেসের আরও বিশ্লেষণ করতে পারেন), প্রসেস ও সার্ভিস, অ্যাপ বা ড্রাইভার মিলিয়ে, এবং আপনার সিস্টেম অপ্টিমাইজ করুন।
নियमভাবে, এই ধরনের অ্যানালিসিস স্লো প্রসেস, ইনফেক্টেড প্রোগ্রাম (প্রথমত, Winlogon.exe-এর চাইল্ড প্রসেসগুলো অ্যানালাইজ করা উচিত), সমসামূলক সফটওয়্যার বা ড্রাইভার আনইনস্টল/আপডেট করার সিদ্ধান্ত নেওয়া, কিছু সার্ভিস নিষ্ক্রিয় করা বা তাদের স্টার্ট টাইপ পরিবর্তন করা (ডিলে বা ম্যানুয়াল স্টার্ট), অটোস্টার্ট থেকে কিছু অ্যাপ রিমুভ করা 등에 সাহায্য করে। প্রায়শই অ্যান্টিভাইরাস সফটওয়্যার এবং অন্যান্য রিসোর্স-খাওয়া সফটওয়্যার এই লিস্টে পড়ে।