Bài kiểm tra PT2

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 14

Bài kiểm tra PT2

Thực hành làm bài luận về các chủ đề

Chủ đề 1:

Nghiên cứu, trình bày: Fixed Partitioning và Dynamic Partitioning? So sánh.

BÀI LÀM
1. Giới thiệu
Trong hệ điều hành, việc quản lý bộ nhớ là một phần quan trọng để đảm bảo hiệu suất và hiệu quả của
hệ thống. Fixed Partitioning và Dynamic Partitioning là hai phương pháp quản lý bộ nhớ được sử dụng
để phân chia và quản lý không gian bộ nhớ trong hệ thống máy tính.

2. Fixed Partitionin
Phân vùng cố định, còn được gọi là phân vùng tĩnh, là một kỹ thuật cấp phát bộ nhớ được sử dụng trong
hệ điều hành để chia bộ nhớ vật lý thành các phân vùng hoặc vùng có kích thước cố định, mỗi phân vùng
được gán cho một quy trình hoặc người dùng cụ thể. Mỗi phân vùng thường được phân bổ vào thời
điểm khởi động hệ thống và vẫn dành riêng cho một quy trình cụ thể cho đến khi nó kết thúc hoặc giải
phóng phân vùng đó.

Trong phân vùng cố định, bộ nhớ được chia thành các khối có kích thước cố định, mỗi khối được dành
riêng cho một quy trình cụ thể. Khi một tiến trình yêu cầu bộ nhớ, hệ điều hành sẽ gán nó vào phân vùng
thích hợp. Mỗi phân vùng có cùng kích thước và việc phân bổ bộ nhớ được thực hiện khi khởi động hệ
thống.

Phân vùng cố định có một số ưu điểm so với các kỹ thuật cấp phát bộ nhớ khác. Đầu tiên, nó đơn giản và
dễ thực hiện. Thứ hai, nó có thể dự đoán được, nghĩa là hệ điều hành có thể đảm bảo lượng bộ nhớ tối
thiểu cho mỗi tiến trình. Thứ ba, nó có thể ngăn chặn các tiến trình can thiệp vào không gian bộ nhớ của
nhau, cải thiện tính bảo mật và ổn định của hệ thống.

Tuy nhiên, phân vùng cố định cũng có một số nhược điểm. Nó có thể dẫn đến sự phân mảnh bên trong,
trong đó bộ nhớ trong phân vùng vẫn không được sử dụng. Điều này có thể xảy ra khi yêu cầu bộ nhớ
của tiến trình nhỏ hơn kích thước phân vùng, khiến một số bộ nhớ không được sử dụng. Ngoài ra, phân
vùng cố định giới hạn số lượng quy trình có thể chạy đồng thời, vì mỗi quy trình yêu cầu một phân vùng
chuyên dụng.

Nhìn chung, phân vùng cố định là một kỹ thuật cấp phát bộ nhớ hữu ích trong các tình huống mà số
lượng tiến trình là cố định và yêu cầu bộ nhớ cho mỗi tiến trình đều được biết trước. Nó thường được
sử dụng trong các hệ thống nhúng , hệ thống thời gian thực và hệ thống có tài nguyên bộ nhớ hạn chế.

Trong hệ điều hành, Quản lý bộ nhớ là chức năng chịu trách nhiệm phân bổ và quản lý bộ nhớ chính của
máy tính. Chức năng Quản lý bộ nhớ theo dõi trạng thái của từng vị trí bộ nhớ, được phân bổ hoặc còn
trống để đảm bảo sử dụng Bộ nhớ chính hiệu quả và tiết kiệm.

Có hai Kỹ thuật quản lý bộ nhớ:

 Tiếp giáp
 Không liền kề

Trong Kỹ thuật tiếp giáp, quy trình thực thi phải được tải hoàn toàn vào bộ nhớ chính.
Kỹ thuật tiếp giáp có thể được chia thành:

 Phân vùng cố định (hoặc tĩnh)


 Phân vùng biến (hoặc động)

Phân vùng cố định: Đây là kỹ thuật lâu đời nhất và đơn giản nhất được sử dụng để đặt nhiều tiến trình
vào bộ nhớ chính. Trong cách phân vùng này, số lượng phân vùng (không chồng chéo) trong RAM là cố
định nhưng kích thước của mỗi phân vùng có thể giống nhau hoặc không . Vì đây là sự phân bổ liền kề
nên không được phép kéo dài. Ở đây các phân vùng được tạo trước khi thực thi hoặc trong quá trình
cấu hình hệ thống.

Như minh họa trong hình trên, quy trình đầu tiên chỉ tiêu tốn 1 MB trong tổng số 4 MB trong bộ nhớ
chính. Do đó, Phân mảnh nội bộ trong khối đầu tiên là (4-1) = 3MB.

Tổng phân mảnh nội bộ trong mỗi khối = (4-1)+(8-7)+(8-7)+(16-14)= 3+1+1+2 = 7MB.

Giả sử tiến trình P5 có kích thước 7MB xuất hiện. Nhưng quá trình này không thể được đáp ứng mặc dù
không gian trống có sẵn do phân bổ liền kề (vì không được phép mở rộng). Do đó, 7 MB trở thành một
phần của Phân mảnh bên ngoài.

Có một số ưu điểm và nhược điểm của phân vùng cố định.


Ưu điểm của phân vùng cố định :

 Dễ thực hiện: Các thuật toán cần thiết để thực hiện Phân vùng cố định rất đơn giản và dễ thực
hiện.
 Chi phí thấp: Phân vùng cố định yêu cầu chi phí tối thiểu, điều này lý tưởng cho các hệ thống có
tài nguyên hạn chế.
 Có thể dự đoán: Phân vùng cố định đảm bảo lượng bộ nhớ có thể dự đoán được cho mỗi quy
trình.
 Không phân mảnh bên ngoài: Phân vùng cố định giúp loại bỏ vấn đề phân mảnh bên ngoài.
 Thích hợp cho các hệ thống có số lượng quy trình cố định: Phân vùng cố định rất phù hợp cho
các hệ thống có số lượng quy trình cố định và các yêu cầu bộ nhớ đã biết.
 Ngăn chặn các tiến trình can thiệp lẫn nhau: Phân vùng cố định đảm bảo rằng các tiến trình
không can thiệp vào không gian bộ nhớ của nhau.
 Sử dụng bộ nhớ hiệu quả: Phân vùng cố định đảm bảo rằng bộ nhớ được sử dụng hiệu quả bằng
cách phân bổ nó vào các phân vùng có kích thước cố định.
 Tốt cho xử lý hàng loạt: Phân vùng cố định lý tưởng cho các môi trường xử lý hàng loạt nơi số
lượng quy trình được cố định.
 Kiểm soát tốt hơn việc phân bổ bộ nhớ: Phân vùng cố định giúp hệ điều hành kiểm soát tốt hơn
việc phân bổ bộ nhớ.
 Dễ gỡ lỗi: Phân vùng cố định rất dễ gỡ lỗi vì kích thước và vị trí của mỗi quy trình được xác định
trước.

Nhược điểm của phân vùng cố định –

 Phân mảnh nội bộ: Việc sử dụng bộ nhớ chính không hiệu quả. Bất kỳ chương trình nào, dù nhỏ
đến đâu, cũng chiếm toàn bộ một phân vùng. Điều này có thể gây ra sự phân mảnh nội bộ.
 Phân mảnh bên ngoài: Không thể sử dụng tổng không gian chưa sử dụng (như đã nêu ở trên)
của các phân vùng khác nhau để tải các tiến trình mặc dù có sẵn không gian nhưng không ở dạng
liền kề (vì không được phép kéo dài).
 Giới hạn kích thước quy trình: Không thể cung cấp quy trình có kích thước lớn hơn kích thước
của phân vùng trong Bộ nhớ chính. Kích thước phân vùng không thể thay đổi tùy theo kích
thước của kích thước quy trình đến. Do đó, kích thước quy trình 32 MB trong ví dụ nêu trên là
không hợp lệ.
 Hạn chế về mức độ đa chương trình: Các phân vùng trong Bộ nhớ chính được tạo trước khi thực
thi hoặc trong quá trình cấu hình hệ thống. Bộ nhớ chính được chia thành một số phân vùng cố
định. Giả sử nếu có các phân vùng trong RAM và là số lượng tiến trình thì điều kiện phải được
đáp ứng. Số lượng tiến trình lớn hơn số lượng phân vùng trong RAM không hợp lệ trong Phân
vùng cố định. n1 n2 n2 <= n1

3. Dynamic Partitioning
Phân vùng động là một phân đoạn không thể thiếu của kỹ thuật cấp phát bộ nhớ liền kề. Vai trò chính
của nó là giải quyết các vấn đề phát sinh từ việc phân vùng cố định. Ngược lại với phân vùng cố định,
phân vùng động không tạo phân vùng cho đến khi một tiến trình được thực thi.
Phân vùng động đóng vai trò then chốt trong việc giảm thiểu những thách thức do phân vùng cố định
đặt ra. Trong phương pháp này, kích thước phân vùng không được xác định trước mà được thiết lập tại
thời điểm tải quá trình.

Phân vùng đầu tiên phải được dành riêng cho Hệ điều hành. Không gian còn lại sau đó được chia thành
nhiều phần khác nhau. Kích thước của mỗi phân vùng bằng kích thước của quá trình. Kích thước phân
vùng điều chỉnh theo nhu cầu của quy trình, từ đó tránh được sự phân mảnh bên trong một cách hiệu
quả.

Lợi ích của phân vùng động trong hệ điều hành

 Loại bỏ sự phân mảnh nội bộ: Phân vùng động tạo các phân vùng dựa trên yêu cầu của quy
trình, từ đó loại bỏ sự phân mảnh bên trong. Vì không còn dung lượng trống nào trong phân
vùng được phân bổ nên nó đảm bảo việc sử dụng tối ưu.
 Không hạn chế về kích thước quy trình: Phân vùng cố định gây ra sự cố khi cần thực thi một tiến
trình lớn hơn kích thước phân vùng lớn nhất do thiếu bộ nhớ liền kề. Ngược lại, phân vùng động
không áp đặt bất kỳ hạn chế nào đối với kích thước quy trình vì kích thước phân vùng được xác
định dựa trên kích thước quy trình.
 Mức độ linh hoạt của đa chương trình: Việc không có sự phân mảnh bên trong đảm bảo rằng
không có khoảng trống nào chưa được sử dụng trong phân vùng. Điều này cho phép nhiều tiến
trình được tải đồng thời vào bộ nhớ, do đó nâng cao mức độ đa chương trình.

Hạn chế của phân vùng động trong hệ điều hành


 Sự hiện diện của sự phân mảnh bên ngoài: Mặc dù phân vùng động loại bỏ sự phân mảnh bên
trong nhưng nó không tránh khỏi sự phân mảnh bên ngoài. Ví dụ, hãy xem xét ba tiến trình (P1,
P2, P3) được tải vào các phân vùng tương ứng của chúng trong bộ nhớ. Nếu P1 và P3 hoàn
thành việc thực thi, không gian được phân bổ cho chúng sẽ trống. Tuy nhiên, không gian trống
này không thể được sử dụng để tải một tiến trình đòi hỏi bộ nhớ liền kề, dẫn đến sự phân mảnh
bên ngoài.
 Sự phức tạp trong việc phân bổ bộ nhớ: Trong phân vùng cố định, danh sách phân vùng được
tạo một lần và không thay đổi. Tuy nhiên, quá trình phân bổ và giải phóng trong phân vùng động
rất phức tạp vì kích thước phân vùng thay đổi theo từng quy trình mới. Hệ điều hành phải liên
tục theo dõi tất cả các phân vùng, khiến việc quản lý hệ thống trở nên khá khó khăn.

Hạn chế của phân vùng động trong hệ điều hành

 Sự hiện diện của sự phân mảnh bên ngoài: Mặc dù phân vùng động loại bỏ sự phân mảnh bên
trong nhưng nó không tránh khỏi sự phân mảnh bên ngoài. Ví dụ, hãy xem xét ba tiến trình (P1,
P2, P3) được tải vào các phân vùng tương ứng của chúng trong bộ nhớ. Nếu P1 và P3 hoàn
thành việc thực thi, không gian được phân bổ cho chúng sẽ trống. Tuy nhiên, không gian trống
này không thể được sử dụng để tải một tiến trình đòi hỏi bộ nhớ liền kề, dẫn đến sự phân mảnh
bên ngoài.
 Sự phức tạp trong việc phân bổ bộ nhớ: Trong phân vùng cố định, danh sách phân vùng được
tạo một lần và không thay đổi. Tuy nhiên, quá trình phân bổ và giải phóng trong phân vùng động
rất phức tạp vì kích thước phân vùng thay đổi theo từng quy trình mới. Hệ điều hành phải liên
tục theo dõi tất cả các phân vùng, khiến việc quản lý hệ thống trở nên khá khó khăn.

4. So sánh
Fixed Partitioning thích hợp cho các hệ thống có yêu cầu không gian bộ nhớ không đổi và ít biến đổi.
Trong khi đó, Dynamic Partitioning phù hợp với các hệ thống có yêu cầu không gian bộ nhớ linh hoạt và
biến đổi.

Fixed Partitioning đơn giản và ít phức tạp hơn, trong khi Dynamic Partitioning linh hoạt hơn nhưng có
overhead lớn hơn.

Fixed Partitioning dẫn đến việc lãng phí không gian bộ nhớ hơn so với Dynamic Partitioning.

5. Kết luận
Cả Fixed Partitioning và Dynamic Partitioning đều có ưu và nhược điểm riêng của mình và được sử dụng
trong các tình huống khác nhau tùy thuộc vào yêu cầu cụ thể của hệ thống. Quản lý bộ nhớ là một phần
quan trọng của hệ điều hành và việc chọn lựa phương pháp phù hợp là một phần không thể thiếu trong
việc thiết kế và triển khai hệ thống.

Chủ đề 2:

Nghiên cứu, trình bày: Single Level Directory, Two Level Directory và Tree Structured Directory. Phân
biệt, so sánh.
Single Level Directory (Thư mục cấp đơn), Two Level Directory (Thư mục cấp hai)
và Tree Structured Directory (Thư mục cấp cây) là ba cấu trúc thư mục chính được
sử dụng để tổ chức và lưu trữ tệp trong hệ thống máy tính. Dưới đây là sự giải thích và
so sánh giữa ba cấu trúc này:

1. Single Level Directory (Thư mục cấp đơn):


o Thư mục cấp đơn là cấu trúc thư mục đơn giản nhất, trong đó tất cả các
tệp đều được lưu trữ trực tiếp trong một thư mục duy nhất. Nó không yêu
cầu tạo nhiều thư mục con bên trong nó, tất cả các tệp được lưu trữ trong
cùng một thư mục hoặc thư mục. Nó tuân theo một cách tiếp cận rất đơn
giản, nhưng các tệp đang được lưu trữ bên trong thư mục phải có tên duy
nhất, không có hai tệp nào có thể có cùng tên và nằm trong cùng một thư
mục. Nhưng trong thư mục một cấp, người dùng có thể lưu trữ nhiều loại
tệp bên trong một thư mục, có nghĩa là ngay cả khi các phần mở rộng của
các tệp khác nhau hoặc giống nhau, chúng có thể nằm trong cùng một thư
mục, nhưng chỉ có tên phải là duy nhất.

Thư mục cấp đơn

o Tuy nó là phương pháp tổ chức tệp đơn giản nhất, nhưng vấn đề chính xảy ra
khi số lượng tệp lưu trữ bên trong tăng lên đáng kể. Khi đó, việc tìm kiếm tệp trở nên
khó khăn vì mọi thứ đều được lưu trữ trong cùng một thư mục, do đó mất nhiều thời
gian để tìm kiếm tệp.

o Ưu điểm:
 Đơn giản: Hệ thống thư mục đơn là đơn giản nhất trong tất cả các
cấu trúc tổ chức tệp. Chỉ trong một thư mục, tất cả các tệp được lưu
trữ.
 Dễ truy cập: Do tính đơn giản của nó, việc truy cập các tệp trở nên
rất dễ dàng, Vì mọi thứ đều nằm trong cùng một thư mục, chúng tôi
không cần phải điều hướng một số thư mục con khác để tìm tệp
mong muốn.
 Thao tác tệp đơn giản: Tạo, xóa, đổi tên và tìm tệp rất dễ dàng vì
mọi thứ nằm trong cùng một thư mục.
o Nhược điểm:
 Khả năng mở rộng: Thư mục cấp đơn trở thành cơn ác mộng khi số
lượng tệp nằm bên trong nó tăng lên nghiêm trọng. Vì mọi thứ đều
nằm trong một thư mục duy nhất, việc tìm kiếm tệp trở nên khó
khăn, mọi thứ trông lộn xộn, thiếu thư mục con khiến chúng không
được tổ chức.
 Vấn đề đặt tên: Không có hai tệp nào có thể có cùng tên bên trong
thư mục, phần mở rộng của chúng có thể giống nhau nhưng tên
nhưng là duy nhất. Nếu các tiện ích mở rộng khác nhau thì chỉ các
tệp có cùng tên mới có thể được lưu trữ cùng nhau.
 Bảo mật: Bảo mật rất ít vì bất kỳ ai có quyền truy cập vào thư mục
đó đều có thể xem tất cả các tệp.

2. Two Level Directory (Thư mục cấp hai):


o Trong cấu trúc thư mục cấp hai, người dùng có thể tạo thư mục bên trong
thư mục gốc, nhưng không thể tạo thư mục con.
o Thông qua cấu trúc thư mục cấp hai, mỗi người dùng có thể tạo thư mục
riêng của mình và lưu trữ tệp.
Cấu trúc thư mục hai cấp

o Ưu điểm:
 Trong đó, những người dùng khác nhau có thể giữ cùng một tên thư mục và
cùng một tên tệp.
 Trong này bạn có thể đưa ra con đường hoàn chỉnh. /user-name/directory-
name
 Tên đường dẫn và nhóm người dùng giúp dễ dàng tìm kiếm tệp.
o Nhược điểm:
 Người dùng không thể chia sẻ tệp với người dùng khác.
 Nó không phải là rất có thể mở rộng, bởi vì các tập tin cùng loại không thể
được giữ trong cùng một nhóm.
3. Tree Structured Directory (Thư mục cấp cây):
o Trong hệ thống thư mục có cấu trúc Tree, bất kỳ mục nhập thư mục nào cũng có
thể là tệp hoặc thư mục con. Hệ thống thư mục có cấu trúc cây khắc phục những hạn chế của hệ
thống thư mục hai cấp. Loại tệp tương tự hiện có thể được nhóm lại trong một thư mục.
o Mỗi người dùng có thư mục riêng và nó không thể nhập vào thư mục của người
dùng khác. Tuy nhiên, người dùng có quyền đọc dữ liệu của root nhưng anh ta không thể viết
hoặc sửa đổi điều này. Chỉ quản trị viên của hệ thống mới có quyền truy cập đầy đủ vào thư mục
gốc.
o Tìm kiếm hiệu quả hơn trong cấu trúc thư mục này. Khái niệm thư mục làm việc
hiện tại được sử dụng. Một tệp có thể được truy cập bằng hai loại đường dẫn, tương đối hoặc
tuyệt đối.
o Đường dẫn tuyệt đối là đường dẫn của tệp đối với thư mục gốc của hệ thống trong
khi đường dẫn tương đối là đường dẫn đối với thư mục làm việc hiện tại của hệ thống. Trong các
hệ thống thư mục có cấu trúc cây, người dùng được cấp đặc quyền tạo các tệp cũng như thư mục.
o Cấu trúc thư mục cấp cây khắc phục nhược điểm của cấu trúc thư mục cấp hai.
Các loại tệp tương tự giờ đây có thể được nhóm trong một thư mục.

o Quyền trên tệp và thư mục


 Một hệ thống thư mục có cấu trúc cây có thể bao gồm các cấp độ khác
nhau do đó có một tập hợp các quyền được gán cho mỗi tệp và thư mục.
 Các quyền là R W X liên quan đến việc đọc, ghi và thực thi các tệp hoặc
thư mục. Các quyền được gán cho ba loại người dùng: chủ sở hữu, nhóm
và những người khác.
 Có một bit nhận dạng phân biệt giữa thư mục và tệp. Đối với một thư mục,
nó là d và đối với một tệp, nó là dấu chấm (.)
 Ảnh chụp nhanh sau đây cho thấy các quyền được gán cho một tệp trong
hệ thống dựa trên Linux. Bit d ban đầu đại diện cho rằng nó là một thư
mục.
Cấu trúc thư mục cây/phân cấp

o Ưu điểm:
 Cấu trúc thư mục này cho phép các thư mục con bên trong một thư
mục.
 Việc tìm kiếm dễ dàng hơn.
 Việc sắp xếp tệp quan trọng và không quan trọng trở nên dễ dàng
hơn.
 Thư mục này có khả năng mở rộng hơn hai cấu trúc thư mục khác
được giải thích.
o Nhược điểm:
 Vì người dùng không được phép truy cập vào thư mục của người
dùng khác, điều này ngăn chặn việc chia sẻ tệp giữa những người
dùng.
 Vì người dùng có khả năng tạo các thư mục con, nếu số lượng thư
mục con tăng lên, việc tìm kiếm có thể trở nên phức tạp.
 Người dùng không thể sửa đổi dữ liệu thư mục gốc.
 Nếu các tệp không vừa với một, chúng có thể phải phù hợp với các
thư mục khác.

So sánh Single Level Directory, Two Level Directory và Tree Structured Directory:

 Single Level Directory dễ dàng triển khai và hiệu quả trong việc sử dụng bộ
nhớ trong các hệ thống với số lượng tệp nhỏ. Tuy nhiên, nó có thể dẫn đến sự lãng phí
tài nguyên bộ nhớ khi một thư mục không được sử dụng hết và hạn chế khả năng tổ
chức tệp.
 Two Level Directory cho phép tạo thư mục bên trong thư mục gốc, nhưng
không thể tạo thư mục con. Mỗi người dùng có thể tạo thư mục riêng của mình và lưu
trữ tệp.
 Tree Structured Directory cho phép tạo thư mục con bên trong thư mục, giúp
tổ chức tệp theo cấu trúc phức tạp hơn.

You might also like