Tin học
Bạn có muốn phản ứng với tin nhắn này? Vui lòng đăng ký diễn đàn trong một vài cú nhấp chuột hoặc đăng nhập để tiếp tục.

Câu hỏi lý thuyết và bài tập môn HĐH (các bạn xem thử nha)

Go down

Câu hỏi lý thuyết và bài tập môn HĐH (các bạn xem thử nha) Empty Câu hỏi lý thuyết và bài tập môn HĐH (các bạn xem thử nha)

Bài gửi  lamtienkhoa(102c) 27/4/2012, 09:45

Câu 1.
* Phân tích nguyên lý tập luồng:
- Tiến trình cha tạo lập sẵn một tập luồng khi khởi động.
- Các luồng trong tập luồng luôn sẵn sàng chờ công việc.
- Khi tiến trình cha (ví dụ Web Server) nhận thêm một yêu cầu, một luồng được đánh thức
và đưa vào vận hành.
- Phục vụ xong, luồng được đưa trả về tập luồng.
- Nếu số yêu cầu lớn hơn số luồng trong tập, tiến trình cha chờ đến khi có luồng được giải phóng.

* Ví dụ ứng dụng sử dụng tập luồng như: bài tóan sản xuất và tiêu thụ, bài tóan nhà hiền triết cùng ăn,...

* Tạo tập luồng gồm 100 luồng nhà sản xuất.
for (i=0; i<100; i++)
ProducerHandle[i]=CreateThread(0,0, (LPTHREAD_START_ROUTINE)Producer, (void *) i, 0,
&roducerHandleID);
Câu 2.
* Cách tạo winsork
Vào Toolbox -> Right click -> chọn Componens -> chọn Microsoft Winsok Control 6.0 -> khi đó tạo xong xuất hiện biểu tượng winsork, ta chọn và kéo vào form để khởi tạo.
* Các câu lệnh dùng trong ứng dụng chat
RemoteHost = "LocalHost" ‘ Tên Máy hay IP
RemotePort = 1001 ‘ Số hiệu port kết nối
Bind 1002 ' Số hiệu port của máy cục bộ
SendData ' phương thức dùng để gửi dữ liệu
GetData ' Phương thức dùng để lấy dữ liệu về.

Câu 3. ý nghĩa câu lệnh code

#define BUFFER_SIZE 10
-> định nghĩa kích thước bộ đểm gồm 30 phần tử.
HANDLE semEmpty, semFull;
-> Tao Hai đèn hiệu trong đó, sememty cho biết số vùng trống của bộ đểm,
giá trị của nó chính là số vùng trống của bộ đệm.
Còn semfull cho biết số sản phẩm có trong bộ đệm. Giá trí của semfull chính là
số sản phẩm trong bộ đệm.
semEmpty=CreateSemaphore(0, BUFFER_SIZE, BUFFER_SIZE, 0);
-> Tạo đèn hiệu semEmty, trong đó Buffer_Size đầu là Buffer ban đầu,
còn Buffer_Size thứ hai là số Buffer tối đa.
semFull=CreateSemaphore(0, 0, BUFFER_SIZE, 0);
-> Tạo đèn hiệu semFull.
WaitForSingleObject(semFull, INFINITE);
-> Chờ cho đến khi có vùng trống
printf("SemFull Handle = %d",semfull);
WaitForSingleObject(semFull, INFINITE);
printf("Semempty Handle = %d",semempty);

lamtienkhoa(102c)

Tổng số bài gửi : 43
Join date : 28/02/2011

Về Đầu Trang Go down

Về Đầu Trang

- Similar topics

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