[Đề thi giữa kì] I22B (15/4/2013) LẦN 2

Xem chủ đề cũ hơn Xem chủ đề mới hơn Go down

[Đề thi giữa kì] I22B (15/4/2013) LẦN 2

Bài gửi  DoThiHaDuc(I22B) on 15/4/2013, 23:30

Đề 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-Bound 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 Very Happy )
avatar
DoThiHaDuc(I22B)

Tổng số bài gửi : 25
Join date : 11/03/2013

Xem lý lịch thành viên

Về Đầu Trang Go down

câu 2 chức năng và giao diện sản xuất tiêu thụ

Bài gửi  TruongTranThanhTu(I22B) on 16/4/2013, 07:50

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



TruongTranThanhTu(I22B)

Tổng số bài gửi : 34
Join date : 11/03/2013

Xem lý lịch thành viên

Về Đầu Trang Go down

Re: [Đề thi giữa kì] I22B (15/4/2013) LẦN 2

Bài gửi  TruongTranThanhTu(I22B) on 16/4/2013, 07:55

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 Very Happy )

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

Xem lý lịch thành viên

Về Đầu Trang Go down

Re: [Đề thi giữa kì] I22B (15/4/2013) LẦN 2

Bài gửi  TruongTranThanhTu(I22B) on 16/4/2013, 07:57

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 Very Happy )

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

Xem lý lịch thành viên

Về Đầu Trang Go down

Re: [Đề thi giữa kì] I22B (15/4/2013) LẦN 2

Bài gửi  PhamTuanChinh(I22B) on 16/4/2013, 14:44

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
avatar
PhamTuanChinh(I22B)

Tổng số bài gửi : 15
Join date : 26/03/2013
Age : 27
Đến từ : Tp. Hồ Chí Minh

Xem lý lịch thành viên

Về Đầu Trang Go down

Re: [Đề thi giữa kì] I22B (15/4/2013) LẦN 2

Bài gửi  NguyenDuyLong(I22A) on 16/4/2013, 23:38

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!

NguyenDuyLong(I22A)

Tổng số bài gửi : 2
Join date : 22/03/2013

Xem lý lịch thành viên

Về Đầu Trang Go down

Re: Đề Thi Lần 2

Bài gửi  VoMinhDien(I22B) on 17/4/2013, 16:52

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.

VoMinhDien(I22B)

Tổng số bài gửi : 34
Join date : 11/03/2013

Xem lý lịch thành viên

Về Đầu Trang Go down

CÂU 1: (3đ) Giải thích và cho ví dụ làm rõ từng cặp khái niệm sau:

Bài gửi  phungvanduong24(I12A) on 18/4/2013, 06:38

*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 !

phungvanduong24(I12A)

Tổng số bài gửi : 61
Join date : 20/02/2012

Xem lý lịch thành viên

Về Đầu Trang Go down

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ụ

Bài gửi  phungvanduong24(I12A) on 18/4/2013, 06:48

* Đ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ụ).

phungvanduong24(I12A)

Tổng số bài gửi : 61
Join date : 20/02/2012

Xem lý lịch thành viên

Về Đầu Trang Go down

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

Bài gửi  phungvanduong24(I12A) on 18/4/2013, 06:56




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

Xem lý lịch thành viên

Về Đầu Trang Go down

Re: [Đề thi giữa kì] I22B (15/4/2013) LẦN 2

Bài gửi  TruongTranThanhTu(I22B) on 20/4/2013, 19:23

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

Xem lý lịch thành viên

Về Đầu Trang Go down

Re: [Đề thi giữa kì] I22B (15/4/2013) LẦN 2

Bài gửi  Sponsored content


Sponsored content


Về Đầu Trang Go down

Xem chủ đề cũ hơn Xem chủ đề mới hơn Về Đầu Trang

- Similar topics

 
Permissions in this forum:
Bạn không có quyền trả lời bài viết