Tuesday, October 23, 2007

การใช้งานโปรแกรม Process Explorer v11.03

สำหรับผู้ดูและระบบแล้วหลายๆ ครั้งที่ต้องการตรวจสอบ ว่าโปรแกรมอะไรที่กำลังรันอยู่บ้าง ซึ่งผมเคยกล่าวถึงไปแล้วครั้งหนึ่งในเรื่อง Find the name of running's program from PID โดยวิธีการใช้ Task Manager ร่วมกับคำสั่ง tasklist /svc

แม้ว่าวิธีการดังกล่าวนั้นจะสามารถใช้งานได้ค่อนข้างดี โดยที่ไม่จำเป็นต้องติดตั้งโปรแกรมอะไรเพิ่มเติม แต่อย่างไรก็ตาม วิธีการดังกล่าวนั้นไม่ค่อยมีความสะดวกเท่าใดนัก เนื่องจากต้องทำการรันโปรแกรมถึง 2 ครั้ง และผลลัพธ์หรือข้อมูลที่ได้นั้นก็ยังขาดรายละเอียดต่างๆ เช่น โพรเซสที่รันนั้นใช้ไฟล์ dll อะไรบ้าง และโดยเฉพาะกับโพรเซสที่รันภายใต้ SVCHOST.EXE เป็นต้น

ปัญหาต่างๆ ดังที่ได้กล่าวมานั้น สามารถแก้ไขได้โดยใช้เครื่องมือที่ชื่อ Process Explorer ของ Sysinternals ซึ่งเป็นโปรแกรมแบบ GUI ทำให้ใช้งานได้ง่าย และเป็นโปรแกรมแบบ standalone สามารถเรียกใช้งานได้โดยไม่ต้องทำการติดตั้ง ทำให้มีความสะดวกในการใช้งาน และสามารถเก็บไว้ในสื่อแบบพกพา สุดท้ายและสำคัญคือฟรีครับ

Process Explorer เป็นเครืองมือสำหรับใช้แสดง Process ที่กำลังทำงานอยู่ และยังแสดงรายละเอียดเกี่ยวกับ handles และ DLLs ที่โพรเซสทำการเปิดหรือโหลด โดย Process Explorer ในเวอร์ชันปัจจุบันนั้น (เวอร์ชัน 11.02) ได้รับการพัฒนาและปรับปรุงในหลายๆ ด้าน เช่น ปรับปรุง UI ให้ดีขึ้น , ปรับปรุง Performance ให้ดีขึ้น เป็นต้น

เมื่อทำการรันโปรแกรม Process Explorer นั้น จะได้หน้าต่างโปรแกรมซึ่งประกอบไปด้วยหน้าต่างย่อย 2 หน้าต่าง คือ หน้าต่างส่วนบน (Top Window) และ หน้าต่างส่วนล่าง (Bottom Window) โดยในการรันโปรแกรมครั้งแรกนั้น จะแสดงเฉพาะหน้าต่างส่วนบนเพียงหน้าต่างเดียว

หน้าต่างส่วนบน
หน้าต่างบน หรือ Top Window นั้น จะแสดงรายการของโพรเซสต่างๆ ที่กำลังทำงานอยู่ (Currently active processes)

หน้าต่างส่วนล่าง
หน้าต่างส่วนล่าง หรือ Bottom Window นั้น จะมีโหมดอยู่ 2 โหมด คือ
-handle mode: ใน handle mode นั้น หน้าต่างส่วนล่างของโปรแกรม Process Explorer จะแสดงรายละเอียดของ handles ที่โพรเซสที่เลือกในหน้าต่างส่วนบนทำการเปิดอยู่
-DLL mode: ใน DLL mode นั้น หน้าต่างส่วนล่างของโปรแกรม Process Explorer จะแสดงรายละเอียดไฟล์ DLL และไฟล์ memory-mapped ที่โพรเซสที่เลือกในหน้าต่างส่วนบนทำการเปิดอยู่ นอกจากนี้ ยังมีฟังก์ชันการค้นหาไฟล์ที่มีประสิทธิภาพสูง ซึ่งสามารถใช้ในการค้นหาไฟล์ DLL ที่ถูกโหลด หรือค้นหา handles ที่ถูกเปิดอยู่

โปรแกรม Process Explorer นั้นสามารถทำงานได้บนระบบ Windows 9x/Me, Windows NT 4.0, Windows 2000, Windows XP, Server 2003, และ Windows 64-bit x64/IA64 และบน Windows Vista

มีอะไรใหม่ใน Process Explorer v11.0
-New treelist control for better UI responsiveness
-Asynchronous thread symbol resolution on threads tab of process properties
-More flags on groups in security tab and SID display
-Thread IDs on threads tab
-On-line search uses default web browser and search engine
-Vista ASLR column for processes and DLLs
-Vista Process and thread I/O and memory priorities in process and thread properties
-Vista Process and thread I/O and memory columns
-PROCESS_QUERY_LIMITED_INFORMATION support on process permissions on Vista
-Run as limited user runs with low IL on Vista
-Reports information for all object types on Vista
-Show details for all processes elevation menu item on Vista
-Supports replacement of task manager on Vista
-/e to launch elevated
-/s switch to select a process at startup
-Compiled w/ASLR, DEP
-Faster startup
-Miscellaneous bug fixes and minor improvements

เริ่มต้นใช้งาน
สำหรับท่านที่สนใจใช้งาน สามารถทำการดาวน์โหลด Process Explorer v11.02 ได้ฟรีจากเว็บไซต์ Sysinternals Process Explorer เมื่อทำการดาวน์โหลดแล้วเสร็จก็ให้ทำการแตกไฟล์ นั้นทำการใช้งานตามขั้นตอนด้านล่าง

1. จากนั้นทำการรันโปรแกรมโดยการดับเบิลคลิกที่ไฟล์ procexp.exe ซึ่งจะได้หน้าต่างโปรแกรมดังรูปที่ 1 ด้านล่าง


รูปที่ 1 Process Explorer

2. ทำการแสดง Lower Pane โดยการคลิกที่เมนู View แล้วคลิก Show Lower Pane ดังรูปที่ 2


รูปที่ 2 Show Lower Pane

3. เลือกโหมดการแสดงของ Lower Pane โดยการคลิกที่เมนู View แล้วคลิก Lower Pane View แล้วคลิก DLL หรือ Handles ดังรูปที่ 3


รูปที่ 3 Lower Pane View

4. ทำการเลือกโพรเซสที่ต้องการในหน้าต่าง Top Window ในที่นี้เลือก AVGAMSVR.EXE ซึ่งจะแสดงรายละเอียดในหน้า Bottom Window ดังรูปที่ 4 ซึ่งแสดงรายละเอียดในโหมด DLL และรูปที่ 5 ซึ่งแสดงรายละเอียดในโหมด Handles


รูปที่ 4 Running Process


รูปที่ 5 Hanles

5. นอกจากนี้ยังสามารถดูรายละเอียดของโพรเซสเพิ่มเติม โดยการคลิกขวาที่โพรเซสที่ต้องการแล้วเลือกคำสั่งที่ต้องการ ดังรูปที่ 6


รูปที่ 6 Process's properties

6. นอกจากนี้ยังสามารถดูรายละเอียดของไฟล์ DLL โดยการคลิกขวาที่ไฟล์ DLL ที่ต้องการแล้วเลือกคลิก Properties ดังรูปที่ 7


รูปที่ 7 DLL's properties

7. สามารถดู System Information ได้โดยการคลิกที่กราฟในหน้าต่างของโปรแกรม Process Explorer ซึ่งจะได้หน้าไดอะล็อกดังรูปที่ 8


รูปที่ 8 System Information

8. ทำการเปลี่ยนสีไฮไลท์ได้โดยการคลิกที่เมนู Options แล้วคลิก Configure Highlighting ซึ่งจะได้หน้าไดอะล็อกดังรูปที่ 9


รูปที่ 9 Configure Highlighting

9. ทำการค้นหาว่ามีโพรเซสใดที่เปิดใช้งานไฟล์ DLL โดยการคลิกที่ไอคอนกล้องส่องทางไกลบน Toolbar แล้วพิมพ์ชื่อไฟล์ dll ที่ต้องการค้นหา เสร็จแล้วคลิกปุ่ม Search ซึ่งจะได้หน้าไดอะล็อกดังรูปที่ 10


รูปที่ 10 Process Explorer Search

บทสรุป
Process Explorer ของ Sysinternals นั้น เป็นเครื่องมือสำหรับใช้ในการดูรายละเอียด การทำงานของโพรเซสของระบบที่ดีตัวนึง เนื่องจากการใช้งานสะดวกและง่าย ให้ข้อมูลต่างๆ ที่เป็นประโยชน์ได้ค่อนข้างครบถ้วน และที่สำคัญคือสามารถใช้งานได้ฟรี ดังนั้น Process Explorer จึงเป็นเครื่องมือตัวนึงที่แอดมินควรจะหามาเก็บไว้ในทูลบ็อกซ์

Keywords: Sysinternals Process Explorer

© 2007 TWAB. All Rights Reserved.

1 Comment:

codiingtips said...

Process Explorer เป็นสุดยอดเครื่องมือจัดการวินโดวส์โปรเซส ที่เจ๋งสุดยอดอีกตัวหนึ่งเลยนะครับเนี้ย มิเสียแรงที่ไมโครซอร์ฟซื้อไป :)