Thảo luận Bài 6
+86
DiepMaiNgocYen(I12A)
phanngocthinh(i12a)
NguyenTuanHai_I12A
KimHue36 (I11C)
tranthithanhuyen85 (I11C)
TranThiMyKhanh(I12A)
TranMinhTuan143(I12A)
HuynhNguyenTrungHau_I12C
nguyenthanhphongHC11TH2A
letannghia(I12A)
nguyenhuutho
TrinhThiPhuongThaoI12C
DaoQuangTri38(I12A)
trantrungnam-HC11TH2A
TranLeThanhVu_I12A
LeMInhTien(I11C)
leminhtam13(I12A)
TranHoangNhanI12C
DuongTrungQuan
caothithuhuong(102c)
NguyenThiHue48(I12A)
LacChiHao(I12A)
LuongGiaDuc(I12A)
nguyenvanhonglac_0066
NguyenHongHaiI12C
Đỗ Phan Diễm Hương I12A
Nguyen Doan Linh051(I11c)
TranTrungHienI12C
TranBinhCongLuanI12A
vothingocthuy87(I11C)
BuiDaiNghia-102C
TRANTHINHPHAT (I11C)
plminhhoangI12A
TranThiAnhDao89I12C
phuongnguyen
LeTanDat (I11C)
phamduyI12A
thailongI12C
DaoThaiHuyI12A
NguyenDucMy78(I12C)
TruongQuocTrung_I12A
TranTrungTinh(I12A)
TranHuyCuong17 (I12A)
LeThanhTung (I11C)
nguyenthaihiep (I11C)
nguyenthimao_I12A
NguyenPhuocNguyen (I12A)
nguyenthingocmai_I12A
TaThucCuongI12C
HoNgocTuan142(I12A)
LeThiMaiPhuongI12A
NguyenThiHongYen(I12A)
ĐoànMinhQuangI12A
tranvanthien27(I12C)
DoanNgocDan(I12A)
NgoPhuQuoc_I12C
TranThaoUyen127(I92C)
quicly_I111c
huynhvanhung(I12A)
NguyenNgocDuy(I12A)
letanthanh18(I12A)
NguyenHoangThangI12A
lethianhnhat_I12A
LeQuocKhanh-11H1010059
BuiPhamAnBinh(I12A)
TrinhVinhThanh (I12A)
NguyenHaThanh97 (I11C)
hoanggiangI12C
TranThiNgocQuynh(I12C)
maidangvu_I12A
HuynhMinhChanh(i91C)
huynhtamhaoI12A
Đinh Đông Dương
TranVanBao(I12A)
TranPhiLong (I11C)
hoanghaiyen
lethanhsang_I12A
LePhucHiep(102C)
quynhnhi.nguyen_I12A
phamphihung55
huynhthao.hc11th2a
NgoXuanQuoc_(102C)
PhamQuangHien_I12A
LuongHueChanh_I12A
ngophicamI12A
Admin
90 posters
Trang 5 trong tổng số 10 trang
Trang 5 trong tổng số 10 trang • 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
Re: Thảo luận Bài 6
TranThiNgocQuynh(I12C) đã viết:LeThiMaiPhuongI12A đã viết:Dùng thuật giải Preemptive SJFS để điều phối CPU
Tiến trình Thời điểm đến(ms) CPU-Burst P1 5 22 P2 10 15 P3 20 5
a.Thể hiện bằng biểu đồ Gantt
b.Tính thời điểm chờ trung bình của các tiến trình
a.Biểu đồ Gantt.
Tại thời điểm 5ms P1 sẽ được cấp CPU đầu tiên
Tại thời điểm 10ms,P2 đến, do khoảng CPU của P2 nhỏ hơn P1 nên P2 tiếm quyền P1, lúc này CPU được cấp cho P2, và P2 sẽ chạy hết khoảng CPU của nó
Tại thời điểm 25ms, P3 sẽ được cấp CPU vì P3 có khoảng CPU nhỏ hơn P1
Tại thời điểm 30ms P1 sẽ thực hiện tiếp khoảng CPU còn lại của nó
b.Tính thời điểm chờ trung bình của các tiến trình
P1=(47-5)-22=42-22=20ms
P2=(25-10)-15=15-15=0ms
P3=(30-20)-5=10-5=5ms
Thời gian chờ trung bình: (20+0+5)/3=8,3ms
Các bạn bổ sung thêm nha
Bạn ơi, cho mình hỏi:
Tại thời điểm 20ms, lẽ ra tiến trình P2 sẽ bị tiếm quyền bởi tiến trình P3, nhưng do khoảng thời gian dùng CPU còn lại của P2 là 5ms bằng với khoảng thời gian dùng CPU của tiến trình P3 là 5ms, mà tiến trình P2 đến trước so với tiến trình P3. Theo thuật giải FCFS, HDH sẽ cấp tiếp CPU cho tiến trình P2.
Mình hiểu như vậy có đúng chưa ? Bạn góp ý cho mình với.
Mình cũng nghỉ giống như bạn và mình xin vẽ lại sơ đồ Gantt chi tiết
Được sửa bởi tranvanthien27(I12C) ngày 5/4/2012, 11:34; sửa lần 1.
tranvanthien27(I12C)- Tổng số bài gửi : 62
Join date : 15/02/2012
Age : 34
Đến từ : Tuy Hòa - Phú Yên
Re: Thảo luận Bài 6
Mình xin ý kiến thêm 1 chút (theo mình hiểu):nguyenthimao_I12A đã viết:BuiPhamAnBinh(I12A) đã viết:Tiến trình ++++++ thời điểm đến (ms) ++ CPU-Bust
p1 ............ ........... 5 .............. ............. .. 25
p2 ........... ............ 10 ........... ............ ... 15
p3 ............. ........... 20 .......... ............ ... 10
.
biểu đồ Gantt
RRS với thời lượng = 10 ms
p1((55-5)-25)=25ms
p2((50-10)-15)=25ms
p3((45-20)-10)=15ms
Thời gian chờ TB
(25+25+15)/3 =21.7(ms)
các bạn có phần giải thích nào dể hiểu có thể bổ xung thêm cho bài tập này .thank
+ Thời điểm 5: P1 bắt đầu chạy 10 ms
+ Thời điểm 15: P2 tiếm quyền P1 (vì P2 đang chờ ở thời điểm 10)
+ Thời điểm 25: P1 tiếm quyền P2 (vì P1 đang chờ ở thời điểm 15, P3 đang chờ ở thời điểm 20=> P1 chay trước)
+ Thời điểm 35: P3 tiếm quyền P1 (vì P3 đang chờ ở thời điểm 20, P2 đang chờ ở thời điểm 25 => P3 được chạy trước)Và kết thúc P3 tại 45(Đủ 10)
+ Thời điểm 45: P2 tiếm quyền P3 (vì P2 đang chờ ở thời điểm 25, P1 đang chờ ở thời điểm 35 => P2 được chạy trước)Và kết thúc P3 tại 50(Đủ 15)
+ Thời điểm 50: P1 vào thực hiện hết 5s còn lại và kết thúc tại 55
Tính thời gian trung bình:
Ap dụng công thức: T(i)= thờiđiểm kết thúc - thời điểm đến - t/g dùng CPU
P1 = (55 - 5 - 25) = 25
P2 = (50 - 10 - 15) = 25
P3 = (45 - 20 - 10) = 15
=>T(tb) = (25 + 25 + 15)/3 = 21,666ms
- Tại thời điểm 25: P1 tiếm quyền P2 mà không phải P3 (vấn đề thắc mắc ở đây là tại sao lúc này khoảng CPU kế tiếp của P1= P3 mà P1 lại được chạy trước mà P3 không được chạy trước). chú ý trong trường hợp bằng nhau thì sẽ chuyển sang dùng thuật giải FCFS (đến trước - phục vụ trước).
- Vấn đề giải thích về tiếm quyền của tiến trình thì không phải tiến trình chờ ở thời điểm nào mà là tiến trình nào mới đến có khoảng CPU kế tiếp nhỏ hơn so với thời gian còn lại của tiến trình đang vận hành thì nó sẽ được ưu tiên chạy thay thế.
nguyenthingocmai_I12A- Tổng số bài gửi : 26
Join date : 17/02/2012
GIẢI THÍCH BIỂU ĐỒ GANTT
Chúng ta có 3 tiến trình, từ thời điểm 0-> không có tiến trình nào thực hiện
1. Tại thời điểm chưa tiến trình nào đến thì độ ưu tiên sẽ dành cho tiền trình đến trước
- Từ 0->3 chưa có tiến trình nào đến
- Từ T=3 có P1 đến thực hiện được 10ms thời gian chiếm CPU còn lại là 35-10=25
- Từ T=13 thì có P2 đến (vì thời gian đến của P2 là 10) thực hiện được 10ms còn lại là :20-10=10
- Từ T=23 thì không có tiền trình nào tới nhưng lại có tiến trình P1 đang trong hàng đợi vậy P1 sẽ thực hiện được 10ms nữa =>P1 còn lại là 25-10=15
2. Tất cả các tiền trình đã đến thì được ưu tiên cho tiến trình có thời gian chờ nhiều nhất
- Từ T=33 thì tất cả các tiến trình đều đến do đó ở đây ta sẽ tính thời gian chờ của các tiến trình
P1: vừa mới thực hiện 10ms nên thời gian chờ là 0
P2: 23->33=10
P3: 25->33=8
=>P2 thực hiện 10ms=>còn lại là 0=>kết thúc tiến trình P2
- Từ T=43 thời gian chờ của
P1:33->43=10
P3:25->43=18
=>P3 thực hiện 10ms=>còn lại là 5
-Từ T=53 thời gian chờ của các tiền trình là:
P1:33->53=20
P3:mơi thực hiện xong
=>P1 thực hiện 10ms=>còn lại là 5
-Từ T=63 thời gian chờ các tiền trình là
P1:mới thực hiện xong
P3:53->63=10
=>P3 thực hiện 5ms=> kết thúc tiên trình
=>còn lại P1 thực hiện 5ms nưa->kết thúc tiến trình P1=> xây dừng được biểu đồ Gantt
1. Tại thời điểm chưa tiến trình nào đến thì độ ưu tiên sẽ dành cho tiền trình đến trước
- Từ 0->3 chưa có tiến trình nào đến
- Từ T=3 có P1 đến thực hiện được 10ms thời gian chiếm CPU còn lại là 35-10=25
- Từ T=13 thì có P2 đến (vì thời gian đến của P2 là 10) thực hiện được 10ms còn lại là :20-10=10
- Từ T=23 thì không có tiền trình nào tới nhưng lại có tiến trình P1 đang trong hàng đợi vậy P1 sẽ thực hiện được 10ms nữa =>P1 còn lại là 25-10=15
2. Tất cả các tiền trình đã đến thì được ưu tiên cho tiến trình có thời gian chờ nhiều nhất
- Từ T=33 thì tất cả các tiến trình đều đến do đó ở đây ta sẽ tính thời gian chờ của các tiến trình
P1: vừa mới thực hiện 10ms nên thời gian chờ là 0
P2: 23->33=10
P3: 25->33=8
=>P2 thực hiện 10ms=>còn lại là 0=>kết thúc tiến trình P2
- Từ T=43 thời gian chờ của
P1:33->43=10
P3:25->43=18
=>P3 thực hiện 10ms=>còn lại là 5
-Từ T=53 thời gian chờ của các tiền trình là:
P1:33->53=20
P3:mơi thực hiện xong
=>P1 thực hiện 10ms=>còn lại là 5
-Từ T=63 thời gian chờ các tiền trình là
P1:mới thực hiện xong
P3:53->63=10
=>P3 thực hiện 5ms=> kết thúc tiên trình
=>còn lại P1 thực hiện 5ms nưa->kết thúc tiến trình P1=> xây dừng được biểu đồ Gantt
TruongQuocTrung_I12A- Tổng số bài gửi : 18
Join date : 14/03/2012
Phân biệt thuật giải MSQ với thuật giải MFSQ
Phân biệt thuật giải MSQ với thuật giải MFSQ
*Multilevel Queue Scheduling - MQS
-Hàng chờ Ready được phân cấp thành nhiều mức có độ ưu tiên khác nhau.
VD:Mức các tiến trình tương tác chạy ở mặt trước có độ ưu tiên cao nhất và mức các tiến trình lô(batch) vận hành trong hậu trường.
-Mỗi hàng chờ có thuật giải để điều phối riêng.
-Quan hệ giữa các mức:
+ưu tiên cố định:xong hết các tiến trình mức trên rồi chuyển xuống mức dưới.Đang chạy tiến trình mức dưới mà xuất hiện tiến trình mức cao hơn,tiến trình mức dưới sẽ bị tiếm quyền do tiến trình mới có độ ưu tiên cao hơn.
+Phân bổ theo tỉ lệ thời lượng.
* Multilevel Feedback Queue Scheduling - MFQS
-Như MSQ nhưng cho phép điều tiết tiến trình sang mức khác.
VD:Những tiến trình hướng CPU được đưa xuống mức dưới
-MFQS đạc trưng bởi các thông số:
+Số mức.
+Thuật giải điều phối cho mỗi mức.
+Phương thức nâng cấp tiến trình.
+Phương thức hạ cấp tiến trình.
+Phương thức chọn hàng chờ cho tiến trình mới.
Ví dụ: Trong ga Hòa Hưng có 5 ô cửa bán vé, những người mua vé xếp hàng vào 5 cửa. Có 5 loại khách hàng với 5 loại ưu tiên khác nhau. Chỉ có 1 cô nhân viên bán vé thôi.
+ cửa 1: cửa hệ thống: cho những người trong ngành hoặc thân nhân của những người trong ngành đường sắt.
+ cửa 2: cho thương binh, Mẹ VNAH.
+ cửa 3: cho những người bình thường, khách vảng lai.
+ cửa 4: khách có độ ưu tiên thấp hơn.
+ cửa 5: cho Sinh viên.
Với MQS: chỉ 1 cô bán vé chạy từ cửa này sang cửa kia, cửa nào có khách thì chạy sang cửa đó.
Với MFQS: có điều phối nếu có sự ưu tiên, đẩy bớt tiến trình từ cửa này sang cửa kia, giúp cho hoạt động được tốt hơn.
*Multilevel Queue Scheduling - MQS
-Hàng chờ Ready được phân cấp thành nhiều mức có độ ưu tiên khác nhau.
VD:Mức các tiến trình tương tác chạy ở mặt trước có độ ưu tiên cao nhất và mức các tiến trình lô(batch) vận hành trong hậu trường.
-Mỗi hàng chờ có thuật giải để điều phối riêng.
-Quan hệ giữa các mức:
+ưu tiên cố định:xong hết các tiến trình mức trên rồi chuyển xuống mức dưới.Đang chạy tiến trình mức dưới mà xuất hiện tiến trình mức cao hơn,tiến trình mức dưới sẽ bị tiếm quyền do tiến trình mới có độ ưu tiên cao hơn.
+Phân bổ theo tỉ lệ thời lượng.
* Multilevel Feedback Queue Scheduling - MFQS
-Như MSQ nhưng cho phép điều tiết tiến trình sang mức khác.
VD:Những tiến trình hướng CPU được đưa xuống mức dưới
-MFQS đạc trưng bởi các thông số:
+Số mức.
+Thuật giải điều phối cho mỗi mức.
+Phương thức nâng cấp tiến trình.
+Phương thức hạ cấp tiến trình.
+Phương thức chọn hàng chờ cho tiến trình mới.
Ví dụ: Trong ga Hòa Hưng có 5 ô cửa bán vé, những người mua vé xếp hàng vào 5 cửa. Có 5 loại khách hàng với 5 loại ưu tiên khác nhau. Chỉ có 1 cô nhân viên bán vé thôi.
+ cửa 1: cửa hệ thống: cho những người trong ngành hoặc thân nhân của những người trong ngành đường sắt.
+ cửa 2: cho thương binh, Mẹ VNAH.
+ cửa 3: cho những người bình thường, khách vảng lai.
+ cửa 4: khách có độ ưu tiên thấp hơn.
+ cửa 5: cho Sinh viên.
Với MQS: chỉ 1 cô bán vé chạy từ cửa này sang cửa kia, cửa nào có khách thì chạy sang cửa đó.
Với MFQS: có điều phối nếu có sự ưu tiên, đẩy bớt tiến trình từ cửa này sang cửa kia, giúp cho hoạt động được tốt hơn.
TruongQuocTrung_I12A- Tổng số bài gửi : 18
Join date : 14/03/2012
Re: Thảo luận Bài 6
Hai bài này đề bài khác nhau mà bạn! theo mình thì hai bài giải đều đúng hết. Bạn xem kỹ lại nhaTaThucCuongI12C đã viết:Mình cũng chưa hiểu bài tập về thuật giải "Round Robin" mà bạn HuynhMinhChanh(i91C) và bạn LeQuocKhanh-11H1010059 đang thắc mắc.Nếu theo lý thuyết trong slide thì :Đề thi thầy cho như sau : Sử dụng Thuật Toán Round Robin với thời lượng 10ms để điều phối CPUSơ đồ Gantt bài giải :
Tiến Trình Thời điểm đến (ms) CPU-Burst P1 5 25 P2 10 15 P3 20 10 Mỗi tiến trình được cấp 1 thời lượng CPU (Time Quantum), thường từ 10-100 milli giây. Sau khoảng thời gian này, nó bị tiếm quyền và được đưa vào cuối hàng chờ Ready. Tiến trình đầu tiên trong hàng chờ Ready được chọn kế tiếp.
Vậy sau khi P2 tiếm quyền P1 thì P3 sẽ tiếm quyền P2. Nhưng bài giải lại là P1 tiếm quyền P2 trước P3???
Với 1 bài khác và theo cách giải thích của bạn PhamQuangHien_I12A thì:Đề Bài: Một hệ thống có 3 tiến trình, với thời điểm đến và tg sử dụng CPU như sau:
Tiến Trình Thời điểm đến (ms) CPU-Burst P1 3 35 P2 10 20 P3 25 15
Hãy dùng thuật giải round robin với thời lượng 10ms để điều phối CPU.
a>thể hiện bằng biểu đồ gant?
b>tính thời gian chờ Tb của các tiến trình?
Giải:
A/ biểu đồ Gantt:
với thời luợng 10ms để điều phối CPU nên các tiến trình chỉ có thể dùng 10ms sau đó phải chuyển qua tiến trình khác.ở đây là các tiến trình p1,p2,p3
Giải Thích Biểu Đồ:
1. Thời điểm 3: P1 bắt đầu chạy 10 ms
2. Thời điểm 13: P2 được tiếm quyền P1 (vì P2 đang chờ ở thời điểm 10)
3. Thời điểm 23: P1 được tiếm quyền P2 (vì P1 đang chờ ở thời điểm 13, P3 đang chờ ở thời điểm 25)
Nếu sử dụng cách giải thích này cho bài đầu thì cũng không đúng vì P3 ở bài đầu đang chờ ở thời điểm 20 nên đáng lý phải được tiếm quyền trước P1
Vậy thuật giải này phải giải thích thế nào mới chính xác Bạn nào biết giải thích cho mọi người cùng hiểu với. Thanks nhiều!!!
TranTrungTinh(I12A)- Tổng số bài gửi : 19
Join date : 10/03/2012
Re: Thảo luận Bài 6
ví dụ lúc này tại tiến trình P2 thời điểm đến (ms) vẫn là 10 nhưng CPU-Burst (ms) là 20 thì sơ đồ Gantt vẽ thế nào đây bạn?LeThiMaiPhuongI12A đã viết:Dùng thuật giải Preemptive SJFS để điều phối CPU
Tiến trình Thời điểm đến(ms) CPU-Burst P1 5 22 P2 10 15 P3 20 5
a.Thể hiện bằng biểu đồ Gantt
b.Tính thời điểm chờ trung bình của các tiến trình
a.Biểu đồ Gantt.
Tại thời điểm 5ms P1 sẽ được cấp CPU đầu tiên
Tại thời điểm 10ms,P2 đến, do khoảng CPU của P2 nhỏ hơn P1 nên P2 tiếm quyền P1, lúc này CPU được cấp cho P2, và P2 sẽ chạy hết khoảng CPU của nó
Tại thời điểm 25ms, P3 sẽ được cấp CPU vì P3 có khoảng CPU nhỏ hơn P1
Tại thời điểm 30ms P1 sẽ thực hiện tiếp khoảng CPU còn lại của nó
b.Tính thời điểm chờ trung bình của các tiến trình
P1=(47-5)-22=42-22=20ms
P2=(25-10)-15=15-15=0ms
P3=(30-20)-5=10-5=5ms
Thời gian chờ trung bình: (20+0+5)/3=8,3ms
Các bạn bổ sung thêm nha
nguyenthingocmai_I12A- Tổng số bài gửi : 26
Join date : 17/02/2012
NguyenDucMy78(I12C)- Tổng số bài gửi : 6
Join date : 16/02/2012
Phân biệt điều phối có tiếm quyền (Preemtive Scheduling) và không tiếm quyền (Non-Preemtive Scheduling).
Giống nhau:
Được dùng trong điều phối CPU (chọn tiến trình trong Ready Queue để cấp thời gian CPU (chuyển sang trạng thái Running)).
Khác nhau:
- Preemptive Scheduling thì điều phối CPU có tiếm quyền còn Non-Preemptive Scheduling thì điều phối CPU không tiếm quyền.
- Non-Preemptive Scheduling: Có nghĩa là khi tiến trình P1 có thời điểm đến trước P2 thì tiến trình P1 được thực hiện hết khoảng thời gian thực hiện, sau đó mới thực hiện tiến trình P2.
- Preemptive Scheduling: Có nghĩa là khi có 3 tiến trình P1, P2, P3 có thời điểm đến theo thứ tự đó thì tiến trình P1 sẽ được thực hiện với một khoảng thời gian cho phép sau đó bị tiến trình P2 hay P3 tiếm quyền. Còn quá trình điều phối kế tiếp như thế nào là tuỳ thuộc vào thuật toán điều phối và độ ưu tiên của tiến trình.
Được dùng trong điều phối CPU (chọn tiến trình trong Ready Queue để cấp thời gian CPU (chuyển sang trạng thái Running)).
Khác nhau:
- Preemptive Scheduling thì điều phối CPU có tiếm quyền còn Non-Preemptive Scheduling thì điều phối CPU không tiếm quyền.
- Non-Preemptive Scheduling: Có nghĩa là khi tiến trình P1 có thời điểm đến trước P2 thì tiến trình P1 được thực hiện hết khoảng thời gian thực hiện, sau đó mới thực hiện tiến trình P2.
- Preemptive Scheduling: Có nghĩa là khi có 3 tiến trình P1, P2, P3 có thời điểm đến theo thứ tự đó thì tiến trình P1 sẽ được thực hiện với một khoảng thời gian cho phép sau đó bị tiến trình P2 hay P3 tiếm quyền. Còn quá trình điều phối kế tiếp như thế nào là tuỳ thuộc vào thuật toán điều phối và độ ưu tiên của tiến trình.
Re: Thảo luận Bài 6
nguyenthingocmai_I12A đã viết:Mình xin ý kiến thêm 1 chút (theo mình hiểu):nguyenthimao_I12A đã viết:BuiPhamAnBinh(I12A) đã viết:Tiến trình ++++++ thời điểm đến (ms) ++ CPU-Bust
p1 ............ ........... 5 .............. ............. .. 25
p2 ........... ............ 10 ........... ............ ... 15
p3 ............. ........... 20 .......... ............ ... 10
.
biểu đồ Gantt
RRS với thời lượng = 10 ms
p1((55-5)-25)=25ms
p2((50-10)-15)=25ms
p3((45-20)-10)=15ms
Thời gian chờ TB
(25+25+15)/3 =21.7(ms)
các bạn có phần giải thích nào dể hiểu có thể bổ xung thêm cho bài tập này .thank
+ Thời điểm 5: P1 bắt đầu chạy 10 ms
+ Thời điểm 15: P2 tiếm quyền P1 (vì P2 đang chờ ở thời điểm 10)
+ Thời điểm 25: P1 tiếm quyền P2 (vì P1 đang chờ ở thời điểm 15, P3 đang chờ ở thời điểm 20=> P1 chay trước)
+ Thời điểm 35: P3 tiếm quyền P1 (vì P3 đang chờ ở thời điểm 20, P2 đang chờ ở thời điểm 25 => P3 được chạy trước)Và kết thúc P3 tại 45(Đủ 10)
+ Thời điểm 45: P2 tiếm quyền P3 (vì P2 đang chờ ở thời điểm 25, P1 đang chờ ở thời điểm 35 => P2 được chạy trước)Và kết thúc P3 tại 50(Đủ 15)
+ Thời điểm 50: P1 vào thực hiện hết 5s còn lại và kết thúc tại 55
Tính thời gian trung bình:
Ap dụng công thức: T(i)= thờiđiểm kết thúc - thời điểm đến - t/g dùng CPU
P1 = (55 - 5 - 25) = 25
P2 = (50 - 10 - 15) = 25
P3 = (45 - 20 - 10) = 15
=>T(tb) = (25 + 25 + 15)/3 = 21,666ms
- Tại thời điểm 25: P1 tiếm quyền P2 mà không phải P3 (vấn đề thắc mắc ở đây là tại sao lúc này khoảng CPU kế tiếp của P1= P3 mà P1 lại được chạy trước mà P3 không được chạy trước). chú ý trong trường hợp bằng nhau thì sẽ chuyển sang dùng thuật giải FCFS (đến trước - phục vụ trước).
- Vấn đề giải thích về tiếm quyền của tiến trình thì không phải tiến trình chờ ở thời điểm nào mà là tiến trình nào mới đến có khoảng CPU kế tiếp nhỏ hơn so với thời gian còn lại của tiến trình đang vận hành thì nó sẽ được ưu tiên chạy thay thế.
Mình xin có chút ý kiến:
Tiếm quyền có nghĩa là CPU không được cấp cho tiến trình đó nữa. HĐH sẽ cấp CPU cho 1 tiến trình nào đó. Tùy vào giải thuật thì HĐH biết để cấp CPU cho tiến trình tiếp theo.
+ Nếu là giải thuật SJFS thì HĐH sẽ ưu tiên tiến trình nào có khoảng thời gian dùng CPU ít nhất thì cấp, nếu có nhiều tiến trình có cùng khoảng thời gian dùng CPU thì sẽ xét đến FCFS (First Come First Served)
+ Nếu là giải thuật Robin (RSS) thì HĐH sẽ chọn tiến trình đầu tiên trong hàng chờ Ready để cấp CPU.
TranThiNgocQuynh(I12C)- Tổng số bài gửi : 14
Join date : 16/02/2012
Re: Thảo luận Bài 6
nguyenthingocmai_I12A đã viết:ví dụ lúc này tại tiến trình P2 thời điểm đến (ms) vẫn là 10 nhưng CPU-Burst (ms) là 20 thì sơ đồ Gantt vẽ thế nào đây bạn?LeThiMaiPhuongI12A đã viết:Dùng thuật giải Preemptive SJFS để điều phối CPU
Tiến trình Thời điểm đến(ms) CPU-Burst P1 5 22 P2 10 15 P3 20 5
a.Thể hiện bằng biểu đồ Gantt
b.Tính thời điểm chờ trung bình của các tiến trình
a.Biểu đồ Gantt.
Tại thời điểm 5ms P1 sẽ được cấp CPU đầu tiên
Tại thời điểm 10ms,P2 đến, do khoảng CPU của P2 nhỏ hơn P1 nên P2 tiếm quyền P1, lúc này CPU được cấp cho P2, và P2 sẽ chạy hết khoảng CPU của nó
Tại thời điểm 25ms, P3 sẽ được cấp CPU vì P3 có khoảng CPU nhỏ hơn P1
Tại thời điểm 30ms P1 sẽ thực hiện tiếp khoảng CPU còn lại của nó
b.Tính thời điểm chờ trung bình của các tiến trình
P1=(47-5)-22=42-22=20ms
P2=(25-10)-15=15-15=0ms
P3=(30-20)-5=10-5=5ms
Thời gian chờ trung bình: (20+0+5)/3=8,3ms
Các bạn bổ sung thêm nha
Theo ý của bạn sơ đồ Gantt có thể vẽ như thế này
tranvanthien27(I12C)- Tổng số bài gửi : 62
Join date : 15/02/2012
Age : 34
Đến từ : Tuy Hòa - Phú Yên
Các thuật giải căn bản trong điều phối CPU
1.Trình bày thuật giải điều phối FCFS.
Đến trước - Phục vụ trước (First-Come, First-Served Scheduling - FCFS)
- Đơn giản, dễ thực hiện.
- Các tiến trình trong Ready Queue được cấp CPU từ đầu dãy đến cuối dãy theo quy tắc FIFO (First-In, First-Out).
- Thời gian chờ trung bình khá lớn.
2.Trình bày thuật giải điều phối PS.
- Mỗi tiến trình được cấp một số nguyên (Priority Number) dùng để ấn định Độ ưu tiên.
- CPU luôn dành cho tiến trình với độ ưu tiên cao hơn (Priority Number nhỏ hơn Độ ưu tiên cao hơn ) với 2 phương án:
Có tiếm quyền ( Preemptive )
Không tiếm quyền ( Non-Preemptive )
- SJFS là trường hợp đặc biệt của PS với độ ưu tiên:
P= ( Khoảng CPU kế tiếp )
3.Trình bày thuật giải điều phối SJFS.
Ngắn hơn-Chạy trước (Shortest-Job-First Scheduling-SJFS)
- Đúng hơn phải được gọi là Shortest-Next-CPU-Burst, nghĩa là tiến trình có Khoảng CPU kế tiếp nhỏ hơn thì được chạy trước. Trong trường hợp bằng nhau, dùng thuật giải FCFS.
- Là giải thuật khá tối ưu, nhưng phải biết cách ước đoán khoảng CPU kế tiếp.
- SJFS không tiếm quyền (Non-Preemptive SJFS): Tiến trình hiện thời được thực hiện đến hết khoảng CPU của nó.
- SJFS có tiếm quyền (Preemptive SJFS): Tiến trình mới có Next CPU Burst nhỏ hơn khoảng thời gian CPU còn lại của tiến trình đang vận hành sẽ được chọn thay thế (Shortest Remaining First).
4.Trình bày thuật giải điều phối RRS.
- Như điều phối kiểu FCFS nhưng cho phép tiếm quyền khi tiến trình đang chạy bị hết thời lượng.
- Mỗi tiến trình được cấp 1 thời lượng CPU (Time Quantum), thường từ 10-100 mili giây. Sau khoảng thời gian này, nó bị tiếm quyền và được đưa vào cuối hàng chờ Ready. Tiến trình đầu tiên trong hàng chờ Ready được chọn kế tiếp.
- Nếu có n tiến trình và thời lượng là q , mỗi tiến trình nhận 1/n thời gian CPU bao gồm các đoạn không quá q đơn vị thời gian.
5.Trình bày thuật giải điều phối MQS.
- Hàng chờ Ready được phân cấp thành nhiều mức có độ ưu tiên khác nhau, ví dụ: Mức các tiến trình tương tác (Interactive) chạy ở mặt trước ( Foreground ) có độ ưu tiên cao nhất và Mức các tiến trình lô ( Batch ) vận hành trong hậu trường (Background ) .
- Mỗi hàng chờ có thuật giải điều phối riêng, ví dụ: Foreground dùng RRS, Background dùng FCFS.
- Quan hệ giữa các mức:
Ưu tiên cố định: Xong hết các tiến trình mức trên rồi mới chuyển xuống mức dưới. Đang chạy tiến trình mức dưới mà xuất hiện tiến trình mới mức cao hơn, tiến trình mức dưới sẽ bị tiếm quyền cho tiến trình mới có độ ưu tiên cao hơn ( Hệ Solaris 2 dùng cách này ) .
Phân bổ theo tỉ lệ thời lượng: ví dụ: 80% thời lượng CPU dành cho Foreground, 20 % cho Background.
Đến trước - Phục vụ trước (First-Come, First-Served Scheduling - FCFS)
- Đơn giản, dễ thực hiện.
- Các tiến trình trong Ready Queue được cấp CPU từ đầu dãy đến cuối dãy theo quy tắc FIFO (First-In, First-Out).
- Thời gian chờ trung bình khá lớn.
2.Trình bày thuật giải điều phối PS.
- Mỗi tiến trình được cấp một số nguyên (Priority Number) dùng để ấn định Độ ưu tiên.
- CPU luôn dành cho tiến trình với độ ưu tiên cao hơn (Priority Number nhỏ hơn Độ ưu tiên cao hơn ) với 2 phương án:
Có tiếm quyền ( Preemptive )
Không tiếm quyền ( Non-Preemptive )
- SJFS là trường hợp đặc biệt của PS với độ ưu tiên:
P= ( Khoảng CPU kế tiếp )
3.Trình bày thuật giải điều phối SJFS.
Ngắn hơn-Chạy trước (Shortest-Job-First Scheduling-SJFS)
- Đúng hơn phải được gọi là Shortest-Next-CPU-Burst, nghĩa là tiến trình có Khoảng CPU kế tiếp nhỏ hơn thì được chạy trước. Trong trường hợp bằng nhau, dùng thuật giải FCFS.
- Là giải thuật khá tối ưu, nhưng phải biết cách ước đoán khoảng CPU kế tiếp.
- SJFS không tiếm quyền (Non-Preemptive SJFS): Tiến trình hiện thời được thực hiện đến hết khoảng CPU của nó.
- SJFS có tiếm quyền (Preemptive SJFS): Tiến trình mới có Next CPU Burst nhỏ hơn khoảng thời gian CPU còn lại của tiến trình đang vận hành sẽ được chọn thay thế (Shortest Remaining First).
4.Trình bày thuật giải điều phối RRS.
- Như điều phối kiểu FCFS nhưng cho phép tiếm quyền khi tiến trình đang chạy bị hết thời lượng.
- Mỗi tiến trình được cấp 1 thời lượng CPU (Time Quantum), thường từ 10-100 mili giây. Sau khoảng thời gian này, nó bị tiếm quyền và được đưa vào cuối hàng chờ Ready. Tiến trình đầu tiên trong hàng chờ Ready được chọn kế tiếp.
- Nếu có n tiến trình và thời lượng là q , mỗi tiến trình nhận 1/n thời gian CPU bao gồm các đoạn không quá q đơn vị thời gian.
5.Trình bày thuật giải điều phối MQS.
- Hàng chờ Ready được phân cấp thành nhiều mức có độ ưu tiên khác nhau, ví dụ: Mức các tiến trình tương tác (Interactive) chạy ở mặt trước ( Foreground ) có độ ưu tiên cao nhất và Mức các tiến trình lô ( Batch ) vận hành trong hậu trường (Background ) .
- Mỗi hàng chờ có thuật giải điều phối riêng, ví dụ: Foreground dùng RRS, Background dùng FCFS.
- Quan hệ giữa các mức:
Ưu tiên cố định: Xong hết các tiến trình mức trên rồi mới chuyển xuống mức dưới. Đang chạy tiến trình mức dưới mà xuất hiện tiến trình mới mức cao hơn, tiến trình mức dưới sẽ bị tiếm quyền cho tiến trình mới có độ ưu tiên cao hơn ( Hệ Solaris 2 dùng cách này ) .
Phân bổ theo tỉ lệ thời lượng: ví dụ: 80% thời lượng CPU dành cho Foreground, 20 % cho Background.
Re: Thảo luận Bài 6
Hôm qua lúc thầy giải bài tập phần vẽ biểu đồ Gantt mình chưa hiểu rõ lắm.Sau khi đọc bài của bạn mình hiểu kỹ hơn về thuật giải SJFS,cám ơn bạn rất nhiều.LeThiMaiPhuongI12A đã viết:Dùng thuật giải Preemptive SJFS để điều phối CPU
Tiến trình Thời điểm đến(ms) CPU-Burst P1 5 22 P2 10 15 P3 20 5
a.Thể hiện bằng biểu đồ Gantt
b.Tính thời điểm chờ trung bình của các tiến trình
a.Biểu đồ Gantt.
Tại thời điểm 5ms P1 sẽ được cấp CPU đầu tiên
Tại thời điểm 10ms,P2 đến, do khoảng CPU của P2 nhỏ hơn P1 nên P2 tiếm quyền P1, lúc này CPU được cấp cho P2, và P2 sẽ chạy hết khoảng CPU của nó
Tại thời điểm 25ms, P3 sẽ được cấp CPU vì P3 có khoảng CPU nhỏ hơn P1
Tại thời điểm 30ms P1 sẽ thực hiện tiếp khoảng CPU còn lại của nó
b.Tính thời điểm chờ trung bình của các tiến trình
P1=(47-5)-22=42-22=20ms
P2=(25-10)-15=15-15=0ms
P3=(30-20)-5=10-5=5ms
Thời gian chờ trung bình: (20+0+5)/3=8,3ms
Các bạn bổ sung thêm nha
thailongI12C- Tổng số bài gửi : 35
Join date : 17/02/2012
So sánh MQS (Multilevel Queue Scheduling)với MFQS(Multilevel Feedback Queue Scheduling)
- Multilevel Queue Scheduling - MQS:
+ Được chia thành nhiều queue riêng biệt
• Foreground(Chứa các interactive process)
• Background(Chứa các backprocess)
+ Mỗi hàng chờ có thuật giải điều phối riêng
• Foreground: RR
• Background:FCFS
+ Quan hệ giữa các mức
• lập lịch với mức độ ưu tiên
• Phân chia thời gian: mỗi queue nhận được một lượng thời gian CPU nào đó mà có thể lập lịch các tiến trình của nó
+ Tiến trình trong queue có mức độ ưu tiên thấp hơn chỉ có thể chạy khi các queue có mức ưu tiên thấp hơn rỗng
+ Tiến trình có mức ưu tiên cao hơn khi vào ready queue không ảnh hưởng đến tiến trình đang chạy có mức ưu tiên thấp hơn.
Ví dụ:
------Phục vụ khách trong nhà hàng
+ Mỗi thực khách sẽ đến và gọi món ăn, nước uống.
+ Mỗi thức ăn và nước uống đều có thời gian chuẩn bị là khác nhau.
+ Thời gian trung bình đợi của thực khách là khác nhau.
• Nếu khách hàng VIP hoặc đặc bàn trước sẽ ưu tiên trước.
• Còn lại thường thì các nhà hàng sẽ phục vụ theo kiểu FCFS đến trước phục vụ trước
- Multilevel Feedback Queue Scheduling - MFQS :
+ Điều tiết tiến trình có thể di chuyển giữa các queue khác nhau
+ Đa mức hàng đợi đặc trưng bởi các thông số sau:
- Số lượng hàng chờ
- Giải thuật lập lịch cho mỗi hàng chờ
- Phương pháp sử dụng để xác định khi nào thì tăng, giảm mức ưu tiên của một tiến trình
- Phương pháp được sử dụng để xác định hàng chờ nào mà tiến rình sẽ đến khi nó cần được phục vụ.
Ví dụ: Trong ga Hòa Hưng có 4 ô cửa bán vé. Có 4 loại khách hàng với 4 loại ưu tiên khác nhau. Chỉ có 1 người nhân viên bán vé.
+ cửa 1: cửa hệ thống: cho những người trong ngành.
+ cửa 2: cho thương binh, bộ đội.
+ cửa 3: cho những người bình thường.
+ cửa 4: cho học sinh, sinh viên.
Với MQS: chỉ 1 nhân viên bán vé phải chạy từ cửa này sang cửa kia, cửa nào có khách thì chạy sang cửa đó.
Với MFQS: có điều phối nếu có sự ưu tiên, chuyển bớt tiến trình từ cửa này sang cửa kia, giúp cho hoạt động được tốt hơn.
+ Được chia thành nhiều queue riêng biệt
• Foreground(Chứa các interactive process)
• Background(Chứa các backprocess)
+ Mỗi hàng chờ có thuật giải điều phối riêng
• Foreground: RR
• Background:FCFS
+ Quan hệ giữa các mức
• lập lịch với mức độ ưu tiên
• Phân chia thời gian: mỗi queue nhận được một lượng thời gian CPU nào đó mà có thể lập lịch các tiến trình của nó
+ Tiến trình trong queue có mức độ ưu tiên thấp hơn chỉ có thể chạy khi các queue có mức ưu tiên thấp hơn rỗng
+ Tiến trình có mức ưu tiên cao hơn khi vào ready queue không ảnh hưởng đến tiến trình đang chạy có mức ưu tiên thấp hơn.
Ví dụ:
------Phục vụ khách trong nhà hàng
+ Mỗi thực khách sẽ đến và gọi món ăn, nước uống.
+ Mỗi thức ăn và nước uống đều có thời gian chuẩn bị là khác nhau.
+ Thời gian trung bình đợi của thực khách là khác nhau.
• Nếu khách hàng VIP hoặc đặc bàn trước sẽ ưu tiên trước.
• Còn lại thường thì các nhà hàng sẽ phục vụ theo kiểu FCFS đến trước phục vụ trước
- Multilevel Feedback Queue Scheduling - MFQS :
+ Điều tiết tiến trình có thể di chuyển giữa các queue khác nhau
+ Đa mức hàng đợi đặc trưng bởi các thông số sau:
- Số lượng hàng chờ
- Giải thuật lập lịch cho mỗi hàng chờ
- Phương pháp sử dụng để xác định khi nào thì tăng, giảm mức ưu tiên của một tiến trình
- Phương pháp được sử dụng để xác định hàng chờ nào mà tiến rình sẽ đến khi nó cần được phục vụ.
Ví dụ: Trong ga Hòa Hưng có 4 ô cửa bán vé. Có 4 loại khách hàng với 4 loại ưu tiên khác nhau. Chỉ có 1 người nhân viên bán vé.
+ cửa 1: cửa hệ thống: cho những người trong ngành.
+ cửa 2: cho thương binh, bộ đội.
+ cửa 3: cho những người bình thường.
+ cửa 4: cho học sinh, sinh viên.
Với MQS: chỉ 1 nhân viên bán vé phải chạy từ cửa này sang cửa kia, cửa nào có khách thì chạy sang cửa đó.
Với MFQS: có điều phối nếu có sự ưu tiên, chuyển bớt tiến trình từ cửa này sang cửa kia, giúp cho hoạt động được tốt hơn.
re:
nguyenthingocmai_I12A đã viết:ví dụ lúc này tại tiến trình P2 thời điểm đến (ms) vẫn là 10 nhưng CPU-Burst (ms) là 20 thì sơ đồ Gantt vẽ thế nào đây bạn?LeThiMaiPhuongI12A đã viết:Dùng thuật giải Preemptive SJFS để điều phối CPU
Tiến trình Thời điểm đến(ms) CPU-Burst P1 5 22 P2 10 15 P3 20 5
a.Thể hiện bằng biểu đồ Gantt
b.Tính thời điểm chờ trung bình của các tiến trình
a.Biểu đồ Gantt.
Tại thời điểm 5ms P1 sẽ được cấp CPU đầu tiên
Tại thời điểm 10ms,P2 đến, do khoảng CPU của P2 nhỏ hơn P1 nên P2 tiếm quyền P1, lúc này CPU được cấp cho P2, và P2 sẽ chạy hết khoảng CPU của nó
Tại thời điểm 25ms, P3 sẽ được cấp CPU vì P3 có khoảng CPU nhỏ hơn P1
Tại thời điểm 30ms P1 sẽ thực hiện tiếp khoảng CPU còn lại của nó
b.Tính thời điểm chờ trung bình của các tiến trình
P1=(47-5)-22=42-22=20ms
P2=(25-10)-15=15-15=0ms
P3=(30-20)-5=10-5=5ms
Thời gian chờ trung bình: (20+0+5)/3=8,3ms
Các bạn bổ sung thêm nha
Theo minh nghĩ có thể vẽ như sau:
NguyenDucMy78(I12C)- Tổng số bài gửi : 6
Join date : 16/02/2012
Re: Thảo luận Bài 6
mình vận chưa hiểu lắm, thời điểm đếm của p3 là 20 nhưng tại sao nó lại nằm ở 25ms??? bạn giải thích dùm mình nhé,cảm ơn nhìu!!!nguyenthingocmai_I12A đã viết:ví dụ lúc này tại tiến trình P2 thời điểm đến (ms) vẫn là 10 nhưng CPU-Burst (ms) là 20 thì sơ đồ Gantt vẽ thế nào đây bạn?LeThiMaiPhuongI12A đã viết:Dùng thuật giải Preemptive SJFS để điều phối CPU
Tiến trình Thời điểm đến(ms) CPU-Burst P1 5 22 P2 10 15 P3 20 5
a.Thể hiện bằng biểu đồ Gantt
b.Tính thời điểm chờ trung bình của các tiến trình
a.Biểu đồ Gantt.
Tại thời điểm 5ms P1 sẽ được cấp CPU đầu tiên
Tại thời điểm 10ms,P2 đến, do khoảng CPU của P2 nhỏ hơn P1 nên P2 tiếm quyền P1, lúc này CPU được cấp cho P2, và P2 sẽ chạy hết khoảng CPU của nó
Tại thời điểm 25ms, P3 sẽ được cấp CPU vì P3 có khoảng CPU nhỏ hơn P1
Tại thời điểm 30ms P1 sẽ thực hiện tiếp khoảng CPU còn lại của nó
b.Tính thời điểm chờ trung bình của các tiến trình
P1=(47-5)-22=42-22=20ms
P2=(25-10)-15=15-15=0ms
P3=(30-20)-5=10-5=5ms
Thời gian chờ trung bình: (20+0+5)/3=8,3ms
Các bạn bổ sung thêm nha
phamduyI12A- Tổng số bài gửi : 20
Join date : 19/02/2012
Age : 34
Đến từ : TPHCM
Re: Thảo luận Bài 6
mình cũng đồng tình vs biểu đồ gantt của bạn NguyenDucMy78(I12C)NguyenDucMy78(I12C) đã viết:nguyenthingocmai_I12A đã viết:ví dụ lúc này tại tiến trình P2 thời điểm đến (ms) vẫn là 10 nhưng CPU-Burst (ms) là 20 thì sơ đồ Gantt vẽ thế nào đây bạn?LeThiMaiPhuongI12A đã viết:Dùng thuật giải Preemptive SJFS để điều phối CPU
Tiến trình Thời điểm đến(ms) CPU-Burst P1 5 22 P2 10 15 P3 20 5
a.Thể hiện bằng biểu đồ Gantt
b.Tính thời điểm chờ trung bình của các tiến trình
a.Biểu đồ Gantt.
Tại thời điểm 5ms P1 sẽ được cấp CPU đầu tiên
Tại thời điểm 10ms,P2 đến, do khoảng CPU của P2 nhỏ hơn P1 nên P2 tiếm quyền P1, lúc này CPU được cấp cho P2, và P2 sẽ chạy hết khoảng CPU của nó
Tại thời điểm 25ms, P3 sẽ được cấp CPU vì P3 có khoảng CPU nhỏ hơn P1
Tại thời điểm 30ms P1 sẽ thực hiện tiếp khoảng CPU còn lại của nó
b.Tính thời điểm chờ trung bình của các tiến trình
P1=(47-5)-22=42-22=20ms
P2=(25-10)-15=15-15=0ms
P3=(30-20)-5=10-5=5ms
Thời gian chờ trung bình: (20+0+5)/3=8,3ms
Các bạn bổ sung thêm nha
Theo minh nghĩ có thể vẽ như sau:
phamduyI12A- Tổng số bài gửi : 20
Join date : 19/02/2012
Age : 34
Đến từ : TPHCM
re:Thao luan bai 6
Cho mình hỏi sao lại vẽ P2 trước P1.Nếu mình vẽ P1 trước thì đúng or sai.tranvanthien27(I12C) đã viết:nguyenthingocmai_I12A đã viết:ví dụ lúc này tại tiến trình P2 thời điểm đến (ms) vẫn là 10 nhưng CPU-Burst (ms) là 20 thì sơ đồ Gantt vẽ thế nào đây bạn?LeThiMaiPhuongI12A đã viết:Dùng thuật giải Preemptive SJFS để điều phối CPU
Tiến trình Thời điểm đến(ms) CPU-Burst P1 5 22 P2 10 15 P3 20 5
a.Thể hiện bằng biểu đồ Gantt
b.Tính thời điểm chờ trung bình của các tiến trình
a.Biểu đồ Gantt.
Tại thời điểm 5ms P1 sẽ được cấp CPU đầu tiên
Tại thời điểm 10ms,P2 đến, do khoảng CPU của P2 nhỏ hơn P1 nên P2 tiếm quyền P1, lúc này CPU được cấp cho P2, và P2 sẽ chạy hết khoảng CPU của nó
Tại thời điểm 25ms, P3 sẽ được cấp CPU vì P3 có khoảng CPU nhỏ hơn P1
Tại thời điểm 30ms P1 sẽ thực hiện tiếp khoảng CPU còn lại của nó
b.Tính thời điểm chờ trung bình của các tiến trình
P1=(47-5)-22=42-22=20ms
P2=(25-10)-15=15-15=0ms
P3=(30-20)-5=10-5=5ms
Thời gian chờ trung bình: (20+0+5)/3=8,3ms
Các bạn bổ sung thêm nha
Theo ý của bạn sơ đồ Gantt có thể vẽ như thế này
NguyenDucMy78(I12C)- Tổng số bài gửi : 6
Join date : 16/02/2012
Re: Thảo luận Bài 6
Một hệ thống có 3 tiến trình đế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 22
p2 10 15
p3 20 5
Dùng thuật giải Preemptive SJFS để điều phối CPU.
a) Thể hiện bằng biểu đồ Ganitt
b) Tính thời gian chờ Trung bình của các tiến trình
Trả lời:
Ta có: p1 thời điểm đến là 5ms và thời gian xử lý la 22ms.
p2 thời điểm đến là 10ms và thời gian xử lý là 15ms.
p3 thời điểm đến là 20ms và thời gian xử lý là 5ms.
p2 muốn thực hiện tiến trình thì phải đợi thời điểm đến :10-5=5ms.
p3 muốn thực hiện tiến trình thì phải đợi thời điểm đến :20-10=10ms.
Qúa trình xử lý chờ đợi thời gian là:
p1 chạy được 5ms thì p2 vào,p1 còn 22-5=17ms.
p2 chạy được 10ms thì p3 vào, p2 con 15-10=5ms.
p3 vào lúc 20ms,p3 chờ 22-20=2ms.
Thời gian chờ của các tiến trình la:
p1=(47-5)-22=20ms,
p2=(25-10)-15=0ms,
p3=(30-20)-5=5ms,
Thời gian chơ TB là:
(20+0+5)/3=8.3ms
Theo mình hiểu là như vậy. Mong thầy và các bạn góp ý dùm mình nha.Thanks
Tiến trình Thời điểm đến (ms) CPU_Burst(ms)
p1 5 22
p2 10 15
p3 20 5
Dùng thuật giải Preemptive SJFS để điều phối CPU.
a) Thể hiện bằng biểu đồ Ganitt
b) Tính thời gian chờ Trung bình của các tiến trình
Trả lời:
Ta có: p1 thời điểm đến là 5ms và thời gian xử lý la 22ms.
p2 thời điểm đến là 10ms và thời gian xử lý là 15ms.
p3 thời điểm đến là 20ms và thời gian xử lý là 5ms.
p2 muốn thực hiện tiến trình thì phải đợi thời điểm đến :10-5=5ms.
p3 muốn thực hiện tiến trình thì phải đợi thời điểm đến :20-10=10ms.
Qúa trình xử lý chờ đợi thời gian là:
p1 chạy được 5ms thì p2 vào,p1 còn 22-5=17ms.
p2 chạy được 10ms thì p3 vào, p2 con 15-10=5ms.
p3 vào lúc 20ms,p3 chờ 22-20=2ms.
Thời gian chờ của các tiến trình la:
p1=(47-5)-22=20ms,
p2=(25-10)-15=0ms,
p3=(30-20)-5=5ms,
Thời gian chơ TB là:
(20+0+5)/3=8.3ms
Theo mình hiểu là như vậy. Mong thầy và các bạn góp ý dùm mình nha.Thanks
huynhthao.hc11th2a- Tổng số bài gửi : 19
Join date : 23/02/2012
Re: Thảo luận Bài 6
Mình cũng làm ra kết quả giống bạn.PhamQuangHien_I12A đã viết:Đề Bài: Một hệ thống có 3 tiến trình, với thời điểm đến và tg sử dụng CPU như sau:
P1 3 35
P2 10 20
P3 25 15
Hãy dùng thuật giải round robin với thời lượng 10ms để điều phối CPU.
a>thể hiện bằng biểu đồ gant?
b>tính thời gian chờ Tb của các tiến trình?Giải:A/ biểu đồ Gantt:
với thời luợng 10ms để điều phối CPU nên các tiến trình chỉ có thể dùng 10ms sau đó phải chuỷên qua tiến trình khác.ở đây là các tiến trình p1,p2,p3
Giải Thích Biểu Đồ:
1. Thời điểm 3: P1 bắt đầu chạy 10 ms
2. Thời điểm 13: P2 được tiếm quyền P1 (vì P2 đang chờ ở thời điểm 10)
3. Thời điểm 23: P1 được tiếm quyền P2 (vì P1 đang chờ ở thời điểm 13, P3 đang chờ ở thời điểm 25)
4. Thời điểm 33: P2 được tiếm quyền P1 (vì P2 đang chờ ở thời điểm 23, P3 đang chờ ở thời điểm 25 )
5. Thời điểm 43: P3 được chạy trước P1 (vì P3 đang chờ trước ở thời điểm 25 còn P1 là 33 )(P2 hết)
6. Thời điểm 53: P1 được tiếm quyền P3 (vì P1 đang chờ ở thời điểm 33 )
6. Thời điểm 63: P3 được tiếm quyền P1 (vì P3 đang chờ ở thời điểm 53 và chạy hết 5s(68s kết thúc))
7. Cuối cùng chỉ còn P1 sẽ chạy hết thời gian còn lại(5s nữa và kết thúc tại 73s).
B/ thời gian chờ trung bình của các tiến trìn[/b]h:
[/u]Theo như công thức:
T(i)=( thờiđiểm kết thúc - thời điểm đến )- t/g dùng CPU
Thời gian chờ của P1 = 73-3-35=35 -> T1
Thời gian chờ của P2 = 43-10-20=13 -> T2
Thời gian chờ của P3 = 68-25-15=28 -> T3
P(tb) = (T1+T2+T3)/3
Thời gian chờ trung bình: P(tb)= (35+13+28)/3=76/3=25.33 (ms)
LeTanDat (I11C)- Tổng số bài gửi : 24
Join date : 30/08/2011
Re: Thảo luận Bài 6
phamduyI12A đã viết:mình vận chưa hiểu lắm, thời điểm đếm của p3 là 20 nhưng tại sao nó lại nằm ở 25ms??? bạn giải thích dùm mình nhé,cảm ơn nhìu!!!nguyenthingocmai_I12A đã viết:ví dụ lúc này tại tiến trình P2 thời điểm đến (ms) vẫn là 10 nhưng CPU-Burst (ms) là 20 thì sơ đồ Gantt vẽ thế nào đây bạn?LeThiMaiPhuongI12A đã viết:Dùng thuật giải Preemptive SJFS để điều phối CPU
Tiến trình Thời điểm đến(ms) CPU-Burst P1 5 22 P2 10 15 P3 20 5
a.Thể hiện bằng biểu đồ Gantt
b.Tính thời điểm chờ trung bình của các tiến trình
a.Biểu đồ Gantt.
Tại thời điểm 5ms P1 sẽ được cấp CPU đầu tiên
Tại thời điểm 10ms,P2 đến, do khoảng CPU của P2 nhỏ hơn P1 nên P2 tiếm quyền P1, lúc này CPU được cấp cho P2, và P2 sẽ chạy hết khoảng CPU của nó
Tại thời điểm 25ms, P3 sẽ được cấp CPU vì P3 có khoảng CPU nhỏ hơn P1
Tại thời điểm 30ms P1 sẽ thực hiện tiếp khoảng CPU còn lại của nó
b.Tính thời điểm chờ trung bình của các tiến trình
P1=(47-5)-22=42-22=20ms
P2=(25-10)-15=15-15=0ms
P3=(30-20)-5=10-5=5ms
Thời gian chờ trung bình: (20+0+5)/3=8,3ms
Các bạn bổ sung thêm nha
Vì tại thời điểm 10ms P2 thực hiện đến 20ms thì P2 còn lại 5ms CPU-Burst chưa thực hiện bằng với P3 cũng có 5 ms CPU-Burst vì P2 đến trước nên được thực hiện trước P3 thêm 5 ms nữa ( nếu 2 tiến trình có CPU-Burst mà bằng nhau thì dùng thuật giải FCFS ) nên P2 kết thúc tại 25 ms, rồi sau đó P3 mới bắt đầu thực hiện tại thời điểm 25 ms
Được sửa bởi tranvanthien27(I12C) ngày 5/4/2012, 11:39; sửa lần 5.
tranvanthien27(I12C)- Tổng số bài gửi : 62
Join date : 15/02/2012
Age : 34
Đến từ : Tuy Hòa - Phú Yên
Re: Thảo luận Bài 6
phamduyI12A đã viết:mình vận chưa hiểu lắm, thời điểm đếm của p3 là 20 nhưng tại sao nó lại nằm ở 25ms??? bạn giải thích dùm mình nhé,cảm ơn nhìu!!!nguyenthingocmai_I12A đã viết:ví dụ lúc này tại tiến trình P2 thời điểm đến (ms) vẫn là 10 nhưng CPU-Burst (ms) là 20 thì sơ đồ Gantt vẽ thế nào đây bạn?LeThiMaiPhuongI12A đã viết:Dùng thuật giải Preemptive SJFS để điều phối CPU
Tiến trình Thời điểm đến(ms) CPU-Burst P1 5 22 P2 10 15 P3 20 5
a.Thể hiện bằng biểu đồ Gantt
b.Tính thời điểm chờ trung bình của các tiến trình
a.Biểu đồ Gantt.
Tại thời điểm 5ms P1 sẽ được cấp CPU đầu tiên
Tại thời điểm 10ms,P2 đến, do khoảng CPU của P2 nhỏ hơn P1 nên P2 tiếm quyền P1, lúc này CPU được cấp cho P2, và P2 sẽ chạy hết khoảng CPU của nó
Tại thời điểm 25ms, P3 sẽ được cấp CPU vì P3 có khoảng CPU nhỏ hơn P1
Tại thời điểm 30ms P1 sẽ thực hiện tiếp khoảng CPU còn lại của nó
b.Tính thời điểm chờ trung bình của các tiến trình
P1=(47-5)-22=42-22=20ms
P2=(25-10)-15=15-15=0ms
P3=(30-20)-5=10-5=5ms
Thời gian chờ trung bình: (20+0+5)/3=8,3ms
Các bạn bổ sung thêm nha
Theo mình hiểu là như vaj:
P2 thời điểm đến là 10 P3 thời điểm đến là 20 lúc đó P2 mới chỉ thực hiện được 10(ms) lúc đó sẽ còn 5ms.lúc này P3=P2=5ms mà như thầy giảng trên lớp nếu mà CPU Burst bằng nhau thì sẽ lấy tiến trình vào trước ra trước -> P2 sau đó sẽ là P3 -> P3 bắt đầu từ thời điểm 25
Không bít đúng k nữa.nếu sai mong ban thông cảm.đó là cách hiểu của minh
NguyenDucMy78(I12C)- Tổng số bài gửi : 6
Join date : 16/02/2012
Re: Thảo luận Bài 6
NguyenDucMy78(I12C) đã viết:Cho mình hỏi sao lại vẽ P2 trước P1.Nếu mình vẽ P1 trước thì đúng or sai.tranvanthien27(I12C) đã viết:nguyenthingocmai_I12A đã viết:ví dụ lúc này tại tiến trình P2 thời điểm đến (ms) vẫn là 10 nhưng CPU-Burst (ms) là 20 thì sơ đồ Gantt vẽ thế nào đây bạn?LeThiMaiPhuongI12A đã viết:Dùng thuật giải Preemptive SJFS để điều phối CPU
Tiến trình Thời điểm đến(ms) CPU-Burst P1 5 22 P2 10 15 P3 20 5
a.Thể hiện bằng biểu đồ Gantt
b.Tính thời điểm chờ trung bình của các tiến trình
a.Biểu đồ Gantt.
Tại thời điểm 5ms P1 sẽ được cấp CPU đầu tiên
Tại thời điểm 10ms,P2 đến, do khoảng CPU của P2 nhỏ hơn P1 nên P2 tiếm quyền P1, lúc này CPU được cấp cho P2, và P2 sẽ chạy hết khoảng CPU của nó
Tại thời điểm 25ms, P3 sẽ được cấp CPU vì P3 có khoảng CPU nhỏ hơn P1
Tại thời điểm 30ms P1 sẽ thực hiện tiếp khoảng CPU còn lại của nó
b.Tính thời điểm chờ trung bình của các tiến trình
P1=(47-5)-22=42-22=20ms
P2=(25-10)-15=15-15=0ms
P3=(30-20)-5=10-5=5ms
Thời gian chờ trung bình: (20+0+5)/3=8,3ms
Các bạn bổ sung thêm nha
Theo ý của bạn sơ đồ Gantt có thể vẽ như thế này
Theo mình nghỉ vì P2 còn lại 10 ms CPU Burst nhỏ hơn P1 có 17 ms CPU-Burst nên P2 phải trước P1. Nếu chúng bằng nhau thì dùng thuật giải FCFS
Được sửa bởi tranvanthien27(I12C) ngày 5/4/2012, 11:35; sửa lần 1.
tranvanthien27(I12C)- Tổng số bài gửi : 62
Join date : 15/02/2012
Age : 34
Đến từ : Tuy Hòa - Phú Yên
Re: Thảo luận Bài 6
Đúng vậy đó bạn theo thuật giải Preemptive SJFS thì tiến trình nào có khoảng CPU kế tiếp nhỏ hơn thì sẽ được ưu tiên trước, còn có khoảng CPU kế tiếp bằng nhau thì dùng thuật giải FCFS nên nếu vẽ P1 trước thì sẽ saitranvanthien27(I12C) đã viết:NguyenDucMy78(I12C) đã viết:Cho mình hỏi sao lại vẽ P2 trước P1.Nếu mình vẽ P1 trước thì đúng or sai.tranvanthien27(I12C) đã viết:nguyenthingocmai_I12A đã viết:ví dụ lúc này tại tiến trình P2 thời điểm đến (ms) vẫn là 10 nhưng CPU-Burst (ms) là 20 thì sơ đồ Gantt vẽ thế nào đây bạn?LeThiMaiPhuongI12A đã viết:Dùng thuật giải Preemptive SJFS để điều phối CPU
Tiến trình Thời điểm đến(ms) CPU-Burst P1 5 22 P2 10 15 P3 20 5
a.Thể hiện bằng biểu đồ Gantt
b.Tính thời điểm chờ trung bình của các tiến trình
a.Biểu đồ Gantt.
Tại thời điểm 5ms P1 sẽ được cấp CPU đầu tiên
Tại thời điểm 10ms,P2 đến, do khoảng CPU của P2 nhỏ hơn P1 nên P2 tiếm quyền P1, lúc này CPU được cấp cho P2, và P2 sẽ chạy hết khoảng CPU của nó
Tại thời điểm 25ms, P3 sẽ được cấp CPU vì P3 có khoảng CPU nhỏ hơn P1
Tại thời điểm 30ms P1 sẽ thực hiện tiếp khoảng CPU còn lại của nó
b.Tính thời điểm chờ trung bình của các tiến trình
P1=(47-5)-22=42-22=20ms
P2=(25-10)-15=15-15=0ms
P3=(30-20)-5=10-5=5ms
Thời gian chờ trung bình: (20+0+5)/3=8,3ms
Các bạn bổ sung thêm nha
Theo ý của bạn sơ đồ Gantt có thể vẽ như thế này
Theo mình nghỉ vì P2 có 10 ms CPU Burst nhỏ hơn P1 có 17 ms CPU-Burst nên P2 phải trước P1. Nếu chúng bằng nhau thì dùng thuật giải FCFS
Được sửa bởi LeThiMaiPhuongI12A ngày 5/4/2012, 11:38; sửa lần 2.
LeThiMaiPhuongI12A- Tổng số bài gửi : 12
Join date : 15/02/2012
Age : 34
Đến từ : Long An
So sánh MQS (Multilevel Queue Scheduling) và MFQS (Multilevel Feedback Queue Scheduling)
-Multilevel Queue Scheduling:
--- Được chia thành nhiều queue riêng biệt
---------Foreground(Chứa các interactive process)
---------Background(Chứa các backprocess)
--- Mỗi hàng chờ có thuật giải điều phối riêng
--------- Foreground: RR
---------Background:FCFS
--- Quan hệ giữa các mức
---------Lập lịch với mức độ ưu tiên
---------Phân chia thời gian: mỗi queue nhận được một lượng thời gian CPU nào đó mà có thể lập lịch các tiến trình của nó
--- Tiến trình trong queue có mức độ ưu tiên thấp hơn chỉ có thể chạy khi các queue có mức ưu tiên thấp hơn rỗng
--- Tiến trình có mức ưu tiên cao hơn khi vào ready queue không ảnh hưởng đến tiến trình đang chạy có mức ưu tiên thấp hơn.
Ví dụ:
Việc phục vụ khách trong nhà hàng
--- Thực khách sẽ đến và gọi món ăn, nước uống.
--- Mỗi thức ăn và nước uống đều có thời gian chuẩn bị là khác nhau.
---Thời gian trung bình đợi của thực khách là khác nhau
---------Nếu khách hàng quen thân hoặc đặc bàn trước chúng ta sẽ ưu tiên trước (lập lịch với mức độ ưu tiên)
---------Còn lại thường thì các nhà hàng sẽ phục vụ theo kiểu người nào đến trước phục vụ trước(FCFS)
*Multilevel Feedback Queue Scheduling
--- Điều tiết tiến trình có thể di chuyển giữa các queue khác nhau
--- Đa mức hàng đợi đặc trưng bởi các thông số sau:
---------Số lượng hàng chờ
---------Giải thuật lập lịch cho mỗi hàng chờ
---------Phương pháp sử dụng để xác định khi nào thì tăng, giảm mức ưu tiên của một tiến trình
---------Phương pháp được sử dụng để xác định hàng chờ nào mà tiến rình sẽ đến khi nó cần được phục vụ.
--- Được chia thành nhiều queue riêng biệt
---------Foreground(Chứa các interactive process)
---------Background(Chứa các backprocess)
--- Mỗi hàng chờ có thuật giải điều phối riêng
--------- Foreground: RR
---------Background:FCFS
--- Quan hệ giữa các mức
---------Lập lịch với mức độ ưu tiên
---------Phân chia thời gian: mỗi queue nhận được một lượng thời gian CPU nào đó mà có thể lập lịch các tiến trình của nó
--- Tiến trình trong queue có mức độ ưu tiên thấp hơn chỉ có thể chạy khi các queue có mức ưu tiên thấp hơn rỗng
--- Tiến trình có mức ưu tiên cao hơn khi vào ready queue không ảnh hưởng đến tiến trình đang chạy có mức ưu tiên thấp hơn.
Ví dụ:
Việc phục vụ khách trong nhà hàng
--- Thực khách sẽ đến và gọi món ăn, nước uống.
--- Mỗi thức ăn và nước uống đều có thời gian chuẩn bị là khác nhau.
---Thời gian trung bình đợi của thực khách là khác nhau
---------Nếu khách hàng quen thân hoặc đặc bàn trước chúng ta sẽ ưu tiên trước (lập lịch với mức độ ưu tiên)
---------Còn lại thường thì các nhà hàng sẽ phục vụ theo kiểu người nào đến trước phục vụ trước(FCFS)
*Multilevel Feedback Queue Scheduling
--- Điều tiết tiến trình có thể di chuyển giữa các queue khác nhau
--- Đa mức hàng đợi đặc trưng bởi các thông số sau:
---------Số lượng hàng chờ
---------Giải thuật lập lịch cho mỗi hàng chờ
---------Phương pháp sử dụng để xác định khi nào thì tăng, giảm mức ưu tiên của một tiến trình
---------Phương pháp được sử dụng để xác định hàng chờ nào mà tiến rình sẽ đến khi nó cần được phục vụ.
phuongnguyen- Tổng số bài gửi : 27
Join date : 17/02/2012
Ý nghĩa khi vẽ 1 biểu đồ Gantt
1. Biểu đồ Gantt là gì?
Biểu đồ Gantt là đồ thị với những thanh nằm ngang để chỉ hoạt động ngược lại với ngày. Đây là công cụ để đo lường tiến độ thực hiện dự án so với kế hoạch đề ra.
Cách vẽ một biểu đồ Gantt:
* Vẽ đường thời gian của dự án/ chương trình từ đầu cho đến cuối dự án trên trục toạ độ (trục tung- nằm ngang);
* Trên trục hoành (ngược lại với trục tung) thể hiện các hoạt động cần được hoàn thành trong suốt dự án/ chương trình;
* Vẽ một thanh nằm ngang ở mỗi mức độ của hoạt động để chỉ khoảng thời gian thực hiện mỗi công việc.
TIP Đối với khoảng thời gian dự kiến thực hiện hoạt động có thể sử dụng một công thức để tính thời gian dự kiến:
Trong đó:
PT là thời gian dài nhất hoạt động có thể diễn ra
ET là thời gian ước tính cho hoạt động thực hiện
OT là thời gian ít nhất khi hoạt động diễn ra
ST là thời gian dự kiến và sử dụng ST trên biểu đồ
2. Tại sao biểu đồ Gantt có ý nghĩa?
Biểu đồ Gantt là một cách đơn giản và dễ hiểu để giám sát tiến độ của các hoạt động khi thực hiện dự án/ chương trình
3. Biểu đồ Gantt hỗ trợ như thế nào?
Biểu đồ Gantt hỗ trợ bạn theo 2 cách chính. Đầu tiên, chúng cung cấp cho bạn hình ảnh trực quan về các hoạt động và thời gian thực hiện. Thứ hai, chúng cho phép bạn truyền đạt động tin bằng một cách dễ dàng với các đồng nghiệp khác trong nhóm về trạng thái của dự án/ chương trình.
4. Biểu đồ Gantt được áp dụng ở đâu?
Biểu đồ Gantt được sử dụng cho bất kỳ dự án/ chương trình để xác định tiến độ và làm rõ mục tiêu. Chúng giúp liên kết giữa mọi người/ nguồn lực trong dự án cùng với nhiều hoạt động trong đó.
5. Biểu đồ Gantt có ý nghĩa khi nào?
Khi bạn đang quản lý một chương trình/ dự án có nhiều hoạt động phức tạp, biểu đồ Gantt được khuyên dùng, đặc biệt nếu bạn yêu cầu lao động đầu vào từ các nguồn khác nhau để hoàn thành các công việc này. Nó giúp bạn nắm rõ được mối quan hệ giữa các công việc, ví dụ khi các công việc thực hiện liên tiếp nhau, hoặc có thể được thực hiện song song.
6. Biểu đồ Gantt đem lại lợi ích cho ai?
Biểu đồ Gantt có lợi cho cả những người quản lý chương trình/ dự án và tất cả những ai tham gia thực hiện công việc trong dự án
Biểu đồ Gantt là đồ thị với những thanh nằm ngang để chỉ hoạt động ngược lại với ngày. Đây là công cụ để đo lường tiến độ thực hiện dự án so với kế hoạch đề ra.
Cách vẽ một biểu đồ Gantt:
* Vẽ đường thời gian của dự án/ chương trình từ đầu cho đến cuối dự án trên trục toạ độ (trục tung- nằm ngang);
* Trên trục hoành (ngược lại với trục tung) thể hiện các hoạt động cần được hoàn thành trong suốt dự án/ chương trình;
* Vẽ một thanh nằm ngang ở mỗi mức độ của hoạt động để chỉ khoảng thời gian thực hiện mỗi công việc.
TIP Đối với khoảng thời gian dự kiến thực hiện hoạt động có thể sử dụng một công thức để tính thời gian dự kiến:
Trong đó:
PT là thời gian dài nhất hoạt động có thể diễn ra
ET là thời gian ước tính cho hoạt động thực hiện
OT là thời gian ít nhất khi hoạt động diễn ra
ST là thời gian dự kiến và sử dụng ST trên biểu đồ
2. Tại sao biểu đồ Gantt có ý nghĩa?
Biểu đồ Gantt là một cách đơn giản và dễ hiểu để giám sát tiến độ của các hoạt động khi thực hiện dự án/ chương trình
3. Biểu đồ Gantt hỗ trợ như thế nào?
Biểu đồ Gantt hỗ trợ bạn theo 2 cách chính. Đầu tiên, chúng cung cấp cho bạn hình ảnh trực quan về các hoạt động và thời gian thực hiện. Thứ hai, chúng cho phép bạn truyền đạt động tin bằng một cách dễ dàng với các đồng nghiệp khác trong nhóm về trạng thái của dự án/ chương trình.
4. Biểu đồ Gantt được áp dụng ở đâu?
Biểu đồ Gantt được sử dụng cho bất kỳ dự án/ chương trình để xác định tiến độ và làm rõ mục tiêu. Chúng giúp liên kết giữa mọi người/ nguồn lực trong dự án cùng với nhiều hoạt động trong đó.
5. Biểu đồ Gantt có ý nghĩa khi nào?
Khi bạn đang quản lý một chương trình/ dự án có nhiều hoạt động phức tạp, biểu đồ Gantt được khuyên dùng, đặc biệt nếu bạn yêu cầu lao động đầu vào từ các nguồn khác nhau để hoàn thành các công việc này. Nó giúp bạn nắm rõ được mối quan hệ giữa các công việc, ví dụ khi các công việc thực hiện liên tiếp nhau, hoặc có thể được thực hiện song song.
6. Biểu đồ Gantt đem lại lợi ích cho ai?
Biểu đồ Gantt có lợi cho cả những người quản lý chương trình/ dự án và tất cả những ai tham gia thực hiện công việc trong dự án
phuongnguyen- Tổng số bài gửi : 27
Join date : 17/02/2012
Trang 5 trong tổng số 10 trang • 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
Similar topics
» THẢO LUẬN MÔN HỌC
» Thảo luận Bài 8
» Thảo luận Bài 7
» Thảo luận về đề thi HK1
» [Đề thi giữa kỳ] I22B ( 8-4-2013 )
» Thảo luận Bài 8
» Thảo luận Bài 7
» Thảo luận về đề thi HK1
» [Đề thi giữa kỳ] I22B ( 8-4-2013 )
Trang 5 trong tổng số 10 trang
Permissions in this forum:
Bạn không có quyền trả lời bài viết