Ngày thi: 18/10/2011
Th i gian: ờ 15h -> 16h30
Đ a đi m: TC-412 ị ể Không s d ng tài li u ử ụ ệ
Đ 0.Vi t ch ng trình FileServer s d ng mô hình ề ế ươ ử ụ blocking làm nhi m v sau:ệ ụ
a Đ i k t n i và x lý l nh t client Các l nh có d ng “GET <TenFile>\n”.ợ ế ố ử ệ ừ ệ ạ
b Th c hi n đ c t th m c hi n t i t p tin <TenFile> và g i tr client theo đ nh d ng “OK\n<Kichthuocfile>\n\ự ệ ọ ừ ư ụ ệ ạ ệ ử ả ị ạ n<Noidungfile>”
c N u file không t n t i thì g i tr client xâu “FAILED\nFile not found\n\n”.ế ồ ạ ử ả
d Ch ng trình có th đáp ng đ c nhi u yêu c u t nhi u client đ ng th i.ươ ể ứ ượ ề ầ ừ ề ồ ờ
Đ 1.Vi t ch ng trình FileClient s d ng mô hình ề ế ươ ử ụ blocking làm nhi m v sau:ệ ụ
a K t n i đ n server có đ a ch /tên mi n đ c nh p t bàn phím.ế ố ế ị ỉ ề ượ ậ ừ
b Nh n tên file t bàn phím và g i yêu c u t i file đ n server, cú ph p có d ng “GET <TenFile>\n”.ậ ừ ử ầ ả ế ả ạ
c X lý k t qu t serverử ế ả ừ
i N u server báo l i, thì d li u g i tr có d ng “FAILED\n<ThongBaoLoi>\n\n”.ế ỗ ữ ệ ử ả ạ
ii N u server báo thành công thì d li u g i tr có d ng “OK\n<FileSize>\n<NoiDungFile>\n\n” Phânế ữ ệ ử ả ạ tích k t qu t server và ghi n i dung file nh n đ c ra đĩa.ế ả ừ ộ ậ ượ
d Ch ng trình có th t i nhi u file cùng m t lúc, t nhi u server.ươ ể ả ề ộ ừ ề
Đ 2.Vi t ch ng trình FileServer s d ng mô hình ề ế ươ ử ụ select làm nhi m v sau:ệ ụ
a Đ i k t n i và x lý l nh t client Các l nh có d ng “GET <TenFile>\n”.ợ ế ố ử ệ ừ ệ ạ
b Th c hi n đ c t th m c hi n t i t p tin <TenFile> và g i tr client theo đ nh d ng “OK\n<Kichthuocfile>\n\ự ệ ọ ừ ư ụ ệ ạ ệ ử ả ị ạ n<Noidungfile>”
c N u file không t n t i thì g i tr client xâu “FAILED\nFile not found\n\n”.ế ồ ạ ử ả
d Ch ng trình có th đáp ng đ c nhi u yêu c u t nhi u client đ ng th i.ươ ể ứ ượ ề ầ ừ ề ồ ờ
Đ 3.Vi t ch ng trình FileClient s d ng mô hình ề ế ươ ử ụ select làm nhi m v sau:ệ ụ
a K t n i đ n server có đ a ch /tên mi n đ c nh p t bàn phím.ế ố ế ị ỉ ề ượ ậ ừ
b Nh n tên file t bàn phím và g i yêu c u t i file đ n server, cú ph p có d ng “GET <TenFile>\n”.ậ ừ ử ầ ả ế ả ạ
c X lý k t qu t serverử ế ả ừ
i N u server báo l i, thì d li u g i tr có d ng “FAILED\n<ThongBaoLoi>\n\n”.ế ỗ ữ ệ ử ả ạ
ii N u server báo thành công thì d li u g i tr có d ng “OK\n<FileSize>\n<NoiDungFile>\n\n” Phânế ữ ệ ử ả ạ tích k t qu t server và ghi n i dung file nh n đ c ra đĩa.ế ả ừ ộ ậ ượ
d Ch ng trình có th t i nhi u file cùng m t lúc, t nhi u server.ươ ể ả ề ộ ừ ề
Đ 4.Vi t ch ng trình FileServer s d ng mô hình ề ế ươ ử ụ WSAEventSelect làm nhi m v sau:ệ ụ
e Đ i k t n i và x lý l nh t client Các l nh có d ng “GET <TenFile>\n”.ợ ế ố ử ệ ừ ệ ạ
f Th c hi n đ c t th m c hi n t i t p tin <TenFile> và g i tr client theo đ nh d ng “OK\n<Kichthuocfile>\n\ự ệ ọ ừ ư ụ ệ ạ ệ ử ả ị ạ n<Noidungfile>”
g N u file không t n t i thì g i tr client xâu “FAILED\nFile not found\n\n”.ế ồ ạ ử ả
h Ch ng trình có th đáp ng đ c nhi u yêu c u t nhi u client đ ng th i.ươ ể ứ ượ ề ầ ừ ề ồ ờ
Đ 5.Vi t ch ng trình FileClient s d ng mô hình ề ế ươ ử ụ WSAEventSelect làm nhi m v sau:ệ ụ
e K t n i đ n server có đ a ch /tên mi n đ c nh p t bàn phím.ế ố ế ị ỉ ề ượ ậ ừ
f Nh n tên file t bàn phím và g i yêu c u t i file đ n server, cú ph p có d ng “GET <TenFile>\n”.ậ ừ ử ầ ả ế ả ạ
g X lý k t qu t serverử ế ả ừ
iii N u server báo l i, thì d li u g i tr có d ng “FAILED\n<ThongBaoLoi>\n\n”.ế ỗ ữ ệ ử ả ạ
iv N u server báo thành công thì d li u g i tr có d ng “OK\n<FileSize>\n<NoiDungFile>\n\n” Phânế ữ ệ ử ả ạ tích k t qu t server và ghi n i dung file nh n đ c ra đĩa.ế ả ừ ộ ậ ượ
h Ch ng trình có th t i nhi u file cùng m t lúc, t nhi u server.ươ ể ả ề ộ ừ ề
Lưu ý: Đề thi của sinh viên = phần dư (số thứ tự / 6) Ví dụ: STT 15 => Làm đề 3