So sánh địa chỉ vật lý và logic

Hiển thị Người dùng có thể xem địa chỉ logic của một chương trình Người dùng không bao giờ có thể xem địa chỉ vật lý của chương trình

Truy cập Người dùng sử dụng địa chỉ logic để truy cập địa chỉ vật lý Người dùng không thể truy cập trực tiếp vào địa chỉ vật lý

Generation Địa chỉ logic được tạo bởi CPU Địa chỉ vật lý được tính bằng MMU

  1. Giải thích sự khác biệt giữa hiện tượng phân mảnh nội vi và ngoại vi?

Cơ sở để so sánh

Phân mảnh nội bộ Phân mảnh bên ngoài

Căn bản

Nó xảy ra khi các khối bộ nhớ có kích thước cố định được phân bổ cho các quy trình.

Nó xảy ra khi không gian bộ nhớ kích thước thay đổi được phân bổ cho các quy trình một cách linh hoạt.

Xảy ra

Khi bộ nhớ được gán cho quy trình lớn hơn một chút so với bộ nhớ mà quy trình yêu cầu, việc này sẽ tạo không gian trống trong khối được phân bổ gây ra sự phân mảnh bên trong.

Khi quá trình được loại bỏ khỏi bộ nhớ, nó tạo ra không gian trống trong bộ nhớ gây ra sự phân mảnh bên ngoài.

Dung dịch

Bộ nhớ phải được phân vùng thành các khối có kích thước thay đổi và gán khối phù hợp nhất cho quy trình.

Nén, phân trang và phân đoạn.

  1. Giả sử bộ nhớ chính được phân thành các phân vùng có kích thước là 600K, 500K, 200K, 300K [ theo thứ tự ], cho biết các tiến trình có kích thước 212K, 417K, 112K và 426K [ theo thứ tự ] sẽ được cấp phát bộ nhớ như thế nào, nếu sử dụng :
  1. Thuật toán First fit

TT 212K Được cấp phát vào bộ nhớ có kt 600K

TT 417K 500K

TT 112K 600-212=388K

TT 426 Không được cấp phát

  1. Thuật toán Best fit

TT 212K Được cấp phát vào bộ nhớ có kt 300K

TT 417K 500K

TT 112K 200K

TT 426K 600K

  1. Thuật toán Worst fit

TT 212K Được cấp phát vào bộ nhớ có kt 600K

TT 417K 500K

TT 112K 600-212=388k

TT 426K Ko được cấp phát vào bộ nhớ

Thuật toán nào cho phép sử dụng bộ nhớ hiệu qủa nhất trong trường hợp trên? Best fit 4. Xét một hệ thống trong đó một chương trình khi được nạp vào bộ nhớ sẽ phân biệt hoàn toàn phân đoạn code và phân đoạn data. Giả sử CPU sẽ xác định được khi nào cần truy xuất lệnh hay dữ liệu , và phải truy xuất ở đâu. Khi đó mỗi chương trình sẽ được cung cấp 2 bộ thanh ghi base-limit : một cho phân đoạn code, và một cho phân đoạn data. Bộ thanh ghi base-limit của phân đoạn code tự động được đặt thuộc tính readonly. Thảo luận các ưu và khuyết điểm của hệ thống này. *Ưu điểm: Do bộ thanh ghi base limit của phân đoạn code tự động được đặt thuộc tính read-only,nên chương trình đó có thể được chia sẻ cho nhiều người dùng khác nhau. Kĩ thuật này có thuận lợi trước hết là vì nó là một cơ chế có hiệu quá trong việcchia sẻ lệnh[code] và dữ liệu[data]. Một thí dụ là, chỉ duy nhất có một bản sao củaeditor[trình soạn thảo] hay một compiler[trình biên dịch] cần thiết được giữ trongbộ nhớ,và đoạn code này được chia sẻ bởi tất cả các tiến trình cần truy xuất đếneditor code hay

  1. Nếu sử dụng TLBs với hit-ratio [ tỉ lệ tìm thấy] là 75%, thời gian để tìm trong TLBs xem như bằng 0, tính thời gian truy xuất bộ nhớ trong hệ thống [ effective memory reference time]

EAT=2000+4000=250 nanoseconds

  1. Nếu cho phép hai phần tử trong bảng trang cùng lưu trữ một số hiệu khung trang trong bộ nhớ thì sẽ có hiệu qủa gì? Giải thích làm cách nào hiệu qủa này có thể được sử dụng để giảm thời gian cần khi sao chép một khối lượng lớn vùng nhớ từ vị trí này sang vị trí khác. Khi đó nếu sửa nội dung một trang thì sẽ tác động đến trang còn lại thế nào?

Nếu cho phép 2 phần từ trong bàng trang cùng lưu trữ một số hiệu khung trang trong bộ nhớ thì người dùng có thể chia sẻ code và dữ liệu. Nếu code làreentrant[cho phép bản sao của chương trình có thể được sử dụng đồng thời bởi nhiều tác vụ] thì sẽ có nhiều không gian bộ nhớ được sao lưu trong suốt quá trình chia sẻ sử dụng như text editor, compiler, hệ thống dữ liệu. Chúng ta cần để cho các phân từ trong bảng trang cùng lưu một số hiệu khung trang trong bộ nhớ mà có liên quan đến dữ liệu cần sao chép .Khi đó kĩ thuật này có thể được sử dụng để giảm thời gian khi cần sao chép một khối lượng lớn vùng nhớ từ vị trí này sang vị trí khác.

Tuy nhiên việc chia se các dữ liệu hay code có thuộc tính nonreentrant thì bất kì người dùng nào cũng có thể thao tác lên code hay dữ liệu và có thể chỉnh sửa chúng, đôi khi việc chỉnh sửa này gây ra những sự cố không mong muốn.

Khi sửa đổi nội dung một trang chia sẻ thì các trang còn lại đều bị tác động. 10. Vì sao đôi lúc người ta kết hợp hai kỹ thuật phân trang và phân đoạn? Hai kỹ thuật này được kết hợp để có thể hỗ trợ lẫn nhau. Phân đoạn các trang thi có ích trong trường hợp các bảng trang trở nên rất lớn. Một vùng liên tục cua bàng trang mà không được sử dụng có thể chia vào trong một mục trong bang phân đoạn với địa chỉ trang là 0. Phân trang các đoạn xử lí trường hợp có nhiều đoạn dài mà cần nhiều thời gian để cấp phát. Bằng viêc phân trang các doan, chúng ta giảm thiểu lãng phí bộ nhớ do phân mânh ngoại cũng như đơn gián quá trình cấp phát. 11. Mô tả cơ chế cho phép một phân đoạn có thể thuộc về không gian điạ chỉ của hai tiến trình. Do bảng phân đoạn là tập hợp các thanh ghi nền và thanh ghi giới hạn[base-limit register], một phân đoạn nào đó có thể được chia sẻ khi một mục trong bảng phân đoạn của 2 tiến trình khác nhau ánh xạ vào cùng một địa chỉ vật li duy nhất. Các bảng phân đoạn của 2 tiến trình này cần có con trỏ nền cho mỗi bàng phân đoạn, và số hiệu đoạn cần chia sẻ cần giống nhau ở 2 tiến trình 12. Giải thích vì sao chia sẻ một module trong kỹ thuật phân đoạn lại dễ hơn trong kỹ thuật phân trang? hia sẽ một module trong kĩ thuật phân đoạn dễ hơn trong kĩ thuật phân trang vi việc phân chia đoạn dựa trên phân chia logic bộ nhớ chứ không phải phân chia vật li, một phân đoạn với bất kì kích thước nào cũng đều có thể chia sẻ chỉ với một mục trong bảng phân đoạn mục này không cần giống nhau ở các bảng bảng phân đoạn khác nhau. Ngược lại, trong kĩ thuật phân trang, để chia sẽ các trang thì số hiệu trang của trang cần chia sẽ cần phải giống nhau trong nhiều băng trang khác nhau, tức là cần có 1 mục chung cho các bảng trang với mỗi trang cần chia sẻ. 13. Xét bảng phân đoạn sau đây :

Segment Base Length

0 219 600

1 2300 14

2 90 100

3 1327 580

4 1952 96

Cho biết địa chỉ vật lý tương ứng với các địa chỉ logique sau đây : a. 0, b. 1, c. 2, d. 3, e. 4, 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ệ

  1. Một process có 7 page, và được cấp 4 frame trống lúc đầu. Xét các giải thuật thay thế trang: FIFO, LRU,

OPT với các chuỗi tham chiếu sau. Đánh giá các thuật toán bằng cách chạy nó trên một chuỗi tham chiếu bộ nhớ

Thế nào là địa chỉ logic và địa chỉ vật lý?

Địa chỉ logic được sử dụng giống như một tham chiếu, để truy cập địa chỉ vật lý. Sự khác biệt cơ bản giữa địa chỉ logic và vật lý là địa chỉ logic được tạo ra bởi CPU trong quá trình thực thi chương trình trong khi địa chỉ vật lý đề cập đến một vị trí trong đơn vị bộ nhớ.

Thế nào là địa chỉ và không gian địa chỉ?

Địa chỉ vật lý - là địa chỉ thực tế mà trình quản lý bộ nhớ nhìn thấy và thao tác. Không gian địa chỉ – là tập hợp tất cả các địa chỉ ảo phát sinh bởi một chương trình. Không gian vật lý – là tập hợp tất cả các địa chỉ vật lý tương ứng với các địa chỉ ảo.

Địa chỉ vật lý nghĩa là gì?

Tầng MAC cung cấp một cơ chế đánh địa chỉ được gọi là địa chỉ vật lý hoặc địa chỉ MAC. Đây là một con số được cấp một cách phân biệt cho từng card mạng, cho phép chuyển giao các gói dữ liệu tới đích trong một mạng con, nghĩa là một mạng vật lý không có các thiết bị định tuyến, ví dụ một mạng Ethernet.

Bộ nhớ logic là gì?

Ổ cứng logic là một không gian ảo để lưu trữ dữ liệu. Sau khi lắp đặt ổ đĩa vật lý vào máy tính, trên nó sẽ tạo ra một đĩa C: duy nhất. Sau đó, ổ cứng này được chia thành các phân vùng dữ liệu tách biệt, có thể lưu trữ dữ liệu. Những phân vùng này được gọi là ổ đĩa logic.

Chủ Đề