Hệ thống I-O chuẩn (terminals) Hệ thống I-O chuẩn (terminals) Bởi: Giảng viên Trần Hạnh Nhi Mọi máy tính liên lạc với hay nhiều terminals Terminals có nhiều dạng khác Bộ điều khiển terminals ẩn dấu khác biệt, phần độc lập thiết bị hệ điều hành chương trình người sử dụng không cần thiết phải viết lại cho loại terminal Phần cứng terminal Dưới quan điểm hệ điều hành, terminal chia làm hai loại lớn dựa vào cách liên lạc với hệ điều hành Loại thứ bao gồm loại terminal giao chuẩn RS-232 Loại thứ hai terminal dùng ánh xạ nhớ Mỗi loại chia làm nhiều loại nhỏ hình sau : Terminal RS-232 thiết bị bao gồm bàn phím hình Đây thiết bị giao tiếp tuần tự, lần bit Những terminals dùng connector 25-pin, pin 1/6 Hệ thống I-O chuẩn (terminals) dùng để chuyển liệu, pin dùng để nhận liệu, pin nền, 22 pin lại có chức khác nhau, hầu hết thường thường không dùng đến Để gởi ký tự cho terminal RS-232, máy tính lần chuyển bit, có bit bắt đầu, sau có bit kết thúc để giới hạn ký tự Thường thường tốc độ vận chuyển 1200, 2400, 4800, 9600…bps Vì máy tính terminal làm việc với ký tự mà phải liên lạc với bit nên hệ thống phải thiết kế chuyển đổi gọi UART Bộ phận gắn vào card giao tiếp RS-232 Để in ký tự, điều khiển terminal ghi ký tự lên card giao tiếp, sau chuyển cho UART Terminal RS-232 chia làm nhiều loại Dạng đơn giản terminal hardcopy(printing) Ví dụ ký tự nhập vào từ bàn phím chuyển cho máy tính Các ký tự từ máy tính xuất máy in Dạng tương tự ký tự xuất hình gọi "glass ttys" có chức tương tự Terminals intelligent dùng máy tính nhỏ Điểm khác biệt với loại quan điểm hệ điều hành gữi ký tự ASCII ESC sau ký tự khác dùng để chuyển cursor đến vị trí hình, chèn dòng vào hình Blit terminal có xử lý mạnh hình có 1024x800 điểm giao tiếp với máy tính RS-232 Terminal ánh xạ nhớ Dạng thứ hai terminal terminal ánh xạ nhớ Loại không giao tiếp với máy tính qua đường serial Nó phần của hệ thống máy tính Terminal ánh xạ nhớ giao tiếp nhớ đặc biệt gọi video RAM, phần nhớ định vị CPU 2/6 Hệ thống I-O chuẩn (terminals) Trên card video RAM có chip gọi điều khiển video Chip lấy thông tin từ video RAM tạo tín hiệu video để điều khiển hình Màn hình tạo tia điện tử quét từ xuống Thường thường có khoảng từ 200 đến 1200 dòng, dòng có từ 200 đến 1200 điểm Mỗi điểm gọi pixel Bộ điều khiển tín hiệu xác định điểm sáng hay tối Màn hình màu có ba tia đỏ, lục xanh Thông thường hình mono xây dựng ký tự box có chiều rộng pixel chiều cao 14 pixel (bao gồm khoảng trống ký tự) có 25 dòng dòng có 80 ký tự Mỗi khung vẽ lại từ 45 đến 70 lần giây Bộ điều khiển video đặt dòng 80 ký tự vào video RAM Một ví dụ hình ánh xạ ký tự máy IBM PC Một phần nhớ địa 0xB000 cho hình đơn sắc 0xB800 cho hình màu Mỗi ký tự hình chiếm hai bytes nhớ Byte thấp chứa giá trị ASCII ký tự, byte cao chứa thuộc tính màu sắc, nhấp nháy v.v Màn hình 80x25 chiếm 4000 bytes nhớ video RAM 3/6 Hệ thống I-O chuẩn (terminals) Khi CPU ghi ký tự vào video RAM, xuất hình theo lần hiển thị (1/50 giây cho mono, 1/60 cho màu ) CPU nạp 4K ảnh hình tính trước vào video RAM vài phần triệu giây Với tốc độ 9600 bps, ghi 2000 ký tự vào terminal RS-232 khoảng 2083 phần triệu giây Terminal ánh xạ nhớ cho phép truy xuất nhanh Terminal bit-map tương tự vậy, ngoại trừ bit video RAM kiểm soát điểm hình Màn hình có 1024x800 pixel cần dùng 100 K nhớ khó thiết kế font kích thước cho ký tự Bàn phím giao tiếp thông qua cổng song song giao tiếp RS-232 Mỗi gõ phím vào, CPU bị ngắt, điều khiển bàn phím xác định kiểu ký tự đọc từ cổng I/O Đôi bàn phím cung cấp số hiệu phím , mã ASCII Trên IBM PC gõ phím A mã ký tự 30 đưa vào ghi I/O Bộ điều khiển xác định ký tự chữ hoa hay chữ thường tổ hợp phím Phần mềm nhập Bàn phím hình độc lập với thiết bị Công việc điều khiển bàn phím tập hợp liệu nhập từ bàn phím chuyển cho chương trình người sử dụng Khi có phím gõ, gây ngắt, điều khiển yêu cầu ký tự suốt trình ngắt Nếu ngắt gây lời gọi ngắt ngôn ngữ lập trình cấp thấp chuyển ký tự cho chương trình Nó sử dụng buffer nhớ thông điệp để báo cho điều khiển biết có ký tự nhập Một điều khiển nhận ký tự, bắt đầu xử lý Nếu dạng mã bàn phím, ánh xạ lại mã ASCII thật Nếu terminal dạng cook, ký tự phải lưu trữ nhận hết dòng người sử dụng xóa phần nội dung Có hai loại buffer thông thường Dạng thứ nhất, điều khiển chứa pool buffer, buffer chứa 16 ký tự Có cấu trúc liệu liên kết với nó, có chứa trỏ trỏ tới chuỗi buffer Khi ký tự chuyển cho chương trình, loại khỏi buffer Dạng thứ hai buffer trực tiếp có cấu trúc liệu tổ chức theo dạng thứ không đủ nhớ Hình sau cho biết khác biệt hai cách hình sau: 4/6 Hệ thống I-O chuẩn (terminals) Mặt dù hình bàn phím hai thiết bị logic riêng biệt, người quen với việc gõ ký tự xem xuất hình Một số terminal cho phép tự động hiển thị lên hình vừa gõ dấu gõ password Một số terminal không hiển thị ký tự gõ phải dựa vào phần mềm để hiển thị input, xử lý gọi echoing Echoing phức tạp chương trình phải xuất lên hình người dùng gõ vào Bộ điều khiển bàn phím phải kiểm soát không cho ghi chồng lên output chương trình Echoing gặp khó khăn người nhập gõ nhiều 80 ký tự hình 80 ký tự dòng Một vấn đề khác xử lý tab Bộ điều khiển phải tính toán vị trí thời cursor sau tính toán để chuyển cho chương trình cho echoing tính toán khoảng trống phải hiển thị Vấn đề phải xử lý carriage return line feed để chuyển cursor qua đầu dòng Việc xử lý tùy thuộc vào hệ điều hành khác Ngoài phải kiểm soát tổ hợp ký tư ký tự xoá, lùi, hay phím chức Phần mềm xuất Phần mềm xuất đơn giản nhập hai dạng thiết bị terminal RS-232 ánh xạ nhớ khác Phương pháp thông thường terminal RS-232 có buffer xuất cho loại terminal Dạng buffer pool buffer nhập dạng tận hiến input Khi chương trình ghi lên terminal, trước tiên xuất lên buffer Sau xuất lên buffer, ký tự xuất, sau điều khiển tạm dừng, có ngắt phát sinh, ký tự xuất, tiếp tục Với terminal ánh xạ nhớ, vấn đề đơn giản Những ký tự in xuất lần từ chương trình người dùng xuất lên video RAM Với số kýtự xư lý đặc biệt Ví dụ : backspace, carriage return, line feed, bell (CTRL-G) Bộ điều khiển ánh xạ nhớ, lưu giữ phần mềm vị trí video RAM, ký tự in được xuất theo thứ tự, ký tự đặc biệt cập nhật thích hợp 5/6 Hệ thống I-O chuẩn (terminals) Khi line feed xuất cuối dòng hình, hình cuộn Thường thường phần cứng cung cấp số giúp đỡ Hầu hết điều khiển hình chứa ghi xác định vị trí video RAM để bắt đầu đặt byte vào dòng hình Phần mềm soạn thảo hình phải có nhiều xử lý phức tạp xuống dòng Để tương thích, số điều khiển terminal hỗ trợ số xử lý, thông thường : Di chuyển cursor lên, xuống, trái, phải vị trí Di chuyển cursor đến vị trí x,y Chèn ký tự hay chèn dòng Xóa ký tự hay dòng Cuộn hình lên xuống n dòng Xoá hinh từ vị trí cursor đến cuối dòng hình Tạo tương phản, gạch dưới, nhấp nháy, hay mode thường Tạo, hủy, di chuyển quản trị cửa sổ 6/6 ... máy tính qua đường serial Nó phần của hệ thống máy tính Terminal ánh xạ nhớ giao tiếp nhớ đặc biệt gọi video RAM, phần nhớ định vị CPU 2/6 Hệ thống I-O chuẩn (terminals) Trên card video RAM có chip.. .Hệ thống I-O chuẩn (terminals) dùng để chuyển liệu, pin dùng để nhận liệu, pin nền, 22 pin lại có chức khác... chứa thuộc tính màu sắc, nhấp nháy v.v Màn hình 80x25 chiếm 4000 bytes nhớ video RAM 3/6 Hệ thống I-O chuẩn (terminals) Khi CPU ghi ký tự vào video RAM, xuất hình theo lần hiển thị (1/50 giây cho