ATHDH l03 nhom5 IO processing

52 153 0
ATHDH l03 nhom5 IO processing

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Hệ điều hành là một chương trình hay một hệ chương trình hoạt động giữa người sử dụng (user) và phần cứng của máy tính. Mục tiêu của hệ điều hành là cung cấp một môi trường để người sử dụng có thể thi hành các chương trình. Nó làm cho máy tính dể sử dụng hơn, thuận lợi hơn và hiệu quả hơn. Hệ điều hành là một phần quan trọng của hầu hết các hệ thống máy tính. Một hệ thống máy tính thường được chia làm bốn phần chính: phần cứng, hệ điều hành, các chương trình ứng dụng và người sử dụng. Phần cứng (Hardware): bao gồm bộ xử lý trung tâm (CPU), bộ nhớ, thiết bị xuấtnhập,.. cung cấp tài nguyên cơ bản cho hệ thống.

NHẬN XÉT CỦA GIẢNG VIÊN ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… i MỤC LỤC MỤC LỤC ii DANH MỤC HÌNH ẢNH iv DANH MỤC TỪ VIẾT TẮT v LỜI NÓI ĐẦU vi Chương TỔNG QUAN VỀ HỆ ĐIỀU HÀNH VÀ HỆ THỐNG NHẬP XUẤT 1.1 Tổng quan hệ điều hành 1.1.1 Thành phần, chức nhiệm vụ 1.1.2 Phân loại hệ điều hành 1.2 Giới thiệu hệ thống nhập xuất Chương HỆ THỐNG NHẬP XUẤT 2.1 Phần cứng nhập/xuất 2.1.1 Thăm dò 10 2.1.2 Ngắt 12 2.1.3 Truy cập nhớ trực tiếp 13 2.2 Giao diện ứng dụng I/O 15 2.2.1 Thiết bị khối thiết bị ký tự 19 2.2.2 Thiết bị mạng 20 2.2.3 Đồng hẹn 21 2.2.4 Blocking & Nonblocking I/O 22 2.3 Nhân hệ thống I/O 24 2.3.1 Định thời biểu nhập/xuất 24 2.3.2 Bộ đệm 26 2.3.3 Bộ nhớ đệm 28 2.3.4 Vùng chứa thiết bị lưu trữ 29 2.3.5 Xử lý lỗi 29 2.3.6 Nhập/xuất protection 30 2.3.7 Cấu trúc liệu nhân 31 2.4 Chuyển yêu cầu nhập/xuất tới hoạt động phần cứng 33 2.5 Streams 36 ii 2.6 Hiệu suất hệ thống nhập/xuất 39 KẾT LUẬN 45 TÀI LIỆU THAM KHẢO 46 iii DANH MỤC HÌNH ẢNH Hình 1.1 Các lớp chức nhập/xuất Hình 2.1 A typical PCI bus structure Hình 2.2 Device I/O port locations on PCs (partial) Hình 2.3 Chu kỳ nhập xuất hướng ngắt 12 Hình 2.4 Các bước DMA tranfer 14 Hình 2.5 Cấu trúc nhân I/O 16 Hình 2.6: Đặc tính thiết bị I/O 17 Hình 2.7 Hai phương thức I/O: (a) Đồng (b) Không đồng 24 Hình 2.8 Thiết bị - bảng trạng thái 26 Hình 2.9 Sun Enterprise 6000 device-transfer rates (logarithmic) 27 Hình 2.10 Sử dụng lời gọi hệ thống để thực nhập/xuất 31 Hình 2.11 Kiến trúc nhân UNIX nhập/xuất 33 Hình 2.12 Chu trình sống yêu cầu nhập/xuất 36 Hình 2.13 Cấu trúc STREAMS 37 Hình 2.14 Intercomputer communications 41 Hình 2.15 Chức thiết bị tiến trình 43 iv DANH MỤC TỪ VIẾT TẮT CD – ROM Compact Disc Read Only Memory CPU Center Processing Unit DMA Direct Memory Access FIFO First In First Out I/O Input/Output MS – DOS Microsoft Disk Operating System PC Professional computer RAID Redundant Arrays of Inexpensive Disks SCSI Small Computer System Interface USB Universal Serial Bus v LỜI NÓI ĐẦU Hệ điều hành phần thiết yếu máy tính hệ thống I/O phần quan trọng hệ điều hành từ WINDOWS, LINUX, MAC… Mỗi thiết bị I/O có chức khác nhau, hệ điều hành cần phải cung cấp tính phù hợp để kiểm soát thiết bị Và chức hệ thống I/O trao đổi thơng tin máy tính giới bên ngồi với thao tác nhập xuất liệu cách sử dụng thiết bị ngoại vi module I/O Tất thiết bị ngoại vi chậm CPU, RAM cần có Trong nhiều trường hợp thiết bị I/O xem phần khơng thể thiếu máy tính Vì vậy, báo cáo này, tập trung trình bày thành phần, tiến trình xử lý, cách thức I/O xử lý bên hệ thống máy tính đại Nội dung báo cáo gồm chương: Chương Tổng quan hệ điều hành hệ thống nhập xuất: Chương trình bày tổng quan hệ điều hành hệ thống I/O để người dùng có nhìn tổng quan OS I/O Chương Hệ thống I/O: Chương tập trung trình bày thiết bị phần cứng, ứng dụng, tiến trình thực hiện, việc lưu trữ, truyền liệu, chế bảo mật hệ thống I/O,… Chúng em xin chân thành cám ơn! vi Chương TỔNG QUAN VỀ HỆ ĐIỀU HÀNH VÀ HỆ THỐNG NHẬP XUẤT 1.1 Tổng quan hệ điều hành Hệ điều hành chương trình hay hệ chương trình hoạt động người sử dụng (user) phần cứng máy tính Mục tiêu hệ điều hành cung cấp môi trường để người sử dụng thi hành chương trình Nó làm cho máy tính dể sử dụng hơn, thuận lợi hiệu Hệ điều hành phần quan trọng hầu hết hệ thống máy tính Một hệ thống máy tính thường chia làm bốn phần chính: phần cứng, hệ điều hành, chương trình ứng dụng người sử dụng - Phần cứng (Hardware): bao gồm xử lý trung tâm (CPU), nhớ, thiết bị xuất/nhập, cung cấp tài nguyên cho hệ thống - Các chương trình ứng dụng (application programs): trình biên dịch (compiler), trình soạn thảo văn (text editor), hệ sở liệu (database system), trình duyệt Web,… định nghĩa cách mà tài nguyên sử dụng để giải yêu cầu người dùng - Người dùng (user): có nhiều loại người dùng khác nhau, thực yêu cầu khác nhau, có nhiều ứng dụng khác - Hệ điều hành điều khiển phối hợp việc sử dụng phần cứng cho ứng dụng khác nhiều người sử dụng khác Hệ điều hành cung cấp mơi trường mà chương trình làm việc hữu hiệu 1.1.1 Thành phần, chức nhiệm vụ Các thành phần hệ điều hành - Hệ thống quản lý tiến trình - Hệ thống quản lý nhớ - Hệ thống quản lý nhập xuất - Hệ thống quản lý tập tin - Hệ thống bảo vệ - Hệ thống dịch lệnh Bao gồm hai chức chính: - Quản lý chia sẻ tài nguyên: Tài nguyên hệ thống (CPU, nhớ, thiết bị ngoại vi,…) vốn giới hạn, hệ thống đa nhiệm, nhiều người sử dụng đồng thời yêu cầu nhiều tài nguyên Để thỏa mãn yêu cầu sử dụng với tài nguyên hữu hạn nâng cao hiệu sử dụng tài nguyên, hệ điều hành cần phải có chế chiến lược thích hợp để quản lý việc phân phối tài nguyên Ngoài yêu cầu dùng chung tài ngun để tiết kiệm chi phí, người sử dụng cần phải chia sẻ thông tin (tài nguyên phần mềm) lẫn nhau, hệ điều hành cần đảm bảo việc truy xuất đến tài nguyên hợp lệ, không xảy tranh chấp, đồng nhất, - Giả lập máy tính mở rộng: Hệ điều hành làm ẩn chi tiết phần cứng, người sử dụng cung cấp giao diện đơn giản, dễ hiểu, dễ sử dụng không phụ thuộc vào thiết bị phần cứng cụ thể Thực tế, ta xem Hệ điều hành hệ thống bao gồm nhiều máy tính trừu tượng xếp thành nhiều lớp chồng lên nhau, máy tính mức phục vụ cho máy tính mức Lớp giao diện trực quan để điều khiển Ngồi chia chức hệ điều hành theo bốn chức sau: - Quản lý trình (process management) - Quản lý nhớ (memory management) - Quản lý hệ thống lưu trữ - Giao tiếp với người dùng (user interaction) Nhiệm vụ hệ điều hành - Điều khiển quản lý trực tiếp phần cứng bo mạch chủ, bo mạch đồ họa bo mạch âm thanh,… - Thực số thao tác máy tính thao tác đọc, viết tập tin, quản lý hệ thống tập tin (file system) kho liệu - Cung ứng hệ thống giao diện sơ khai cho ứng dụng thường thông qua hệ thống thư viện hàm chuẩn để điều hành phần cứng mà từ ứng dụng gọi tới - Cung ứng hệ thống lệnh để điều hành máy Các lệnh gọi lệnh hệ thống (system command) - Ngoài hệ điều hành, vài trường hợp, cung cấp dịch vụ cho phần mềm ứng dụng thơng thường chương trình duyệt Web, chương trình soạn thảo văn bản… 1.1.2 Phân loại hệ điều hành Dưới góc độ loại máy tính: - Hệ điều hành dành cho máy MainFrame - Hệ điều hành dành cho máy Server - Hệ điều hành dành cho máy nhiều CPU - Hệ điều hành dành cho máy tính cá nhân (PC) - Hệ điều hành dành cho máy PDA (Embedded OS – hệ điều hành nhúng) - Hệ điều hành dành cho máy chuyên biệt - Hệ điều hành dành cho thẻ chíp (SmartCard) Thơng thường góc độ người sử dụng số chương trình sử dụng lúc hệ điều hành chia làm loại chính: - Hệ điều hành đơn nhiệm người dùng - Hệ điều hành đa nhiệm người dùng - Hệ điều hành đa nhiệm nhiều người dùng Đơn nhiệm: tức lần thực chương trình hay nói cách khác chương trình phải thực (vd: HĐH MS-DOS) Đa nhiệm: tức thực đồng thời nhiều chương trình (VD: HĐH Windows số phiên sau MS-DOS) Một người dùng: cho phép người đăng nhập vào hệ thống làm việc (VD: HĐH Windows 95 trở trước) Nhiều người dùng: cho phép nhiều người đồng thời đăng nhập vào hệ thống Việc quản lí thơng qua tài khoản người dùng mật tương ứng (VD: phiên HĐH Windows Win 2000,XP,7,8,…) Dưới góc độ người dùng (truy xuất tài nguyên lúc): - Một người dùng - Nhiều người dùng - Mạng ngang hàng - Mạng có máy chủ: LAN, WAN,… Dưới góc độ hình thức xử lý: - Hệ thống xử lý theo lô - Hệ thống xử lý theo lô đa chương - Hệ thống chia sẻ thời gian - Hệ thống song song - Hệ thống phân tán - Hệ thống xử lý thời gian thực 1.2 Giới thiệu hệ thống nhập xuất Một chức hệ điều hành quản lý tất thiết bị nhập/xuất máy tính Hệ điều hành phải thị điều khiển thiết bị, kiểm soát ngắt lỗi Hệ điều hành phải cung cấp cách giao tiếp đơn giản tiện dụng thiết bị phần lại hệ thống giao tiếp phải độc lập với thiết bị Vai trò hệ điều hành nhập/xuất máy tính quản lý điều khiển thao tác nhập/xuất thiết bị nhập/xuất Điều khiển thiết bị kết nối tới máy tính mối quan tâm chủ yếu người thiết kế hệ điều hành Vì thiết bị nhập/xuất khác chức tốc độ (chuột, đĩa cứng, CDROM) nên đa dạng phương pháp cần thiết để điều khiển chúng Các phương pháp hình thành hệ thống nhập/xuất (I/O subsystem) nhân, tách rời phần lại nhân từ phức tạp việc quản lý thiết bị nhập/xuất Công nghệ thiết bị nhập/xuất thể hai xu hướng trái ngược Xu hướng thứ nhất, tăng chuẩn hóa phần mềm giao diện phần cứng Xu hướng giúp hợp tác hệ thiết bị cải tiến vào máy tính hệ điều hành có Xu hướng thứ hai, tăng đa dạng thiết bị nhập/xuất Thiết bị khác với thiết bị trước tạo Nhân dùng nhiều cấu trúc tương tụ để ghi vết kết nối mạng, giao tiếp thiết bị dạng ký tự hoạt động nhập/xuất khác Tóm lại, hệ thống nhập/xuất điều phối tập hợp dịch vụ mở rộng sẵn có ứng dụng thành phần khác nhân Hệ thống nhập/xuất điều khiển: • Quản lý khơng gian tên cho tập tin thiết bị • Điều khiển truy xuất tới tập tin thiết bị • Điều khiển hoạt động (ví dụ, modem khơng thể tìm seek() • Cấp phát khơng gian hệ thống tập tin • Cấp phát thiết bị • Vùng đệm, vùng lưu trữ vùng chứa • Điều khiển trạng thái thiết bị, quản lý lỗi phục hồi lỗi • Cấu hình khởi tạo trình điều khiển thiết bị 32 Hình 2.11 Kiến trúc nhân UNIX nhập/xuất Một số hệ điều hành sử dụng phương pháp hướng đối tượng chí mở rộng Chẳng hạn, Window NT sử dụng tính truyền thơng điệp cho nhập/xuất Một yêu cầu nhập/xuất chuyển thành thơng báo gửi qua nhân tới trình quản lý nhập/xuất sau đến trình điều khiển thiết bị, thiết bị thay đổi nội dung tin nhắn Đối với đầu ra, thông báo chứa liệu ghi Đối với đầu vào, tin nhắn có chứa đệm để nhận liệu Cách tiếp cận truyền thơng tin thêm đầu, so sánh với kỹ thuật sử dụng cấu trúc chia sẻ liệu, đơn giản hóa cấu trúc thiết kế hệ thống nhập/xuất thêm tính linh hoạt 2.4 Chuyển yêu cầu nhập/xuất tới hoạt động phần cứng Phần trước mô tả việc bắt tay trình điều khiển thiết bị điều khiển thiết bị, khơng giải thích hệ điều hành kết nối yêu cầu ứng dụng tới tập hợp dây mạng hay sector đĩa xác định Chúng ta xem xét ví đọc tập tin từ đĩa Ứng dụng tham chiếu tới liệu 33 tên tập tin Trong đĩa, hệ thống tập tin ánh xạ từ tên tập tin thông qua thư mục hệ thống tập tin để lấy không gian cấp phát tập tin Các hệ điều hành đại đạt khả linh hoạt cao từ nhiều giai đoạn bảng tra cứu đường dần yêu cầu điều khiển thiết bị vậ lý Các chế truyền yêu cầu ứng dụng trình điều khiển phổ biến Do đó, giới thiệu thiết bị trình điều khiển vào máy tính mà không biên dịch lại nhân Thật vậy, số hệ điều hành có khả nạp trình điều khiển thiết bị theo yêu cầu Tại thời điểm khởi động, hệ thống thăm dò bus phần cứng để xác định thiết bị diện sau hệ thơng nạp trình điều khiển cần thiết hay yêu cầu yêu cầu nhập/ xuất Bây mô tả chu trình sống điển hình yêu cầu đọc bị nghẽn, hình Hình đề nghị thao tác nhập/xuất yêu cầu nhiều bước tiêu tốn số lượng lớn chu kỳ CPU 1) Một trình phát lời gọi hệ thống read() tới mô tả tập tin mở trước 2) Mã lời gọi hệ thống nhân kiểm tra tính đắn tham số Trong trường hợp nhập, liệu có sẵn vùng đệm liệu trả tới trình yêu cầu nhập/xuất hoàn thành 3) Ngược lại, nhập xuất vật lý cần thực hiền q trình xóa từ hàng đợi thực thi vầ đặt vào hàng đợi chờ cho thiết bị, yêu cầu nhập/xuất lập thời biểu Cuối cùng, hệ nhập/xuất gửi yêu cầu tới trình điều khiển thiết bị Phụ thuộc vào hệ điều hành, yêu cầu gửi lời gọi thủ tục hay thông điệp nhân 4) Trình điều khiển thiết bị cấp phát vùng đệm nhân để nhận liệu lập thời biểu nhập/xuất Cuối cùng, trình điều khiển gửi lệnh tới điều khiển thiết bị cách viết vào thành ghi điều khiển thiết bị 5) Trình điều khiển thiết bị thao tác phần cứng thiết bị để thực truyền liệu 34 6) Trình điều khiển thăm dò trạng thái liệu hay thiết lập truyền DMA vào nhớ nhân Chúng ta thừa nhận truyền quản lý điều khiển DMA sinh ngắt việc truyền hoàn thành 7) Bộ quản lý ngắt tương ứng nhập ngắt vector ngắt, lưu liệu cần thiết, báo hiệu trình điều khiển thiết bị trả từ ngắt 8) Trình điều khiển thiết bị nhận tín hiệu, xác định u cầu nhập/xuất hồn thành, xác định trạng thái yêu cầu báo hiệu cho hệ nhập/xuất nhân yêu cầu hoàn thành 9) Nhân truyền liệu hay trả mã tới không gian địa trình từ hàng đợi chờ tới hàng đợi sẵn sang 10) Di chuyển trình tới hàng đợi sẵn sàng khơng làm nghẽn q trình Khi định thời biểu gắn trình tới CPU, q trình tiếp tục thực thi thời điểm hồn thành lời gọi hệ thống 35 Hình 2.12 Chu trình sống yêu cầu nhập/xuất 2.5 Streams Hệ điều hành UNIX phiên System V có chế STREAMS, cho phép ứng dụng kết nối với trình điều khiển tự động Một stream kết nối 36 full-duplex, kết nối trình điều khiển thiết bị tiến trình mức người dùng Streams bao gồm thành phần: - Stream head: giao diện tương tác với tiến trình người dùng - Driver end: Điều khiển hoạt động thiết bị - Stream modules: Có thể có khơng, nằm Stream head driver end Nó chứa cặp hàng đợi đọc ghi Message dùng để truyền liệu hàng đợi Hình 2.13 Cấu trúc STREAMS 37 Mô-đun cung cấp chức để xử lý Streams Chúng sử dụng để đẩy lên stream cách sử dụng lời gọi hệ thống ioctl() Ví dụ, tiến trình mở cổng serial thơng qua stream đẩy module để xử lý q trình nhập vào Bởi thơng điệp trao đổi tiến tình mô đun, đến hàng đợi module tràn sang hàng đợi Để bảo vệ, hàng đợi hỗ trợ flow control (kiểm soát lưu lượng) Nếu khơng có flow control, hàng đợi chấp nhận tất thông điệp gửi chúng đến hàng đợi liền kề Một hàng đợi có hỗ trợ flow control có đệm thông điệp, không chấp nhận thơng điệp mà khơng có đủ đệm để chứa Quá trình liên quan đến việc trao đổi thơng điệp kiểm sốt hàng đợi mơ đun Tiến trình người dùng ghi liệu lên thiết bị sử dụng lời gọi hệ thống write() putmsg() Với lời gọi write(), liệu thô ghi lên stream Với lời gọi pugmsg(), cho phép tiến trình người dùng định tin nhắn Không phụ thuộc vào lời gọi hệ thống sử dụng tiến trình người dùng, stram head chép liệu vào tin nhắn đưa đến hàng đợi cho mơ-đun Việc chép diễn thông điệp chép vào driver end Tương tự, tiến trình người dùng đọc liệu từ stream head sử dụng lời gọi hệ thống read() getmsg() Nếu read() sử dụng, stream head lấy thông điệp từ hàng đợi liền kế trả liệu thơng thường, khơng có cấu trúc cho tiến trình Nếu sử dụng getmsg(), thông điệp trả cho tiến trình Stream I/O khơng đồng bộ, trừ tiến trình người dùng giao tiếp trực tiếp với stream head Khi có q trình viết lên stream, tiến trình người dùng bị khóa, giả sử hàng đợi sử dụng điều khiển luồng, có chỗ để chép tin nhắn Tương tự vậy, tiến trình người dùng chặn đọc từ stream liệu có sẵn Như đề cập, driver end giống stream head mô đun, có hàng đợi đọc ghi Tuy nhiên, driver end mà trả lời đến ngắt, chẳng hạn triggered kích hoạt frame sẵn sàng để đọc từ mạng Không giống stream head, driver-end phải xử lý tất liệu đến Trình điều khiển phải 38 hỗ trợ điều khiển luồng tốt Tuy nhiên, đệm thiết bị đầy, thiết bị bỏ gói tin đến Xem xét card mạng có đệm đầu vào đầy Card mạng phải bỏ tin nhắn có đủ đệm để lưu trữ tin nhắn gửi đến Lợi ích việc sử dụng STREAMS cung cấp framework cho cách tiếp cận mô đun để viết trình điều khiển thiết bị giao thức mạng Các mơ-đun sử dụng luồng khác có thiết bị khác Ví dụ, mơ-đun mạng sử dụng Ethernetcard mạng card mạng không dây 802.11 Và nữa, STREAMS cho phép hỗ trợ ranh giới thơng điệp kiểm sốt thơng tin giao tiếp mô-đun Hầu hết biến thể UNIX hỗ trợ STREAMS phương pháp để viết giao thức trình điều khiển thiết bị Ví dụ, System V UNIX Solaris thực chế socket sử dụng STREAMS 2.6 Hiệu suất hệ thống nhập/xuất I/O yếu tố quan trọng ảnh hưởng đến hiệu suất hệ thống Nó đặt yêu cầu nặng nề lên CPU để thực thi mã trình điều khiển thiết bị để lên lịch trình cách cơng hiệu I/O thực chặn bỏ chặn I/O làm lộ không hiệu trình xử lý ngắt hạt nhân Ngoài I/O tải xuống nhớ để chép liệu điều khiển nhớ lý chép lần đệm nhân không gian liệu ứng dụng Mặc dù máy tính đại xử lý hàng ngàn ngắt cho giây, xử lý ngắt công việc tương đối tốn Mỗi ngắt gây hệ thống để thực thay đổi trạng thái, để thực xử lý ngắt, sau để khơi phục lại trạng thái Chương trình I/O hiệu so với interrupt-driven I/O, số lượng chu kỳ dành cho chờ đợi không mức Một I/O hoàn thành thường bỏ chặn tiến trình Lưu lượng mạng gây tỷ lệ chuyển đổi ngữ cảnh cao Ví dụ, đăng nhập từ xa từ máy sang máy khác Mỗi ký tự gõ máy cục phải vận chuyển đến máy từ xa Trên máy cục bộ, ký tự đánh máy; 39 ngắt bàn phím tạo ra; ký tự truyền qua trình xử lý ngắt đến trình điều khiển thiết bị, đến hạt nhân sau đến tiến trình người dùng Tiến trình người dùng xuất lời gọi hệ thống I/O mạng để gửi ký tự đến máy từ xa Các ký tự sau vào hạt nhân cục bộ, thông qua lớp mạng xây dựng, gói, vào trình điều khiển thiết bị mạng Trình điều khiển thiết bị mạng truyền gói tin đến điều khiển mạng, gửi ký tự tạo ngắt Các ngắt thông qua hạt nhân, lời gọi hệ thống để hoàn thành Ngày này, phần cứng mạng hệ thống từ xa nhận gói tin, gián đoạn tạo Ký tự giải nén từ giao thức mạng trao cho daemon mạng thích hợp Daemon mạng xác định phiên đăng nhập từ xa tham gia chuyển gói tin đến subdaemon thích hợp cho phiên Trong suốt q trình này, ngữ cảnh trạng thái thay đổi liên tục Thông thường, người nhận gửi lại ký tự cho người gửi; cách tiếp cận tăng gấp đôi công việc Để loại bỏ chuyển đổi ngữ cảnh liên quan đến di chuyển ký tự daemon hạt nhân, nhà phát triển Solaris phát triển lại daemon sử dụng luồng kernel Sun ước tính cải tiến tăng số lượng đăng nhập mạng tối đa từ vài trăm đến vài nghìn máy chủ lớn 40 Hình 2.14 Intercomputer communications Các hệ thống khác sử dụng front-end processors để giảm gánh nặng gián đoạn CPU Ví dụ, tập trung đầu cuối truyền nhiều tin lúc với lưu lượng truy cập từ hàng trăm thiết bị đầu cuối từ xa vào cổng máy tính lớn Kênh I/O kênh chuyên dụng, sử dụng CPU đặc biệt, tìm thấy hệ thống máy tính lớn hệ thống cao cấp khác Việc thiết lập kênh để giảm tải làm việc cho CPU Ý tưởng kênh giữ 41 liệu chảy, CPU tự để xử lý liệu Giống thiết bị điều khiển điều khiển DMA, tìm thấy máy tính nhỏ Một kênh xử lý chương trình tổng quát tinh vi hơn, kênh điều chỉnh cho khối lượng cơng việc cụ thể Chúng ta tăng hiệu suất sử dụng I/O biện pháp: - Giảm số lần chuyển ngữ cảnh - Giảm số lần trình chép liệu nhớ thiết bị ứng dụng - Giảm số lần ngắt cách sử dụng truyền khối liệu lớn, sử dụng chế polling, sử dụng chế điều khiển thông minh - Sử dụng DMA để giảm tải liệu chép từ CPU - Di chuyển tiến trình nguyên thủy vào phần cứng, cho phép hoạt động chúng điều khiển thiết bị để đồng thời hoạt động với CPU bus Cân CPU, nhớ, bus I/O, tải khu vực gây nhàn rỗi nơi khác Thiết bị I/O khác phức tạp Ví dụ, chuột đơn giản Các chuyển động chuột nhấp chuột vào nút chuyển thành giá trị số, truyền từ phần cứng, thơng qua trình điều khiển thiết bị chuột, đến ứng dụng Ngược lại, chức cung cấp trình điều khiển thiết bị đĩa Windows NT phức tạp Nó khơng quản lý đĩa riêng lẻ mà thực mảng RAID Để làm vậy, chuyển đổi yêu cầu đọc viết ứng dụng sang tập hợp hoạt động I/O đĩa Hơn nữa, thực tinh vi xử lý lỗi thuật toán phục hồi liệu phải nhiều bước để tối ưu hóa hiệu suất đĩa Chức I/O nên triển khai đâu? Trong phần cứng thiết bị, trình điều khiển thiết bị, phần mềm ứng dụng? 42 Hình 2.15 Chức thiết bị tiến trình Ban đầu, thực thuật tốn I/O thử nghiệm ứng dụng mã ứng dụng linh hoạt lỗi ứng dụng không để gây cố hệ thống Hơn nữa, cách phát triển mã cấp ứng dụng, tránh cần thiết phải khởi động lại tải lại trình điều khiển thiết bị sau lần thay đổi mã Việc thực cấp ứng dụng không hiệu quả, nhiên, chuyển đổi bối cảnh ứng dụng khơng thể tận dụng cấu trúc liệu hạt nhân nội chức hạt nhân (chẳng hạn gửi tin nhắn hạt nhân, luồng, khóa) Khi thuật tốn cấp ứng dụng chứng minh giá trị nó, thực hạt nhân Điều cải thiện hiệu suất, nỗ lực phát triển khó khăn hơn, hạt nhân hệ điều hành hệ thống phần mềm lớn, phức tạp Hơn nữa, việc thực kernel phải gỡ lỗi kỹ lưỡng để tránh tình trạng sai sót hệ thống bị treo 43 Hiệu suất cao đạt thông qua việc thực chuyên biệt phần cứng, thiết bị điều khiển Các nhược điểm việc triển khai phần cứng bao gồm khó khăn chi phí để thực cải tiến Hơn nữa, việc sửa lỗi làm tăng thời gian phát triển tính linh hoạt giảm Chẳng hạn, điều khiển RAID phần cứng khơng cung cấp phương tiện cho hạt nhân để ảnh hưởng đến thứ tự vị trí khối đọc viết Ngay hạt nhân có thơng tin đặc biệt khối lượng cơng việc mà cho phép để cải thiện hiệu suất I/O 44 KẾT LUẬN Các thành phần I/O bus, điều khiển thiết bị thiết bị Công việc di chuyển liệu thiết bị nhớ thực CPU chương trình I/O lập trình tải xuống điều khiển DMA Mô đun hạt nhân điều khiển thiết bị trình điều khiển thiết bị Các giao diện lời gọi hế thống cung cấp cho ứng dụng để xử lý số loại như: phần cứng, bao gồm thiết bị khối, thiết bị ký tự, tệp tin ánh xạ nhớ, ổ cắm mạng, trình định thời gian lập trình Các lời gọi hệ thống thường chặn tiến trình mà có vấn đề, không cấm lời gọi không đồng bộ, sử dụng hạt nhân ứng dụng, mà phải không ngủ đợi thao tác I/O hoàn thành Báo cáo đạt mục tiêu sau: • Tìm hiểu tổng quan hệ thống nhập xuất • Tìm hiểu phần hệ thống nhập xuất  Phần cứng nhập/xuất  Giao diện ứng dụng nhập/xuất  Nhân hệ thống nhập/xuất  Chuyển yêu cầu nhập/xuất tời hoạt động phần cứng  Streams  Hiệu suất hệ thống nhập xuất Tuy nhiên, trình làm tập lớn, hạn chế kiến thức thời gian mà tập lớn dừng lại mức giới thiệu bản, chưa sâu vào dạng nâng cao áp dụng vào thực tế Hi vọng tương lai, có thời gian hội, chúng em tiếp tục phát triển vấn đề nâng cao 45 TÀI LIỆU THAM KHẢO [1] Operating System Concept, 8th Editions - Avi Silberschatz, Peter Baer Galvin, Greg Gagne [2] Giáo trình Hệ Điều Hành – Th.s Nguyễn Phú Trường [3] Hệ điều hành, https://vi.wikipedia.org/wiki/H%E1%BB%87_%C4%91i%E1%BB%81u_h%C3% A0nh 46

Ngày đăng: 22/03/2018, 17:47

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan