สับราง IRQ เพื่อความราบรื่นในการใช้งาน

July 27, 2009 by: admin

สวัสดีครับ เพื่อน ๆ ขอบอกก่อนเลยนะครับว่าบทความนี้ เป็นบทความที่เก่ามากแล้วและแทบจะไมมีประโยชน์อะไรกับเพื่อนๆเลยในตอนนี้ “อ้าวแล้วเอามาลงทำไมฟะ” เพื่อน ๆ คงกำลังคิดแบบนี้ใช่ไหมครับ แน่นอนมันมีเหตุผลครับ เหตุผลคือ….แต๊น…อยากอ่านอะสิ  เหตุผลคือมันเป็นบทความที่ผมเขียนไว้ในหนังสือ CTM (Computer to day) ครับคืออยากเก็บผลงานไว้เพราะรู้สึกว่า AR เค้าจะเริ่มลบบทความเก่า ๆ แล้วจะไปนั่งพิมพ์ใหม่เองก็เสียเวลาครับ เลยเก็บอะไรได้ก็รีบเก็บไว้ก่อน ถ้างั้นเรามาเริ่มกันเลยนะครับ

ผมเชื่อว่าผู้ใช้คอมพิวเตอร์ในปัจจุบันส่วนใหญ่โดยเฉพาะเครื่องใหม่ๆ นั้นไม่ได้ให้ความสำคัญกับเรื่องของ IRQ มากนัก เพราะอุปกรณ์ที่ใช้ต่อพ่วงกับคอมพิวเตอร์ในปัจจุบันนี้ส่วนใหญ่มักจะเป็นแบบที่ใช้กับพอร์ต USB แล้วทั้งสิ้น

 
 

 

 

 









เป็นที่รู้กันดีอยู่แล้วว่าพอร์ต USB นั้นสามารถต่ออุปกรณ์ต่อพ่วงได้มากที่สุดถึง 127 ชิ้น โดยใช้ IRQ สำหรับพอร์ต USB เพียงช่องเดียว แต่อุปกรณ์ที่ใช้ต่อกับพอร์ต USB l ส่วนใหญ่นั้นมีราคาค่อนข้างที่จะแพง เช่น ลำโพงที่มีซาวนด์การ์ดในตัวหรือมอนิเตอร์ แบบ USB นั้นราคาจะมากกว่าแบบปกติ 2-3 เท่าตัวเลยทีเดียว ดังนั้นอีกทางเลือกหนี่งที่จะช่วยในการประหยัดงบประมาณในการเพิ่มอุปกรณ์ต่อพ่วงต่างๆ คือการใช้อุปกรณ์แบบ Internal

แต่อย่างที่ทราบกันดีอยู่แล้วว่าเครื่องคอมพิวเตอร์เครื่องหนึ่งๆ นั้นจะถูกจำกัดการเพิ่มการ์ดขยายภายในได้สูงสุด แค่เพียง 3-4 การ์ดเท่านั้น (ไม่ได้จำกัดที่ จำนวนสล็อตแต่จำกัดที่ตัว IRQ) ดังนั้นการจะใส่การ์ดขยายแบบ Internal มากถึง 4 การ์ดในเครื่องเดียวกันนั้นไม่ใช่เรื่องง่าย แต่ถ้าหากทำได้ก็จะเป็นการช่วยประหยัดค่าใช้จ่ายที่ต้องซื้ออุปกรณ์ต่อพ่วงแบบ External อย่าง ที่มี Interface แบบ USB หรือ SCSI ได้อีกต่อด้วย

ทำความรู้จัก Interrupt

อินเทอร์รัปต์นั้นอธิบายได้ง่ายๆ เลยก็คือ การที่อุปกรณ์ตัวหนึ่งๆ ในเครื่องคอมพิวเตอร์ของเข้าขัดจังหวะ (Interrupt) ไมโครโพรเซสเซอร์เพื่อทำงานก่อน ยกตัวอย่าง อินเทอร์รัปต์เรื่องของเวลา (time tick interrupt) ก็คล้ายๆ กับการเต้นของหัวใจคนเรานี่แหละ คือการขอเข้าขัดจังหวะเวลานี้จะเกิดขึ้นประมาณ 18 ครั้งใน 1 วินาที นั่นก็คือทุกๆ 0.054 วินาทีเครื่องคอมพิวเตอร์จะหยุดการทำงานทั้งหมดของมันลงเพื่อให้นาฬิกาสามารถ “ติ๊ก” และอีก 0.054 วินาทีเครื่องก็จะหยุดการทำงานทั่งหมดอีกเพื่อให้นาฬิกา “ต็อก” ไปเรื่อย ๆ นั่นเอง

ตารางแสดงรายการ IRQ ทั้ง 16 ช่อง
เครื่องหมาย ? แสดงว่ามีอุปกรณ์แย่ง IRQ 
กันอยู่ ทำให้อุปกรณ์ตัวใดตัวหนึ่งไม่สามารถ
ใช้งานได้


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

อินเทอร์รัปต์จะมีประโยชน์อะไร มีประโยชน์มหาศาลเชียวครับ เพราะว่าหากไม่มีมันแล้วเครื่องคอมพิวเตอร์ของเราจะต้องตรวจสอบทุกสิ่งตลอดเวลาด้วยตัวเอง แต่ถ้ามีไมโครโพรเซสเซอร์จะจัดการกับเหตุการณ์แต่ละเหตุการณ์แบบอัตโนมัติ เช่น การรับคำสั่งจากแป้นพิมพ์ การเขียนข้อมูลลงฮาร์ดดิสก์ อ่านข้อมูลจากซีดีรอม เป็นต้น ดังนั้นหากไม่มีอินเทอร์รัปต์เครื่องของคุณก็จะทำอะไรไม่ได้เลย (เหมือนกับไม่มีหัวใจนั่นแหละ)

 
 

ทำความรู้จักกับ IRQ

IRQ หรือ Interrupt request channel คือช่องทางการร้องขอการขัดจังหวะของอุปกรณ์ ฮาร์ดแวร์ที่ต่อพ่วงอยู่กับระบบคอมพิวเตอร์ ซึ่งมีในเครื่องคอมพิวเตอร์ทุกเครื่องและทุกเครื่องจะมีช่อง IRQ เท่ากันหมดคือ 16 ช่อง (0-16) โดยการติดต่อกับคอมพิวเตอร์ก็คือคุณนำเอาอุปกรณ์นั้นติดต่อกับไมโครโพรเซสเซอร์โดยตรง โดยผ่านทางสล็อตต่าง ๆ ภายในเครื่องนั่นเอง

และตารางนี้ คือรายละเอียดของ IRQ ทั้ง 16 ช่องว่าช่องใดใช้ทำอะไร

จะเห็นได้ว่าอินเทอร์รัปต์ทั้ง 16 ช่องนั้นไม่ได้มากมายอย่างที่คิดเลยเพราะว่าถูกเรียกใช้ไปโดยอุปกรณ์ต่างๆ ภายในคอมพิวเตอร์ถึง 13 ช่องแล้ว

นั่นก็แสดงว่าคุณสามารถใส่การ์ดขยายได้อีกเพียง 2 ตัวเท่านั้นเอง นี่ผมยังไม่ได้รวมการ์ดแสดงผลและการ์ดเสียงเข้าไปด้วยเลยนะครับ และเมื่อรวมแล้ว ช่อง IRQ ของคุณก็จะเหลือเพียง 1 ช่อง

เอาละสิ ถ้าหากว่าคุณมีอุปกรณ์เสริมอย่างอื่นที่ต้องการเพิ่มเข้าไป เช่น Modem แบบ Internal หรือ SCSI Card คุณจะทำอย่างไร ถ้าคุณพยายามใส่การ์ดสองตัวนี้เข้าไปในเครื่องของคุณละก็ยุ่ง แน่ๆ ครับ ปัญหาการแย่งช่อง IRQ กันของฮาร์ดแวร์จะเกิดตามมาอย่างหลีกเลี่ยงไม่ได้

ยิ่งเป็นการ์ดขยายรุ่นใหม่ๆ ที่สนับสนุนระบบ Plug & Play ด้วยละก็ อะแฮ่ม มันส์ไม่เลิกแน่ครับ เพราะการ์ดเหล่านี้จะหาช่อง IRQ ที่เหมาะสมที่สุดที่ตัวเองจะเข้าไปอยู่ได้โดยไม่สนใจว่า ช่องนั้นจะมีอุปกรณ์อื่น ครอบครองอยู่หรือเปล่า (แบบว่าแย่งกันหน้าด้านๆ ) อย่างเช่น ภายหลังจากคุณติดตั้งการ์ดโมเด็มลงไปในเครื่องแล้วคุณจะไม่สามารถใช้งานเมาส์ได้ เป็นต้น ซึ่งปัญหานี้พบได้บ่อยเอามาก ๆ

ที่มา ARIP.co.th  (ขอบคุณที่ยังเก็บงานผมไว้ครับ)

Comments are closed.

:::ลิงค์ผู้สนับสนุนใจดีแวะชมกันหน่อยนะจ๊ะ::: แบตเตอรี่รถยนต์ :: สินเชื่อ