ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH ĐẠI HỌC BÁCH KHOA KHOA KHOA HỌC VÀ KỸ THUẬT MÁY TÍNH HỆ ĐIỀU HÀNH (MỞ RỘNG) BÁO CÁO BÀI TẬP LỚN Giảng viên: Lê Thanh Vân Thành viên: Nguyễn Xuân Thọ Thành phố Hồ Chí Minh, Ngày 22 tháng 5 năm 2023 - 2112378 Mục lục I. Scheduler 1. Trả lời câu hỏi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2. Chạy thử chương trình . . . . . . . . . . . . . . . . . . . . . . . . . . . . . II. Memory Management 1. Trả lời câu hỏi . . . . 1.1. Câu hỏi 1 . . . . 1.2. Câu hỏi 2 . . . . 1.3. Câu hỏi 3 . . . . 2. Chạy thử chương trình 2 2 2 . . . . . 2 2 2 3 3 4 III. Tổng hợp 1. Trả lời câu hỏi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2. Chạy thử chương trình . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 8 8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Danh sách hình ảnh 1 Gantt Chart của Scheduler . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Danh sách bảng 1 Config cho Scheduler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Danh sách code 1 2 3 4 5 Config file memory management . . . . Chương trình m0s . . . . . . . . . . . . Chương trình m1s . . . . . . . . . . . . Kết quả memory mapping của process Kết quả chạy hệ điều hành . . . . . . . 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 4 4 5 8 Đại học Bách Khoa Thành phố Hồ Chí Minh Khoa Khoa học và Kỹ thuật Máy tính I. Scheduler 1. Trả lời câu hỏi Lợi ích của việc sử dụng hàng đợi ưu tiên so với các giải thuật định thời khác đã học là gì? Lợi ích của việc sử dụng hàng đợi ưu tiên là: - Cho phép các tác vụ được gán độ ưu tiên và bộ định thời thực thi tác vụ dựa trên độ ưu tiên đó. Điều này giúp hệ thống tập trung vào các tác vụ quan trọng. - Bằng việc đánh thứ tự ưu tiên các tác vụ, bộ định thời có thể cung cấp tính tương tác tốt hơn và giảm thời gian phản hòi trung bình cho các tác vụ quan trọng. - Cho phép thay đổi độ ưu tiên của tác vụ một cách linh động. 2. Chạy thử chương trình Chạy hệ điều hành với config như sau: Process P1 P2 P3 Quantum Time MAX_PRIO Arrival Time Burst Time 1 6 2 6 3 6 2 5 Bảng 1: Config cho Scheduler Ta sẽ được Gantt Chart như sau: P1 0 1 2 P2 3 4 P3 5 6 P1 7 P2 8 9 P1 P2 P2 P3 P3 P3 10 11 12 13 14 15 16 17 18 19 Hình 1: Gantt Chart của Scheduler II. 1. 1.1. Memory Management Trả lời câu hỏi Câu hỏi 1 Trong bài tập lớn này, ta hiện thực thiết kế nhiều vùng nhớ. Vậy lợi ích của thiết kế nhiều vùng nhớ là gì? Lợi ích của thiết kế nhiều vùng nhớ là: Hệ điều hành (Mở rộng) Trang 2/11 Đại học Bách Khoa Thành phố Hồ Chí Minh Khoa Khoa học và Kỹ thuật Máy tính - Từng vùng nhớ có thể được gán quyền truy cập khác nhau, cung cấp sự bảo vệ và độc lập giữa từng vùng nhớ của một chương trình. Việc này giúp ngăn chặn sự truy cập hay chỉnh sửa không được phép đến một vùng nhớ. - Cho phép điều khiển bộ nhớ một cách linh hoạt. Các vùng nhớ có thể được dùng để cấp phát cũng như thu hổi bộ nhớ, cho phép tận dụng nguồn tài nguyên. - Phân chia các vùng lưu trữ dữ liệu khác nhau như heap, stack, ... Việc phân chia này giúp cải thiện tính module và cung cấp vùng nhớ dùng chung cho các chương trình. - Cho phép các chương trình dùng chung các vùng nhớ. Điều này giúp hỗ trợ sự giao tiếp giữa các chương trình với nhau cũng như các thư viện dùng chung. - Trong trường hợp xảy ra lỗi bảo mật liên quan tới một vùng nhớ, các vùng nhớ còn lại giúp cô lập vùng nhớ bị lỗi, tránh gây ảnh hưởng tới các phần khác trong không gian địa chỉ của chương trình, cải thiện tính ổn địn của hệ thống. 1.2. Câu hỏi 2 Chuyện gì sẽ xảy ra nếu ta chia địa chỉ thành nhiều hơn 2 phân lớp trong hệ thống quản lý bộ nhớ phân trang? Lợi ích của việc tăng lượng phân lớp trong hệ thống quản lý bộ nhớ nhiều lớp: - Tăng lượng địa chỉ dùng cho bộ nhớ ảo. Mỗi một phân lớp tăng thêm làm tăng thêm số lượng bit có thể dùng để ánh xạ bộ nhớ ảo. - Giảm kích thước bảng phân trang. Với mỗi phân lớp tăng thêm, số lượng trang trong từng bảng giảm đi. Bất lợi của việc tăng lượng phân lớp trong hệ thống quản lý bộ nhớ nhiều lớp: - Tăng thời gian truy xuất bộ nhớ. - Tăng độ phức tạp của hệ thống. Nhiều phân lớp sẽ làm tăng sự phức tạp của quá trình ánh xạ địa chỉ, và nó cần nhiều giải thuật phức tạp để hiện thực việc truy xuất bộ nhớ thông qua nhiều phân lớp. 1.3. Câu hỏi 3 Lợi ích và bất lợi của phân vùng cùng với phân trang là gì? Lợi ích của phân vùng cùng phân trang là: - Thiết kế phân vùng cho phép không gian địa chỉ được chia thành các vùng khác nhau tương ứng với từng phần của chương trình như stack, heap, code, ... Kích thước của từng vùng cũng có thể tăng hoặc giảm một cách linh động cho phép cấp phát vùng nhớ một cách linh hoạt. - Thiết kế phân vùng cung cấp cơ chế điều khiển quyền truy cập và bảo vệ giữa các vùng với nhau. Mỗi vùng có thể có bộ các quyền riêng, như quyển chỉ đọc, quyền đọc và viết hay quyền thực thi. Điều này cho phép điều khiển chính xác và tăng độ bảo mật. Ngoài ra, việc phân vùng còn giúp các chương trình chia sẻ vùng nhớ chung bằng các ánh xạ các chương trình đó tới cùng một vùng nhớ. Hệ điều hành (Mở rộng) Trang 3/11 Đại học Bách Khoa Thành phố Hồ Chí Minh Khoa Khoa học và Kỹ thuật Máy tính - Thiết kế phân trang đơn giản hoá việc tính toán địa chỉ bằng việc chia không gian bộ nhớ ảo thành các trang có kích thước cố định và ánh xạ chúng với các khung trong bộ nhớ vật lý. Bằng việc phân trang, việc tính toán địa chỉ vật lý trở nên hiệu quả hơn vì các trang luận lý và các khung vật lý được ánh xạ trực tiếp với nhau, thay vì phải tính toán địa chỉ vật lý thông qua địa chỉ phân vùng. Bất lợi của phân vùng cùng phân trang là: - Việc phân vùng có thể dẫn đến phân mảnh ngoại vì sự tăng giảm kích thước các vùng nhớ. Điều này dẫn đến sự thiếu hiệu quả trong việc cấp phát bộ nhớ. - Thiết kế phân vùng cùng phân trang làm tăng mức độ sử dụng bộ nhớ và độ phức tạp để lưu trữ các bảng phân trang và phân vùng. - Việc phân trang có thể dẫn đến phân mảnh nội vì các trang được cấp phát có thể không được tận dụng hiệu quả, gây nên sự lãng phí bộ nhớ ở trong một trang. Việc này xảy ra khi kích thước của vùng nhớ không phải là một số nguyên lần kích thước một trang dẫn đến tồn tại một không gian không được sử dụng trong một trang. 2. Chạy thử chương trình Với file config giống với config ở mục Scheduler. Cụ thể hơn, nội dung file config như sau: 1 2 3 4 5 2 1 3 2048 16777216 0 0 0 1 m0s 0 2 m0s 1 3 m1s 0 Listing 1: Config file memory management Với chương trình m0s và m1s lần lượt có nội dung như sau: 1 2 3 4 5 6 7 1 6 alloc 300 alloc 100 free 0 alloc 100 write 102 write 1 2 0 1 2 1 20 10 Listing 2: Chương trình m0s 1 2 3 4 5 6 7 1 6 alloc 300 0 alloc 100 1 free 0 alloc 100 2 free 2 free 1 Listing 3: Chương trình m1s Kết quả chạy của chương trình trên như sau: Hệ điều hành (Mở rộng) Trang 4/11 Đại học Bách Khoa Thành phố Hồ Chí Minh Khoa Khoa học và Kỹ thuật Máy tính 1 2 3 4 5 6 7 8 9 Time slot 0 ld_routine Time slot 1 Loaded a process at input / proc / m0s , PID : 1 PRIO : 0 Time slot 2 CPU 0: Dispatched process 1 Print free region list and page table of process 1 print_list_rg : rg [300 -> 512] 10 11 12 13 14 15 16 17 18 print_pgtbl : 0 - 512 00000000: 80000001 00000004: 80000000 Loaded a process at input / proc / m0s , PID : 2 PRIO : 1 Time slot 3 Print free region list and page table of process 1 print_list_rg : rg [400 -> 512] 19 20 21 22 23 24 25 26 27 28 29 print_pgtbl : 0 - 512 00000000: 80000001 00000004: 80000000 Loaded a process at input / proc / m1s , PID : 3 PRIO : 0 Time slot 4 CPU 0: Put process 1 to ready queue CPU 0: Dispatched process 2 Print free region list and page table of process 2 print_list_rg : rg [300 -> 512] 30 31 32 33 34 35 36 37 print_pgtbl : 0 - 512 00000000: 80000003 00000004: 80000002 Time slot 5 Print free region list and page table of process 2 print_list_rg : rg [400 -> 512] 38 39 40 41 42 43 44 45 46 47 print_pgtbl : 0 - 512 00000000: 80000003 00000004: 80000002 Time slot 6 CPU 0: Put process 2 to ready queue CPU 0: Dispatched process 3 Print free region list and page table of process 3 print_list_rg : rg [300 -> 512] 48 49 50 51 52 53 54 55 56 print_pgtbl : 0 - 512 00000000: 80000005 00000004: 80000004 Time slot 7 CPU 0: Put process 3 to ready queue CPU 0: Dispatched process 1 Print free region list and page table of process 1 print_list_rg : Hệ điều hành (Mở rộng) Trang 5/11 Đại học Bách Khoa Thành phố Hồ Chí Minh Khoa Khoa học và Kỹ thuật Máy tính 57 58 rg [0 -> 300] rg [400 -> 512] 59 60 61 62 63 64 65 66 67 print_pgtbl : 0 - 512 00000000: 80000001 00000004: 80000000 Time slot 8 Print free region list and page table of process 1 print_list_rg : rg [100 -> 300] rg [400 -> 512] 68 69 70 71 72 73 74 75 76 77 78 print_pgtbl : 0 - 512 00000000: 80000001 00000004: 80000000 Time slot 9 CPU 0: Put process 1 to ready queue CPU 0: Dispatched process 2 Print free region list and page table of process 2 print_list_rg : rg [0 -> 300] rg [400 -> 512] 79 80 81 82 83 84 85 86 87 print_pgtbl : 0 - 512 00000000: 80000003 00000004: 80000002 Time slot 10 Print free region list and page table of process 2 print_list_rg : rg [100 -> 300] rg [400 -> 512] 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 print_pgtbl : 0 - 512 00000000: 80000003 00000004: 80000002 Time slot 11 CPU 0: Put process 2 to ready queue CPU 0: Dispatched process 1 write region =1 offset =20 value =102 Time slot 12 write region =2 offset =10 value =1 CPU 0: Processed 1 has finished CPU 0: Dispatched process 2 write region =1 offset =20 value =102 Time slot 13 Time slot 14 CPU 0: Put process 2 to ready queue CPU 0: Dispatched process 2 write region =2 offset =10 value =1 Time slot 15 CPU 0: Processed 2 has finished CPU 0: Dispatched process 3 Print free region list and page table of process 3 print_list_rg : rg [400 -> 512] 112 Hệ điều hành (Mở rộng) Trang 6/11 Đại học Bách Khoa Thành phố Hồ Chí Minh Khoa Khoa học và Kỹ thuật Máy tính 113 114 115 116 117 118 119 120 print_pgtbl : 0 - 512 00000000: 80000005 00000004: 80000004 Time slot 16 Print free region list and page table of process 3 print_list_rg : rg [0 -> 300] rg [400 -> 512] 121 122 123 124 125 126 127 128 129 130 131 print_pgtbl : 0 - 512 00000000: 80000005 00000004: 80000004 Time slot 17 CPU 0: Put process 3 to ready queue CPU 0: Dispatched process 3 Print free region list and page table of process 3 print_list_rg : rg [100 -> 300] rg [400 -> 512] 132 133 134 135 136 137 138 139 140 141 print_pgtbl : 0 - 512 00000000: 80000005 00000004: 80000004 Time slot 18 Print free region list and page table of process 3 print_list_rg : rg [0 -> 100] rg [100 -> 300] rg [400 -> 512] 142 143 144 145 146 147 148 149 150 151 152 153 154 print_pgtbl : 0 - 512 00000000: 80000005 00000004: 80000004 Time slot 19 CPU 0: Put process 3 to ready queue CPU 0: Dispatched process 3 Print free region list and page table of process 3 print_list_rg : rg [300 -> 400] rg [0 -> 100] rg [100 -> 300] rg [400 -> 512] 155 156 157 158 159 160 161 print_pgtbl : 0 - 512 00000000: 80000005 00000004: 80000004 Time slot 20 CPU 0: Processed CPU 0 stopped 3 has finished Listing 4: Kết quả memory mapping của process Hệ điều hành (Mở rộng) Trang 7/11 Đại học Bách Khoa Thành phố Hồ Chí Minh Khoa Khoa học và Kỹ thuật Máy tính III. 1. Tổng hợp Trả lời câu hỏi Điều gì sẽ xảy ra nếu sự đồng bộ không được thực hiện trong hệ điều hành đơn giản này? Biểu diễn thông qua vấn đề của hệ điều hành, nếu có. Nếu hệ điều hành không xử lý đòng bộ sẽ dẫn đến: - Sự không đồng nhất dữ liệu. Các thread hoặc chương trình có thể chỉnh sửa bộ nhớ dùng chung đồng thời, dẫn đến sử dụng dữ liệu bị sai sót và không lường trước được. - Nếu thiếu các cơ chế đồng bộ như khoá hay semaphore, hệ thống có thể gặp tình trạng khoá chết. Điều này xảy ra khi hai hay nhiều thread hay chương trình chờ cho thread hay chương trình còn lại giải phóng dữ liệu mà nó cần. Điều này dẫn đến việc hệ thống bị đóng băng hay không phản hồi. 2. Chạy thử chương trình Chạy chương trình với file config giống với file config ở mục Memory Management cùng với gọi hàm MEMPHY_dump(&mram) ở cuối hàm main, ta được kết quả như sau: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 Time slot 0 ld_routine Time slot 1 Loaded Time slot 2 CPU 0: Loaded Time slot 3 Loaded Time slot 4 CPU 0: CPU 0: Time slot 5 Time slot 6 CPU 0: CPU 0: Time slot 7 CPU 0: CPU 0: Time slot 8 Time slot 9 CPU 0: CPU 0: Time slot 10 Time slot 11 CPU 0: CPU 0: write region =1 Time slot 12 write region =2 Time slot 13 CPU 0: Hệ điều hành (Mở rộng) a process at input / proc / m0s , PID : 1 PRIO : 0 Dispatched process 1 a process at input / proc / m0s , PID : 2 PRIO : 1 a process at input / proc / m1s , PID : 3 PRIO : 0 Put process 1 to ready queue Dispatched process 2 Put process 2 to ready queue Dispatched process 3 Put process 3 to ready queue Dispatched process 1 Put process 1 to ready queue Dispatched process 2 Put process 2 to ready queue Dispatched process 1 offset =20 value =102 offset =10 value =1 Processed 1 has finished Trang 8/11 Đại học Bách Khoa Thành phố Hồ Chí Minh Khoa Khoa học và Kỹ thuật Máy tính 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 CPU 0: Dispatched process 2 write region =1 offset =20 value =102 Time slot 14 CPU 0: Put process 2 to ready queue CPU 0: Dispatched process 2 write region =2 offset =10 value =1 Time slot 15 CPU 0: Processed 2 has finished CPU 0: Dispatched process 3 Time slot 16 Time slot 17 CPU 0: Put process 3 to ready queue CPU 0: Dispatched process 3 Time slot 18 Time slot 19 CPU 0: Put process 3 to ready queue CPU 0: Dispatched process 3 Time slot 20 CPU 0: Processed 3 has finished CPU 0 stopped MEMPHY Dump : Max Size : 2048 Storage Content : __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ 66 __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ 01 __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ Hệ điều hành (Mở rộng) __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ Trang 9/11 Đại học Bách Khoa Thành phố Hồ Chí Minh Khoa Khoa học và Kỹ thuật Máy tính 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 __ __ __ __ __ __ 66 __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ Hệ điều hành (Mở rộng) __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ 01 __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ Trang 10/11 Đại học Bách Khoa Thành phố Hồ Chí Minh Khoa Khoa học và Kỹ thuật Máy tính 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ Listing 5: Kết quả chạy hệ điều hành Hệ điều hành (Mở rộng) Trang 11/11