Dữ liệu Đăng ký. Sổ này có chứa các dữ liệu thực tế được chuyển đến hoặc
từ các thiết bị I / O. Trong một số trường hợp riêng biệt và hai thanh ghi I / O các địa chỉ
được sử dụng cho các dữ liệu đầu vào và đầu ra, nhưng trong hầu hết các trường hợp, họ chia sẻ cùng một
địa chỉ. Đọc hoặc viết thông tin để đăng ký này sẽ thường affec
một hoặc nhiều bit trạng thái cho biết sẵn có của dữ liệu cho CPU hoặc
các thiết bị I / O. Ví dụ, khi các thiết bị I / O có dữ liệu sẵn sàng cho đầu vào
nó sẽ thiết lập các "dữ liệu đầu vào đã sẵn sàng" bit của thanh ghi trạng thái, và khi
CPU đọc ghi dữ liệu, các "dữ liệu đầu vào đã sẵn sàng" bit sẽ được thiết lập lại.
Các quá trình thử nghiệm một chút tình trạng sẵn sàng được gọi là bỏ phiếu các thiết bị để
xem nếu nó đã sẵn sàng để truyền dữ liệu. Trước khi bất kỳ dữ liệu có thể được chuyển giao, tình trạng
đăng ký phải được hỏi để xác định xem thiết bị đã sẵn sàng. Nếu chương trình được
viết để lặp liên tục chờ đợi cho thiết bị sẵn sàng để trở thành, rất nhiều
thời gian CPU là lãng phí nếu các dữ liệu không có sẵn ngay sau khi bỏ phiếu bắt đầu.
Một ví dụ sẽ là một bàn phím, nơi các phím được nhấn ở mức tương đối chậm
và giá không thể đoán trước. Để giảm thiểu thời gian lãng phí trong bỏ phiếu cho
những dữ liệu này không thường xuyên, ngắt được sử dụng. Một ngắt được kích hoạt bởi một sự kiện
mà không được đồng bộ hóa với các chương trình chính và kêu gọi một chương trình con đặc biệt,
được gọi là một dịch vụ thường xuyên ngắt (ISR đó chuyển dữ liệu. Điều này
"theo yêu cầu" xử lý có hiệu quả hơn khi tốc độ dữ liệu là tương đối chậm
hoặc không thể đoán trước. Ở thái cực khác tuy nhiên, khi tốc độ truyền tải dữ liệu đỉnh
cao như họ đang ở trong một ổ đĩa, một kỹ thuật mà làm giảm số lượng
công việc CPU phải làm để chuyển I / O dữ liệu được sử dụng. Các I / O giao diện xuyên fers dữ liệu trực tiếp giữa các I / O thiết bị và bộ nhớ mà không cần can thiệp CPU
sự truy cập bộ nhớ trực tiếp (DMA).
đang được dịch, vui lòng đợi..