Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การแก้ไขปัญหา >> ข้อผิดพลาด Windows

Device Driver คืออะไร? บทบาทสำคัญในการเชื่อมต่อ OS และ Hardware

Device Driver คืออะไร? บทบาทสำคัญในการเชื่อมต่อ OS และ Hardware

ระบบปฏิบัติการ (OS) โปรแกรมประยุกต์ และอุปกรณ์ฮาร์ดแวร์ ถูกพัฒนาโดยกลุ่มคนต่างกัน จึงไม่สามารถสื่อสารกันโดยตรงได้ Device Driver (ไดรเวอร์) จึงทำหน้าที่เป็น "ตัวแปล" ระหว่าง OS และ Hardware ทำให้ฮาร์ดแวร์ทำงานได้อย่างราบรื่น

ตัวอย่าง: Printer Driver บอก OS ว่าจะพิมพ์ข้อมูลบนกระดาษอย่างไร Sound Card Driver แปลงบิตในไฟล์เสียงให้เป็นสัญญาณเสียง ทุกฮาร์ดแวร์ที่ต่อกับระบบต้องมี Driver ของตัวเอง

Device Driver คืออะไร? บทบาทสำคัญในการเชื่อมต่อ OS และ Hardware

Device Driver คืออะไร?

OS ไม่ต้องรู้รายละเอียดการทำงานของฮาร์ดแวร์ ใช้ Driver เป็นตัวกลางในการสื่อสาร หากไม่มี Driver ติดตั้ง จะไม่มีลิงก์การสื่อสารระหว่าง OS และฮาร์ดแวร์ อุปกรณ์นั้นอาจทำงานไม่ได้หรือทำงานไม่เต็มที่

Driver และฮาร์ดแวร์สื่อสารผ่าน Computer Bus ที่อุปกรณ์ต่ออยู่ Driver แตกต่างกันไปตาม OS และ Hardware (Hardware Dependent) เรียกอีกชื่อว่า Software Driver หรือ Driver อย่างเดียว

Device Driver ทำงานอย่างไร?

คิดเหมือนสองฝ่ายที่พูดภาษาต่างกัน ต้องมีตัวแปล Driver รับคำสั่งจาก Software/OS แล้วแปลงเป็นภาษาที่ฮาร์ดแวร์เข้าใจ เพื่อให้ฮาร์ดแวร์ทำงานตามที่ต้องการ

เมื่อเปิดเครื่อง OS จะสื่อสารกับ Driver และ BIOS เพื่อตัดสินใจงานฮาร์ดแวร์ต่างๆ หากไม่มี Driver โปรแกรมจะต้องรู้วิธีควบคุมฮาร์ดแวร์ทุกชนิดเอง (เป็นไปไม่ได้กับฮาร์ดแวร์หลากหลายชนิดในปัจจุบัน) Driver จึงเป็น Game Changer

ทั้งฮาร์ดแวร์และซอฟต์แวร์พึ่งพา Driver โปรแกรมใช้คำสั่งทั่วไป (Generic Commands) Driver แปลงเป็นคำสั่งเฉพาะ (Specialized Commands) ที่ฮาร์ดแวร์เข้าใจ

Driver มักมาพร้อม OS (Built-in) หรือจากผู้ผลิตฮาร์ดแวร์ หากเปลี่ยนฮาร์ดแวร์/ซอฟต์แวร์ หรืออัปเดต Driver เก่าอาจใช้ไม่ได้

Virtual Device Drivers

Virtual Device Driver เป็นส่วนประกอบของ Driver ช่วยให้ฮาร์ดแวร์เสมือน (Virtual Device) สื่อสารกับ OS/โปรแกรมได้ จัดการ Data Flow ให้ราบรื่น ให้หลายแอปพลิเคชันเข้าถึงฮาร์ดแวร์ชิ้นเดียวกันได้โดยไม่ชนกัน (Conflict) เมื่อได้รับ Interrupt Signal จากฮาร์ดแวร์ จะตัดสินใจขั้นตอนต่อไปตามสถานะการตั้งค่าอุปกรณ์

เมื่อไหร่ใช้ Virtual Device Driver?

เมื่อใช้ซอฟต์แวร์จำลองฮาร์ดแวร์ ตัวอย่าง: VPN สร้าง Virtual Network Card เพื่อเชื่อมต่ออินเทอร์เน็ตอย่างปลอดภัย ต้องมี Driver สำหรับการ์ดเสมือนนี้ (มักติดตั้งโดยซอฟต์แวร์ VPN เอง)

อุปกรณ์ทุกชนิดต้องมี Driver หรือไม่?

ขึ้นอยู่กับว่า OS รู้จักฮาร์ดแวร์และฟีเจอร์ของมันหรือไม่

ต้องมี Driver แยก (ไม่รู้จักโดย OS): Video Card, USB Device, Sound Card, Scanner, Printer, Modem, Network Card, Card Reader ฯลฯ

ทำงานได้กับ Generic Driver (OS รู้จักอยู่แล้ว): RAM, Keyboard, Mouse, Speakers, Monitor, Hard Drive, CPU, Power Supply, Joystick ฯลฯ

หมายเหตุ: Generic Driver ของ OS อัปเดตน้อยกว่า Driver จากผู้ผลิตฮาร์ดแวร์

เกิดอะไรขึ้นหากไม่ติดตั้ง Driver?

  • อุปกรณ์อาจทำงานไม่ได้เลย หรือทำงานได้บางส่วน (Partial)
  • ตัวอย่าง: Mouse/Keyboard ทำงานได้โดยไม่ต้องติดตั้ง Driver แต่อุปกรณ์ที่มีปุ่มพิเศษ/ฟีเจอร์เพิ่มเติม จะใช้ฟีเจอร์เหล่านั้นไม่ได้
  • ใน Windows: จะเห็น Error ใน Device Manager (เครื่องหมายสามเหลี่ยมเหลือง)
  • ผู้ผลิตมักปล่อย Driver Update เพื่อแก้บั๊ก ควรอัปเดต Driver ให้เป็นเวอร์ชันล่าสุดเสมอ

Driver ทำงานได้ก็ต่อเมื่อมีฮาร์ดแวร์ที่ตรงกันติดอยู่แล้ว ติดตั้ง Driver Video Card โดยไม่มี Video Card จะไม่ทำให้ระบบมี Video Card ได้ ต้องมีทั้ง Hardware และ Driver ที่อัปเดตแล้ว

ประเภทของ Device Drivers

แบ่งกว้างๆ เป็น 2 ประเภทหลัก:

1. User Device Drivers

Driver ที่ผู้ใช้เรียกใช้ขณะใช้งาน สำหรับอุปกรณ์ที่ผู้ใช้ต่อเพิ่ม (Plug and Play) เขียนลง Disk เพื่อลดภาระ RAM แต่ Driver สำหรับ Gaming Devices มักเก็บไว้ใน RAM เพื่อความเร็ว

2. Kernel Device Drivers

Generic Driver ที่มาพร้อม OS โหลดเข้าหน่วยความจำเป็นส่วนหนึ่งของ OS มี Pointer ชี้ไปที่ Driver สามารถเรียกใช้ได้ตลอดเวลา สำหรับอุปกรณ์หลัก: CPU, Motherboard, BIOS ฯลฯ

ปัญหาของ Kernel Driver: เมื่อเรียกใช้ จะโหลดเข้ RAM และไม่สามารถย้ายไป Virtual Memory ได้ หากมี Kernel Driver หลายตัวทำงานพร้อมกัน ระบบจะช้า OS จึงมี Minimum System Requirements เพื่อรองรับทรัพยากรที่ Kernel Driver ต้องการ

ประเภทอื่นๆ ของ Device Driver

1. Generic และ OEM Drivers

  • Generic Driver: มาพร้อม OS ทำงานกับอุปกรณ์ชนิดนั้นได้ ไม่ว่าจะเป็นยี่ห้อไหน (Windows 10 มี Generic Driver สำหรับอุปกรณ์ทั่วไปมากมาย)
  • OEM Driver: ผู้ผลิตฮาร์ดแวร์ (OEM) จัดเตรียม Driver เองสำหรับฟีเจอร์พิเศษที่ OS ไม่รู้จัก ต้องติดตั้งแยกหลังติดตั้ง OS (สมัย XP ต้องติดตั้ง Driver เมนบอร์ดเอง ปัจจุบันส่วนใหญ่ Built-in แล้ว)

2. Block และ Character Drivers

แบ่งตามวิธีอ่าน/เขียนข้อมูล:

  • Block Driver: อ่าน/เขียนหลายตัวอักษรพร้อมกัน (Block) สร้าง Block ขึ้นมา ดึงข้อมูลตามขนาด Block เช่น Hard Disk, CD-ROM, USB Drive
  • Character Driver: อ่าน/เขียนทีละตัวอักษร (Character) ใช้ Serial Bus อุปกรณ์ต่อพอร์ต Serial (เช่น Mouse แบบเก่า) ใช้ Character Driver

การจัดการ Device Drivers

Windows จัดการ Driver ทั้งหมดผ่าน Device Manager Driver ไม่ต้องดูแลมากหลังติดตั้ง แต่บางครั้งมี Update แก้บั๊กหรือเพิ่มฟีเจอร์ ควรเช็ค Update เป็นระยะ หากสะดวก มีโปรแกรมช่วยเช็คและอัปเดต Driver อัตโนมัติ

Driver Update จากผู้ผลิตมีให้ฟรีบนเว็บอย่างเป็นทางการ อย่าจ่ายเงินซื้อ Driver Update!

การอัปเดต Driver สำคัญ เพราะปัญหาฮาร์ดแวร์หลายอย่าง มักมาจาก Driver ที่ล้าสมัยหรือมีบั๊ก

สรุป

  • Device Driver ช่วยให้ OS และโปรแกรมสื่อสารกับฮาร์ดแวร์ได้
  • OS สมัยใหม่มี Built-in Driver สำหรับอุปกรณ์ทั่วไป
  • อุปกรณ์อื่นๆ ต้องติดตั้ง Driver จากผู้ผลิต
  • อัปเดต Driver ให้เป็นล่าสุด สำคัญมากต่อความเสถียรของระบบ
  • External Driver จำเป็นเฉพาะอุปกรณ์ที่ OS ไม่รู้จักฟีเจอร์ของมัน