1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Giáo trình Nguyên lý hệ điều hành (Ngành Quản trị mạng)

163 4 0

Đ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

UỶ BAN NHÂN DÂN TỈNH HẢI PHÒNG TRƯỜNG CĐCN HẢI PHỊNG GIÁO TRÌNH Tên mơ đun: NGUN LÝ HỆ ĐIỀU HÀNH NGHỀ: QUẢN TRỊ MẠNG Hải Phòng, năm 2017 TUYÊN BỐ BẢN QUYỀN Tài liệu thuộc loại sách giáo trình nên nguồn thơng tin phép dùng nguyên trích dùng cho mục đích đào tạo tham khảo Giáo trình lưu hành nội LỜI GIỚI THIỆU Để thực biên soạn giáo trình đào tạo nghề Quản trị mạng trình độ Trung cấp Nghề, giáo trình Mạch điện tử giáo trình mơn học đào tạo chuyên ngành biên soạn theo nội dung chương trình tạo trường Cao đẳng Nghề Công nghệ Việt – Hàn Bắc Gian Nội dung biên soạn ngắn gọn, dễ hiểu, tích hợp kiến thức kỹ chặt chẽ với nhau, logíc Khi biên soạn, tác giả cố gắng cập nhật kiến thức có liên quan đến nội dung chương trình đào tạo phù hợp với mục tiêu đào tạo, nội dung lý thuyết thực hành biên soạn gắn với nhu cầu thực tế sản xuất đồng thời có tính thực tiển cao Nội dung giáo trình biên soạn với dung lượng thời gian đào tạo Trong trình sử dụng giáo trình, tuỳ theo yêu cầu khoa học cơng nghệ phát triển điều chỉnh thời gian bổ sung kiên thức cho phù hợp Trong giáo trình, chúng tơi có đề nội dung thực tập để người học cố áp dụng kiến thức phù hợp với kỹ Tuy nhiên, tùy theo điều kiện sở vật chất trang thiết bị, trường có thề sử dụng cho phù hợp Mặc dù cố gắng tổ chức biên soạn để đáp ứng mục tiêu đào tạo không tránh khiếm khuyết Rất mong nhận đóng góp ý kiến thầy, giáo, bạn đọc để nhóm biên soạn hiệu chỉnh hồn thiện Tổ môn Tin học MỤC LỤC Chương 1: TỔNG QUAN VỀ HỆ ĐIỀU HÀNH I Mục tiêu II Giới thiệu III Hệ điều hành gì? III.1 Tầm nhìn người dùng 10 111.2 Tầm nhìn hệ thống 10 111.3 Mục tiêu hệ thống 11 IV Hệ thống mainframe 12 IV.1 Hệ thống bó 12 IV.2 Hệ đa chương 13 IV.3 Hệ chia thời 14 V Hệ để bàn (Desktop system) 15 VI Hệ đa xử lý 16 VII Hệ phân tán 18 VII.1 Hệ khách hàng-máy phục vụ 18 VII.2 Hệ ngang hàng 19 VIII Hệ thống nhóm (Clustered Systems) 20 IX Hệ thời thực 21 X Hệ xách tay 22 XI Tóm tắt 22 Chương 2: CẤU TRÚC HỆ ĐIỀU HÀNH 24 I Mục đích 24 II Giới thiệu 24 III Các thành phần hệ thống 24 III.1 Quản lý trình 24 III.2 Quản lý nhớ 25 111.4 Quản lý hệ thống xuất/nhập 27 111.5 Quản lý việc lưu trữ phụ 27 111.7 Hệ thống bảo vệ 28 111.8 Hệ thống thông dịch lệnh 28 IV Các dịch vụ hệ điều hành 29 V Lời gọi hệ thống 31 VI Các chương trình hệ thống 32 VII Cấu trúc hệ thống 33 VII.1 Cấu trúc đơn giản 33 VII.2 Phương pháp phân tầng 34 VII.3 Vi nhân (Microkernels) 36 VIII Máy ảo 37 VIII.1 Cài đặt 39 VIII.2 Lợi điểm 39 IX Tóm tắt 40 CHƯƠNG 3: QUẢN LÝ TIẾN TRÌNH 40 I Mục đích 40 II Giới thiệu 40 III Khái niệm trình 41 III.1 Quá trình 41 III.2 Trạng thái trình 41 III.3 Khối điều khiển trình 42 III Luồng 43 Lập thời biểu trình 44 IV Hàng đợi lập thời biểu 44 IV IV Bộ định thời biểu 45 IV Chuyển ngữ cảnh 47 V Thao tác trình 47 V Tạo trình 47 V Kết thúc trình 50 V Hợp tác trình 50 Giao tiếp liên trình 52 VI VI Hệ thống truyền thông điệp 52 VI Đặt tên 53 2.1 Giao tiếp trực tiếp 53 VI VI.2.2 Giao tiếp gián tiếp 54 VI.2.3 Đồng hóa 55 VI.2.4 Tạo vùng đệm 55 Tóm tắt 56 VII CHƯƠNG IV - LUỒNG 57 IV.1 Mục đích 57 IV.2 Giới thiệu 57 IV.3 Tổng quan 57 Sự động 57 IV.3.1 Thuận lợi 58 IV.3.2 Luồng người dùng luồng nhân 59 IV.3.3 IV.4 Mơ hình đa luồng 59 IV.4.1 Mơ hình nhiều-một 61 IV.4.2 Mơ hình một-một 61 IV.4.3 Mơ hình nhiều-nhiều 61 IV.5 Cấp phát luồng 62 Lời gọi hệ thống fork exec 62 IV.5.1 Sự hủy bỏ luồng 63 IV.5.2 Tín hiệu quản lý 63 IV.5.3 IV.5.4 Nhóm luồng 65 Dữ liệu đặc tả luồng 65 IV.5.5 IV.6 Pthreads 66 IV.7 Luồng Solaris 67 IV.8 Luồng Windows 2000 69 IV.9 Luồng Linux 70 Luồng Java 71 IV.10 Tạo luồng 71 IV.10.1 IV.10.2 JVM hệ điều hành chủ 73 Chương 5: QUẢN LÝ BỘ NHỚ 74 Mục đích 74 I II Giới thiệu 74 Đặt vấn đề 74 III Liên kết địa 74 III.1 Không gian địa luận lý không gian địa vật lý 76 III.2 Nạp động 77 111.3 Liên kết động thư viện chia sẻ 77 111.4 Phủ lắp 78 III.5 IV Hoán vị 79 Cấp phát nhớ liên tục 81 V.1 Bảo vệ nhớ 81 V.2 Hệ thống đơn chương 82 V.3 Hệ thống đa chương với phân khu cố định 83 V.4 Hệ thống đa chương với phân khu động 84 V.5 Quản lý nhớ với hệ thống bạn thân 88 V Phân mãnh 90 VI Cấp phát không liên tục 91 VI Phân trang 91 VI.1.1 Phương pháp 92 VI.1.2 Hỗ trợ phần cứng 97 VI.1.3 Sự bảo vệ 99 VI.1.4 Cấu trúc bảng trang 101 VI.1.5 Trang chia sẻ 106 VI.2 Phân đoạn 107 VI.2.1 Phương pháp 108 VI.2.2 Phần cứng 109 VI.2.3 Bảo vệ chia sẻ 111 VI.2.4 Sự phân mãnh 113 VI.3 Phân đoạn với phân trang 114 VII Tóm tắt 116 Chương 6: HỆ THỐNG TẬP TIN 117 I Mục đích 117 II Giới thiệu 117 III Khái niệm tập tin 118 111.1 Thuộc tính tập tin 118 111.2 Thao tác tập tin .119 111.3 Các kiểu tập tin .120 111.4 Cấu trúc tập tin .120 IV Các phương pháp truy xuất 121 IV Truy xuất 121 IV Truy xuất trực tiếp 122 IV Các phương pháp truy xuất khác 122 V Cấu trúc thư mục 124 V Cấu trúc thư mục dạng đơn cấp 125 V Cấu trúc thư mục dạng hai cấp 126 V Cấu trúc thư mục dạng 128 V.4 Cấu trúc thư mục dạng đồ thị khơng chứa chu trình 130 V.5 Cấu trúc thư mục dạng đồ thị tổng quát 133 VI Gắn hệ thống tập tin 134 VII Chia sẻ tập tin .136 VII.1 Nhiều người dùng .136 VII.2 Hệ thống tập tin xa 136 VIII Bảo vệ 137 VIII.1 Các kiểu truy xuất 137 VIII.2 Kiểm soát truy xuất 138 VIII.3 Các tiếp cận bảo vệ khác 139 IX Tóm tắt 139 Chương 7: CÀI ĐẶT HỆ THỐNG TẬP TIN 140 I Mục đích 140 II Giới thiệu 140 V III Cấu trúc hệ thống tập tin 141 IV Cài đặt hệ thống tập tin .143 IV Tổng quan .143 IV Hệ thống tập tin ảo 146 V Cài đặt thư mục .147 V Danh sách tuyến tính .147 V Bảng băm 148 VI Các phương pháp cấp phát 148 VI Cấp phát kề 149 VI Cấp phát liên kết 151 VI.3 Cấp phát lập mục .154 VI.4 Năng lực 156 VII Quản lý không gian trống 157 VII Bit vector .157 VII Danh sách liên kết 158 VII.3 Nhóm 159 VII.4 Bộ đếm .159 VIII Tóm tắt .159 Chương 1: TỔNG QUAN VỀ HỆ ĐIỀU HÀNH I Mục tiêu Sau học xong chương này, người học nắm kiến thức sau: o Hiểu vai trò hệ điều hành hệ thống máy tính o Biết giai đoạn phát triển hệ điều hành o Hiểu khác biệt hệ điều hành qua giai đoạn o Hiểu cách giải vấn đề phát sinh hệ điều hành Giới thiệu Hệ điều hành chương trình quản lý phần cứng máy tính Nó cung cấp tảng cho chương trình ứng dụng đóng vai trị trung gian giao tiếp người dùng máy tính phần cứng máy tính Hệ điều hành thiết lập cho tác vụ đa dạng Một vài hệ điều hành thiết kế tiện dụng số khác thiết kế hiệu kết hợp hai Để hiểu hệ điều hành gì, trước hết phải hiểu chúng phát triển Trong chương điểm lại phát triển hệ điều hành từ hệ thử nghiệm tới hệ đa chương chia thời Thông qua giai đoạn khác thấy cách thức mà thành phần hệ điều hành cải tiến giải pháp tự nhiên cho vấn đề hệ thống máy tính ban đầu Xem xét lý phía sau phát triển hệ điều hành cho đánh giá tác vụ hệ điều hành làm cách hệ điều hành thực chúng II III Hệ điều hành gì? Một hệ điều hành thành phần quan trọng hệ thống máy tính Một hệ thống máy tính chia thành bốn thành phần: phần cứng, hệ điều hành, chương trình ứng dụng người 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 (operating system): hay cịn gọi chương trình hệ thống, điều khiển hợp tác việc sử dụng phần cứng chương trình ứng dụng khác cho người dùng khác Hệ điều hành khám phá từ hai phía: người dùng hệ thống Hình 0-4 Hình ảnh dạng lưu đồ hệ thống tập tin ảo V Cài đặt thư mục Chọn giải thuật cấp phát thư mục quản lý thư mục có tác động lớn đến tính hiệu quả, lực, khả tin cậy hệ thống tập tin Do đó, cần hiểu thoả hiệp liên quan giải thuật V 1Danh sách tuyến tính Phương pháp đơn giản cho việc cài đặt thư mục dùng danh sách tuyến tính chứa tên tập tin với trỏ tới khối liệu danh sách tuyến tính với mục từ thư mục u cầu tìm kiếm tuyến tính để xác định mục từ cụ thể Phương pháp đơn giản để lập trình nhiều thời gian để thực thi • Để tạo tập tin mới, trước tiên phải tìm thư mục để đảm bảo khơng có tập tin tồn với tên Sau đó, thêm mục từ vào cuối thư mục • Để xố tập tin, tìm kiếm thư mục cho tập tin xác định tên, sau giải phóng khơng gian cấp phát tới • Để dùng lại mục từ thư mục, thực vài bước Chúng ta đánh dấu mục từ khơng dùng (bằng cách gán tên đặc biệt, tên trống hay với bit xác định trạng thái dùng không dùng mục từ), hay gán tới danh sách mục từ thư mục trống Một thay đổi thứ ba chép mục từ cuối thư mục vào vị trí trống giảm chiều dài thư mục Một danh sách liên kết dùng để giảm thời gian xoá tập tin Bất lợi thật danh sách tuyến tính chứa mục từ thư mục tìm kiếm tuyến tính để tìm tập tin Thông tin thư mục dùng thường xuyên người dùng nhận thấy việc truy xuất tới tập tin chậm Để khắc phục nhược điểm này, 147 nhiều hệ điều hành cài đặt vùng lưu trữ phần mềm (software cache) để lưu hầu hết thông tin thư mục dùng gần Một chập liệu lưu trữ tránh đọc lại liên tục thông tin từ đĩa Một danh sách xếp cho phép tìm kiếm nhị phân giảm thời gian tìm kiếm trung bình Tuy nhiên, yêu cầu mà danh sách phải xếp phức tạp việc tạo xố tập tin phải di chuyển lượng thơng tin liên tục để trì thư mục xếp thứ tự Một cấu trúc liệu tinh vi B -tree giúp giải vấn đề Lợi điểm danh sách xếp liệt kê thư mục có thứ tự mà không cần bước xếp riêng V Bảng băm Một cấu trúc liệu khác thường dùng cho thư mục tập tin bảng băm (hash table) Trong phương pháp này, danh sách tuyến tính lưu trữ mục từ thư mục cấu trúc bảng băm dùng Bảng băm lấy giá trị tính từ tên tập tin trả trỏ tới tên tập tin danh sách tuyến tính Do đó, giảm lớn thời gian tìm kiếm thư mục Chèn xố tương đối đơn giản phát sinh đụng độ-những trường hợp có hai tên tập tin băm vị trí Khó khăn với bảng băm kích thước thường cố định phụ thuộc vào hàm băm kích thước Thí dụ, giả sử thực bảng băm thăm dị tuyến tính quản lý 64 mục từ Hàm băm chuyển tập tin thành số nguyên từ tới 63, thí dụ cách dùng số dư phép chia cho 64 Sau đó, cố tạo tập tin thứ 65, phải mở rộng bảng băm thư mục-tới 128 mục từ Kết cần hàm băm phải ánh xạ tới dãy 0-127 phải xếp lại mục từ thư mục có để phản ánh giá trị hàm băm Một cách khác, bảng băm vịng dùng Mỗi mục từ băm danh sách liên kết thay giá trị riêng giải đụng độ cách thêm mục từ vào danh sách liên kết Tìm kiếm chậm tìm kiếm tên yêu cầu từ bước thông qua danh sách liên kết mục từ bảng đụng độ; điều nhanh tìm kiếm tuyến tính qua tồn thư mục VI Các phương pháp cấp phát Tính tự nhiên truy xuất trực tiếp đĩa cho phép khả linh hoạt việc cài đặt tập tin Trong hầu hết trường hợp, nhiều tập tin lưu đĩa Vấn đề không gian cấp phát tới tập tin không gian đĩa sử dụng hiệu tập tin truy xuất nhanh chóng Ba phương pháp quan trọng cho việc cấp phát không gian đĩa sử dụng rộng rãi: cấp phát kề, liên kết mục Mỗi phương pháp có ưu nhược điểm Một số hệ thống hỗ trợ ba Thông dụng hơn, hệ thống dùng phương pháp cụ thể cho tất tập tin 148 VI Cấp phát kề Phương pháp cấp phát kề yêu cầu tập tin chiếm tập hợp khối kề đĩa Các địa đĩa định nghĩa thứ tự tuyến tính đĩa Với thứ tự này, giả sử công việc truy xuất đĩa, truy xuất khối b+1 sau khối b không yêu cầu di chuyển trước Khi di chuyển đầu đọc yêu cầu (từ cung từ cuối cylinder tới cung từ cylinder tiếp theo), di chuyển rãnh (track) Do đó, số lượng tìm kiếm đĩa yêu cầu cho truy xuất kề tới tập tin cấp phát nhỏ nhất, thời gian tìm kiếm tìm kiếm cuối yêu cầu Hệ điều hành IBM VM/CMS dùng cấp phát kề direct file start count tr 14 mail 19 list 28 f count oD '□ 2D 3D ( 4D 5D 6D ?□ length Cấp phát kề tập tin định nghĩa địa đĩa chiều dài (tính đơn vị khối) khối Nếu tập tin có n khối bắt đầu khối b chiếm khối b, b+1, b+2, ,b+n-1 Mục từ thư mục cho tập tin hiển thị địa khối bắt đầu chiều dài vùng cấp phát cho tập tin (hình X-5) 8D 9D1OD11D tr 12D13Q14D15D 16D17D18D19D mail 20D21D22D23D 24D25D26D27D list 280 290 300 310 Hình 0-5 Không gian đĩa cấp phát kề Truy xuất tập tin cấp phát kề dễ Đối với truy xuất tuần tự, hệ thống tập tin nhớ địa đĩa khối cuối tham chiếu đọc khối Để truy xuất khối i tập tin mà bắt đầu khối b, truy xuất khối b+i Do đó, truy xuất truy xuất trực tiếp hỗ trợ cấp phát kề Tuy nhiên, cấp phát kề có số vấn đề Một khó khăn tìm khơng gian cho tập tin Việc cài đặt hệ thống quản lý không gian trống xác định tác vụ hoàn thành Bất hệ thống quản lý dùng nhanh chậm khác Vấn đề cấp phát khơng gian kề xem vấn đề cấp phát lưu trữ 149 động ứng dụng để thoả mãn yêu cầu kích thước n từ danh sách lỗ trống First fit best fit chiến lược chung dùng để chọn lỗ trống từ tập hợp lỗ trống sẳn dùng Những mô hiển thị hai first fit best fit hiệu worst fit thời gian sử dụng không gian lưu trữ First fit hay best fit giải thuật tốt thường first fit nhanh best fit Các giải thuật gặp phải vấn đề phân mãnh Khi tập tin cấp phát xố, khơng gian đĩa trống bị chia thành mảnh nhỏ Phân mãnh tồn khơng gian trống chia thành đoạn Nó trở thành vấn đề đoạn kề lớn không đủ cho yêu cầu; lưu trữ phân thành nhiều lỗ, không lỗ đủ lớn để lưu liệu Phụ thuộc vào tổng lượng lưu trữ đĩa kích thước tập tin trung bình, phân mãnh ngồi vấn đề hay phụ Một số hệ thống vi tính cũ dùng cấp phát kề đĩa mềm Để ngăn ngừa lượng lớn không gian đĩa phân mãnh ngồi, người dùng phải chạy thủ tục đóng gói lại Thủ tục chép toàn hệ thống tập tin tới đĩa khác hay băng từ Kế đến, đĩa mềm ban đầu giải phóng hồn tồn, tạo khơng gian trống kề lớn Sau đó, thủ tục chép tập tin trở lại đĩa mềm cách cấp phát không gian kề từ lỗ lớn Cơ chế hiệu việc hợp (compacts) tất không gian trống thành không gian trống kề, giải vấn đề phân mãnh Chi phí cho việc hợp thời gian Chi phí thời gian phục vụ cho đĩa cứng lớn dùng cấp phát kề, hợp tất không gian hàng Trong thời gian này, thao tác hệ thống thơng thường khơng thể phép hợp tránh tất chi phí có thay đổi liệu Một vấn đề khác với cấp phát kề xác định không gian yêu cầu cho tập tin Khi tập tin tạo, tồn khơng gian cần phải tìm kiếm cấp phát Người tạo (chương trình hay người) biết kích thước tập tin tạo nào? Trong số trường hợp việc xác định tương đối đơn giản (thí dụ chép tập tin có); nhiên, kích thước tập tin xuất khó để ước lượng Nếu cấp q khơng gian tới tập tin, thấy tập tin mở rộng Đặc biệt với chiến lược cấp phát best fit, khơng gian hai phía tập tin dùng Do đó, khơng thể làm cho tập tin lớn Hai khả Thứ nhất, chương trình người dùng kết thúc với thơng báo lỗi hợp lý Sau đó, người dùng phải cấp phát nhiều không gian chạy chương trình lại Việc lặp gây chi phí Để ngăn chặn chúng, người dùng mô nhiều lượng không gian yêu cầu Điều dẫn đến khơng gian bị lãng phí Một khả khác tìm lỗ trống lớn hơn, chép nội dung tập tin tới không gian trống mới, giải phóng khơng gian trước Một loạt hoạt động lặp lại với điều kiện khơng gian tồn tiêu tốn nhiều thời gian Tuy nhiên, trường hợp người dùng không yêu cầu thông 150 báo xảy ra; hệ thống tiếp tục vấn đề phát sinh Ngay tồn khơng gian u cầu cho tập tin biết trước, cấp phát trước không đủ Một tập tin lớn lên khoảng thời gian dài phải cấp phát đủ khơng gian cho kích thước cuối khơng gian khơng dùng cho khoảng thời gian dài Do đó, tập tin có lượng lớn phân mãnh Để tối thiểu khó khăn này, số hệ điều hành dùng chế cấp phát kề hiệu chỉnh Trong chế đoạn không gian kề cấp phát trước sau lượng khơng gian khơng đủ lớn, đoạn khơng gian kề khác, đoạn mở rộng (extent), thêm vào cấp phát ban đầu Sau đó, vị trí khối tập tin ghi lại vị trí đếm khối cộng với liên kết tới khối đoạn mở rộng Trên số hệ thống, người sở hữu tập tin đặt kích thước đoạn mở rộng, việc đặt khơng hiệu người sở hữu khơng Phân mãnh cịn vấn đề đoạn mở rộng lớn phân mãnh vấn đề đoạn mở rộng có kích thước khác cấp phát thu hồi VI Cấp phát liên kết Cấp phát liên kết giải vấn đề cấp phát kề Với cấp phát liên kết, tập tin danh sách khối đĩa liên kết; khối đĩa phân tán khắp nơi đĩa Thư mục chứa trỏ tới khối khối cuối tập tin Thí dụ, tập tin có khối bắt đầu khối số 9, tiếp tục khối 16, sau khối 1, khối 10 cuối khối 25 (như hình X-6) Mỗi khối chứa trỏ tới khối Các trỏ không làm sẳn dùng cho người dùng Do đó, khối 512 bytes, địa đĩa (con trỏ) yêu cầu bytes phần chứa liệu khối 508 bytes Để tạo tập tin mới, đơn giản tạo mục từ thư mục Với cấp phát liên kết, mục từ thư mục có trỏ tới khối đĩa tập tin Con trỏ khởi tạo tới nil (giá trị trỏ cuối danh sách) để tập tin rỗng Trường kích thước đặt tới Một thao tác viết tới tập tin làm khối trống tìm thấy hệ thống quản lý khơng gian trống, sau khối viết tới liên kết tới cuối tập tin Để đọc tập tin, đơn giản đọc khối cách lần theo trỏ từ khối tới khối khác Khơng có phân mãnh với cấp phát liên kết, khối trống danh sách khơng gian trống dùng để thoả mãn yêu cầu Kích thước tập tin không cần khai báo tập tin tạo Một tập tin tiếp tục lớn lên với điều kiện khối trống sẳn có Do đó, khơng cần thiết để hợp khơng gian trống 151 Hình 0-6 cấp phát không gian đĩa liên kết Tuy nhiên, cấp phát liên kết có vài nhược điểm Vấn đề chủ yếu dùng hiệu cho tập tin truy xuất Để tìm khối thứ i tập tin, phải bắt đầu điểm bắt đầu tập tin đó, lần theo trỏ nhận khối thứ i Mỗi truy xuất tới trỏ yêu cầu thao tác đọc đĩa, tìm kiếm đĩa Do đó, khơng đủ hỗ trợ khả truy xuất trực tiếp cho tập tin cấp phát liên kết Một nhược điểm khác cấp phát liên kết không gian yêu cầu cho trỏ Nếu trỏ yêu cầu bytes khối 512 bytes 0.77% đĩa dùng cho trỏ thay thơng tin Một giải pháp thơng thường để giải vấn đề tập hợp khối vào nhóm (clusters) cấp phát nhóm khối Thí dụ, hệ thống tập tin định nghĩa nhóm gồm khối thao tác đĩa đơn vị nhóm trỏ dùng % nhỏ không gian tập tin Phương pháp cho phép ánh xạ khối luận lý tới vật lý đơn giản, cải tiến thông lượng đĩa giảm không gian yêu cầu cho cấp phát khối quản lý danh sách trống Chi phí tiếp cận tăng phân mãnh nhiều khơng gian bị lãng phí nhóm đầy phần khối đầy phần Các nhóm dùng để cải tiến thời gian truy xuất đĩa cho nhiều giải thuật khác chúng dùng hầu hết hệ điều hành Một vấn đề khác cấp phát liên kết khả tin cậy Vì tập tin liên kết với trỏ phân tán khắp đĩa, xem xét điều xảy trỏ bị hay bị phá hỏng Một bọ (bug) phần mềm hệ điều hành 152 hay lỗi phần cứng đĩa dẫn tới việc chọn trỏ sai Lỗi dẫn tới việc liên kết vào danh sách không gian trống hay vào tập tin khác Các giải pháp phần dùng danh sách liên kết đôi hay lưu tên tập tin số khối tương đối khối; nhiên, chế yêu cầu nhiều chi phí cho tập tin Một thay đổi quan trọng phương pháp cấp phát liên kết dùng bảng cấp phát tập tin (file allocation table-FAT) Điều đơn giản phương pháp cấp phát không gian đĩa hiệu dùng hệ điều hành MS-DOS OS/2 Một phần đĩa phần bắt đầu phân khu thiết lập để chứa bảng Bảng có mục từ cho khối đĩa lập mục khối đĩa FAT dùng nhiều danh sách liên kết Mục từ thư mục chứa số khối khối tập tin Mục từ bảng lập mục số khối sau chứa số khối khối tập tin Chuỗi tiếp tục khối cuối cùng, có giá trị cuối tập tin đặc biệt mục từ bảng Các khối không dùng hiển thị giá trị bảng Cấp phát khối tới tập tin vấn đề đơn giản cho việc tìm mục từ bảng có giá trị thay giá trị kết thúc tập tin trước với địa khối Sau đó, số thay với giá trị kết thúc tập tin Một thí dụ minh hoạ cấu trúc FAT hình X-7 cho tập tin chứa khối đĩa 217, 618 339 Hình 0-7 Bảng cấp phát tập tin Cơ chế cấp phát FAT dẫn tới số lượng lớn tìm kiếm đầu đọc đĩa FAT không lưu trữ(cache) Đầu đọc đĩa phải di chuyển tới điểm bắt đầu phân khu để đọc FAT tìm vị trí khối sau di chuyển tới vị trí khối đĩa Trong trường hợp xấu nhất, hai di chuyển xảy cho khối đĩa Lợi điểm 153 thời gian truy xuất ngẫu nhiên cải tiến đầu đọc đĩa tìm vị trí khối cách đọc thông tin FAT VI.3 Cấp phát lập mục Cấp phát liên kết giải việc phân mãnh vấn đề khai báo kích thước cấp phát kề Tuy nhiên, cấp phát liên kết không hỗ trợ truy xuất trực tiếp hiệu trỏ tới khối phân tán với khối qua đĩa cần lấy lại thứ tự Cấp phát lập mục giải vấn đề cách mang tất trỏ vào vị trí: khối mục (index block) Mỗi tập tin có khối mục nó, khối mảng địa khối đĩa Mục từ thứ i khối mục tới khối i tập tin Thư mục chứa địa khối mục (như hình X-8) Để đọc khối i, dùng trỏ mục từ khối mục để tìm đọc khối mong muốn Cơ chế tương tự chế phân trang Hình 0-8 Cấp phát không gian đĩa lập mục Khi tập tin tạo, tất trỏ khối mục đặt tới nil Khi khối thứ i viết đầu tiên, khối chứa từ quản lý khơng gian trống địa đặt mục từ khối mục Cấp phát lập mục hỗ trợ truy xuất trực tiếp, không gặp phải phân mãnh ngồi khối trống đĩa đáp ứng u cầu thêm khơng gian Cấp phát lập mục gặp phải lãng phí khơng gian Chi phí trỏ khối mục thường lớn chi phí trỏ cấp phát liên kết Xét trường hợp thông thường có tập tin với hai khối Với cấp phát liên kết, không gian trỏ khối (một hay hai trỏ) Với 154 cấp phát lập mục, toàn khối mục phải cấp phát chí hay hai trỏ khác nil Điểm sinh câu hỏi khối mục nên lớn bao nhiêu? Mỗi tập tin phải có khối mục muốn khối mục nhỏ Tuy nhiên, khối mục q nhỏ khơng thể quản lý đủ trỏ cho tập tin lớn chế phải sẳn có để giải vấn đề này: • • • Cơ chế liên kết (linked scheme): khối mục thường khối đĩa Do đó, đọc viết trực tiếp Để cho phép tập tin lớn, liên kết nhiều khối mục với Thí dụ, khối mục chứa header nhỏ cho tên tập tin tập hợp địa 100 khối đĩa Địa (từ cuối khối mục) nil (đối với tập tin nhỏ) hay trỏ tới khối mục khác (cho tập tin lớn) Chỉ mục nhiều cấp (multilevel index): biến dạng biểu diễn liên kết dùng khối mục cấp để tới khối mục cấp Khối cấp tới khối tập tin Để truy xuất khối, hệ điều hành dùng mục cấp để tìm khối mục cấp khối tìm khối liệu mong muốn Tiếp cận tiếp tục tới cấp hay cấp 4, tuỳ thuộc vào kích thước tập tin lớn mong muốn Với khối có kích thước 4,096 bytes, lưu 1,024 trỏ bytes khối mục Chỉ mục hai cấp cho phép 1,048,576 khối liệu, cho phép tập tin có kích thước tới 4GB Cơ chế kết hợp (combined scheme): biến dạng khác dùng UFS giữ 15 trỏ khối mục inode tập tin 12 trỏ 15 trỏ tới khối trực tiếp (direct blocks); nghĩa chúng chứa địa khối mà chứa liệu tập tin Do đó, liệu tập tin nhỏ (không lớn 12 khối) khơng cần khối mục riêng Nếu kích thước khối KB, tới 48 KB liệu truy xuất trực tiếp trỏ tới khối gián tiếp (indirect blocks) Con trỏ khối gián tiếp thứ địa khối gián tiếp đơn (single indirect blocks) Khối gián tiếp đơn khối mục không chứa liệu chứa địa khối chứa liệu Sau đó, có trỏ khối gián tiếp đơi (double indirect block) chứa địa khối mà khối chứa địa khối chứa trỏ tới khối liệu thật Con trỏ cuối chứa chứa địa khối gián tiếp ba (triple indirect block) Với phương pháp này, số khối cấp phát tới tập tin vượt q lượng khơng gian đánh địa trỏ tập tin bytes hay GB Nhiều cài đặt UNIX gồm Solaris AIX IBM hỗ trợ tới 64 bit trỏ tập tin Các trỏ có kích thước cho phép tập tin hệ thống tập tin có kích thước tới terabytes Một inode hiển thị 155 hình X-9: 156 Hình 0-9 Inode UNIX Cơ chế cấp phát lập mục gặp số khó khăn lực cấp phát liên kết Đặc biệt, khối mục lưu trữ (cache) nhớ; khối liệu trãi rộng khắp phân khu VI.4 Năng lực Các phương pháp cấp phát khác tính hiệu lưu trữ thời gian truy xuất khối liệu Cả hai yếu tố tiêu chuẩn quan trọng việc chọn phương pháp hợp lý hay phương pháp cho hệ điều hành cài đặt Trước chọn phương pháp, cần xác định hệ thống dùng Một hệ thống với hầu hết truy xuất nên dùng phương pháp khác từ hệ thống với hầu hết truy xuất ngẫu nhiên Đối với loại truy xuất nào, cấp phát kề yêu cầu truy xuất để đạt khối đĩa Vì giữ dễ dàng địa khởi đầu tập tin nhớ, tính địa đĩa khối thứ i (hay khối kế tiếp) đọc trực tiếp Đối với cấp phát liên kết, giữ địa khối nhớ đọc trực tiếp Phương pháp tốt cho truy xuất tuần tự; nhiên, truy xuất trực tiếp truy xuất tới khối thứ i phải yêu cầu đọc I đĩa Vấn đề minh hoạ lý cấp phát liên kết không dùng cho ứng dụng yêu cầu truy xuất trực tiếp Do đó, số hệ thống hỗ trợ tập tin truy xuất trực tiếp cách dùng 157 cấp phát kề truy xuất cấp phát liên kết Đối với hệ thống này, loại truy xuất thực phải khai báo tập tin tạo Một tập tin tạo cho truy xuất liên kết dùng cho truy xuất trực tiếp Một tập tin tạo cho truy xuất trực tiếp kề hỗ trợ hai truy xuất trực tiếp truy xuất chiều dài tối đa phải khai báo tạo Trong trường hợp này, hệ điều hành phải có cấu trúc liệu hợp lý giải thuật để hỗ trợ hai phương pháp cấp phát Các tập tin chuyển từ kiểu sang kiểu khác cách tạo tập tin loại mong muốn nội dung tập tin cũ chép vào tập tin Sau đó, tập tin cũ bị xố tập tin đổi tên Cấp phát dạng mục phức tạp Nếu khối mục nhớ truy xuất thực trực tiếp Tuy nhiên, giữ khối mục nhớ yêu cầu khơng gian xem xét Nếu khơng gian nhớ khơng sẳn dùng phải đọc trước khối mục sau khối liệu mong muốn Đối với mục hai cấp, đọc hai khối mục cần thiết Đối với tập tin lớn, truy xuất khối gần cuối tập tin yêu cầu đọc tất khối mục để lần theo chuỗi trỏ trước khối liệu yêu cầu cuối đọc Do đó, lực cấp phát mục phụ thuộc cấu trúc mục kích thước tập tin vị trí khối mong muốn Một số hệ thống kết hợp cấp phát kề cấp phát mục cách dùng cấp phát kề cho tập tin nhỏ (ba hay bốn khối) tự động chuyển tới cấp phát mục tập tin lớn lên Vì hầu hết tập tin nhỏ cấp phát kề hiệu cho tập tin nhỏ, lực trung bình tốt Nhiều tối ưu khác dùng Với chênh lệch tốc độ CPU đĩa, khơng hợp lý để thêm hàng ngàn thị tới hệ điều hành để tiết kiệm vài di chuyển đầu đọc Ngoài ra, chênh lệch tăng theo thời gian, tới điểm nơi mà hàng trăm hàng ngàn thị phù hợp dùng để tối ưu di chuyển đầu đọc VII Quản lý khơng gian trống Vì khơng gian trống giới hạn nên cần dùng lại không gian từ tập tin bị xoá cho tập tin Để giữ vết khơng gian đĩa trống, hệ thống trì danh sách khơng gian trống Danh sách không gian trống ghi lại tất khối đĩa trống Để tạo tập tin, tìm danh sách không gian trống lượng không gian yêu cầu cấp phát khơng gian tới tập tin Sau đó, khơng gian xố từ danh sách khơng gian trống Khi tập tin bị xố, khơng gian đĩa thêm vào danh sách khơng gian trống Mặc dù tên danh sách danh sách khơng gian trống khơng cài danh sách VII Bit vector Thường danh sách khơng gian trống cài đặt đồ bit (bit 158 map) hay vector bit (bit vector) Mỗi khối biểu diễn bit Nếu khối trống, bit đặt 1, khối cấp phát bit đặt Thí dụ, xét đĩa khối 2, 3, 4, 5, 8, 9, 10, 11, 12, 13, 17, 18, 25, 26, 27 trống khối lại cấp phát Bản đồ bit không gian trống là: 001111001111110001100000011100000 Lợi điểm tiếp cận tính tương đối đơn giản hiệu việc tìm khối trống đầu tiên, hay n khối trống đĩa Một lần nữa, thấy đặc điểm phần cứng định hướng chức phần mềm Tuy nhiên, vector bit khơng đủ trừ tồn vector giữ nhớ Giữ nhớ cho đĩa nhỏ hơn, máy vi tính khơng thể cho máy lớn Một đĩa 1.3 GB với khối 512 bytes cần đồ bit 332 KB để ghi lại khối trống Gom bốn khối vào nhóm giảm số xuống 83 KB đĩa VII Danh sách liên kết Hình 0-10 danh sách khơng gian trống liên kết đĩa Một tiếp cận khác để quản lý nhớ trống liên kết tất khối trống, giữ trỏ tới khối trống 12một vị trí14Q15Ũđặc biệt đĩa lưu nhớ Khối chứa trỏ tới khối đĩa trống tiếp theo, Trong thí dụ trên, giữ trỏ tới khối khối trống Khối chứa trỏ tới khối 3, khối240 25này tới khối 4, (như hình X-10) Tuy nhiên, chế không hiệu để duyệt28O29Ei30n3indanh sách, phải đọc khối, yêu cầu thời gian nhập/xuất đáng kể Tuy nhiên, duyệt danh sách trống không hoạt động thường xuyên Thường thì, hệ điều hành cần khối trống cấp phát khối tới tập tin, khối danh sách trống dùng Phương 159 pháp FAT kết hợp với đếm khối trống thành cấu trúc liệu cấp phát VII.3 Nhóm Thay đổi tiếp cận danh sách trống để lưu địa n khối trống khối trống n-1 khối thật khối trống Khối cuối chứa địa n khối trống khác, Sự quan trọng việc cài đặt địa số lượng lớn khối trống tìm thấy nhanh chóng, khơng giống tiếp cận danh sách liên kết chuẩn VII.4 Bộ đếm Một tiếp cận khác đạt lợi điểm thực tế nhiều khối kề cấp phát giải phóng lúc, đặc biệt không gian cấp phát với giải thuật cấp phát kề hay thơng qua nhóm Do đó, thay giữ danh sách n địa đĩa trống, giữ địa khối trống số n khối kề trống theo sau khối Mỗi mục từ danh sách khơng gian trống sau chứa địa đĩa đếm Mặc dù mục từ yêu cầu nhiều không gian địa đĩa đơn, toàn danh sách ngắn với điều kiện đếm lớn VIII Tóm tắt Hệ thống tập tin định vị không đổi thiết bị lưu trữ phụ thiết kế để quản lý lượng lớn liệu không đổi Phương tiện lưu trữ phụ phổ biến đĩa Đĩa vật lý chia thành nhiều phân khu để điều khiển việc sử dụng phương tiện cho phép nhiều hệ thống tập tin (có thể khác nhau) đĩa Các hệ thống tập tin gắn vào kiến trúc hệ thống tập tin luận lý để làm cho chúng sẳn dùng Các hệ thống tập tin thường cài đặt kiến trúc phân tầng hay module Những cấp thấp giải thuộc tính vật lý thiết bị lưu trữ Cấp cao giải tên tập tin biểu tượng thuộc tính luận lý tập tin Các cấp trung gian ánh xạ khái niệm tập tin luận lý thành thuộc tính thiết bị vật lý Mỗi kiểu hệ thống tập tin có cấu trúc giải thuật khác Một tầng VFS cho phép tầng cao giải kiểu hệ thống tập tin khác cách Ngay hệ thống tập tin xa tích hợp vào cấu trúc thư mục hệ thống hoạt động lời gọi hệ thống chuẩn giao diện VFS Những tập tin khác cấp phát không gian đĩa cách: kề, liên kết hay mục Cấp phát kề gặp phải phân mãnh ngồi Truy xuất trực tiếp hiệu với cấp phát liên kết Cấp phát mục yêu cầu chi phí đáng kể cho khối mục Các giải thuật tối ưu nhiều cách Khơng gian kề lớn lên thơng qua đoạn mở rộng để tăng khả linh hoạt giảm phân mãnh ngồi Cấp phát mục thực việc nhóm nhiều khối để tăng thơng lượng giảm số lượng mục từ mục yêu cầu Lập mục 160 nhóm tương tự cấp phát kề với đoạn mở rộng Các phương pháp cấp phát không gian trống ảnh hưởng tới tính hiệu khơng gian đĩa, lực hệ thống tập tin khả tin cậy thiết bị lưu trữ phụ Các phương pháp dùng gồm vector bit danh sách liên kết Các tối ưu gồm nhóm, đếm FAT, mà đặt danh sách liên kết vùng kề 161 ... xét lý phía sau phát triển hệ điều hành cho đánh giá tác vụ hệ điều hành làm cách hệ điều hành thực chúng II III Hệ điều hành gì? Một hệ điều hành thành phần quan trọng hệ thống máy tính Một hệ. .. khác hệ điều hành nhấn mạnh cần thiết để điều khiển thiết bị xuất/nhập khác chương trình người dùng Một hệ điều hành chương trình điều khiển Chương trình điều khiển quản lý thực thi chương trình. .. việc thiết kế hệ điều hành II III Các thành phần hệ thống Chúng ta tạo hệ thống lớn phức tạp hệ điều hành phân chia hệ điều hành thành phần nhỏ Mỗi phần nên thành phần mô tả rõ ràng hệ thống, với

Ngày đăng: 20/12/2021, 07:34

Xem thêm:

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w