Trình điều khiển thiết bị là gì? Làm thế nào nó hoạt động?

Trình điều khiển thiết bị là gì

Hệ điều hành(operating system) , các chương trình ứng dụng khác và các thiết bị phần cứng(hardware device) khác nhau đều được xây dựng bởi các nhóm người khác nhau. Do đó, theo mặc định, hệ điều hành và các chương trình khác không thể giao tiếp với thiết bị phần cứng(hardware device) . Đây là nơi trình điều khiển thiết bị(device driver) xuất hiện. Nó là một phần mềm hoạt động như một trình dịch giữa hệ điều hành(operating system)thiết bị phần cứng(hardware device) . Công việc của trình điều khiển thiết bị(device driver) là cho phép các thiết bị phần cứng(hardware device) được gắn vào hệ thống hoạt động trơn tru. Trình điều khiển máy in(printer driver) cho Hệ điều hành biết cách in thông tin đã chọn trên trang. Để hệ điều hành dịch các bit trong tệp âm thanh(audio file)vào đầu ra thích hợp, một trình điều khiển card(card driver) âm thanh là cần thiết. Như vậy, trình điều khiển thiết bị(device driver) tồn tại cho mỗi thiết bị phần cứng(hardware device) được kết nối với hệ thống của bạn.

Trình điều khiển thiết bị là gì

Trình điều khiển thiết bị là gì?(What is a Device Driver?)

Hệ điều hành không cần biết chi tiết đằng sau hoạt động của phần cứng. Sử dụng trình điều khiển thiết bị(device driver) , nó chỉ giao diện với phần cứng cụ thể đó. Nếu trình điều khiển thiết bị(device driver) tương ứng không được cài đặt, không có liên kết giao tiếp(communication link) giữa Hệ điều hành và phần cứng. Một thiết bị phần cứng(hardware device) như vậy có thể không hoạt động bình thường. Trình điều khiển thiết bị và (device driver)thiết bị phần cứng(hardware device communicate) tương ứng giao tiếp thông qua bus máy tính(computer bus) mà thiết bị được kết nối. Trình(Device) điều khiển thiết bị khác nhau đối với từng hệ điều hành(operating system) và chúng phụ thuộc vào phần cứng. Trình điều khiển thiết bị(device driver) còn được gọi là trình điều khiển phần mềm(software driver)hoặc đơn giản là một người lái xe.

Trình điều khiển thiết bị hoạt động như thế nào?(How do device drivers work?)

Một thiết bị phần cứng(hardware device) muốn giao tiếp với một chương trình trên hệ thống của bạn. Bạn có thể coi tình huống này là hai thực thể nói các ngôn ngữ khác nhau. Vì vậy, cần phải có người phiên dịch. Trình điều khiển thiết bị(device driver) đóng vai trò của người phiên dịch ở đây. Phần mềm cung cấp cho trình điều khiển thông tin(driver information) giải thích những gì phần cứng sẽ thực hiện. Trình điều khiển thiết bị(device driver) sử dụng thông tin để yêu cầu trình điều khiển thực hiện công việc.

Trình điều khiển thiết bị(device driver) dịch hướng dẫn của software program/the hệ điều hành sang ngôn ngữ mà thiết bị phần cứng (hardware device)hiểu được(language understood) . Để hệ thống chạy hiệu quả, bạn phải có tất cả các trình điều khiển thiết bị(device driver) cần thiết . Khi bạn bật hệ thống của mình, hệ điều hành sẽ giao tiếp với trình điều khiển thiết bị(device driver)BIOS để quyết định thực hiện các tác vụ phần cứng khác nhau.

Nếu không có trình điều khiển thiết bị(device driver) , hệ thống sẽ không có cách nào để giao tiếp với các thiết bị hoặc các chương trình phần mềm sẽ phải biết cách giao tiếp trực tiếp với phần cứng (với nhiều loại chương trình và thiết bị phần cứng mà chúng ta có ngày nay, điều này sẽ khó). Không thể xây dựng phần mềm có khả năng giao tiếp trực tiếp với tất cả các loại thiết bị phần cứng. Do đó, trình điều khiển thiết bị(device driver) là những người thay đổi cuộc chơi.

Cả hai thiết bị phần cứng(– hardware) và chương trình phần mềm đều phụ thuộc vào trình điều khiển thiết bị(device driver) để hoạt động trơn tru. Các chương trình(Programs) thường sử dụng các lệnh chung để truy cập thiết bị. Trình điều khiển thiết bị(device driver) chuyển các lệnh này thành các lệnh chuyên biệt mà thiết bị có thể hiểu được.

Trình(Device) điều khiển thiết bị thường là các thành phần tích hợp sẵn trong hệ điều hành. Chúng được cung cấp bởi nhà sản xuất. Nếu một thành phần phần cứng hoặc phần mềm(hardware or software component) được thay thế hoặc cập nhật, các trình điều khiển thiết bị này sẽ trở nên vô dụng.

Trình điều khiển thiết bị ảo(Virtual device drivers)

Trình điều khiển thiết bị(device driver) ảo là một thành phần của trình điều khiển thiết bị(device driver) giúp thiết bị phần cứng thiết(hardware device) lập giao tiếp với Hệ điều hành hoặc chương trình. Chúng là trình điều khiển cho các thiết bị ảo. Trình điều khiển thiết bị(device driver) ảo giúp(s help) luồng dữ liệu thông suốt. Nhiều ứng dụng có thể truy cập vào một thiết bị phần cứng(hardware device) cụ thể mà không bị xung đột. Khi trình điều khiển thiết bị(device driver) ảo nhận được tín hiệu ngắt từ một thiết bị phần cứng(hardware device) , nó sẽ xác định hành động tiếp theo dựa trên trạng thái của cài đặt thiết bị.

Trình điều khiển thiết bị ảo được sử dụng ở đâu?(Where is a virtual device driver used?)

Khi chúng tôi sử dụng phần mềm để mô phỏng một thiết bị phần cứng , một (hardware device)trình điều khiển thiết bị(device driver) ảo sẽ được sử dụng cho một thiết(tor un) bị như vậy. Một ví dụ thích hợp sẽ là sử dụng VPN . Bạn tạo một card mạng(network card) ảo để có thể kết nối internet một cách an toàn. Đây là một card mạng(network card) ảo do VPN tạo ra . Cần có một trình điều khiển thích hợp cho thẻ này, thường sẽ được cài đặt bởi chính phần mềm VPN(VPN software) .

Tất cả các thiết bị có cần trình điều khiển không?(Do all devices need drivers?)

Việc(Whether) thiết bị có yêu cầu trình điều khiển hay không phụ thuộc vào việc hệ điều hành(operating system) của bạn có nhận dạng được thiết bị phần cứng(hardware device) và các tính năng của nó hay không. Một số thiết bị ngoại vi không rõ hệ điều hành(operating system) và cần có trình điều khiển là - Card màn hình(Video card) , thiết bị USB(USB device) , card âm thanh, máy quét, máy in, modem điều khiển(controller modem) , card mạng(network card) , đầu đọc thẻ, v.v.(card reader etc…) Hệ điều hành thường có một số trình điều khiển chung cho phép thiết bị phần cứng(hardware device) thông dụng s để làm việc ở mức độ cơ bản. Một lần nữa(Again) , điều kiện là hệ điều hành phải nhận ra các tính năng của thiết bị. Một số thiết bị có thể hoạt động với trình điều khiển chung là:RAM , bàn phím, chuột, loa, màn hình, ổ cứng, ổ đĩa(disk drive) , CPU , bộ nguồn(power supply) , phím điều khiển, v.v. Một người(joystick etc… One) phải lưu ý rằng trình điều khiển chung do hệ điều hành(operating system) cung cấp không được cập nhật thường xuyên như trình điều khiển do nhà sản xuất phần cứng(hardware manufacturer) cung cấp .

Cũng nên đọc:(Also Read:) Tệp máy tính là gì? 

Điều gì sẽ xảy ra nếu bạn chưa cài đặt trình điều khiển?(What will happen if you have not installed a driver?)

Nếu bạn chưa cài đặt trình điều khiển cho thiết bị, thiết bị có thể hoàn toàn không hoạt động hoặc có thể chỉ hoạt động một phần. Ví dụ, các thiết bị như chuột / bàn phím sẽ hoạt động mà không cần trình điều khiển. Nhưng nếu chuột của bạn có thêm các nút hoặc bàn phím của bạn có một số phím đặc biệt, thì những tính năng đó sẽ không hoạt động. Nếu bạn là người dùng Windows(Windows user) , bạn có thể tìm thấy lỗi xung đột trình điều khiển(driver conflict error) trong trình quản lý thiết bị(device manager) , nếu bạn bị thiếu trình điều khiển. Thông thường, nhà sản xuất phát hành bản cập nhật trình điều khiển(driver update) để xóa các lỗi do trình điều khiển tạo ra. Do đó, hãy luôn cập nhật phiên bản(date version) trình điều khiển cho các thiết bị phần cứng của bạn.

Trình điều khiển sẽ chỉ hoạt động nếu bạn đã cài đặt thiết bị tương ứng trên hệ thống của mình. Nếu bạn cố gắng cài đặt trình điều khiển cho phần cứng không tồn tại, điều đó sẽ không xảy ra. Ví dụ: cài đặt trình điều khiển cạc video(video card driver) khi bạn không có cạc video(video card) trên hệ thống của mình sẽ không cung cấp cho hệ thống của bạn khả năng hoạt động với cạc video(video card) . Bạn cần có cả hai - thiết bị phần cứng(hardware device)trình điều khiển thiết bị(device driver) được cập nhật cho nó.

Các loại trình điều khiển thiết bị(Types of device drivers)

Có một trình điều khiển thiết bị(device driver) cho hầu hết mọi thiết bị phần cứng được(hardware device) sử dụng ngày nay(use today) . Các trình điều khiển này có thể được phân loại rộng rãi thành 2 loại sau - trình điều khiển thiết bị người dùng (– user) (device driver)trình điều khiển thiết bị(device driver) nhân s

Trình điều khiển thiết bị của người dùng(User device drivers)

Đây là những trình điều khiển thiết bị mà người dùng kích hoạt trong khi họ đang sử dụng hệ thống. Đây là những thiết bị mà người dùng đã kết nối với hệ thống, khác với những thiết bị liên quan đến phần mềm hạt nhân(kernel software) . Trình điều khiển thiết bị cho thiết bị cắm và chạy(plug and play devices) được coi là trình điều khiển thiết bị của người dùng. Để giảm áp lực khỏi tài nguyên hệ thống, trình điều khiển thiết bị của người dùng được ghi vào đĩa. Nhưng trình điều khiển thiết bị cho các thiết bị chơi game thường được lưu trong bộ nhớ chính.

Cũng nên đọc: (Also Read: ) Tệp ISO là gì?

Trình điều khiển thiết bị nhân(Kernel device drivers)

Trình điều khiển chung có sẵn dưới dạng phần mềm tích hợp cùng với Hệ điều hành được gọi là trình điều khiển thiết bị nhân. Chúng tải vào bộ nhớ như một phần của Hệ điều hành. Một con trỏ(A pointer) tới trình điều khiển được lưu trong bộ nhớ và có thể được gọi bất cứ khi nào được yêu cầu. Trình điều khiển thiết bị nhân(Kernel device) dành cho các thiết bị như bộ xử lý, bo mạch chủ, BIOS và các thiết bị khác liên quan đến phần mềm nhân(kernel software) .

Với trình điều khiển thiết bị nhân(kernel device driver) s, có một vấn đề phổ biến. Sau khi được gọi, một trình điều khiển thiết bị nhân(kernel device driver) được tải vào RAM . Điều này không thể được chuyển sang bộ nhớ ảo. Nếu có một số trình điều khiển thiết bị chạy đồng thời, hệ thống sẽ trở nên chậm. Để khắc phục vấn đề này, mỗi hệ điều hành có một yêu cầu hệ thống(system requirement) tối thiểu . Hệ điều hành tập hợp các tài nguyên mà trình điều khiển thiết bị nhân(kernel device driver) yêu cầu. Điều này đảm bảo rằng người dùng không phải lo lắng về yêu cầu bộ nhớ(memory requirement) .

Các loại trình điều khiển thiết bị khác(Other types of Device Driver)

1. Trình điều khiển chung và OEN(1. Generic and OEN drivers)

Nếu trình điều khiển thiết bị(device driver) khả dụng cùng với hệ điều hành(operating system) , nó được gọi là trình điều khiển thiết bị(device driver) chung . Trình điều khiển thiết bị(device driver) chung hoạt động cho một thiết bị cụ thể bất kể(device irrespective) thương hiệu của nó. Windows 10 có trình điều khiển thiết bị(device driver) chung cho các thiết bị phần cứng thường được sử dụng.

Đôi khi, các thiết bị phần cứng có một số tính năng nhất định mà hệ điều hành không thể nhận ra. Nhà sản xuất thiết bị(device manufacturer) cung cấp trình điều khiển tương ứng cho các thiết bị đó. Chúng được gọi là trình điều khiển thiết bị OEM . (OEM device)Để các thiết bị này hoạt động bình thường, trình điều khiển phải được cài đặt riêng sau khi cài đặt hệ điều hành. Vào khoảng thời gian Windows XP được sử dụng, ngay cả trình điều khiển cho bo mạch chủ cũng phải được cài đặt riêng. Ngày nay, hầu hết các hệ thống hiện đại đều cung cấp trình điều khiển thiết bị chung được tích hợp sẵn.

2. Trình điều khiển khối và ký tự(2. Block and character drivers)

Trình(Device) điều khiển thiết bị có thể được phân loại là trình điều khiển khối hoặc trình điều khiển ký tự dựa trên cách dữ liệu được đọc và ghi. Các thiết bị(Device) như đĩa cứng, CD ROM(ROMs)ổ USB(USB) được phân loại dựa trên cách chúng được sử dụng.

Trình điều khiển khối thuật ngữ(term block driver) được sử dụng khi nhiều hơn một ký tự được đọc hoặc ghi cùng một lúc. Một khối được tạo và thiết bị khối(block device) cố gắng truy xuất lượng thông tin phù hợp với kích thước của khối. Đĩa(Hard) cứng và CD ROM(ROMS) được coi là ngăn chặn(block device) trình điều khiển thiết bị.

Thuật ngữ trình điều khiển ký tự(term character driver) được sử dụng khi dữ liệu được ghi một ký tự tại một thời điểm. Trình điều khiển thiết bị ký tự(Character device) sử dụng các bus nối tiếp. Bất kỳ thiết bị nào được kết nối với cổng nối tiếp đều có trình điều khiển ký tự(character driver) . Ví dụ, chuột là một thiết bị được kết nối với một cổng nối tiếp. Nó sử dụng trình điều khiển thiết bị ký tự(character device driver) .

Cũng nên đọc:(Also Read:) Wi-Fi 6 (802.11 ax) là gì?

Quản lý trình điều khiển thiết bị(Managing device drivers)

Tất cả các trình điều khiển trên hệ thống Windows(Windows system) của bạn đều do Trình quản lý Thiết bị quản lý(Device Manager) . Trình(Device) điều khiển thiết bị không cần quan tâm nhiều sau khi cài đặt. Đôi khi, họ có các bản cập nhật để sửa lỗi hoặc bản cập nhật cung cấp tính năng mới. Do đó, bạn nên kiểm tra các bản cập nhật trình điều khiển và cài đặt chúng (nếu có) một lần. Để giúp bạn thực hiện công việc dễ dàng, có một số chương trình sẽ kiểm tra và cập nhật trình điều khiển thiết bị của bạn.

Các bản cập nhật trình điều khiển do nhà sản xuất cung cấp luôn được cung cấp miễn phí trên trang web chính thức của họ. Hãy cẩn thận để không trả tiền cho bản cập nhật trình điều khiển thiết bị(device driver update) !

Cập nhật trình điều khiển của bạn là rất quan trọng bởi vì, thường theo thời gian, nhiều sự cố với thiết bị phần cứng(hardware device) có thể bắt nguồn từ sự cố với trình điều khiển thiết bị(device driver) .

Tóm lược(Summary)

  • Trình điều khiển thiết bị(device driver) giúp hệ điều hành và các chương trình khác giao diện với các thiết bị phần cứng được kết nối với hệ thống
  • Hệ điều hành hiện đại cung cấp trình điều khiển thiết bị tích hợp cho các thiết bị ngoại vi thường được sử dụng
  • Để sử dụng các thiết bị phần cứng khác, bạn cần cài đặt trình điều khiển thiết bị tương ứng do nhà sản xuất cung cấp
  • Luôn cập nhật trình điều khiển thiết bị của bạn là rất quan trọng đối với hoạt động của hệ thống.
  • Trình điều khiển thiết bị(device driver) bên ngoài chỉ được yêu cầu đối với những thiết bị có các tính năng không được hệ điều hành(operating system) của bạn nhận dạng .


About the author

Tôi là kỹ sư phần mềm với hơn 10 năm kinh nghiệm thiết kế, xây dựng và bảo trì các ứng dụng dựa trên Windows. Tôi cũng là một chuyên gia thành thạo về xử lý văn bản, xử lý bảng tính và thuyết trình. Tôi có thể viết mô tả rõ ràng và ngắn gọn về mã, giải thích các khái niệm phức tạp cho các nhà phát triển mới làm quen và khắc phục sự cố nhanh chóng cho khách hàng.



Related posts