Bài Tập Hệ điều Hành Có Lời Giải - Thả Rông

Bài tập hệ điều hành có lời giải 2 năms trước Trả lời: 0 Lượt xem: 538 Share Like

Bài tập về môn hệ điều hành

Tài liệu tham khảo cho các bạn sinh viên có tư liệu ôn thi tốt đạt kết quả cao trong các kì thi giữa kì và cuối kì       Download Xem online

Tóm tắt nội dung tài liệu

  1. Nhất là mấy bài tập Round-Robin, SJFS, Bộ nhớ ảo, Bảng FAT, Thuật giải Nhà băng, Sản xuất-Tiêu thụ (semFull-semEmpty), Dining-Philosopers (deadlock, không deadlock). Thuật giải Nhà băng........................................................................................................... 1 Round-Robin, SJFS,.............................................................................................................4 bài tập phân đoạn, tính địa chỉ vật lý cho địa chỉ logic......................................................7 bài tập phân đoạn, tính địa chỉ vật lý cho địa chỉ logic có trường hợp không hợp lệ. .9 Bảng FAT,.........................................................................................................................11 RAG...................................................................................................................................13 Bộ nhớ ảo......................................................................................................................... 14 Sản xuất-Tiêu thụ (semFull-semEmpty),.........................................................................18 Dining-Philosopers (deadlock, không deadlock)...............................................................21 BÀI TẬP HỆ ĐIỀU HÀNH Thuật giải Nhà băng Câu 1: Một hệ thống có 3 ổ băng từ và 3 tiến trình P1, P2, P3 với trạng thái cấp phát tài nguyên ở thời điểm Ti thể hiện bằng véc-tơ Allocation = (1, 0, 1) và Max = (1, 2, 2): Dùng thuật giải nhà băng để: a. Chứng minh trạng thái này an toàn. (1 điểm) b. Xác định có nên đáp ứng hay không yêu cầu xin thêm 1 ổ nữa của của P3 ? (1 điểm) Giải: a. Xét tại thời điểm Ti mà 3 tiến trình được cấp phát như đề bài ta có: Với: Need[i] = Max[i]  Allocation[i] và Available = 3  (1 + 0 + 1) = 1 Tìm chuỗi an toàn: Vậy tại thời điểm T0 tồn tại chuỗi an toàn {P1, P2, P3}. Suy ra, hệ thống tại thời điểm Ti ở trạng thái an toàn. b. Ta thấy, yêu cầu thêm 1 ổ nữa của P3 thoả các điều kiện: 1                                                                     1
  2. o Request3
  3. P1       1   0       0   0   1   7   5   0 P2       1   3       5   4   2   3   5   6 P3       0   6       3   2   0   6   5   2 P4       0   0       1   4   0   6   5   6 Duøng thuaät giaûi Nhaø baêng ñeå: a. Chứng minh trạng thái này an toàn.                           (1 điểm) b. Xác định có nên đáp ứng yêu cầu (0, 4, 3, 0) của P1 ?        (1 điểm) Giải: a. Xét tại thời điểm T0 mà 5 tiến trình được cấp phát như đề bài ta có: Need[i] = Max[i]  Allocation[i] Need Process ABCD P0     0000 P1     0750 P2     1002 P3     0020 P4     0442 Tìm chuỗi an toàn: Work >=         Need[i]            P[i]      Allocation[i] ABCD            ABCD                             ABCD 1520             0000                P0         0012 1532             1002                P2          1354 2886             0020                P3          0632 2 14 11 8        0442                P4          0114 2 15 12 12       0750                P1          1000 Vậy tại thời điểm T0 tồn tại chuỗi an toàn {P0, P2, P3, P4, P1}. Suy ra, hệ thống tại thời điểm T0 ở trạng thái an toàn. b. Ta thấy, yêu cầu thêm (0, 4, 3, 0) của P1 thoả điều kiện Request1  Need1, nhưng không thoả điều kiện: Request1  Available vì tài nguyên C trong hệ thống chỉ còn 2 mà yêu cầu 3. Do vậy, không thể cấp phát thêm (0, 4, 3, 0) cho P1 được. Round-Robin, SJFS, Câu 2 Một hệ thống có 3 tiến trình với thời điểm đến và thời gian sử dụng CPU như sau: 3                                           3
  4. Tiến trình Thời điểm đến (ms) CPU-Burst (ms) P1               3                  37 P2               10                 20 P3               24                 14 Dùng thuật giải Round-Robin với thời lượng 10 ms để điều phối CPU: a. Thể hiện bằng biểu đồ Gantt (1,0 điểm) b. Tính thời gian chờ trung bình của các tiến trình (1,0 điểm) Trả lời: a. Thể hiện bằng biểu đồ Gantt: b. Thời gian chờ trung bình của các tiến trình: (34+13+29)/3 = 76/3 = 25,3 ms Câu 4 Một hệ thống có 3 tiến trình với thời điểm đến và thời gian sử dụng CPU như sau: Tiến trình Thời điểm đến (ms) CPU-Burst (ms) P1               5                  47 P2               23                 15 P3               45                 28 4                                           4
  5. Dùng thuật giải Round-Robin với thời lượng bằng 20 ms để điều phối CPU: a. Thể hiện bằng biểu đồ Gantt (0,5 điểm) b. Tính thời gian chờ trung bình của các tiến trình (0,5 điểm) Trả lời: a. Thể hiện bằng biểu đồ Gantt: b. Tính thời gian chờ trung bình của các tiến trình: - Thời gian chờ của các tiến trình: P1 = 35 ms P2 = 2 ms P3 = 22 ms - Thời gian chờ trung bình = ( 35 + 2 + 22 ) / 3 = 59 / 3 = 19,66 ms 5                               5
  6. 6   6
  7. bài tập phân đoạn, tính địa chỉ vật lý cho địa chỉ logic sau khi tìm hiểu về bài tập này, mình post lên cho mọi người cùng trao đổi GIẢI 1. Vẽ vùng bộ nhớ Vật lý dạng các đoạn segment Từ bảng dữ liệu đề bài Ta vẽ được vùng bộ nhớ vật lý như sau: 7                                   7
  8. Các bạn nhìn vào hình mình đã hướng dẫn cách tính và cách vẽ, các bạn chú ý phần màu chữ mình sử dụng để nhận ra dễ hơn. Với segment 0: ta có + Địa chỉ vật lý cơ sở (basic) là 300 + Limit là 700 ==> địa chỉ vật lý của segment 0 là từ 300 -> 1000 Với segment 1: + Địa chỉ vật lý cơ sở (basic) là 1200, nên ta sẽ vẽ bắt đầu từ 1200, như vậy từ 1000- >1200 là trống, không có segment nào + Limit là 500 ==> địa chỉ vật lý của segment 1là từ 1200 -> 1700 và segment 2 các bạn tính tương tự 2. Cách tính địa chỉ logic 8                                               8
  9. Tính địa chỉ vật lý + Với dữ liệu đề bài cho là (1,200), ta xác định: tính địa chỉ vật lý của segment 1, địa chỉ logic là 200 (lưu ý: giá trị X tính được này nằm trong segment 1 hay ko (1200 không hợp lệ vì 800 > 700 (limit của segment 0) + (2,650) --> không hợp lệ vì 650 > 600 (limit của segment 2) + (1,501) --> không hợp lệ vì 501 > 500 (limit của segment 1) Tóm lại nếu nhìn thấy địa chỉ logic mà đề bài cho > limit của segment đó thì kết luận ngay là không hợp lệ bài tập phân đoạn, tính địa chỉ vật lý cho địa chỉ logic có trường hợp không hợp lệ Giả sử có Bảng đoạn sau: Hãy tính địa chỉ vật lý cho mỗi địa chỉ lô-gic sau: 9                                               9
  10. a. 0430 b. 1010 c. 2500 d. 3400 e. 4112 giải Tính địa chỉ vật lý + Với dữ liệu đề bài cho là (0,430) = 219 +430 = 649 ( hợp lệ) Vì nó nằm trong đoạn Segment 0. + (1,010) = 2300+ 10 = 2310 (hợp lệ) + (2,500) = 90 + 500 = 1400 (không hợp lệ) + (3,400) = 1327+ 400 = 1727 (hợp lệ) + (4,112) = 1952 + 112 = 2064 (không hợp lệ) =>Với các địa chỉ logic (0,430); (1,010); (1,500); (3,400); (4,112) ta có các địa chỉ vật lý tương ứng là 649; 2310; không hợp lệ;1727; không hợp lệ. 10                                             10
  11. Bảng FAT, Trên một hệ tập tin FAT32, tập tin Lớp HC08TH2.jpg có nội dung trải trên các liên cung 5, 6, 9, 10; trong khi Icon1.ico chỉ cần liên cung 8. Hãy thể hiện bằng hình vẽ cấu trúc bảng FAT và các Directory Entry. Giải: File Lớp HC08TH2.jpg jpg Cần đến 2 Directory Entry cho Lớp HC08TH2.jpg C 2   .     j     p      g          A    0                                                 0 K C Lớp 1                                 A    0             H      C       0    8    T          0    H      2 K N         Creation    Last             Last L   opHC0~1                       A         S                           Upp             Low   Size T          time       acc              write Bytes Ghi chú: Lớp gồm 5 ký tự Lowps. H C 0 8 T có 5 ký tự + 1 ký tự khoảng trắng ( _ ) phía trước là 6. Bytes 11                                                   11
  12. 8      3    1   1   1         4         2    2       4        2     4 N        Creation     Last       Last write       File Icon1.ico   Ext T        date/time   acces       date/time        Size Câu 7 (1 điểm) Trên một hệ tập tin FAT32, tập tin DeThi1.pdf có nội dung tại liên cung 5, trong khi DapAn1.pdf cần các liên cung 8, 6, 7. Hãy thể hi ện bằng hình v ẽ c ấu trúc bảng FAT và các Directory Entry. Giải: 12                                              12
  13. RAG Một hệ thống có 1 máy in laser và 1 ổ băng từ. Hai tiến trình P1 và P2 đang vận hành với trạng thái cấp phát tài nguyên như sau: Hãy: a. Thể hiện bằng RAG b. Xác định và giải thích trạng thái này. Giải: a. Đồ thị cấp phát tài nguyên RAG: b. Trạng thái này là trạng thái Deadlock .vì mỗi tài nguyên chỉ có một phiên bản và tồn tại chu trình hay vòng tròn khép kín các yêu cầu tài nguyên. 13                                       13
  14. Bộ nhớ ảo 14   14
  15. Với đề bài và cách giải trên thì mình xin làm và giải thích theo cách hiểu của mình Bạn nào có cách giải thích rõ hơn, chính xác hơn thì bổ sung nhé + Hình 1: Logical Memory + Hình 2: Page table + Hình 3: Physical memory 15                                            15
  16. + Hình 4: Backstore 16   16
  17. Một hệ thống có Bộ nhớ trong chia thành 8 khung trang với Khung 0 dành cho Hệ điều hành và các khung còn lại dành cho 2 tiến trình đang vận hành là P0 (gồm các trang C, D, E, F) và P1 (gồm các trang O, P, Q, R). Bằng hình vẽ, với kỹ thuật tổ chức bộ nhớ ảo dạng phân trang, hãy tìm cách: a. Phân bổ ngẫu nhiên các trang của P0 và P1 vào Bộ nhớ trong kể trên b. Tổ chức lại các bảng trang sao cho trang chưa nạp (do hết chỗ) bây giờ được nạp 17                                         17
  18. Sản xuất-Tiêu thụ (semFull-semEmpty), Phát biểu bài toán Sản xuất-Tiêu thụ với thuật giải đồng bộ hoá bằng 2 đèn hiệu semFull và semEmpty. Giải: Bài toán người sản xuất-người tiêu thụ (Producer-Consumer) thường được dùng để hiển thị sức mạnh của các hàm cơ sở đồng bộ hoá. Hai quá trình cùng chia sẻ một vùng đệm có kích thước giới hạn n. Biến semaphore mutex cung cấp sự loại trừ hỗ tương để truy xuất vùng đệm và được khởi tạo với giá trị 1. Các biến semaphore empty và full đếm số khe trống và đầy tương ứng. Biến semaphore empty được khởi tạo tới giá trị n; biến semaphore full được khởi tạo tới giá trị 0. Dữ liệu chia sẻ: SEMAPHORE full, empty, mutex; Khởi tạo: full = 0; 18                                          18
  19. empty = BUFFER_SIZE; mutex = 1; Buffer xoay vòng i out n PRODUCER                                         CONSUMER while (1) while (1) { { wait(full) wait(mutex); nextP = new_item(); nextC = get_buffer_item(out); wait(empty); wait(mutex); signal(mutex); signal(empty); insert_to_buffer(nextP); consume_item (nextC); signal(mutex); signal(full); } } Câu 2 (1 điểm) Phát biểu bài toán Sản xuất-Tiêu thụ với thuật giải đồng bộ hoá bằng 3 đèn hiệu semFull, semEmpty và Mutex. Trả lời: - Tiến trình sản xuất (Producer) tạo ra dòng thông tin để tiến trình tiêu thụ (Consumer) sử dụng. - Ví dụ: Compiler và Assembler vừa là nhà sản xuất vừa là nhà tiêu thụ. Compiler tạo ra mã dùng cho Assembler, tiếp theo Assembler sản sinh mã máy làm đầu vào cho Loader hoặc Linkage Editor. - Phát biểu bài toán: Bộ nhớ đệm Buffer bao gồm một số hữu hạn các khoang chứa (Items). Producer lần lượt đưa các sản phẩm S1, S2,vào các khoang của Buffer. Consumer lấy sản phẩm ra theo đúng thứ tự. Công việc của các tiến trình phải đồng bộ với nhau: không đưa ra sản phẩm khi hết chỗ trống, không lấy được sản phẩm khi chưa có. 19                                           19
  20. - Thuật giải đồng bộ hoá bằng 3 đèn hiệu: semFull (quản lý số sản phẩm có trong bộ đệm, giá trị ban đầu bằng 0), semEmpty (quản lý số khoang còn trống, giá trị ban đầu bằng số khoang của bộ đệm) và Mutex (đảm bảo tính loại trừ tương hỗ, nghĩa là mỗi thời điểm chỉ có 1 tiến trình sản xuất hay tiêu thụ được truy cập/cập nhật tài nguyên dùng chung, giá trị ban đầu bằng 1). o Thuật giải cho Producer: wait(semEmpty); wait(Mutex); // Đưa sản phẩm vào Buffer .......................... signal(semFull); signal(Mutex); o Thuật giải cho Consumer: wait(semFull); wait(Mutex); // Lấy sản phẩm từ Buffer .......................... signal(semEmpty); signal(Mutex); Phát biểu bài toán Sản xuất-Tiêu thụ và trình bày Thuật giải với Bộ đệm 4.1. thực thi bằng mảng xoay vòng. Giải: Phát biểu bài toán: Giả sử có Bộ nhớ đệm (Buffer) bao gồm nhiều khoang (Items) được tiến trình Producer lần lượt đưa các sản phẩm S1, S2,... vào. Tiến trình Consumer lần lượt lấy sản phẩm ra theo đúng thứ tự. Công việc của Producer phải đồng bộ với Consumer: Không được đưa sản phẩm vào khi Buffer đầy, Không được lấy ra khi chưa có. Trình bày giải thuật: 20                                         20

Khỏe Đẹp Bài tập Bài tập hệ điều hành có lời giảiReply Bài tập hệ điều hành có lời giải5 Bài tập hệ điều hành có lời giải1 Bài tập hệ điều hành có lời giảiChia sẻ

Bài Viết Liên Quan

Bài tập chiến lược marketing sản phẩm mới
Bài tập chiến lược marketing sản phẩm mới
Bài tập tính kế thừa trong C++
Bài tập tính kế thừa trong C++
Bài tập Tiếng Anh 7 Thí điểm Unit 12
Bài tập Tiếng Anh 7 Thí điểm Unit 12
Bài tập TTCK có lời giải
Bài tập TTCK có lời giải
Giải Bài tập lịch khả tuần tự
Giải Bài tập lịch khả tuần tự
Bài tập chi phí cơ hội tăng dần
Bài tập chi phí cơ hội tăng dần
Tiến trình song song có những dạng nào
Tiến trình song song có những dạng nào
Bài tập xác suất độc lập
Bài tập xác suất độc lập
Cách sử dụng bài tập tình huống là
Cách sử dụng bài tập tình huống là
Tiếng Anh lớp 3 Lesson 2
Tiếng Anh lớp 3 Lesson 2
Đầu 3 jordan 5 kích thước 7
Đầu 3 jordan 5 kích thước 7

MỚI CẬP NHẬP

Giáo án ôn tập hè toán 7 lên 8 năm 2024
16 phúts trước . bởi MorbidScooter
Bài văn tả về cô giáo lớp em năm 2024
35 phúts trước . bởi WryReformer
Bài tập luyện ngữ pháp tiếng anh lớp 6 năm 2024
1 giờs trước . bởi RivalWindfall
Soạn bài tìm hiểu văn hóa giáo dục địa phương năm 2024
1 giờs trước . bởi AnalyticTherapy
Bài luận văn về văn hóa quốc gia nhật bản năm 2024
1 giờs trước . bởi MarchingSyntax
Lớp nghiệp vụ kế toán trường đại học kinh tế năm 2024
2 giờs trước . bởi MystifiedInaction
Các dạng bài tập vật lý 10 chương 4 violet năm 2024
2 giờs trước . bởi DisgustingSalvation
Imdb top 250 full movies english with subtitles năm 2024
3 giờs trước . bởi ObligingSemifinal
Cách chơi bài ma sói bản việt hóa năm 2024
3 giờs trước . bởi OvergrownPhilosopher
Đề thi giữa kì 1 toán lớp 6 năm 2024
3 giờs trước . bởi InfrequentAbbey

Xem Nhiều

Bài tập tiếng anh lớp 7 the langmaster năm 2024
5 ngàys trước . bởi CheeryAnthropology
Uống vitamin e như thế nào là tốt nhất năm 2024
6 ngàys trước . bởi SheerSolicitation
Hóa chất dùng làm hệ nền trong mỹ phẩm năm 2024
1 ngàys trước . bởi UnrelentingEnthusiasm
Bài tập tốt cho bà bầu 3 thang cuoi năm 2024
1 tuầns trước . bởi TriflingThriller
Bài toán về tái sản xuất giản đơn năm 2024
1 tuầns trước . bởi MammothAdjustment
Kế toán doanh nghiệp sản xuất là gì năm 2024
4 ngàys trước . bởi UnsettlingPeter
Americas next top model 20 ep 6 vietsub năm 2024
1 tuầns trước . bởi ImmoralHelplessness
Cách hóa giả bếp đặt trong cung tài lộc năm 2024
2 ngàys trước . bởi PuzzlingRecognition
Các dạng đề kiểm tra toán số chương 1 năm 2024
3 ngàys trước . bởi SuccessfulFetish
Lỗi có lỗi khi đang xử lý tờ khai năm 2024
9 giờs trước . bởi UnderdevelopedRodeo

Chúng tôi

  • Giới thiệu
  • Liên hệ
  • Tuyển dụng
  • Quảng cáo

Điều khoản

  • Điều khoản hoạt động
  • Điều kiện tham gia
  • Quy định cookie

Trợ giúp

  • Hướng dẫn
  • Loại bỏ câu hỏi
  • Liên hệ

Mạng xã hội

  • Facebook
  • Twitter
  • LinkedIn
  • Instagram
Bản quyền © 2024 Inc.

Từ khóa » Bài Tập Semaphore Hệ điều Hành Có Lời Giải