hệ điều hành nguyễn phú trương chương11 quản lý thiết bị sinhvienzone com

12 32 0
hệ điều hành nguyễn phú trương chương11 quản lý thiết bị sinhvienzone com

Đ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

Đại Học Cần Thơ - Khoa Công Nghệ Thông Tin - Giáo Trình Hệ Điều Hành – V1.0 QUẢN LÝ HỆ THỐNG NHẬP/XUẤT I Mục đích Sau học xong chương này, người học nắm kiến thức sau: • • • • Hiểu sở phần cứng nhập/xuất Hiểu dịch vụ nhập/xuất cung cấp hệ điều hành Hiểu cách hệ điều hành làm cầu nối giao diện phần cứng giao diện ứng dụng Biết khía cạnh lực nhập/xuất nguyên lý thiết kế hệ điều hành để cải tiến lực nhập/xuất II Giới thiệu 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 Trong chương mô tả khái niệm phần cứng nhập/xuất Kế đến thảo luận dịch vụ nhập/xuất cung cấp hệ điều hành thân dịch vụ giao diện ứng dụng nhập/xuất Sau đó, giải thích hệ điều hành làm cầu nối giao diện phần cứng giao diện ứng dụng Cuối cùng, thảo luận khía cạnh lực nhập/xuất nguyên lý thiết kế hệ điều hành để cải tiến lực nhập/xuất III Các khái niệm Điều khiển thiết bị nối kết 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 độ (xem xét chuột, đĩa cứng, CD-ROM) 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 hoá 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 trở ngại để hợp chúng vào máy tính hệ điều hành Trở ngại giải kết hợp kỹ thuật phần cứng phần mềm Các thành phần phần cứng nhập/xuất cổng, bus điều khiển thiết bị chứa dãy rộng thiết bị nhập/xuất Để đóng gói chi tiết khác biệt thiết bị khác nhau, nhân hệ điều hành dẫn để dùng modules trình điều khiển thiết bị Các trình điều khiển thiết bị (device driver) diện giao diện truy xuất thiết bị đồng tới hệ thống nhập/xuất, lời gọi hệ thống cung cấp giao diện chuẩn ứng dụng hệ điều hành Biên soạn: Th.s Nguyễn Phú Trường - 09/2005 SinhVienZone.com Trang 242 https://fb.com/sinhvienzonevn Đại Học Cần Thơ - Khoa Công Nghệ Thông Tin - Giáo Trình Hệ Điều Hành – V1.0 IV Phần cứng nhập/xuất Các máy tính điều hành nhiều loại thiết bị Hầu hết chúng thuộc chủng loại phổ biến thiết bị lưu trữ (đĩa, băng từ), thiết bị truyền (card mạng, modem) thiết bị giao diện người dùng (màn hình, bàn phím, chuột), Mặc dù có đa dạng thiết bị nhập/xuất, cần hiểu vài khái niệm thiết bị gán phần mềm điều khiển phần cứng Một thiết bị giao tiếp với hệ thống máy tính cách gởi tín hiệu qua dây cáp hay chí qua khơng khí Các thiết bị giao tiếp với máy điểm nối kết (cổng-port) cổng Nếu hay nhiều thiết bị dùng tập hợp dây dẫn, nối kết gọi bus Một bus tập hợp dây dẫn giao thức định nghĩa chặt chẽ để xác định tập hợp thông điệp gởi qua dây Trong thuật ngữ điện tử, thông điệp truyền mẫu điện điện tử áp dụng tới dây dẫn với thời gian xác định Khi thiết bị A có cáp gán vào thiết bị B, thiết bị B có cáp gán vào thiết bị C thiết bị C gán vào cổng máy tính, xếp gọi chuỗi nối tiếp Một chuỗi nối tiếp thường điều hành bus IV.1 Thăm dò Giao thức hồn chỉnh cho việc giao tiếp máy tính điều khiển phức tạp ký hiệu bắt tay (handshaking) đơn giản Chúng ta giải thích bắt tay thí dụ sau Chúng ta giả sử bits dùng để hợp tác mối quan hệ người sản xuất-người tiêu thụ điều khiển máy chủ Bộ điều khiển hiển thị trạng thái thơng qua bit bận (busy bit) ghi trạng thái Bộ điều khiển đặt bit bận làm việc xố bit bận sẳn sàng nhận lệnh Máy tính tín hiệu mong muốn bit sẳn sàng nhận lệnh (command-ready bit) ghi lệnh Máy tính thiết lập bit sẳn sàng nhận lệnh lệnh sẳn dùng cho điều khiển thực thi Thí dụ, máy tính viết liệu xuất thơng qua cổng, hợp tác với điều khiển cách bắt tay sau: Máy tính lặp lại việc đọc bit bận bit bị xoá Máy tính thiết lập bit viết ghi lệnh viết byte vào ghi liệu xuất Máy tính đặt bit sẳn sàng nhận lệnh Khi điều khiển nhận thấy bit sẳn sàng nhận lệnh đặt, đặt bit bận Bộ điều khiển đọc ghi lệnh thấy lệnh viết Nó đọc ghi xuất liệu để lấy byte thực nhập/xuất tới thiết bị Bộ điều khiển xoá bit sẳn sàng nhận lệnh, xoá bit lỗi ghi trạng thái để hiển thị thiết bị nhập/xuất thành cơng, xố bit bận để hiển thị kết thúc Vòng lặp lặp cho byte Trong bước 1, máy tính chờ đợi bận hay thăm dò Nó vòng lặp, đọc ghi trạng thái bit bận xoá Nếu điều khiển thiết bị nhanh phương pháp phương pháp phù hợp Nhưng chờ lâu máy chủ chuyển sang tác vụ khác Sau đó, máy tính làm để biết điều khiển rảnh? Đối với số thiết bị, máy tính phải phục vụ thiết bị nhanh chóng Biên soạn: Th.s Nguyễn Phú Trường - 09/2005 SinhVienZone.com Trang 243 https://fb.com/sinhvienzonevn Đại Học Cần Thơ - Khoa Công Nghệ Thông Tin - Giáo Trình Hệ Điều Hành – V1.0 liệu bị Thí dụ, liệu truyền vào cổng từ bàn phím, vùng đệm nhỏ điều khiển tràn liệu bị máy tính chờ lâu trước trả bytes đọc Trong nhiều kiến trúc máy tính, chu kỳ lệnh CPU đủ để thăm dò thiết bị: read ghi thiết bị, thực phép tính luận lý and để lấy bit trạng thái tách (branch) khác Rõ ràng, thao tác thăm dò đủ Nhưng thăm dò trở nên khơng đủ lặp lại nhiều lần, tìm thiết bị sẳn sàng phục vụ lần thăm dò đầu tiên, cần dùng CPU để xử lý cho công việc khác Trong trường hợp thế, hiệu để xếp điều khiển phần cứng thông báo cho CPU thiết bị sẳn sàng phục vụ yêu cầu CPU lặp lại việc thăm dò cho việc hoàn thành nhập/xuất Cơ chế phần cứng cho phép thiết bị thông báo tới CPU gọi ngắt (interrupt) IV.2 Ngắt Hình 0-1 Chu kỳ nhập/xuất hướng ngắt Cơ chế ngắt làm việc sau: phần cứng CPU có dây dẫn gọi dòng yêu cầu ngắt (interrup-request line) mà CPU cảm ứng sau thực thi thị Khi CPU phát điều khiển xác nhận tín hiệu dòng u cầu ngắt CPU lưu lượng nhỏ trạng thái giá trị hành trỏ lệnh, nhảy tới thủ tục quản lý ngắt (interrupt-handler) địa cố định nhớ Bộ quản lý ngắt xác định nguyên nhân gây ngắt, thực xử lý cần thiết, thực thi thị return from interrupt để trả CPU trạng thái thực thi trước ngắt Chúng ta nói điều khiển thiết bị sinh ngắt cách xác định tín hiệu dòng u cầu ngắt quản lý xoá ngắt cách phục vụ thiết bị Hình XI-1 tóm tắt chu kỳ nhập/xuất hướng ngắt (interrupt-driven I/O cycle) IV.3 Truy xuất nhớ trực tiếp Đối với thiết bị thực việc truyền lớn ổ đĩa, lãng phí dùng vi xử lý để theo dõi bit trạng thái đẩy liệu vào ghi điều khiển byte Nhiều máy tính muốn giảm gánh nặng cho CPU cách chuyển số công việc tới điều khiển có mục đích đặc biệt gọi điều khiển truy xuất nhớ trực tiếp (direct memory-access-DMA) Biên soạn: Th.s Nguyễn Phú Trường - 09/2005 SinhVienZone.com Trang 244 https://fb.com/sinhvienzonevn Đại Học Cần Thơ - Khoa Công Nghệ Thông Tin - Giáo Trình Hệ Điều Hành – V1.0 Hình 0-2 Các bước việc truyền liệu DMA Để khởi tạo thao tác chuyển DMA, máy tính viết khối lệnh DMA vào nhớ Khối chứa trỏ tới nguồn chuyển, trỏ tới đích chuyển đếm số lượng byte chuyển CPU viết địa khối lệnh tới điều khiển DMA, sau CPU tiếp tục làm cơng việc khác Bộ điều khiển DMA xử lý để điều hành bus nhớ trực tiếp, đặt địa bus để thực việc chuyển mà khơng có trợ giúp CPU Một điều khiển DMA đơn giản thành phần chuẩn PCs, bảng nhập/xuất bus (bus-mastering I/O boards) để PC thường chứa phần cứng DMA tốc độ cao Quá trình mơ tả hình XI-2 V Giao diện nhập/xuất ứng dụng Trong phần này, thảo luận kỹ thuật cấu trúc giao diện cho hệ điều hành cho phép thiết bị nhập/xuất đối xử cách chuẩn, khơng đổi Thí dụ, giải thích ứng dụng mở tập tin đĩa mà khơng biết loại đĩa đĩa thiết bị khác thêm tới máy tính mà không làm hệ điều hành bị gián đoạn Như vấn đề công nghệ phần mềm phức tạp khác, tiếp cận liên quan đến tính trừu tượng, bao gói phân tầng phần mềm Đặc biệt, trừu tượng khác chi tiết thiết bị nhập/xuất cách xác định vài loại thông dụng Mỗi loại thông dụng truy xuất thông qua tập hợp hàm chuẩn-một giao diện Sự khác biệt bao gói module nhân gọi trình điều khiển thiết bị (device driver) mà qui định bên áp đặt cho thiết bị, nhập vào giao diện chuẩn Hình XI-3 hiển thị cách thành phần liên quan nhập/xuất nhân cấu trúc tầng phần mềm Biên soạn: Th.s Nguyễn Phú Trường - 09/2005 SinhVienZone.com Trang 245 https://fb.com/sinhvienzonevn Đại Học Cần Thơ - Khoa Cơng Nghệ Thơng Tin - Giáo Trình Hệ Điều Hành – V1.0 Hình 0-3 Cấu trúc nhân nhập/xuất Mục đích tầng chứa trình điều khiển thiết bị che đậy khác biệt điều khiển thiết bị từ hệ nhập/xuất nhân, nhiều lời gọi hệ thống nhập/xuất đóng gói hành vi thiết bị vài lớp phát sinh để che đậy khác biệt từ ứng dụng Thực hệ thống nhập/xuất độc lập với phần cứng đơn giản hóa cơng việc người phát triển hệ điều hành Nó đem lại thuận lợi cho nhà sản xuất phần cứng Họ thiết kế thiết bị tương thích với giao diện điều khiển chủ có (như SCSI-2) hay họ viết trình điều khiển thiết bị để giao tiếp phần cứng hệ điều hành phổ biến Do đó, thiết bị ngoại vi gán tới máy tính mà khơng phải chờ nhà cung cấp hệ điều hành phát triển thêm mã Tuy nhiên, số nhà sản xuất thiết bị phần cứng, loại hệ điều hành có chuẩn riêng cho giao diện trình điều khiển thiết bị Một thiết bị cho mang nhiều trình điều khiển-thí dụ, trình điều khiển cho MS-DOS, Windows 95/98, Windows NT/2000 Solaris Các thiết bị khác nhiều hướng hiển thị hình XI-4 Hình 0-4 Các đặc điểm thiết bị nhập/xuất Biên soạn: Th.s Nguyễn Phú Trường - 09/2005 SinhVienZone.com Trang 246 https://fb.com/sinhvienzonevn Đại Học Cần Thơ - Khoa Công Nghệ Thông Tin - Giáo Trình Hệ Điều Hành – V1.0 • • • • • • Dòng ký tự hay khối: thiết bị dòng ký tự chuyển byte một, ngược lại thiết bị khối chuyển đơn vị khối byte Truy xuất ngẫu nhiên: thiết bị chuyển liệu theo thứ tự cố định định nghĩa thiết bị, ngược lại người dùng thiết bị truy xuất ngẫu nhiên dẫn thiết bị để tìm vị trí lưu trữ liệu sẳn có Đồng bất đồng bộ: thiết bị đồng thiết bị thực việc chuyển liệu với số lần đáp ứng đốn trước Một thiết bị bất đồng hiển thị số lần đáp ứng không đặn hay khơng thể đốn trước Có thể chia sẻ hay tận hiến: thiết bị chia sẻ dùng đồng hành nhiều trình hay luồng; thiết bị tận hiến khơng thể Tốc độ thao tác: tốc độ thiết bị trải dài từ vài byte giây tới vài gigabyte giây Đọc-viết, đọc, hay viết: số thiết bị thực hai nhập, xuất, số thiết bị khác hỗ trợ hướng liệu VI Hệ thống nhập/xuất nhân (kernel I/O subsytem) Nhân cung cấp nhiều dịch vụ liên quan đến nhập/xuất Một vài dịch vụ-định thời biểu, vùng đệm (buffering), vùng lưu trữ (cache), đặt trước thiết bị, quản lý lỗiđược cung cấp hệ thống nhập/xuất nhân xây dựng phần cứng sở hạ tầng trình điều khiển thiết bị VI.1 Định thời biểu nhập/xuất Định thời biểu cho tập hợp yêu cầu nhập xuất có nghĩa xác định thứ tự tốt để thực thi chúng Thứ tự ứng dụng phát lời gọi hệ thống chọn lựa tốt Định thời biểu cải tiến tồn lực hệ thống, chia sẻ truy xuất thiết bị đồng trình giảm thời gian chờ đợi trung bình cho nhập/xuất hồn thành Người phát triển hệ điều hành cài đặt định thời biểu cách trì hàng đợi cho thiết bị Khi ứng dụng phát lời gọi hệ thống nhập/xuất nghẽn, yêu cầu đặt vào hàng đợi cho thiết bị Bộ định thời biểu nhập/xuất xếp lại thứ tự hàng đợi để cải tiến toàn tính hiệu hệ thống thời gian đáp ứng trung bình dựa theo kinh nghiệm ứng dụng Hệ điều hành cố gắng giữ bình đẳng không ứng dụng nhận dịch vụ nghèo nàn hay cho dịch vụ ưu tiên u cầu trì hỗn nhạy cảm Thí dụ, yêu cầu từ hệ thống nhớ ảo lấy độ ưu tiên qua yêu cầu ứng dụng Một cách mà hệ thống nhập/xuất cải tiến tính hiệu máy tính cách định thời biểu hoạt động nhập/xuất Một cách khác dùng khơng gian lưu trữ nhớ hay đĩa, với kỹ thuật gọi vùng đệm, vùng lưu trữ vùng chứa VI.2 Vùng đệm Vùng đệm vùng nhớ lưu trữ liệu chúng chuyển hai thiết bị hay thiết bị ứng dụng Vùng đệm thực với lý Biên soạn: Th.s Nguyễn Phú Trường - 09/2005 SinhVienZone.com Trang 247 https://fb.com/sinhvienzonevn Đại Học Cần Thơ - Khoa Công Nghệ Thông Tin - Giáo Trình Hệ Điều Hành – V1.0 • • • Lý thứ đối phó với việc khơng tương thích tốc độ người sản xuất người tiêu dùng dòng liệu Lý thứ hai cho việc sử dụng vùng làm thích ứng thiết bị có kích thước truyền liệu khác Lý thứ ba cho việc dùng vùng đệm hỗ trợ ngữ nghĩa chép cho nhập/xuất ứng dụng VI.3 Vùng lưu trữ Vùng lưu trữ (cache) vùng nhớ nhanh quản lý liệu Truy xuất tới lưu trữ hiệu truy xuất tới gốc Thí dụ, thị q trình chạy lưu đĩa, lưu trữ nhớ vật lý chép lần vùng lưu trữ phụ Sự khác vùng đệm vùng lưu trữ vùng đệm giữ thành phần liệu có, ngược lại vùng lưu trữ giữ vừa đủ thiết bị lưu trữ nhanh thành phần nằm nơi khác.Vùng lưu trữ vùng đệm có chức khác đơi vùng nhớ dùng cho hai mục đích VI.4 Vùng chứa đặt trước thiết bị Một vùng chứa (spool) vùng đệm giữ liệu xuất cho thiết bị máy in mà chấp nhận dòng liệu đan xen Mặc dù máy in phục vụ cơng việc thời điểm, nhiều ứng dụng muốn in đồng thời mà khơng có liệu xuất chúng đan xen với Hệ điều hành giải vấn đề cách ngăn chặn tất liệu xuất tới máy in Dữ liệu xuất ứng dụng chứa tập tin riêng Khi ứng dụng kết thúc việc in, hệ thống vùng chứa xếp tập tin chứa tương ứng cho liệu xuất tới máy in Hệ thống vùng chứa chép tập tin xếp hàng tới máy in tập tin thời điểm Trong hệ điều hành, vùng chứa quản lý trình hệ thống chạy chế độ Trong số hệ điều hành khác, quản lý luồng nhân Trong trường hợp, hệ điều hành cung cấp giao diện điều khiển cho phép người dùng người quản trị hệ thống hiển thị hàng đợi để xóa công việc không mong muốn trước công việc in, để tạm dừng việc in máy in phục vụ, VI.5 Quản lý lỗi Một hệ điều hành sử dụng nhớ bảo vệ chống lại nhiều lỗi phần cứng ứng dụng lỗi tồn hệ thống khơng kết trục trặc học thứ yếu Các thiết bị truyền nhập/xuất bị lỗi nhiều cách, lý tạm thời mạng trở nên tải, hay lý thường xuyên trình điều khiển đĩa bị lỗi Các hệ điều hành thường trả giá cho tính hiệu lỗi tạm thời Thí dụ, lỗi đọc đĩa read() dẫn đến cố gắng làm lại read() lỗi gởi liệu mạng send() dẫn tới việc gởi lại resend() giao thức xác định rõ Tuy nhiên, thành phần quan trọng bị lỗi thường xun hệ điều hành khơng nghĩ đến việc phục hồi Như qui tắc thông thường, lời gọi hệ thống nhập/xuất trả bit thông tin trạng thái lời gọi, biểu thị thành công hay thất bại Trong hệ điều hành UNIX, biến nguyên có tên errno dùng để trả mã lỗi- Biên soạn: Th.s Nguyễn Phú Trường - 09/2005 SinhVienZone.com Trang 248 https://fb.com/sinhvienzonevn Đại Học Cần Thơ - Khoa Cơng Nghệ Thơng Tin - Giáo Trình Hệ Điều Hành – V1.0 100 giá trị-hiển thị tính tự nhiên lỗi (thí dụ: đối số vượt giới hạn, lỗi trỏ, tập tin mở, ) Ngược lại, số phần cứng cung cấp thông tin lỗi mô tả chi tiết nhiều hệ điều hành không thiết kế để truyền đạt thông tin tới ứng dụng VI.6 Cấu trúc liệu nhân Nhân cần giữ thông tin trạng thái việc dùng thành phần nhập/xuất Nó thực thông qua dãy cấu trúc liệu nhân bảng tập tin mở Nhân dùng nhiều cấu trúc tương tự để ghi vết nối kết 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 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 (thí 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 • Định thời biểu nhập/xuất • Đ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ị Cấp cao hệ thống nhập/xuất truy xuất thiết bị qua giao diện đồng cung cấp trình điều khiển thiết bị VII Chuyển 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 cách hệ điều hành nối kết 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 thí dụ đọc tập tin từ đĩa Ứng dụng tham chiếu tới liệu 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ật 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 XI-5 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 Biên soạn: Th.s Nguyễn Phú Trường - 09/2005 SinhVienZone.com Trang 249 https://fb.com/sinhvienzonevn Đại Học Cần Thơ - Khoa Công Nghệ Thông Tin - Giáo Trình Hệ Điều Hành – V1.0 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 q trình xóa từ hàng đợi thực thi đặ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 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 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ận ngắt bằng 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 yêu cầu nhập/xuất hoà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 q trình yêu cầu di chuyển trình từ hàng đợi chờ tới hàng đợi sẳn sàng 10) Di chuyển q trình tới hàng đợi sẳn sàng khơng làm nghẽn trình Khi định thời biểu gán trình tới CPU, trình tiếp tục thực thi thời điểm hoàn thành lời gọi hệ thống Biên soạn: Th.s Nguyễn Phú Trường - 09/2005 SinhVienZone.com Trang 250 https://fb.com/sinhvienzonevn Đại Học Cần Thơ - Khoa Công Nghệ Thông Tin - Giáo Trình Hệ Điều Hành – V1.0 Hình 0-5 Chu trình sống yêu cầu nhập/xuất VIII Năng lực Nhập/xuất yếu tố quan trọng lực hệ thống Nó đặt nhiều yêu cầu CPU để thực thi mã trình điều khiển thiết bị định thời biểu q trình cơng hiệu q trình nghẽn khơng nghẽn Chuyển đổi ngữ cảnh trọng đến CPU vùng lưu trữ phần cứng Nhập/xuất hiển thị tính khơng hiệu chế quản lý ngắt nhân, nhập/xuất tải xuống bus nhớ suốt thời gian chép vùng đệm nhân không gian liệu ứng dụng Chép cách hợp lý tất yêu cầu quan tâm kiến trúc máy tính Mặc dù máy tính đại quản lý hàng ngàn ngắt giây, quản lý ngắt tác vụ tương đối đắt: ngắt gây cho hệ thống thực thay đổi trạng thái, để thực thi quản lý ngắt sau phục hồi trạng thái Nhập/xuất lập trình hiệu nhập/xuất hướng ngắt (interrupt-driven I/O) số chu kỳ tiêu tốn cho việc chờ đợi bận khơng q mức Hồn thành thao tác nhập/xuất khơng nghẽn q trình dẫn đến tồn chi phí việc chuyển đổi ngữ cảnh Biên soạn: Th.s Nguyễn Phú Trường - 09/2005 SinhVienZone.com Trang 251 https://fb.com/sinhvienzonevn Đại Học Cần Thơ - Khoa Công Nghệ Thông Tin - Giáo Trình Hệ Điều Hành – V1.0 Chúng ta tận dụng nhiều nguyên tắc để cải tiến tính hiệu nhập/xuất: • Cắt giảm số lượng chuyển ngữ cảnh • Cắt giảm số lần liệu phải chép vào nhớ truyền thiết bị ứng dụng • Cắt giảm tần số xuất ngắt cách dùng truyền lớn, điều khiển thông tin vùng chứa (nếu chờ đợi bận nhỏ nhất) • Gia tăng tính đồng hành dùng điều khiển tri thức DMA (DMAknowledgeable controllers) hay kênh để giảm gánh nặng chép liệu đơn giản từ CPU • Di chuyển hàm xử lý vào phần cứng, phép họat động chúng điều khiển thiết bị đồng hành với thao tác CPU bus • Cân CPU, hệ nhớ, bus lực nhập/xuất tải vùng gây rảnh rỗi vùng khác Ở chức nhập/xuất nên cài đặt-trong phần cứng thiết bị, trình điều khiển thiết bị hay phần mềm ứng dụng? Chúng ta quan sát tiến trình mơ tả hình XI-6 Hình 0-6 Tiến trình mơ tả chức thiết bị • • • Khởi đầu, cài đặt giải thuật nhập/xuất thử nghiệm cấp ứng dụng mã ứng dụng linh họat lỗi ứng dụng không gây sụp đổ hệ thống Ngoài ra, phát triển mã cấp ứng dụng, tránh yêu cầu khởi động hay nạp lại trình điều khiển thiết bị sau thay đổi tới mã Tuy nhiên, cài đặt cấp ứng dụng khơng đủ chi phí chuyển ngữ cảnh ứng dụng lấy lợi điểm cấu trúc liệu nhân bên chức nhân (như truyền thơng điệp hữu hiệu nhân, luồng khóa) Khi giải thuật cấp ứng dụng chứng minh tính giá trị nó, cài đặt lại nhân Điều cải tiến lực nỗ lực phát triển có thử thách nhiều nhân hệ điều hành lớn, phần mềm hệ thống phức tạp Ngoài ra, việc cài đặt nhân phải gỡ rối toàn để tránh hư hỏng liệu sụp đổ hệ thống Năng lực cao đạt cài đặt chuyên dụng phần cứng, thiết bị hay điều khiển Sự bất lợi việc cài đặt phần cứng Biên soạn: Th.s Nguyễn Phú Trường - 09/2005 SinhVienZone.com Trang 252 https://fb.com/sinhvienzonevn Đại Học Cần Thơ - Khoa Công Nghệ Thơng Tin - Giáo Trình Hệ Điều Hành – V1.0 gồm khó khăn chi phí việc tạo cải tiến xa hay sửa lỗi, thời gian phát triển tăng (tháng ngày) khả linh hoạt giảm IX Tóm tắt Các thành phần phần cứng nạp vào nhập/xuất bus, điều khiển thiết bị, thiết bị Công việc chuyển liệu thiết bị nhớ thực CPU nhập/xuất lập trình, hay chuyển tải tới điều khiển DMA Module nhân điều khiển thiết bị trình điều khiển thiết bị Giao diện lời gọi hệ thống cung cấp tới ứng dụng thiết kế để quản lý nhiều chủng loại phần cứng, sockets mạng đếm thời gian đến lập trình Hệ nhập/xuất nhân cung cấp nhiều dịch vụ Các dịch vụ định thời biểu nhập/xuất, vùng đệm, vùng chứa, quản lý lỗi đặt trước thiết bị Một dịch vụ khác dịch tên, để tạo nối kết thiết bị phần cứng tên tập tin tượng trưng dùng ứng dụng Nó liên quan nhiều cấp ánh xạ mà dịch từ tên chuỗi ký tự tới trình điều khiển thiết bị xác định địa thiết bị sau tới địa vật lý cổng nhập/xuất hay điều khiển bus Các lời gọi hệ thống nhập/xuất tính chi phí theo thuật ngữ tiêu tốn CPU nhiều lớp phần mềm thiết bị vật lý ứng dụng Các lớp ngụ ý chi phí chuyển ngữ cảnh để qua phạm vi bảo vệ nhân, tín hiệu quản lý ngắt để phục vụ thiết bị nhập/xuất, tải CPU hệ thống nhớ để chép liệu vùng đệm nhân không gian ứng dụng Biên soạn: Th.s Nguyễn Phú Trường - 09/2005 SinhVienZone.com Trang 253 https://fb.com/sinhvienzonevn ... bus, điều khiển thiết bị, thiết bị Công việc chuyển liệu thiết bị nhớ thực CPU nhập/xuất lập trình, hay chuyển tải tới điều khiển DMA Module nhân điều khiển thiết bị trình điều khiển thiết bị Giao... 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 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 6) Trình điều khiển thăm... nhiên, số nhà sản xuất thiết bị phần cứng, loại hệ điều hành có chuẩn riêng cho giao diện trình điều khiển thiết bị Một thiết bị cho mang nhiều trình điều khiển-thí dụ, trình điều khiển cho MS-DOS,

Ngày đăng: 28/01/2020, 22:23

Mục lục

  • QUẢN LÝ HỆ THỐNG NHẬP/XUẤT

    • I Mục đích

    • Giới thiệu

    • III Các khái niệm cơ bản

    • IV Phần cứng nhập/xuất

      • IV.1 Thăm dò

      • IV.2 Ngắt

      • IV.3 Truy xuất bộ nhớ trực tiếp

      • V Giao diện nhập/xuất ứng dụng

      • VI Hệ thống con nhập/xuất của nhân (kernel I/O subsytem)

        • VI.1 Định thời biểu nhập/xuất

        • VI.2 Vùng đệm

        • VI.3 Vùng lưu trữ

        • VI.4 Vùng chứa và đặt trước thiết bị

        • VI.5 Quản lý lỗi

        • VI.6 Cấu trúc dữ liệu nhân

        • VII Chuyển nhập/xuất tới hoạt động phần cứng

        • VIII Năng lực

        • IX Tóm tắt

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

Tài liệu liên quan