[Đề thi giữa kì] I22B (15/4/2013) LẦN 2
+2
TruongTranThanhTu(I22B)
DoThiHaDuc(I22B)
6 posters
Trang 1 trong tổng số 1 trang
[Đề thi giữa kì] I22B (15/4/2013) LẦN 2
Đề thi giữa kì lần 2 cho các bạn vắng mặt buổi thi lần 1 với 3 câu hỏi sau:
CÂU 1: (3đ) Giải thích và cho ví dụ làm rõ từng cặp khái niệm sau:
CÂU 2: (1đ) Giới thiệu chức năng và giao diện của ứng dụng:
CÂU 3: (2đ) So sánh chức năng 2 đoạn mã sau trong ứng dụng Sản xuất - Tiêu thụ:
Các bạn có câu trả lời tại đây cho dễ tham khảo nhé! ( Hôm nay lớp chỉ có 5 bạn thi )
CÂU 1: (3đ) Giải thích và cho ví dụ làm rõ từng cặp khái niệm sau:
CPU-Bound Process -- I/O-Bound Process
Preemptive Scheduling -- Non-Preeptive Scheduling
MQS -- MFQS
Preemptive Scheduling -- Non-Preeptive Scheduling
MQS -- MFQS
CÂU 2: (1đ) Giới thiệu chức năng và giao diện của ứng dụng:
SanXuatTieuThu C#.NET 2005
CÂU 3: (2đ) So sánh chức năng 2 đoạn mã sau trong ứng dụng Sản xuất - Tiêu thụ:
Sleep(1); ShowBuffer(); | EnterCriticalSection(&critSec); ShowBuffer(); LeaveCriticalSection(&critSec); |
Các bạn có câu trả lời tại đây cho dễ tham khảo nhé! ( Hôm nay lớp chỉ có 5 bạn thi )
DoThiHaDuc(I22B)- Tổng số bài gửi : 25
Join date : 11/03/2013
câu 2 chức năng và giao diện sản xuất tiêu thụ
chức năng : quá trình sản xuất tạo ra sản phẩm để tiêu thụ sử dụng, lấy sản phẩm theo đúng thứ tự, không lấy sản phẩm khi buffer trống, không truyền sản phẩm khi buffer đầy
giao diện: gồm có 4 nút start, suspend, resume, producer và form bufferstate
khi nhấn nút start sẽ hiện ra form bufferstate, form bufferstate hiển thị các giá trị in và out
khi nhấn nút suspend chương trình sẽ tạm dừng
khi nhấn nút resume chương trình sẽ tiếp tục thực hiện
giao diện: gồm có 4 nút start, suspend, resume, producer và form bufferstate
khi nhấn nút start sẽ hiện ra form bufferstate, form bufferstate hiển thị các giá trị in và out
khi nhấn nút suspend chương trình sẽ tạm dừng
khi nhấn nút resume chương trình sẽ tiếp tục thực hiện
TruongTranThanhTu(I22B)- Tổng số bài gửi : 34
Join date : 11/03/2013
Re: [Đề thi giữa kì] I22B (15/4/2013) LẦN 2
DoThiHaDuc(I22B) đã viết:Đề thi giữa kì lần 2 cho các bạn vắng mặt buổi thi lần 1 với 3 câu hỏi sau:
CÂU 1: (3đ) Giải thích và cho ví dụ làm rõ từng cặp khái niệm sau:CPU-Round Process -- I/O-Bound Process
Preemptive Scheduling -- Non-Preeptive Scheduling
MQS -- MFQS
CÂU 2: (1đ) Giới thiệu chức năng và giao diện của ứng dụng:SanXuatTieuThu C#.NET 2005
CÂU 3: (2đ) So sánh chức năng 2 đoạn mã sau trong ứng dụng Sản xuất - Tiêu thụ:
Sleep(1);
ShowBuffer();EnterCriticalSection(&critSec);
ShowBuffer();
LeaveCriticalSection(&critSec);
Các bạn có câu trả lời tại đây cho dễ tham khảo nhé! ( Hôm nay lớp chỉ có 5 bạn thi )
câu 3:
đoạn code
Sleep(1);
ShowBuffer();
đoạn này có nghĩa là ngưng 1s sau đó in ra kết quả của buffer, làm như thế chúng ta không xác định chính xác chờ trong bao lâu, nếu sau 1s mà cpu vẫn chưa xử lý xong mà hiện ra kết quả thì sẽ sai
đoạn code
EnterCriticalSection(&critSec);
ShowBuffer();
LeaveCriticalSection(&critSec);
đoạn code này không ước lượng thời gian ngưng trước khi showbuffer, giải thuật này an toàn hơn dùng Sleep(time)
TruongTranThanhTu(I22B)- Tổng số bài gửi : 34
Join date : 11/03/2013
Re: [Đề thi giữa kì] I22B (15/4/2013) LẦN 2
DoThiHaDuc(I22B) đã viết:Đề thi giữa kì lần 2 cho các bạn vắng mặt buổi thi lần 1 với 3 câu hỏi sau:
CÂU 1: (3đ) Giải thích và cho ví dụ làm rõ từng cặp khái niệm sau:CPU-Round Process -- I/O-Bound Process
Preemptive Scheduling -- Non-Preeptive Scheduling
MQS -- MFQS
CÂU 2: (1đ) Giới thiệu chức năng và giao diện của ứng dụng:SanXuatTieuThu C#.NET 2005
CÂU 3: (2đ) So sánh chức năng 2 đoạn mã sau trong ứng dụng Sản xuất - Tiêu thụ:
Sleep(1);
ShowBuffer();EnterCriticalSection(&critSec);
ShowBuffer();
LeaveCriticalSection(&critSec);
Các bạn có câu trả lời tại đây cho dễ tham khảo nhé! ( Hôm nay lớp chỉ có 5 bạn thi )
câu 1 thì mình không biết CPU-Bound Process -- I/O-Bound Process, mong thầy và các bạn góp ý thêm
TruongTranThanhTu(I22B)- Tổng số bài gửi : 34
Join date : 11/03/2013
Re: [Đề thi giữa kì] I22B (15/4/2013) LẦN 2
Câu 1 mình cũng ko làm được 2 ý đầu. Câu 3 thì giải thích rồi mà ko biết sao. Câu 2 chưa làm. Thầy cho dễ mà khó, chắc phải ôn kỹ mới thi được diểm cao quá.hi
PhamTuanChinh(I22B)- Tổng số bài gửi : 15
Join date : 26/03/2013
Age : 35
Đến từ : Tp. Hồ Chí Minh
Re: [Đề thi giữa kì] I22B (15/4/2013) LẦN 2
Mình I22A chuẩn bị thi lần 2 tới phải ráng ôn tập kỹ mới được.
Cám ơn bạn đã đưa đề lên!
Cám ơn bạn đã đưa đề lên!
NguyenDuyLong(I22A)- Tổng số bài gửi : 2
Join date : 22/03/2013
Re: Đề Thi Lần 2
CÂU 3: (2đ) So sánh chức năng 2 đoạn mã sau trong ứng dụng Sản xuất - Tiêu thụ:
Sleep(1);
ShowBuffer(); EnterCriticalSection(&critSec);
ShowBuffer();
LeaveCriticalSection(&critSec);
Giống nhau: Đều là đồng bộ hóa tiến trình trong bài toán sản xuất tiêu thụ
Khác nhau là:
Sleep(1); // nhằm mục đích đồng bộ hóa các tiến trình, chờ một khoảng thời gian 1s để khi show buffer ra ngoài màn hình biến “in” đã tăng lên 1 => đảm bảo tính đúng đắn của dữ liệu. Nếu không có sleep(1), tại thời điểm đó biến in vẫn còn lưu giá trị củ. Tuy nhiên, nếu tiến trình trễ 1s thì biến in tăng lên thì giá trị vẫn bị lỗi
EnterCriticalSection(&critSec);
ShowBuffer();
LeaveCriticalSection(&critSec);
//Đoạn tương tranh
// Bảo vệ đoạn tương tranh bằng phương pháp loại trừ lẫn nhau: mỗi thời điểm chỉ có một tiến trình nằm trong đoạn tương tranh, đảm bảo tiến trình đang truy cập tài nguyên (showBuffer) thì tiến trình khác không được truy cập.
Sleep(1);
ShowBuffer(); EnterCriticalSection(&critSec);
ShowBuffer();
LeaveCriticalSection(&critSec);
Giống nhau: Đều là đồng bộ hóa tiến trình trong bài toán sản xuất tiêu thụ
Khác nhau là:
Sleep(1); // nhằm mục đích đồng bộ hóa các tiến trình, chờ một khoảng thời gian 1s để khi show buffer ra ngoài màn hình biến “in” đã tăng lên 1 => đảm bảo tính đúng đắn của dữ liệu. Nếu không có sleep(1), tại thời điểm đó biến in vẫn còn lưu giá trị củ. Tuy nhiên, nếu tiến trình trễ 1s thì biến in tăng lên thì giá trị vẫn bị lỗi
EnterCriticalSection(&critSec);
ShowBuffer();
LeaveCriticalSection(&critSec);
//Đoạn tương tranh
// Bảo vệ đoạn tương tranh bằng phương pháp loại trừ lẫn nhau: mỗi thời điểm chỉ có một tiến trình nằm trong đoạn tương tranh, đảm bảo tiến trình đang truy cập tài nguyên (showBuffer) thì tiến trình khác không được truy cập.
VoMinhDien(I22B)- Tổng số bài gửi : 34
Join date : 11/03/2013
CÂU 1: (3đ) Giải thích và cho ví dụ làm rõ từng cặp khái niệm sau:
*CPU-Bound Process -- I/O-Bound Process
- CPU-bound process có thời gian sử dụng CPU nhiều hơn thời gian sử dụng I/O
- I/O-bound process dùng phần lớn thời gian để đợi I/O
*Preemptive Scheduling -- non-Preemptive Scheduling
Preemptive Scheduling:hệ điều hành không thể tước quyền sử dụng CPU của tiến trình đang dùng được.CPU được được trả cho HĐH khi tiến trình ko cần đến nữa.
non-Preemptive Scheduling:HĐH có thể tiếm quyền sử dụng CPU của tiến trình,mặc dù nó vẫn cần CPU.CPU sẽ được cấp sau.
VD:
Thầy gọi bạn A lên bảng làm bài 1 trong vòng 5 phút.hết 5 phút bạn A vẫn làm chưa xong.nhưng bạn A vẫn phải về chỗ.nhường bảng lại cho bạn B,khi nào bảng trống thì bạn A lại được tiếp tục làm bài của mình.
* MQS - MFQS
- MQS:Hàng chờ ready được phân cấp thành nhiều mức.các mức có độ ưu tiên khác nhau.tiến trình ở mức cao sẽ được làm trước.khi xong hết các tiến trình ở mức trên thì mới xuống mức dưới.
- MFQS:giống MQS nhưng được điều tiết.có thể chuyển những tiến trình ở mức này qua mức khác.
VD:
một quầy vé có 3 cửa.
- cửa 1 là bán cho thân nhân của nhân viên phòng vé và công chức nhà nước.(cửa này có 1 người)
- cửa 2 là bán cho người khuyết tật và phụ nữ mang thai.(của này có 3 người)
- cửa 3 là bán cho người dân bình thường.(cửa này có 4 người).
Theo MQS:là bán hết khách hàng ở cửa 1,rồi mới qua cửa 2,rồi mới bán cho cửa thứ 3.
Theo MFQS:có thể chuyển 1 người từ cửa thứ 3 sang cửa thứ 1.
có thể chuyển 1 người từ cửa thứ 2 sang cửa thứ 1.
Admin
Trình bày như trên về "Preemptive Scheduling -- non-Preemptive Scheduling" là Ngược lại so với Lý thuyết !
- CPU-bound process có thời gian sử dụng CPU nhiều hơn thời gian sử dụng I/O
- I/O-bound process dùng phần lớn thời gian để đợi I/O
*Preemptive Scheduling -- non-Preemptive Scheduling
Preemptive Scheduling:hệ điều hành không thể tước quyền sử dụng CPU của tiến trình đang dùng được.CPU được được trả cho HĐH khi tiến trình ko cần đến nữa.
non-Preemptive Scheduling:HĐH có thể tiếm quyền sử dụng CPU của tiến trình,mặc dù nó vẫn cần CPU.CPU sẽ được cấp sau.
VD:
Thầy gọi bạn A lên bảng làm bài 1 trong vòng 5 phút.hết 5 phút bạn A vẫn làm chưa xong.nhưng bạn A vẫn phải về chỗ.nhường bảng lại cho bạn B,khi nào bảng trống thì bạn A lại được tiếp tục làm bài của mình.
* MQS - MFQS
- MQS:Hàng chờ ready được phân cấp thành nhiều mức.các mức có độ ưu tiên khác nhau.tiến trình ở mức cao sẽ được làm trước.khi xong hết các tiến trình ở mức trên thì mới xuống mức dưới.
- MFQS:giống MQS nhưng được điều tiết.có thể chuyển những tiến trình ở mức này qua mức khác.
VD:
một quầy vé có 3 cửa.
- cửa 1 là bán cho thân nhân của nhân viên phòng vé và công chức nhà nước.(cửa này có 1 người)
- cửa 2 là bán cho người khuyết tật và phụ nữ mang thai.(của này có 3 người)
- cửa 3 là bán cho người dân bình thường.(cửa này có 4 người).
Theo MQS:là bán hết khách hàng ở cửa 1,rồi mới qua cửa 2,rồi mới bán cho cửa thứ 3.
Theo MFQS:có thể chuyển 1 người từ cửa thứ 3 sang cửa thứ 1.
có thể chuyển 1 người từ cửa thứ 2 sang cửa thứ 1.
Admin
Trình bày như trên về "Preemptive Scheduling -- non-Preemptive Scheduling" là Ngược lại so với Lý thuyết !
phungvanduong24(I12A)- Tổng số bài gửi : 61
Join date : 20/02/2012
CÂU 3: (2đ) So sánh chức năng 2 đoạn mã sau trong ứng dụng Sản xuất - Tiêu thụ
* Đoạn mã bên trái :
sleep(); Tiến trình rơi vào trạng thái ngủ
showBuffer(); T Đưa vào hàng đợi.
=> Tiết kiệm tài nguyên hệ thống
* Đoạn mã bên phải :
Với đoạn mã 2 bên phải, ShowBuffer() nằm trong Đoạn Tương tranh, do đó đảm bảo được Tính Loại trừ tương hỗ (hay Loại trừ lẫn nhau), nghĩa là Luồng chính (chứa mấy lệnh trên) và các Luồng Sản xuất-Tiêu thụ loại trừ lẫn nhau trong công việc (cặp lệnh EnterCriticalSelection(&critSec)-LeaveCriticalSelection(&critSec) dùng cả trong hàm Producer và Consumer): Đang Sản xuất hay Tiêu thụ thì không được ShowBuffer() và ngược lại ! (tất nhiên: Đang Sản xuất thì không được Tiêu thụ, Đang Tiêu thụ thì không được Sản xuất, Mỗi thời điểm chỉ cho phép 1 Luồng Sản xuất hay 1 Luồng Tiêu thụ).
sleep(); Tiến trình rơi vào trạng thái ngủ
showBuffer(); T Đưa vào hàng đợi.
=> Tiết kiệm tài nguyên hệ thống
* Đoạn mã bên phải :
Với đoạn mã 2 bên phải, ShowBuffer() nằm trong Đoạn Tương tranh, do đó đảm bảo được Tính Loại trừ tương hỗ (hay Loại trừ lẫn nhau), nghĩa là Luồng chính (chứa mấy lệnh trên) và các Luồng Sản xuất-Tiêu thụ loại trừ lẫn nhau trong công việc (cặp lệnh EnterCriticalSelection(&critSec)-LeaveCriticalSelection(&critSec) dùng cả trong hàm Producer và Consumer): Đang Sản xuất hay Tiêu thụ thì không được ShowBuffer() và ngược lại ! (tất nhiên: Đang Sản xuất thì không được Tiêu thụ, Đang Tiêu thụ thì không được Sản xuất, Mỗi thời điểm chỉ cho phép 1 Luồng Sản xuất hay 1 Luồng Tiêu thụ).
phungvanduong24(I12A)- Tổng số bài gửi : 61
Join date : 20/02/2012
CÂU 2: (1đ) Giới thiệu chức năng và giao diện của ứng dụng : SanXuatTieuThu C#.NET 2005
form sản xuất tiêu thụ
gồm có 4 nút:
start, suspend, resume, producer 1
khi nhấn nút start thì sẽ hiện lên 1 form bufferstate
form bufferstate cho ta biết trạng thái in và out của các tiến trình.
chức năng nút suspend hệ thống tạm dừng hoạt động.
chức năng nút resume hệ thống hoạt động lại bình thường
phungvanduong24(I12A)- Tổng số bài gửi : 61
Join date : 20/02/2012
Re: [Đề thi giữa kì] I22B (15/4/2013) LẦN 2
phungvanduong24(I12A) đã viết:*CPU-Bound Process -- I/O-Bound Process
- CPU-bound process có thời gian sử dụng CPU nhiều hơn thời gian sử dụng I/O
- I/O-bound process dùng phần lớn thời gian để đợi I/O
*Preemptive Scheduling -- non-Preemptive Scheduling
Preemptive Scheduling:hệ điều hành không thể tước quyền sử dụng CPU của tiến trình đang dùng được.CPU được được trả cho HĐH khi tiến trình ko cần đến nữa.
non-Preemptive Scheduling:HĐH có thể tiếm quyền sử dụng CPU của tiến trình,mặc dù nó vẫn cần CPU.CPU sẽ được cấp sau.
VD:
Thầy gọi bạn A lên bảng làm bài 1 trong vòng 5 phút.hết 5 phút bạn A vẫn làm chưa xong.nhưng bạn A vẫn phải về chỗ.nhường bảng lại cho bạn B,khi nào bảng trống thì bạn A lại được tiếp tục làm bài của mình.
* MQS - MFQS
- MQS:Hàng chờ ready được phân cấp thành nhiều mức.các mức có độ ưu tiên khác nhau.tiến trình ở mức cao sẽ được làm trước.khi xong hết các tiến trình ở mức trên thì mới xuống mức dưới.
- MFQS:giống MQS nhưng được điều tiết.có thể chuyển những tiến trình ở mức này qua mức khác.
VD:
một quầy vé có 3 cửa.
- cửa 1 là bán cho thân nhân của nhân viên phòng vé và công chức nhà nước.(cửa này có 1 người)
- cửa 2 là bán cho người khuyết tật và phụ nữ mang thai.(của này có 3 người)
- cửa 3 là bán cho người dân bình thường.(cửa này có 4 người).
Theo MQS:là bán hết khách hàng ở cửa 1,rồi mới qua cửa 2,rồi mới bán cho cửa thứ 3.
Theo MFQS:có thể chuyển 1 người từ cửa thứ 3 sang cửa thứ 1.
có thể chuyển 1 người từ cửa thứ 2 sang cửa thứ 1.
Admin
Trình bày như trên về "Preemptive Scheduling -- non-Preemptive Scheduling" là Ngược lại so với Lý thuyết !
Preemptive Scheduling -- non-Preemptive Scheduling
Preemptive Scheduling : HĐH có thể tước quyền sử dụng CPU của tiến trình đang vận hành, mặc dù nó vẫn cần CPU.
non-Preemptive Scheduling: HĐH không thể tước quyền sử dụng CPU của tiến trình.
TruongTranThanhTu(I22B)- Tổng số bài gửi : 34
Join date : 11/03/2013
Similar topics
» [Đề thi giữa kỳ] I22B ( 8-4-2013 )
» Điểm Quá trình I22B (điều chỉnh 1-7-2013)
» [Đề thi giữa kỳ] I22A ( 6-4-2013 )
» Thảo luận Bài 6
» Điểm thi Cuối kỳ I22B
» Điểm Quá trình I22B (điều chỉnh 1-7-2013)
» [Đề thi giữa kỳ] I22A ( 6-4-2013 )
» Thảo luận Bài 6
» Điểm thi Cuối kỳ I22B
Trang 1 trong tổng số 1 trang
Permissions in this forum:
Bạn không có quyền trả lời bài viết