TT Công Nghệ Thông Tin, Đại Học Công Nghiệp TP HCM
9.2
6. Quản lý bộ nhớ
6. Quản lý bộ nhớ
Khái niệm cơ sở
Nhiệm cụ của quản lý bộ nhớ
Overlay và swapping
Mô hình quản lý bộ nhớ đơn giản
–
Fixed partitioning
–
Dynamic partitioning
–
Cơ chế phân trang (paging)
–
Cơ chế phân đoạn (segmentation)
TT Công Nghệ Thông Tin, Đại Học Công Nghiệp TP HCM
9.3
Khái niệm cơ sở
Khái niệm cơ sở
Quản lý bộ nhớ là công việc của hệ điều hành
với sự hỗ trợ của phần cứng nhằm phân phối,
sắp xếp các process trong bộ nhớ sao cho hiệu
quả.
Trong cỏc h thng n chng trỡnh
(uniprogramming), trờn b nh chớnh ngoi h
iu hnh, ch cú mt chng trỡnh ang thc
hin.
Trong cỏc h thng a chng
(multiprogramming) trờn b nh chớnh ngoi h
iu hnh, cú th cú nhiu tin trỡnh ang hot
ng.
Do ú nhim v qun lý b nh ca h iu hnh
trong h thng a chng trỡnh s phc tp hn
nhiu so vi trong h thng n chng trỡnh.
TT Coõng Ngheọ Thoõng Tin, ẹaùi Hoùc Coõng Nghieọp TP HCM
9.6
Nhim v ca qun lý b nh
Nhim v ca qun lý b nh
a bt k mt tin trỡnh no ú vo b nh khi
nú cú yờu cu, k c khi trờn b nh khụng cũn
khụng gian trng,
Bo v chớnh h iu hnh v cỏc tin trỡnh trờn
b nh trỏnh cỏc trng hp truy xut bt hp l
xy ra.
TT Coõng Ngheọ Thoõng Tin, ẹaùi Hoùc Coõng Nghieọp TP HCM
9.7
Nhim v ca qun lý b nh
Nhim v ca qun lý b nh
Nhim v ca qun lý b nh
Bo v b nh (Protection): Mi tin trỡnh phi
c bo v chng li s truy xut bt hp l
vụ tỡnh hay cú ch ý ca cỏc tin trỡnh khỏc.
thc hin iu ny h thng qun lý b nh
phi bit c khụng gian a ch ca cỏc tin
trỡnh khỏc trờn b nh v phi kim tra tt c cỏc
yờu cu truy xut b nh ca mi tin trỡnh khi
tin trỡnh a ra a ch truy xut.
TT Coõng Ngheọ Thoõng Tin, ẹaùi Hoùc Coõng Nghieọp TP HCM
9.10
Nhim v ca qun lý b nh
Nhim v ca qun lý b nh
Chia s b nh (Sharing): Bt k mt chin lc
no c ci t u phi cú tớnh mm do
cho phộp nhiu tin trỡnh cú th truy cp n
cựng mt a ch trờn b nh chớnh
Vớ d, khi cú nhiu tin trỡnh cựng thc hin mt
chng trỡnh thỡ vic cho phộp mi tin trỡnh
cựng truy cp n mt bn copy ca chng trỡnh
s thun li hn khi cho phộp mi tin trỡnh truy
cp n mt bn copy s hu riờng.
TT Coõng Ngheọ Thoõng Tin, ẹaùi Hoùc Coõng Nghieọp TP HCM
9.11
Nhim v ca qun lý b nh
Nhim v ca qun lý b nh
phóng các lệnh/dữ liệu chưa hoặc không
cần dùng đến.
Cơ chế này rất hữu dụng khi kích thước
một process lớn hơn không gian bộ nhớ
cấp cho process đó.
Cơ chế này được điều khiển bởi người sử
dụng (thông qua sự hỗ trợ của các thư
viện lập trình) chứ không cần sự hỗ trợ
của hệ điều hành
TT Công Nghệ Thông Tin, Đại Học Công Nghiệp TP HCM
9.14
Cơ chế swapping
Cơ chế swapping
Một process có thể tạm thời bò swap ra khỏi bộ
nhớ chính và lưu trên một hệ thống lưu trữ phụ.
Sau đó, process có thể được nạp lại vào bộ nhớ
để tiếp tục quá trình thực thi.
Swapping policy: hai ví dụ
–
Round-robin: swap out P
1
(vừa tiêu thụ hết
quantum của nó), swap in P
2
, thực thi P
3
,…
hiện đại
–
Phân vùng cố đònh (fixed partitioning)
–
Phân vùng động (dynamic partitioning)
–
Phân trang đơn giản (simple paging)
–
Phân đoạn đơn giản (simple segmentation)
TT Coõng Ngheọ Thoõng Tin, ẹaùi Hoùc Coõng Nghieọp TP HCM
9.17
K thut phõn vựng c nh
K thut phõn vựng c nh
(Fixed Partitioning)
(Fixed Partitioning)
B nh chớnh c chia thnh 2 phn c nh:
Phn nm vựng a ch thp dựng cha chớnh h
iu hnh
Phn cũn li, tm gi l phn user program, l sn
sng cho vic s dng ca cỏc tin trỡnh khi cỏc tin
trỡnh c np vo b nh chớnh.
Trong cỏc h thng n chng, phn user program cp
cho mt chng trỡnh duy nht=> nhim v qun lý b
nh ca h iu hnh trong trng hp ny ch kim
soỏt s truy xut b nh ca chng trỡnh ngi s
dng, khụng cho nú truy xut lờn vựng nh ca h iu
(swap out), ly partition trng ú np tin
trỡnh va cú yờu cu.
õy l nhim v phc tp ca h iu hnh, h
iu hnh phi chi phớ cao cho cụng vic ny.
TT Coõng Ngheọ Thoõng Tin, ẹaùi Hoùc Coõng Nghieọp TP HCM
9.20
K thut phõn vựng c nh
K thut phõn vựng c nh
(Fixed Partitioning)
(Fixed Partitioning)
Cú hai tr ngi trong vic s dng cỏc phõn vựng c
nh vi kớch thc bng nhau:
Th nht:
Khi kớch thc ca chng trỡnh l quỏ ln so vi
kớch thc ca mt partition -> phi thit k chng
trỡnh theo cu trỳc overlay.
Cu trỳc chng trỡnh overlay tit kim c b nh
nhng yờu cu cao ngi lp trỡnh.
TT Coõng Ngheọ Thoõng Tin, ẹaùi Hoùc Coõng Nghieọp TP HCM
9.21
K thut phõn vựng c nh
K thut phõn vựng c nh
(Fixed Partitioning)
(Fixed Partitioning)
cha nú, vo/ i c vo phõn vựng.
Tuy nhiờn cỏc tip cn ny kộm linh ng vỡ cú th
cú mt phõn vựng ang trng, trong khi cú nhiu tin
trỡnh ang phi i c np vo cỏc phõn vựng
khỏc, iu ny gõy lóng phớ trong vic s dng b
nh.
TT Coõng Ngheọ Thoõng Tin, ẹaùi Hoùc Coõng Nghieọp TP HCM
9.23
K thut phõn vựng c nh
K thut phõn vựng c nh
(Fixed Partitioning)
(Fixed Partitioning)
Dựng mt hng i chung cho tt c cỏc phõn vựng:
Cỏc tin trỡnh mun c np vo phõn vựng nhng
cha c vo s c a vo hng i chung ny.
Nu cú mt phõn vựng trng thỡ h thng s xem xột
a mt tin trỡnh cú kớch thc va vo phõn
vựng trng ú.
Cỏch tip cn ny linh ng hn so vi vic s dng
nhiu hng i nh trờn
Tuy nhiờn vic chn tin trỡnh a vo phõn vựng
l mt vic lm khỏ phc tp vỡ nú phi da vo
nhiu yu t nh: u tiờn, trng thỏi hin ti, cỏc
mi quan h ca tin trỡnh,