Bài giảng Hệ điều hành

Hệ điều hành là thành phần quan trọng trong hệthống máy tính. Nắm vững kiến thức về

hệ điều hành là cơsởcho việc hiểu biết sâu sắc hệthống máy tính nói chung. Chính vì vậ y,

kiến thức vềhệ điều hành là phần kiến thức bắt buộc đối với chuyên gia vềcông nghệthông

tin và các ngành liên quan.

Môn học Hệ điều hành là môn học cơsởtrong chương trình đào tạo đại học, cao đẳng

ngành công nghệthông tin. Kiến thức liên quan tới hệ điều hành có thể được cung cấp từba

khía cạnh. Thứnhất, đó là kỹnăng vềviệc cài đặt, sửdụng, khai thác, đánh giá hệ điều hành

một cách hiệu quả. Các kiến thức này rất cần thiết cho người sửdụng cũng nhưnhững chuyên

gia vềvận hành, phục vụhạtầng tính toán nói chung. Thứhai, hệ điều hành được xem xét từ

khía cạnh thiết kếvà xây dựng. Đây là những kiến thức cần thiết cho chuyên gia v ềhệthống

hoặc những người sẽtham gia thiết kế, xây dựng hệ điều hành. Thứba, đó là kiến thức vềcác

khái niệm và nguyên lý chung vềhệ điều hành nhưmột thành phần quan trọng của hệthống

máy tính. Đây là những kiến thức chung, cần thiết cho các đối tượng dạng một và hai ởtrên,

đồng thời là kiến thức cơsởcho những người có chuyên môn liên quan tới máy tính. Cần lưu

ý rằng việc phân chia này là tương đối và các khối kiến thức có liên quan đến nhau.

Trong tài liệu này, hệ điều hành được trình bày theo khía cạnh thứba với mục đích cung

cấp kiến thức vềcác khái niệm và nguyên lý hoạt động của hệ điều hành, từ đây giúp người

đọc có hiểu biết sâu hơn vềhệthống máy tính. Những nguyên lý và khái niệm trình bày trong

tài liệu mang tính tổng quát cho hệ điều hành nói chung, thay vì dựa trên một h ệ điều hành cụ

thể. Tuy nhiên, đểgiúp người đọc có được liên kết giữa lý thuy ết và th ực tế, một sốkỹ thu ật

trong h ệ điều hành cụthểsẽ được trình bày nhưnhững ví dụminh họa

pdf139 trang | Chia sẻ: luyenbuizn | Lượt xem: 1105 | Lượt tải: 1download
Bạn đang xem trước 20 trang nội dung tài liệu Bài giảng Hệ điều hành, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG ---------------------------- TỪ MINH PHƯƠNG BÀI GIẢNG Hệ điều hành Hà nội 2009 Từ Minh Phương - HVCNBCVT 2 LỜI NÓI ĐẦU Hệ điều hành là thành phần quan trọng trong hệ thống máy tính. Nắm vững kiến thức về hệ điều hành là cơ sở cho việc hiểu biết sâu sắc hệ thống máy tính nói chung. Chính vì vậy, kiến thức về hệ điều hành là phần kiến thức bắt buộc đối với chuyên gia về công nghệ thông tin và các ngành liên quan. Môn học Hệ điều hành là môn học cơ sở trong chương trình đào tạo đại học, cao đẳng ngành công nghệ thông tin. Kiến thức liên quan tới hệ điều hành có thể được cung cấp từ ba khía cạnh. Thứ nhất, đó là kỹ năng về việc cài đặt, sử dụng, khai thác, đánh giá hệ điều hành một cách hiệu quả. Các kiến thức này rất cần thiết cho người sử dụng cũng như những chuyên gia về vận hành, phục vụ hạ tầng tính toán nói chung. Thứ hai, hệ điều hành được xem xét từ khía cạnh thiết kế và xây dựng. Đây là những kiến thức cần thiết cho chuyên gia về hệ thống hoặc những người sẽ tham gia thiết kế, xây dựng hệ điều hành. Thứ ba, đó là kiến thức về các khái niệm và nguyên lý chung về hệ điều hành như một thành phần quan trọng của hệ thống máy tính. Đây là những kiến thức chung, cần thiết cho các đối tượng dạng một và hai ở trên, đồng thời là kiến thức cơ sở cho những người có chuyên môn liên quan tới máy tính. Cần lưu ý rằng việc phân chia này là tương đối và các khối kiến thức có liên quan đến nhau. Trong tài liệu này, hệ điều hành được trình bày theo khía cạnh thứ ba với mục đích cung cấp kiến thức về các khái niệm và nguyên lý hoạt động của hệ điều hành, từ đây giúp người đọc có hiểu biết sâu hơn về hệ thống máy tính. Những nguyên lý và khái niệm trình bày trong tài liệu mang tính tổng quát cho hệ điều hành nói chung, thay vì dựa trên một hệ điều hành cụ thể. Tuy nhiên, để giúp người đọc có được liên kết giữa lý thuyết và thực tế, một số kỹ thuật trong hệ điều hành cụ thể sẽ được trình bày như những ví dụ minh họa. Các nội dung của tài liệu được trình bày thành bốn chương. Chương 1 bao gồm những khái niệm chung về hệ điều hành, vai trò trong hệ thống máy tính, các thành phần chức năng và một số kiểu kiến trúc thông dụng. Chương 1 cũng tóm tắt quá trình hình thành và phát triển hệ điều hành, qua đó trình bày một số khái niệm và kỹ thuật quan trọng trong hệ điều hành hiện này. Kết thúc chương là ví dụ một số hệ điều hành tiêu biểu. Chương 2 trình bày về quản lý tiến trình trong hệ điều hành, tập trung vào quản lý tiến trình trong hệ thống với một CPU và nhiều tiến trình. Những nội dung chính của chương bao gồm: khái niệm tiến trình, trạng thái tiến trình, các thao tác và thông tin quản lý tiến trình, dòng thực hiện, vấn đề điều độ tiến trình, đồng bộ hóa các tiến trình đồng thời. Chương 3 trình bày về quản lý bộ nhớ. Nội dung chính của chương 3 bao gồm: các vấn đề liên quan tới bộ nhớ và địa chỉ, một số kỹ thuật tổ chức chương trình, kỹ thuật phân chương, phân trang, phân đoạn bộ nhớ, khái niệm và cách tổ chức quản lý bộ nhớ ảo. Những khái niệm lý thuyết trình bày trong chương được minh họa qua hai ví dụ: hỗ trợ quản lý bộ nhớ trong vi xử lý Intel Pentium, và quản lý bộ nhớ trong hệ điều hành Windows XP. Từ Minh Phương - HVCNBCVT 3 Chương 4 trình bày về hệ thống file với những nội dung chính sau: khái niệm file và thư mục, các thao tác với file và thư mục, tổ chức bên trong của file và thư mục, vấn đề cấp phát và quản lý không gian lưu trữ của file, các vấn đề về độ tin cậy và an toàn bảo mật của hệ thống file. Tài liệu được biên soạn từ kinh nghiệm giảng dạy học phần Hệ điều hành tại Học viện Công nghệ bưu chính viễn thông, trên cơ sở tiếp thu phản hồi từ sinh viên và đồng nghiệp của tác giả. Tài liệu có thể sử dụng làm tài liệu học tập cho sinh viên đại học, cao đẳng ngành công nghệ thông tin và các ngành liên quan, ngoài ra có thể sử dụng với mục đích tham khảo cho những người quan tâm tới hệ điều hành và hệ thống máy tính. Trong quá trình biên soạn tài liệu, mặc dù tác giả đã có nhiều cố gắng song không thể tránh khỏi những thiếu sót. Ngoài ra, hệ điều hành là một lĩnh vực có nhiều thay đổi của khoa học máy tính đòi hỏi tài liệu về hệ điều hành phải được cập nhật thường xuyên. Tác giả rất mong muốn nhận được ý kiến phản hồi, góp ý cho các thiếu sót cũng như ý kiến về việc cập nhật, hoàn thiện nội dung của tài liệu. Hà nội 12/2009 TÁC GIẢ Từ Minh Phương - HVCNBCVT 4 MỤC LỤC CHƯƠNG 1: GIỚI THIỆU CHUNG ................................................................................ 8 1.1. CÁC THÀNH PHẦN CỦA HỆ THỐNG MÁY TÍNH ................................................ 8 1.2. KHÁI NIỆM HỆ ĐIỀU HÀNH .................................................................................. 9 1.3. CÁC DNCH VỤ DO HỆ ĐIỀU HÀNH CUNG CẤP ................................................. 11 1.4. GIAO DIỆN LẬP TRÌNH CỦA HỆ ĐIỀU HÀNH ................................................... 13 1.5. QUÁ TRÌNH PHÁT TRIỂN HỆ ĐIỀU HÀNH ........................................................ 14 1.6. CẤU TRÚC HỆ ĐIỀU HÀNH ................................................................................. 17 1.6.2. Nhân của hệ điều hành ...................................................................................... 19 1.6.3. Một số kiểu cấu trúc hệ điều hành ..................................................................... 20 1.7. MỘT SỐ HỆ ĐIỀU HÀNH CỤ THỂ ........................................................................ 24 CHƯƠNG 2: QUẢN LÝ TIẾN TRÌNH .......................................................................... 27 2.1. CÁC KHÁI NIỆM LIÊN QUAN ĐẾN TIẾN TRÌNH ............................................... 27 2.1.1. Tiến trình là gì ................................................................................................... 27 2.1.2. Trạng thái của tiến trình..................................................................................... 28 2.1.3. Thông tin mô tả tiến trình .................................................................................. 29 2.1.4. Bảng và danh sách tiến trình .............................................................................. 30 2.1.5. Các thao tác với tiến trình .................................................................................. 31 2.2. DÒNG ...................................................................................................................... 34 2.2.1. Dòng thực hiện là gì .......................................................................................... 34 2.2.2. Tài nguyên của tiến trình và dòng ...................................................................... 35 2.2.3. Ưu điểm của mô hình đa dòng ........................................................................... 36 2.2.4. Dòng mức người dùng và dòng mức nhân ......................................................... 37 2.3. ĐIỀU ĐỘ TIẾN TRÌNH ........................................................................................... 39 2.3.1. Khái niệm điều độ ............................................................................................. 39 2.3.2. Các dạng điều độ ............................................................................................... 40 2.3.3. Các tiêu chí điều độ ........................................................................................... 42 2.3.4. Các thuật toán điều độ ....................................................................................... 43 2.4. ĐỒNG BỘ HÓA TIẾN TRÌNH ĐỒNG THỜI .......................................................... 47 2.4.1. Các vấn đề đối với tiến trình đồng thời .............................................................. 48 2.4.2. Yêu cầu với giải pháp cho đoạn nguy hiểm ........................................................ 50 2.4.3. Giải thuật Peterson ............................................................................................ 50 2.4.4. Giải pháp phần cứng .......................................................................................... 52 2.4.5. Cờ hiệu (semaphore) ......................................................................................... 54 Từ Minh Phương - HVCNBCVT 5 2.4.6. Một số bài toán đồng bộ .................................................................................... 56 2.4.7. Monitor ............................................................................................................. 58 2.4.8. Bế tắc ................................................................................................................ 61 CHƯƠNG 3: QUẢN LÝ BỘ NHỚ ................................................................................. 70 3.1. ĐNA CHỈ VÀ CÁC VẤN ĐỀ LIÊN QUAN .............................................................. 70 3.1.1. Vấn đề gán địa chỉ ............................................................................................. 70 3.1.2. Địa chỉ lô gic và địa chỉ vật lý ........................................................................... 71 3.2. MỘT SỐ CÁCH TỔ CHỨC CHƯƠNG TRÌNH ....................................................... 72 3.2.1. Tải trong quá trình thực hiện ............................................................................. 72 3.2.2. Liên kết động và thư viện dùng chung ............................................................... 72 3.3. PHÂN CHƯƠNG BỘ NHỚ ..................................................................................... 74 3.3.1. Phân chương cố định ......................................................................................... 74 3.3.2. Phân chương động ............................................................................................. 76 3.3.3. Phương pháp kề cận .......................................................................................... 78 3.3.4. Ánh xạ địa chỉ và chống truy cập bộ nhớ trái phép............................................. 79 3.3.5. Trao đổi giữa bộ nhớ và đĩa (swapping) ............................................................. 80 3.4. PHÂN TRANG BỘ NHỚ ......................................................................................... 80 3.4.1. Khái niệm phân trang bộ nhớ ............................................................................. 81 3.4.2. Ánh xạ địa chỉ ................................................................................................... 82 3.4.3. Tổ chức bảng phân trang ................................................................................... 83 3.5. PHÂN ĐOẠN BỘ NHỚ ........................................................................................... 85 3.5.1 Khái niệm........................................................................................................... 85 3.5.2. Ánh xạ địa chỉ và chống truy cập trái phép ........................................................ 85 3.5.3. Kết hợp phân đoạn với phân trang ..................................................................... 86 3.6. BỘ NHỚ ẢO ............................................................................................................ 87 3.6.1. Khái niệm bộ nhớ ảo ......................................................................................... 87 3.6.2. Nạp trang theo nhu cầu ...................................................................................... 88 3.7. ĐỔI TRANG ............................................................................................................ 90 3.7.1. Tại sao phải đổi trang ........................................................................................ 90 3.7.2. Các chiến lược đổi trang .................................................................................... 92 3.8. CẤP PHÁT KHUNG TRANG .................................................................................. 96 3.8.1. Giới hạn số lượng khung ................................................................................... 96 3.8.2. Phạm vi cấp phát khung..................................................................................... 97 3.9. TÌNH TRẠNG TRÌ TRỆ .......................................................................................... 98 3.10. QUẢN LÝ BỘ NHỚ TRONG INTEL PENTIUM .................................................. 99 3.11. QUẢN LÝ BỘ NHỚ TRONG WINDOWS XP .................................................... 102 Từ Minh Phương - HVCNBCVT 6 CHƯƠNG 4: HỆ THỐNG FILE ................................................................................... 103 4.1. KHÁI NIỆM FILE .................................................................................................. 103 4.1.1. File là gì ? ....................................................................................................... 103 4.1.2. Thuộc tính của file........................................................................................... 104 4.1.3. Cấu trúc file .................................................................................................... 106 4.2. CÁC PHƯƠNG PHÁP TRUY CẬP FILE .............................................................. 106 4.2.1. Truy cập tuần tự .............................................................................................. 107 4.2.2. Truy cập trực tiếp ............................................................................................ 107 4.2.3. Truy cập dựa trên chỉ số .................................................................................. 108 4.3. CÁC THAO TÁC VỚI FILE .................................................................................. 109 4.4. THƯ MỤC ............................................................................................................. 111 4.4.1. Khái niệm thư mục .......................................................................................... 111 4.4.2. Các thao tác với thư mục ................................................................................. 112 4.4.3. Cấu trúc hệ thống thư mục ............................................................................... 112 4.4.4. Tên đường dẫn ................................................................................................ 117 4.5. CẤP PHÁT KHÔNG GIAN CHO FILE ................................................................. 117 4.5.1. Cấp phát các khối liên tiếp ............................................................................... 118 4.5.2. Sử dụng danh sách kết nối ............................................................................... 119 4.5.3. Sử dụng danh sách kết nối trên bảng chỉ số ...................................................... 120 4.5.4. Sử dụng khối chỉ số ......................................................................................... 121 4.6. QUẢN LÝ KHÔNG GIAN TRÊN ĐĨA .................................................................. 123 4.6.1. Kích thước khối ............................................................................................... 123 4.6.2. Quản lý các khối trống .................................................................................... 124 4.7. TỔ CHỨC BÊN TRONG CỦA THƯ MỤC ........................................................... 125 4.7.1. Danh sách........................................................................................................ 125 4.7.2. Cây nhị phân ................................................................................................... 125 4.7.3. Bảng băm ........................................................................................................ 126 4.7.4. Tổ chức thư mục của DOS (FAT) .................................................................... 126 4.7.5. Thư mục của Linux ......................................................................................... 127 4.8. ĐỘ TIN CẬY CỦA HỆ THỐNG FILE .................................................................. 127 4.8.1. Phát hiện và loại trừ các khối hỏng .................................................................. 127 4.8.2. Sao dự phòng .................................................................................................. 128 4.9. BẢO MẬT CHO HỆ THỐNG FILE ....................................................................... 130 4.9.1. Sử dụng mật khNu ............................................................................................ 131 4.9.2. Danh sách quản lý truy cập .............................................................................. 131 4.10. HỆ THỐNG FILE FAT ........................................................................................ 132 Từ Minh Phương - HVCNBCVT 7 4.10.1. Đĩa lôgic........................................................................................................ 133 4.10.2. Boot sector .................................................................................................... 134 4.10.3. Bảng FAT ..................................................................................................... 136 4.10.4. Thư mục gốc ................................................................................................. 137 TÀI LIỆU THAM KHẢO .................................................................................................. 139 Giới thiệu chung Từ Minh Phương - HVCNBCVT 8 CHƯƠNG 1: GIỚI THIỆU CHUNG 1.1. CÁC THÀNH PHẦN CỦA HỆ THỐNG MÁY TÍNH Một hệ thống máy tính nói chung có thể phân chia sơ bộ thành phần cứng và phần mềm. Phần cứng cung cấp các tài nguyên cần thiết cho việc tính toán, xử lý dữ liệu. Phần mềm gồm các chương trình quy định cụ thể việc xử lý đó. Để thực hiện công việc tính toán hoặc xử lý dữ liệu cụ thể cần có các chương trình gọi là chương trình ứng dụng. Có thể kể một số chương trình ứng dụng thường gặp như chương trình soạn thảo văn bản, chương trình trò chơi, hệ quản trị cơ sở dữ liệu, chương trình truyền thông .v.v. Phần cứng có thể biểu diễn như lớp dưới cùng, là cơ sở của toàn hệ thống. Đây là những thiết bị cụ thể như CPU, bộ nhớ, thiết bị nhớ ngoài, thiết bị vào ra. Chương trình ứng dụng là lớp trên của hệ thống, là phần mà người dùng xây dựng nên và tương tác trong quá trình giải quyết các nhiệm vụ của mình. (Khái niệm người dùng ở đây bao gồm cả người sử dụng thuần tuý lẫn người viết ra các chương trình ứng dụng) Ngoài phần cứng và trình ứng dụng, hệ thống máy tính còn có một thành phần quan trọng là hệ điều hành. Hệ điều hành là phần mềm đóng vai trò trung gian giữa phần cứng và người sử dụng cùng các chương trình ứng dụng của họ. Nhiệm vụ của hệ điều hành là làm cho việc sử dụng hệ thống máy tính được tiện lợi và hiệu quả. Các chương trình ứng dụng khi chạy đều cần thực hiện một số thao tác chung như điều khiển thiết bị vào ra. Những thao tác phân phối và điều khiển tài nguyên chung như vậy sẽ được gộp chung lại trong phạm vi hệ điều hành. Ngoài chương trình ứng dụng và hệ điều hành còn có các chương trình hệ thống và chương trình tiện ích. Đây là những chương trình được xây dựng để thực hiện những thao tác thường diễn ra trong hệ thống hoặc giúp người dùng thực hiện một số công việc dễ dàng hơn. Các thành phần của hệ thống máy tính được thể hiện trên hình 1.1, trong đó phần cứng là lớp dưới cùng và người dùng giao tiếp với trình ứng dụng là thành phần trên cùng của hệ thống. Hình 1.1: Các thành phần của hệ thống máy tính Chương trình ứng dụng, chương trình hệ thống và tiện ích Hệ điều hành Phần cứng Người sử dụng Giới thiệu chung Từ Minh Phương - HVCNBCVT 9 1.2. KHÁI NIỆM HỆ ĐIỀU HÀNH Có nhiều cách định nghĩa khác nhau về hệ điều hành, nhưng thông thường, hệ điều hành được định nghĩa thông qua mục đích, vai trò, và chức năng trong hệ thống máy tính. Hệ điều hành là hệ thống phần mềm đóng vai trò trung gian giữa người sử dụng và phần cứng máy tính nhằm tạo ra môi trường giúp thực hiện các chương trình một cách thuận tiện và hiệu quả. Để hoàn thành vai trò của mình, hệ điều hành cần thực hiện hai chức năng cơ bản là quản lý tài nguyên và quản lý việc thực hiện các chương trình. Ta sẽ xem xét kỹ hai chức năng này của hệ điều hành. Quản lý tài nguyên Quản lý tài nguyên đảm bảo cho tài nguyên hệ thống được sử dụng một cách có ích và hiệu quả. Nhờ có hệ điều hành, tài nguyên được quản lý và sử dụng hợp lý hơn trong khi người sử dụng được giải phóng khỏi công việc khó khăn này. Các tài nguyên phần cứng chủ yếu của máy tính gồm có bộ xử lý (CPU), bộ nhớ chính, bộ nhớ thứ cấp, các thiết bị vào ra. CPU là thành phần trung tâm của hệ thống, có chức năng xử lý dữ liệu và điều khiển toàn hệ thống. Bộ nhớ chính là nơi lưu trữ chương trình và dữ liệu trong quá trình xử lý. Bộ nhớ thứ cấp, hay bộ nhớ ngoài, bao gồm các đĩa từ, đĩa quang học, đĩa quang từ, băng từ, thẻ nhớ và các thiết bị nhớ khác có vai trò lưu trữ chương trình, dữ liệu trong thời gian dài với dung lượng lớn. Thiết bị vào ra cho phép máy tính trao đổi thông tin với thế giới bên ngoài. Quản lý tài nguyên trước hết là phân phối tài nguyên tới các ứng dụng một cách hiệu quả. Để thực hiện được, các chương trình cần tài nguyên phần cứng như không gian bộ nhớ, thiết bị ngoại vi. Yêu cầu tài nguyên được hệ điều hành thu nhận và đáp ứng bằng cách cấp cho chương trình các tài nguyên tương ứng. Muốn cấp phát tài nguyên, hệ điều hành cần lưu trữ tình trạng tài nguyên để biết hiện giờ tài nguyên nào còn trống, tài nguyên nào đang được sử dụng. Một ví dụ điển hình là trường hợp lưu trữ thông tin lên đĩa. Hệ điều hành cần biết những vùng nào trên đĩa chưa được sử dụng để ghi thông tin lên những vùng này. Việc ghi thông tin lên vùng trống cũng cần được tính toán sao cho quá trình truy cập tới thông tin khi cần có thể thực hiện nhanh nhất. Yêu cầu về phần cứng của các chương trình này có thể mâu thuẫn nhau. Chẳng hạn, hai chương trình cùng có yêu cầu ghi ra đĩa một lúc. Trong trường hợp xuất hiện các yêu cầu mâu thuẫn khác về phần cứng như ví dụ này, hệ điều hành sẽ quyết định thứ tự và thời gian cung cấp tài nguyên cho các chương trình sao cho đạt được mục tiêu tính toán của hệ thống đồng thời tối ưu hoá một số tiêu chí nào đó, chẳng hạn giảm thời gian các chương trình phải tạm ngừng để chờ đợi lẫn nhau.v.v. Giới thiệu chung Từ Minh Phương - HVCNBCVT 10 Quản lý tài nguyên còn có nghĩa là đảm bảo sao cho chương trình không xâm phạm tài nguyên đã cấp cho chương trình khác. Ví dụ, nếu hai chương trình được cấp hai vùng bộ nhớ khác nhau, thì việc chương trình này truy cập và thay đổi vùng bộ nhớ của chương trình khác sẽ làm cho chương trình đó hoạt động không bình thường. Hệ điều hành cần thể hiện chức năng quản lý tài nguyên của mình qua việc ngăn ngừa những vi phạm kiểu này. Quản lý việc thực hiện các chương trình Nhiệm vụ quan trọng nhất của máy tính là thực hiện các chương trình. Một chương trình đang trong quá trình thực hiện được gọi là tiến trình (process). Chương trình cần được quản lý để có thể thực hiện thuận lợi, tránh các lỗi, đồng thời đảm bảo môi trường để việc xây dựng và thực hiện chương trình được thuận lợi. Hệ điều hành giúp việc chạy chương trình dễ dàng hơn. Để chạy chương trình cần thực hiện một số thao tác nhất định, nhờ có hệ điều hành, người dùng không phải thực hiện các thao tác này. Để tạo môi trường thuận lợi cho chương trình, hệ điều hành tạo ra các máy ảo. Máy ảo là các máy lôgic với những tài nguyên ảo có các tính chất và khả năng khác so với tài nguyên thực: dễ sử dụng hơn, dễ lập trình hơn, số lượng nhiều hơn tài nguyên thực thực, khả năng có thể vượt quá khả năng tài nguyên thực. Tài nguyên ảo là bản mô phỏng của tài nguyên thực được thực hiện bằng phần mềm. Tài nguyên ảo giống tài nguyên thực ở chỗ nó cung cấp các dịch vụ cơ bản như tài nguyên thực. Chẳng hạn, processor ảo cung cấp khả năng thực hiện các lệnh, bộ nhớ ảo cung cấp khả năng lưu trữ thông tin, thiết bị vào/ra ảo cho phép chương trình đọc ghi dữ liệu. Tài nguyên ảo khác tài nguyên thực ở chỗ dễ sử dụng hơn. Các tài nguyên thực đều rất khó lập trình trực tiếp. Lấy ví dụ việc ghi thông tin ra đĩa cứng. Các đĩa cứng thường được lập trình bằng cách ghi một số lệnh ra các thanh ghi điều khiển. Các thanh ghi khác làm nhiệm vụ chứa thông tin cần trao đổi và trạng thái đĩa. Để thực hiện việc đọc ghi thông tin, ta cần xác định chuỗi lệnh khởi động (làm đĩa quay nếu đĩa đang ở trạng thái dừng), kiểm tra xem đĩa đã đạt được tốc độ chưa, sau đó chuyển đầu đọc tới vị trí cần thiết, ghi thông tin ra các thanh ghi dữ liệu và đưa các lệnh tiến hành ghi thông tin ra các thanh ghi điều khiển. Việc lập trình điều khiển đĩa như vậy đòi hỏi rất nhiều thời gian cùng những

Các file đính kèm theo tài liệu này:

  • pdf90063779-Bai-giang-hdh.pdf