Tải bản đầy đủ (.pdf) (19 trang)

bài tập lớn đồ án cuối kì môn nhập môn hệ điều hành

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.32 MB, 19 trang )

<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">

TỔNG LIÊN ĐOÀN LAO ĐỘNG VIỆT NAM TRƯỜNG ĐẠI HỌC TÔN ĐỨC THẮNG

<b>KHOA CÔNG NGHỆ THƠNG TIN </b>

<b>BÀI TẬP LỚN/ĐỒ ÁN CUỐI KÌ MƠN NHẬP MÔN HỆ ĐIỀU HÀNH </b>

<b>Người hướng dẫn: GV Trần Trung Tín </b>

Lớp <b>:20H50203 </b>

<b>THÀNH PHỐ HỒ CHÍ MINH, NĂM 2021 </b>

TỔNG LIÊN ĐOÀN LAO ĐỘNG VIỆT NAM

<b>TRƯỜNG ĐẠI HỌC TÔN ĐỨC THẮNG </b>

</div><span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2">

<b>BÁO CÁO CUỐI KÌ MƠN NHẬP MƠN HỆ ĐIỀU HÀNH </b>

<b>Người hướng dẫn: GV Trần Trung Tín </b>

Lớp <b>:20H50203 </b>

<b>THÀNH PHỐ HỒ CHÍ MINH, NĂM 2021 </b>

</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3">

<b>LỜI CẢM ƠN </b>

Tơi xin chân thành cảm ơn GV Trần Trung Tín, người đã hỗ trợ cũng như giải đáp các thắc mắc về bài báo cáo. Thầy đã có những thay đổi về bài báo cáo để có thể tốt nhất cho sinh viên nói chung và bản thân tơi nói riêng.

</div><span class="text_page_counter">Trang 4</span><div class="page_container" data-page="4">

Ngồi ra, trong Khóa luận/Đồ án tốt nghiệp còn sử dụng một số nhận xét, đánh giá cũng như số liệu của các tác giả khác, cơ quan tổ chức khác đều có trích dẫn và chú thích nguồn gốc.

Nếu phát hiện có bất kỳ sự gian lận nào tơi xin hồn tồn chịu trách nhiệm về nội dung Khóa luận/Đồ án tốt nghiệp của mình. Trường Đại học Tơn Đức Thắng khơng liên quan đến những vi phạm tác quyền, bản quyền do tơi gây ra trong q trình thực hiện (nếu có).

(

</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="5">

<b>TÓM TẮT </b>

Nội dung bài báo cáo xoay quanh 7 phần theo Report topic thuộc môn Nhập Môn Hệ Điều Hành. Ở phần 1, tôi được giao tìm hiểu và trả lời về mối quan hệ giữa các cặp thuật tốn. Phần 2, tơi sẽ làm về đánh đổi giữa sự công bằng và thông lượng của các hoạt động của bài toán Bộ ghi bộ đọc. Kế tiếp là phần 3, tôi sẽ xử lý và trả - lời các câu hỏi về thuật tốn Banker tìm giá trị của x để đây là trạng thái an tồn. Cùng với phần 3 thì phần 4, tơi sẽ thực hiện bài tốn cấp phát bộ nhớ cụ thể hơn là best-fit. Còn phần 5 và phần 6 sẽ làm về bài toán liên quan đến phân trang và thay thế trang (Tìm lỗi trang với thuật toán thay thế LRU, FIFO và Tối ưu). Cuối cùng,Phần 7 tôi nhận nhiệm vụ trả lời câu hỏi về vấn đề lưu trữ.

</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6">

Câu hỏi 1: LÝ THUYẾT ĐỊNH THỜI CPU ... 1

Câu hỏi 2: LÝ THUYẾT ĐỒNG BỘ <small>...</small>1

Câu hỏi 3: LƯU TRỮ ... 1

1.2 Bài tập ... 1

Bài tập 1: BÀI TOÁN BANKER ... 1

Bài tập 2: CẤP PHÁT LIÊN TỤC ... 1

Bài tập 3: PHÂN TRANG ... 1

Bài tập 4: THAY THẾ TRANG ... 1

</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="8">

vii

<b>DANH MỤC HÌNH VẼ </b>

</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9">

Bảng 3. 5 Thu t toán thay th trang LRậếU……….8

Bảng 3. 6 Thu t toán thay th ậế trang FIFO……….….………….8

Bảng 3. 7 Thu t toán thay th ậế trang OPT……….….….……….9

</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10">

ix

<b>DANH MỤC CÁC CHỮ VIẾT TẮT </b>

</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11">

<b>1.2 Bài tập </b>

<b>Bài tập 1: BÀI TOÁN BANKER </b>

Bài tập 2: CẤP PHÁT LIÊN TỤC

<b>Bài tập 3: PHÂN TRANG </b>

Bài tập 4: THAY THẾ TRANG

</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="12">

CHƯƠNG 2 – LÝ THUYẾT

<b>2.1 Câu hỏi 1 </b>

2.1.1 Nội dung câu hỏi

1.2 Nhiều thuật toán lập lịch CPU được tham số hóa. Ví dụ: Thuật tốn RR u cầu một tham số để chỉ ra thời lượng một lần chạy. Hàng đợi đa cấp có phản hồi yêu cầu tham số để chỉ ra số lượng hàng đợi, các thuật toán lập lịch cho mỗi hàng đợi, các tiêu chí được sử dụng để di chuyển các tiến trình giữa các hàng đợi, v.v.

Do đó, các thuật tốn này thực sự là các bộ thuật tốn (ví dụ: bộ thuật toán RR cho tất cả các lát cắt thời gian, v.v.). Một bộ thuật tốn có thể bao gồm một cái khác (ví dụ: thuật tốn RR khi sử dụng giá trị rất lớn cho lượng thời gian thì nó tương tự như giải thuật FCFS). Chỉ ra mối quan hệ (nếu có) giữa các cặp thuật toán sau đây?

a. Ưu tiên và SJF

b. Hàng đợi phản hồi đa cấp và FCFS c. Ưu tiên và FCFS

d. RR và SJF 2.1.1 Lời giải

d. RR v SJF: Thươ ng c thơ i gian quay v ng cao , nh ng lư a i c thơ i gian đáp ứng tốt hơn.

<b>2.2. Câu hỏi 2 </b>

2.2.1 Nội dung câu hỏi

2.3 Nêu rõ các biến thể của bài toán Người đọc – Người ghi. Thảo luận về sựđánh đổi giữa sự công bằng và thông lượng của các hoạt động của bài toán Bộ ghi - bộ đọc. Đề xuất một phương pháp để giải quyết bài toán này mà không gây ra sự cạn kiệt tài nguyên.

</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13">

2.2.2 Lời giải

Thông lượng giữa Người đọc – Người ghi sẽ được tối ưu và tăng lên bằng cách tăng nhiều người đọc hơn thay vì cho phép một người viết độc quyền truy cập. Nhưng ngược lại việc ưu tiên người đọc có thể dẫn đến người ghi bị cạn kiệt tài nguyên. Để có thể tránh được tình trạng cạn kiệt tài ngun giữa Người đọc và Người ghi bằng những cách liên quan đến quá trình chờ đợi. Khi một người ghi hồn thành nhiệm vụ của mình, nó sẽ đánh thức quá trình đã chờ đợi lâu nhất. Khi một người đọc đến và thấy rằng một người đọc khác đang truy cập, thì nó chỉ vào phần quan trọng nếu khơng có người ghi nào đang đợi. Những hạn chế này sẽ đảm bảo sự công bằng của các hoạt động của vài toán Bộ ghi – bộ đọc.

<b>2.3. Câu hỏi 3 </b>

2.3.1 Nội dung câu hỏi

7.4 Với kích thước khối đĩa (block) là 4 KB và giá trị địa chỉ con trỏ khối là 4 byte, kích thước tập tin lớn nhất (tính bằng byte) có thể được truy cập bằng 10 địa chỉ trực tiếp và một khối gián tiếp?

2.3.2 Lời giải

</div><span class="text_page_counter">Trang 14</span><div class="page_container" data-page="14">

Bảng 3.1 Dữ liệu bài toán Banker – Bài tập 1Giá trị của x là bao nhiêu để đây là trạng thái an toàn?

3.1.2 Lời giải Need = Max - Allocation

</div><span class="text_page_counter">Trang 15</span><div class="page_container" data-page="15">

Nếu Need <= Work thì Work = Work + Allocation Giả sử thay x = 2

Bảng 3.3 Bảng Work bài toán Banker – Bài tập 1

Kết luận: Ti n trình A s khơng bao gi ế ẽ ờ được th c hiện vì need cột th 5 của tiến ự ứtrình A là s 2 nó quá l n so v i các s còn l i trong các tiố ớ ớ ố ạ ến trình mà điều kiện đểchạy được là Need <= Work. Vì vậy trong bài tốn này thì với mọi x sẽ khơng tồn tại ở trạng thái an toàn.

3.2. Bài tập 2: Cấp phát liên tục3.2.1 Câu hỏi

4.6 Cho sáu phân vùng bộ nhớ đang sẵn sàng gồm 300 KB, 600 KB, 350 KB, 200 KB, 750 KB và 125KB (theo thứ tự), các thuật toán đầu-tiên-vừa, tối ưu và tệ nhất sẽ đặt các tiến trình có kích thước 115 KB, 500 KB, 358 KB, 200 KB và 375 KB (theo

</div><span class="text_page_counter">Trang 16</span><div class="page_container" data-page="16">

(392KB) 375KB (17KB)

115KB (10KB)

Bảng 3.4 Sơ đồ trình t c p phát Bài t p 2 ự ấ – ậThứ ự t :

115KB 500KB 358KB 200KB 375KB

<b>3.3. Bài tập 3: Phân trang </b>

3.3.1 Câu hỏi

5.3 Xem xét một hệ thống phân trang với bảng phân trang được lưu trong bộ nhớ. a. Nếu một tham khảo bộ nhớ mất 50 nano giây, thì tham khảo một trang trong bộ nhớ mất bao lâu?

b. Nếu chúng ta thêm TLB và nếu 75% của tất cả các tham khảo bảng phân trang được tìm thấy trong TLB, thì thời gian tham khảo bộ nhớ hiệu quả là bao nhiêu? (Giả sử rằng việc tìm một mục trong bảng phân trang trong TLB mất 2 nano giây, nếu mục đó xuất hiện.)

3.3.2 Lời giải

</div><span class="text_page_counter">Trang 17</span><div class="page_container" data-page="17">

a. Có 2 quyền truy cập bộ nhớ: 50 nano giây để truy cập bảng trang và 50 nano giây để truy cập từ trong bộ nhớ.

50 * 2 = 100 nano giây b. Thời gian tham khảo bộ nhớ hiệu quả là:

75% * TBL hit-time + 25% * TBL miss-time =>0.75 * (50 + 2) + 0.25 * ( 100+2)

MSSV có chữ số cuối là bao nhiêu thì n là bấy nhiêu. Ngoại trừ 3 trường hợp MSSV 0, 8, 9 thì n= 3.

3.4.2 Lời giải

</div><span class="text_page_counter">Trang 19</span><div class="page_container" data-page="19">

Có 7 lỗi trang xảy ra đối với thuật toán OPT

</div>

×