Bài giảng Hệ điều hành - ThS. Nguyễn Thị Thùy Linh

313 19 0
Bài giảng Hệ điều hành - ThS. Nguyễn Thị Thùy Linh

Đ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

Bài giảng giới thiệu về các thế hệ hệ điều hành, các thành phần của hệ điều hành, chức năng của hệ điều hành, các dịch vụ mà hệ điều hành cung cấp. Sau đó nghiên cứu chi tiết chức năng các thành phần bên trong hệ điều hành: Quản lý tiến trình, Quản lý bộ nhớ, Đồng bộ hóa tiến trình, Quản lý Deadlock, Quản lý và cài đặt hệ thống tập tin, Quản lý đĩa.

TRƯỜNG ĐẠI HỌC ĐỒNG THÁP KHOA SƢ PHẠM TOÁN – TIN BÀI GIẢNG HỆ ĐIỀU HÀNH Biên soạn : Ths Nguyễn Thị Thùy Linh LƢU HÀNH NỘI BỘ ĐỒNG THÁP 11/2013 LỜI NÓI ĐẦU Tài liệu đƣợc biên soạn chủ yếu dựa kiến thức tích lũy giảng dạy nhiều năm môn học tác giả đƣợc tham khảo từ nguồn lý thuyết hệ điều hành nguyên lý hệ điều hành trƣờng Đại học Huế, Đại học Cần Thơ… Tổng quan: Bài giảng giới thiệu hệ hệ điều hành, thành phần hệ điều hành, chức hệ điều hành, dịch vụ mà hệ điều hành cung cấp Sau nghiên cứu chi tiết chức thành phần bên hệ điều hành: Quản lý tiến trình, Quản lý nhớ, Đồng hóa tiến trình, Quản lý Deadlock, Quản lý cài đặt hệ thống tập tin, Quản lý đĩa Mục tiêu: Kiến thức: - Hiểu đƣợc vai trò hệ điều hành chế hoạt động hệ điều hành - Hiểu kiến trúc thiết kế hệ điều hành - Hiểu chiến lƣợc việc thiết kế hệ điều hành đại - Biết vấn đề phát sinh trình thiết kế hệ điều hành nhƣ tiếp cận khác đƣợc dùng để phân tích giải vấn đề - Xem xét chiến lƣợc hệ điều hành phổ biến cách chúng tác động đến dịch vụ hệ điều hành đại - Vận dụng chiến lƣợc việc thiết kế hệ điều hành để mô lại máy tính Kỹ năng: - Rèn luyện kỹ phân tích giải tốn chiến lƣợc việc thiết kế thành phần bên hệ điều hành - Rèn luyện tƣ giải thuật, kỹ lập trình kỹ thuật mơ - Kỹ làm việc nhóm, tự học, tự nghiên cứu Thái độ: - Nhận thức đắn phía ngƣời thiết kế hệ điều hành hệ thống máy tính - Nâng cao ý thức tự học, tự nghiên cứu để mở rộng kiến thức Đối tượng: Tài liệu dành cho ngƣời học cao đẳng đại học chuyên ngành công nghệ thông tin Yêu cầu: Ngƣời học cần phải hiểu cấu trúc liệu giải thuật kèm theo ngơn ngữ lập trình Pascal ngôn ngữ C/C++, Java, C# Ngƣời học cần biết cấu trúc logic máy tính nói riêng nhƣ mạng máy tính nói chung Nội dung: Tài liệu bao gồm có chƣơng: Chƣơng 1: Tổng quan hệ điều hanh Chƣơng 2: Quản lý tiến trình Chƣơng 3: Quản lý nhớ Chƣơng 4: Quản lý tập tin đĩa Chƣơng 5: Quản lý hệ thống nhập/xuất MỤC LỤC LỜI NÓI ĐẦU MỤC LỤC DANH MỤC THUẬT NGỮ VIẾT TẮT CHƯ NG 1: TỔNG QU N VỀ HỆ ĐIỀU HÀNH 1.1 MỤC TIÊU 1.2 KHÁI NI M VỀ H ĐIỀU HÀNH 1.3 CHỨC N NG H ĐIỀU HÀNH 10 1.4 PH N LOẠI H ĐIỀU HÀNH 12 1.4.1 Hệ điều hành xử lý theo lô đơn chƣơng 12 1.4.2 Hệ thống xử lý theo lô đa chƣơng 14 1.4.3 Hệ thống chia s thời gian 15 1.4.4 Hệ thống đa xử lý hệ thống song song 15 1.4.5 Hệ thống phân tán 17 1.4.6 Hệ thống xử lý thời gian thực 18 1.4.7 Hệ xách tay 18 1.5 L CH S PHÁT TRIỂN CỦA H ĐIỀU HÀNH 19 1.5.1 Thế hệ 1945 – 1955) 19 1.5.2 Thế hệ 1955 – 1965) 20 1.5.3 Thế hệ 1965 – 1980) 20 1.5.4 Thế hệ 1980-nay ) 21 1.6 CẤU TR C CỦA H ĐIỀU HÀNH 21 1.6.1 Các thành phần bên hệ điều hành 21 1.6.2 Các dịch vụ hệ điều hành 26 1.6.3 Lời gọi hệ thống 27 1.6.4 Cấu trúc hệ điều hành 28 1.7 MỘT S H ĐIỀU HÀNH HI N ĐẠI 38 1.7.1 Hệ điều hành Windows95 38 1.7.2 Hệ điều hành Windows 2000 39 1.7.3 Hệ điều hành Linux 40 1.7.4 Hệ điều hành Windows 41 1.7.5 Hệ điều hành Windows 42 1.7.6 Hệ điều hành Android 42 1.8 TÓM TẮT 43 Câu hỏi ôn tập 44 TÀI LI U THAM KHẢO 44 CHƯ NG 2: QUẢN L TIẾN TR NH 45 2.1 MỤC TIÊU 45 2.2 TỔNG QUAN VỀ TIẾN TRÌNH 45 2.2.1 Nhu cầu xử lý đồng hành 45 2.2.2 Khái niệm tiến trình 46 2.2.3 Phân loại tiến trình 49 2.2.4 Tiểu trình Thread mơ hình đa tiểu trình Multithread 51 2.3 TỔ CHỨC QUẢN LÝ TIẾN TRÌNH 54 2.3.1 Các trạng thái tiến trình 54 2.3.2 Chế độ xử lý tiến trình 60 2.3.3 Cấu trúc liệu khối quản lý tiến trình 61 2.4 THAO TÁC TRÊN TIẾN TRÌNH 62 2.4.1 Tạo lập tiến trình 63 2.4.2 Kết thúc tiến trình 64 2.4.3 Khi tiến trình thay đổi trạng thái 64 2.5 CẤP PHÁT TÀI NGUYÊN CHO TIẾN TRÌNH 65 2.6 Đ NH THỜI BIỂU CPU 66 2.6.1 Giới thiệu 67 2.6.2 Tổ chức định thời biểu 70 2.6.3 Các chiến lƣợc định thời biểu CPU 75 2.7 ĐỒNG BỘ HĨA TIẾN TRÌNH 87 2.7.1 Liên lạc tiến trình 87 2.7.2 Các chế thông tin liên lạc 88 2.7.3 Nhu cầu đồng hóa synchronisation 95 2.7.4 Tài nguyên găng đoạn găng 96 2.7.5 Đồng tiến trình qua đoạn găng 102 2.8 TẮC NGHẼN VÀ CH NG TẮC NGHẼN 125 2.8.1 Khái niệm tắc nghẽn 125 2.8.2 Đặc điểm Deadlock 128 2.8.3 Các phƣơng pháp xử lý deadlock 134 2.9 TÓM TẮT 151 Câu hỏi ôn tập 153 Bài tập 156 TÀI LI U THAM KHẢO 160 CHƯ NG 3: QUẢN L BỘ NHỚ 161 3.1 MỤC TIÊU 161 3.2 NHI M VỤ QUẢN LÝ BỘ NHỚ 161 3.3 KIẾN THỨC NỀN 164 3.3.1 Một chƣơng trình qua nhiều bƣớc xử lý 164 3.3.2 Không gian địa luận lý không gian địa vật lý 166 3.3.3 Bộ quản lý nhớ MMU 167 3.3.4 Phủ lắp Overlay 167 3.3.5 Hoán vị 168 3.4 QUẢN LÝ BỘ NHỚ CHÍNH 170 3.4.1 Bộ nhớ cấp phát liên tục 170 3.4.2 Cấp phát không liên tục 182 3.5 QUẢN LÝ BỘ NHỚ ẢO 202 3.5.1 Khái niệm nhớ ảo 203 3.5.2 Cài đặt nhớ ảo 204 3.5.3 Kỹ thuật nhớ ảo 208 3.6 TÓM TẮT 222 Câu hỏi ôn tập 224 Bài Tập 225 TÀI LI U THAM KHẢO 230 CHƯ NG 4: QUẢN L TẬP TIN VÀ ĐĨ 231 4.1 MỤC TIÊU 231 4.2 TỔNG QUAN VỀ QUẢN LÝ TẬP TIN VÀ ĐĨA 232 4.2.1 Tập tin hệ thống quản lý tập tin 232 4.2.2 Bảng danh mục tập tin chia s 235 4.2.3 Quản lý không gian đĩa 238 4.2.4 Quản lý block chứa tập tin đĩa 241 4.2.5 An toàn quản lý tập tin 246 4.2.6 Hiệu suất hệ thống tập tin 251 4.3 MỘT S KHÁI NI M DÙNG TRONG QUẢN LÝ ĐĨA 252 4.4 CÁC ĐIỀU KHIỂN H TH NG TẬP TIN 255 4.5 CÁC H TH NG TẬP TIN ĐƢỢC S DỤNG TRÊN CÁC H ĐIỀU HÀNH HI N NAY 257 4.5.1 FAT12, FAT16, FAT32 257 4.5.2 NTFS 258 4.5.3 CDFS 259 4.5.4 UDF 259 4.6 TỔ CHỨC ĐĨA CỦA MS-DOS 259 4.6.1 FDISK 259 4.6.2 Tổ chức logic đĩa 261 4.7 QUẢN LÝ TẬP TIN TRÊN ĐĨA CỦA MS-DOS 265 4.7.1 Boot sector 266 4.7.2 File Allocation Table (FAT) 268 4.7.3 Root Directory Bảng thƣ mục gốc 274 4.7.4 Thƣ mục Subdirectory 279 4.8 TỔ CHỨC LƢU TRỮ TẬP TIN TRÊN ĐĨA CD_ROM 281 4.8.1 Hệ thống tập tin ISO 9660 282 4.8.2 Mở rộng Rock Ridge 283 4.8.3 Mở rộng Joliet 283 4.9 TÓM TẮT 284 Câu hỏi ôn tập 286 Bài tập 286 TÀI LI U THAM KHẢO 287 CHƯ NG 5: QUẢN L HỆ THỐNG NHẬP/XUẤT 291 5.1 MỤC TIÊU 291 5.2 CÁC KHÁI NI M CƠ BẢN 291 5.3 PHẦN CỨNG NHẬP/XUẤT 292 5.3.1 Thiết bị I/O 292 5.3.2 Tổ chức chức I/O 293 5.4 GIAO DI N NHẬP/XUẤT ỨNG DỤNG 299 5.5 H TH NG CON NHẬP/XUẤT CỦA NH N KERNEL I/O SUBSYTEM 302 5.5.1 Định thời biểu nhập/xuất 302 5.5.2 Vùng đệm 303 5.5.3 Vùng lƣu trữ 303 5.5.4 Vùng chứa 304 5.5.5 Quản lý lỗi 304 5.5.6 Cấu trúc liệu nhân 305 5.6 CHUYỂN NHẬP/XUẤT TỚI HOẠT ĐỘNG PHẦN CỨNG 305 5.7 N NG LỰC 308 5.8 TÓM TẮT 310 Câu hỏi ôn tập 311 Câu hỏi trắc nghiệm 311 TÀI LI U THAM KHẢO 311 D NH MỤC THUẬT NGỮ VIẾT TẮT K HIỆU API CDFS THUẬT NGỮ Application Programming Interface CD-ROM File System CLI CPU CRT CS CSDL DMA FAT FCFS FDD FIFO FSD HDD I/O device IC ISO Clean Interrupt Processor Cathode-Ray Tube Critical Section Cơ sở liệu Direct Memory Access File Allocation Table First-Come, First-Served Floppy Disk First In First Out File System Driver Hard disk Input/Output device Integrated C rcuit International Organization for Standardization KTCN LCNs LFU LRU LWP Logical Cluster Numbers The Least Frequently Used Least-Recently-Used Lightweight Process MEM MFT MFU MMU MS-DOS NRU NTFS OPT OS P PC Memory Master File Table The Most Frequently Used Memory Management Unit Microsoft Disk Operrating System Not Recently Used New Technology File System Optimal Operating System Process Personal Computer NGHĨ Là hệ thống tập tin đƣợc đƣa để quản lý tập tin, thƣ mục đĩa CD_ROM Cấm ngắt Bộ xử lý ng phóng điện tử chân khơng Miền găng, đoạn găng Truy xuất nhớ trực tiếp Bảng cấp phát tập tin Đến trƣớc đƣợc phục vụ trƣớc Đĩa mềm Vào trƣớc trƣớc Điều khiển hệ thống tập tin Đĩa cứng Thiết bị nhập/xuất Mạch tích hợp Tổ chức tiêu chuẩn hoá quốc tế Kiểm tra cập nhật Số hiệu Cluster logic Ít đƣợc dùng thƣờng xuyên Lâu chƣa sử dụng Liên kết tiểu trình tiến trình Bộ nhớ Trang đƣợc sử dụng nhiều Đơn vị quản lý nhớ Hệ điều hành MS-DOS Không sử dụng gần Hệ thống tập tin NTFS Tối ƣu hóa Hệ điều hành Tiến trình, q trình Máy tính cá nhân PCB PCT PDA PTBR RID Program Counter Process Control Block Page Control Table Personal Digital Assistant Page Table Base Register Resource Identification ROM RR SCT SJF STBR Read Only Memory Round Robin Segment Control Table Shortest Job First Segment Table Base Register STI STLR Setting Interrupt Segment Table Length Register THE TLBs TSL UDF Technische Hogeschool Eindhoven Translation Look-aside Buffers Test and Set UMA USER VCNs Uniform Memory Access USER Virtual Cluster Numbers Nghĩa khác: Bộ đếm chƣơng trình Khối điều khiển tiến trình Bảng trang Thiết bị kỹ thuật số hỗ trợ cá nhân Thanh ghi bảng trang Định danh khối quản lý tài nguyên Bộ nhớ đọc Bảng phân đoạn Công việc ngắn trƣớc Thanh ghi bảng phân đoạn Mở ngắt Thanh ghi giới hạn bảng phân đoạn Hệ điều hành THE Bộ nhớ kết hợp Kiểm tra khóa Là hệ thống tập tin đƣợc đƣa để quản lý đĩa từ/quang, chủ yếu đĩa DVD_ROM Truy xuất nhớ đồng Ngƣời dùng Số hiệu Cluster ảo CHƯ NG 1: TỔNG QU N VỀ HỆ ĐIỀU HÀNH 1.1 MỤC TIÊU Sau học xong chƣơng này, ngƣời học nắm đƣợc kiến thức sau: - Hiểu chức hệ điều hành hệ thống máy tính - Biết phân loại hệ điều hành - Biết hệ điều hành phát triển qua nhiều giai đoạn - Các thành phần bên hệ điều hành - Các dịch vụ mà hệ điều hành cung cấp - Biết đƣợc cấu trúc hệ điều hành Bài học cung cấp cho nhìn tổng quát nguyên lý hệ điều hành Chúng ta bắt đầu với việc xem x t mục tiêu chức hệ điều hành, sau phân loại chúng tìm hiểu trình phát triển hệ điều hành qua giai đoạn Phân biệt thành phần hệ thống thành phần bên hệ điều hành 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 cải tiến nhƣ dịch vụ mà hệ điều hành cung cấp, cuối khảo sát cấu trúc khác hệ điều hành 1.2 KHÁI NIỆM VỀ HỆ ĐIỀU HÀNH Hệ điều hành chƣơng trình hệ thống hay hệ chƣơng trình đóng vai tr trung gian ngƣời dùng máy tính phần cứng máy tính Mục tiêu hệ điều hành cung cấp môi trƣờng thuận lợi để ngƣời dùng d dàng thực chƣơng trình ứng dụng họ máy tính khai thác triệt để chức phần cứng máy tính 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 đƣợc 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 dùng (user) Phần cứng bao gồm xử lý, nhớ, thiết bị nhập xuất, tài ngun máy tính Chương trình ứng dụng nhƣ chƣơng trình dịch ngơn ngữ lập trình Pascal, C,… , hệ thống sở liệu (Access, SQL), chƣơng trình tr chơi, chƣơng trình thƣơng mại Các chƣơng trình sử dụng tài nguyên máy tính để giải yêu cầu ngƣời dùng Hệ điều hành làm nhiệm vụ đ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 dùng khác bao gồm thiết bị đầu cuối, hệ thống máy tính 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 Ngƣời dùng Chƣơng trình Ngƣời dùng Ngƣời dùng Hợp ngữ Soạn thảo văn dịch Ngƣời dùng CSDL Chƣơng trình ứng dụng Hệ điều hành Phần cứng Hình 1.1 Mơ hình trừu tượng hệ thống máy tính Hệ điều hành đƣợc coi nhƣ phân phối tài nguyên máy tính Nhiều tài nguyên máy tính nhƣ thời gian sử dụng CPU, không gian nhớ, vùng lƣu trữ tập tin, thiết bị nhập xuất v.v… đƣợc chƣơng trình yêu cầu để giải vấn đề Hệ điều hành hoạt động nhƣ quản lý tài nguyên phân phối chúng cho chƣơng trình ngƣời dùng cần thiết Do có nhiều yêu cầu, hệ điều hành phải giải vấn đề tranh chấp phải định cấp phát tài nguyên cho yêu cầu theo thứ tự để hoạt động máy tính hiệu Một hệ điều hành đƣợc coi nhƣ chƣơng trình kiểm sốt việc sử dụng máy tính, đặc biệt ngƣời dùng sử dụng thiết bị nhập xuất Tuy nhiên, nhìn chung chƣa có định nghĩa hoàn hảo hệ điều hành Hệ điều hành tồn để giải vấn đề sử dụng hệ thống máy tính Mục tiêu giúp cho việc thi hành chƣơng trình d dàng Mục tiêu thứ hai hỗ ... nhiều giai đoạn - Các thành phần bên hệ điều hành - Các dịch vụ mà hệ điều hành cung cấp - Biết đƣợc cấu trúc hệ điều hành Bài học cung cấp cho nhìn tổng quát nguyên lý hệ điều hành Chúng ta bắt... thành phần hệ điều hành đƣợc cải tiến nhƣ dịch vụ mà hệ điều hành cung cấp, cuối khảo sát cấu trúc khác hệ điều hành 1.2 KHÁI NIỆM VỀ HỆ ĐIỀU HÀNH Hệ điều hành chƣơng trình hệ thống hay hệ chƣơng... hệ thống tập tin, Quản lý đĩa Mục tiêu: Kiến thức: - Hiểu đƣợc vai trò hệ điều hành chế hoạt động hệ điều hành - Hiểu kiến trúc thiết kế hệ điều hành - Hiểu chiến lƣợc việc thiết kế hệ điều hành

Ngày đăng: 13/07/2021, 11:37

Từ khóa liên quan

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

Tài liệu liên quan