Sự khác biệt giữa bỏ phiếu và gián đoạn

Tại một số thời điểm nhất định, bộ xử lý chính ngừng hoạt động và kiểm tra xem một số bộ điều khiển có thông báo cho nó hay không, nếu có, xử lý thông báo và tiếp tục hoạt động. Điều này được gọi là bỏ phiếu. Hơn nữa, rõ ràng bộ xử lý chính thực hiện công việc của mình và các thiết bị đang thực hiện công việc của chúng. Nếu thiết bị hoàn thành công việc hoặc xảy ra lỗi, thiết bị sẽ thông báo cho bộ xử lý chính một yêu cầu ngắt.

Bỏ phiếu là gì?

Trong các hệ thống có nhiều mạch logic bên ngoài giao tiếp qua nhiều kết nối U / I với một bộ vi xử lý, việc bỏ phiếu U / I được sử dụng. Máy vi tính định kỳ gọi từng mạch logic bên ngoài và kiểm tra xem nó có yêu cầu dịch vụ không. Nếu mạch logic ngoài không yêu cầu bảo trì, máy vi tính sẽ kiểm tra mạch logic ngoài tiếp theo, v.v ... Nếu một trong số chúng yêu cầu bảo trì, máy vi tính sẽ chuyển sang chạy chương trình phục vụ của mạch logic ngoài tương ứng. Chức năng chuyển U / I được bao gồm trong chương trình. Nói cách khác, bỏ phiếu là một quá trình gọi máy khách (máy tính hoặc thiết bị đầu cuối) có thể gửi dữ liệu sau khi được gọi (nếu chúng có bất kỳ). Nếu khách hàng có dữ liệu, anh ta sẽ gửi dữ liệu đó sau cuộc thăm dò và nếu không có dữ liệu, khách hàng sẽ phản hồi tiêu cực và máy chủ sẽ gọi máy khách tiếp theo. Một số thiết bị có thể yêu cầu bảo trì từ bộ điều khiển (ví dụ: khi một số thiết bị kết thúc phép đo hoặc khi xảy ra lỗi). Yêu cầu được gửi đến bộ điều khiển bằng cách đặt dòng SRQ ở mức thấp. Sau khi bộ điều khiển nhận được yêu cầu dịch vụ, sau đó anh ta gọi tất cả các thiết bị trên xe buýt để tìm thiết bị đã gửi yêu cầu đó.

Ngắt là gì?

Trong quá trình thực hiện chương trình, bộ vi xử lý có thể nhận tín hiệu gián đoạn thông qua các dòng IRQ đặc biệt. Gián đoạn thường được thực hiện bằng cách gọi chương trình con hệ thống thích hợp để xử lý ngắt - chúng được gọi là xử lý thường trình gián đoạn BIOS hoặc DOS. Sau khi xử lý ngắt, bộ xử lý tiếp tục thực hiện chương trình bị gián đoạn. Ngoài ra, bản thân chương trình ứng dụng có thể chứa một lệnh yêu cầu thực thi quy trình ngắt BIOS hoặc DOS. Các hoạt động đầu vào-đầu ra thường được thực hiện theo cách này. Ví dụ, nếu một chương trình muốn in một dấu hiệu trên màn hình, nó có thể làm như vậy bằng cách gọi thủ tục ngắt thích hợp. BIOS chứa một tập các thói quen đầu vào đầu vào cơ bản chạy tương đối nhanh và các thói quen DOS tương ứng chậm hơn nhưng khả năng của chúng lớn hơn (khả năng ghi đè các kênh đầu vào-đầu ra, khả năng kiểm soát lỗi và như vậy). Do đó, ngắt phần cứng là tín hiệu mà bộ xử lý nhận được từ một thiết bị khác trong máy tính và ngắt phần mềm là quá trình thực thi của một thói quen BIOS hoặc DOS (chương trình con) được tự động gọi để xử lý tín hiệu ngắt nhận được hoặc được yêu cầu thực hiện các hướng dẫn tương ứng.

Sự khác biệt giữa bỏ phiếu và gián đoạn

Bối cảnh của bỏ phiếu và gián đoạn

Trong trường hợp đầu tiên, bộ xử lý sẽ kiểm tra theo các khoảng thời gian thông thường nếu một thiết bị cần một hành động. Trong trường hợp ngắt, có một cơ chế mà bộ xử lý cho phép thiết bị bên ngoài (ví dụ: bàn phím, card âm thanh, v.v.) thu hút sự chú ý của bộ xử lý.

Cơ chế bỏ phiếu và gián đoạn

Ngắt là các cơ chế được tổ chức đặc biệt để liên lạc của các thiết bị ngoại vi. Các thiết bị thông báo cho CPU nếu cần một hành động. Bỏ phiếu là giao thức - CPU yêu cầu các thiết bị thường xuyên nếu cần một hành động.

Phục vụ bỏ phiếu và gián đoạn

Khi bỏ phiếu các dịch vụ vi điều khiển, thiết bị cần được chú ý và sau đó chuyển sang thiết bị tiếp theo để theo dõi. Trong trường hợp bị gián đoạn, khi nhận được tín hiệu gián đoạn, CPU sẽ dừng hoạt động và dịch vụ hiện tại của thiết bị. Các dịch vụ hoặc gián đoạn được xử lý được đặt tên là thói quen dịch vụ ngắt (ISR) hoặc trình xử lý ngắt.

CPU

Trong quá trình bỏ phiếu, CPU bị giữ và kiểm tra xem có thiết bị nào cần dịch vụ không. Điều này không cần thiết lãng phí thời gian. Trong trường hợp quá trình gián đoạn, mặt khác, CPU chỉ bị xáo trộn nếu cần.

Sự xuất hiện của bỏ phiếu và gián đoạn

Các thiết bị chỉ có thể được thăm dò tại khoảng thời gian thông thường khi chúng được kiểm tra. Gián đoạn có thể xảy ra trong bất kỳ thời điểm nào.

Ưu điểm của bỏ phiếu và gián đoạn

Một số ưu điểm của việc bỏ phiếu là chương trình tương đối đơn giản, độ tin cậy truyền dẫn diễn ra ở tốc độ tối đa, tức là ngay khi thiết bị I / O sẵn sàng và không cần thêm chip truy cập. Gián đoạn có lợi vì nó có thể phục vụ nhiều thiết bị, nó linh hoạt và hiệu quả hơn.

Nhược điểm của bỏ phiếu và gián đoạn

Nhược điểm của việc bỏ phiếu là thời gian chờ của một số thiết bị ngắn hơn thời gian phản hồi và sau đó nên áp dụng phương pháp truyền khác, cũng như CPU ​​tiêu tốn thời gian không cần thiết để kiểm tra các thiết bị chưa tìm kiếm truyền dữ liệu. Nhược điểm của ngắt là yêu cầu đối với phần cứng / phần mềm phức tạp hơn và mất thời gian cho đến khi CPU thiết lập đơn vị nào yêu cầu ngắt.

Bỏ phiếu so với ngắt: Biểu đồ so sánh

Tóm tắt về bỏ phiếu Vs. Làm gián đoạn

  • Trong trường hợp bỏ phiếu, việc đọc theo chu kỳ các thiết bị được kết nối với một CPU được thực hiện. Nếu mạch logic ngoài không yêu cầu bảo trì, máy vi tính sẽ kiểm tra mạch logic ngoài tiếp theo. Nếu một trong số chúng yêu cầu bảo trì, máy vi tính chuyển sang chạy chương trình để phục vụ mạch logic bên ngoài tương ứng.
  • Khi bị gián đoạn, theo yêu cầu của logic bên ngoài, máy vi tính sẽ làm gián đoạn quá trình chạy chương trình hiện tại của nó và chuyển sang chạy chương trình ngắt. Cấu trúc bị gián đoạn cho phép bộ vi xử lý phản ứng với các sự kiện không đồng bộ, tức là các yêu cầu từ logic bên ngoài, không phải chờ trong vòng lặp để kiểm tra trạng thái của mạch logic bên ngoài.