You are on page 1of 3

Báo cáo về thuật toán First Fit và Best Fit

Mã Sinh Viên Họ và tên Email

HE172735 Hoàng Trung Hòa hoahthe172735@fpt.edu.vn

HE170708 Đỗ Trí Trọng trongdthe170708@fpt.edu.vn

HE172670 Nguyễn Văn Tiến Hải hainvthe172670@fpt.edu.vn


I. Mục tiêu của dự án nhóm:
Dự án nhóm nhằm mô phỏng và minh họa hai thuật toán lập lịch bố trí bộ nhớ
First Fit và Best Fit. Mục tiêu của dự án là hiểu và trình bày cách hoạt động của hai
thuật toán này trong việc phân phối bộ nhớ cho các quá trình.

II. Chức năng chính:


Chương trình được viết bằng Python và bao gồm hai module chính: "First-Fit" và
"Best-Fit". Hai module này giải quyết hai thuật toán tương ứng và nhận đầu vào là các
kích thước khối bộ nhớ và kích thước của các quá trình cần được ánh xạ vào khối. Các
thông số như kích thước khối bộ nhớ, kích thước quá trình và số lượng quá trình được
cung cấp để thực hiện thuật toán.

III. Cài đặt & chạy:


1. Để chạy chương trình, bạn cần môi trường Python và phiên bản Python3 đã
được cài đặt trên hệ thống.
2. Tải mã nguồn chương trình và lưu thành một tệp tin Python có phần mở rộng
".py" (có 2 file python là 2 thuật toán first-fit và best-fit)
3. Sử dụng trình biên dịch Python để chạy tệp tin Python đã lưu.
4. Kết quả sẽ được hiển thị trên màn hình console.
IV. Xử lý dữ liệu:
1. Dữ liệu đầu vào (input):
+ blockSize: Một mảng các giá trị nguyên đại diện cho kích thước của các
khối bộ nhớ.
+ processSize: Một mảng các giá trị nguyên đại diện cho kích thước của
các quá trình cần được ánh xạ vào khối bộ nhớ.
2. Dữ liệu đầu ra (output):
+ Hiển thị bảng thông tin về số thứ tự quá trình, kích thước quá trình và số
thứ tự khối bộ nhớ mà quá trình đó được ánh xạ vào.
+ Hiển thị danh sách các giá trị hole (khoảng trống) sau khi ánh xạ các quá
trình.
V. Nhận xét:
1. Thuật toán First Fit:
+ First Fit là một thuật toán đơn giản và dễ triển khai.
+ Thuật toán đi qua từng quá trình và tìm khối bộ nhớ phù hợp đầu tiên mà
quá trình có thể được ánh xạ vào.
+ Kết quả có thể dẫn đến việc tạo ra nhiều khoảng trống nhỏ hơn, gây lãng
phí không gian bộ nhớ.
2. Thuật toán Best Fit:
+ Best Fit là một thuật toán tìm kiếm khối bộ nhớ phù hợp nhỏ nhất để ánh
xạ một quá trình.
+ Thuật toán đi qua từng quá trình và tìm khối bộ nhớ phù hợp nhỏ nhất cho
quá trình.
+ Kết quả có thể tạo ra ít khoảng trống hơn so với First Fit, tuy nhiên, thuật
toán này có độ phức tạp tính toán cao hơn.
+ Để cải thiện hiệu suất của hai thuật toán, có thể xem xét việc sử dụng các
biến thay thế, như Next Fit, để cải thiện quản lý bộ nhớ.
+ Có thể tiếp tục mở rộng chương trình để bao gồm các thuật toán khác và
thử nghiệm với các tập dữ liệu đa dạng hơn để nắm bắt sự hiệu quả và
ưu điểm của từng thuật toán.
VI. Đề bài
3.4. Consider a swapping system in which memory consists of
the following hole (block of available memory) sizes in memory
order: 10 KB, 4 KB, 20 KB, 18 KB, 7 KB, 9 KB, 12 KB, and 15 KB.
Which hole is taken for successive segment requests of (a) 12 KB
(b) 10 KB (c) 9 KB for first fit?
Now repeat the question for best fit, worst fit, and next fit.
First-fit: 20KB, 10KB, 18KB
Best-fit: 12KB, 10KB, 9KB

You might also like