... nguyên.monitor <tên monitor >{<khai bao cac bien dung chung cho cactientrinh su dung monitor >condition <các biến điều kiện>;/ /cac phuong thuc doc quyen }Cấu trúc tiếntrình ... % 5);}monitor dp{enum {thinking, hungry, eating} state[5];// cac bien dung chung condition self[5]; / /cac bien dieu kien/ /cac pt doc quyen khi su dung monitorvoid pickup(int i); void putdown(int ... có giá trị 0. Cấu trúc chương trình sử dụng biến khóa để đồngbộ có dạng sau:while (TRUE) / /tien trinh có thể truy xuất miền găng nhiều lần{while (lock == 1); // waitlock = 1; critical-section...
... biến taikhoan .Mỗi tiếntrình muốn rút một khoản tiền tienrut từ tài khoản bằng đoạn mã sau:if (taikhoan - tienrut >=0) taikhoan = taikhoan - tienrut;else error(« khong the rut tien ! »);Giả ... nguyên dùng chung được gọi là miền găng Trong ví dụ trên, đoạn mã : if (taikhoan - tienrut >=0)taikhoan = taikhoan - tienrut;của mỗi tiếntrình tạo thành một miền găng.27Cấu trúc một chương ... nguyên.monitor <tên monitor >{<khai bao cac bien dung chung cho cactientrinh su dung monitor >condition <các biến điều kiện>;/ /cac phuong thuc doc quyen }Cấu trúc tiến trình...
... biến taikhoan .Mỗi tiếntrình muốn rút một khoản tiền tienrut từ tài khoản bằng đoạn mã sau:if (taikhoan - tienrut >=0) taikhoan = taikhoan - tienrut;else error(« khong the rut tien ! »);Giả ... nguyên dùng chung được gọi là miền găng Trong ví dụ trên, đoạn mã : if (taikhoan - tienrut >=0)taikhoan = taikhoan - tienrut;của mỗi tiếntrình tạo thành một miền găng.27non_critical_section();}Giải ... nguyên.monitor <tên monitor >{<khai bao cac bien dung chung cho cactientrinh su dung monitor >condition <các biến điều kiện>;/ /cac phuong thuc doc quyen }Cấu trúc tiến trình...
... các mâul section). Tn - tienrtaikhoan nếu có thể h trong miềut tien à P2 muốn rúan - tieử lý mà hệ thợc kết quả laikhoan đượý, nó sẽ khô=0)-vì đã ká trị ... dụng socket để liênlạc theo mô hình client-serveur. Trong mô hình này, server sử dụng lời gọi hệ thống listen và accept để nối kết với client, sau đó , client và server có thể trao đổi thông ... hai phương thức liênlạc trong thực tế : liênlạc thư tín (socket đóng vai trò bưu cục) vàliênlạc điện thoại (socket đóng vai trò tổng đài) . 1. Các cơ chế trao đổi thông tin : tình huống sử...
... thiết lập lock = truevoid Swap(boolean &a, boolean &b) { boolean temp = a; a = b; b = temp;}Biến chia sẻ (khởi tạo là false) bool lock; bool key;Process Pido { key ... process này.40Khoa KTMTNhận xétKhi S.value ≥ 0: số process có thể thực thi wait(S) mà không bị blocked = S.valueKhi S.value < 0: số process đang đợi trên S là S.valueAtomic và ... busy waiting sẽ rất thấp.44Khoa KTMTCaực baứi toaựn ủong bo (kinh ủieồn) Bounded Buffer ProblemReaders and Writers ProblemDining-Philosophers Problem2Khoa KTMTNội dungĐặt vấn đề...
... 3Khoa KTMT V c Lungũ ĐứCác Cơ Chế Liên LạcSignal : Không truy n c d li uề đượ ữ ệCác tín hi u c g i i b i?khi nh n thì x lý ra sao?ệ đượ ử đ ở ậ ử1Khoa KTMT V c Lungũ ĐứChương ... minhSend(destination,message):gởimộtthôngđiệpđếndestinationReceive(source,message):nhậnmộtthôngđiệptừsource4Khoa KTMT V c Lungũ ĐứCác Cơ Chế Liên LạcPipe Truyền dữ liệu không cấu trúc5Khoa KTMT V c Lungũ ĐứCác Cơ Chế Liên LạcShared MemoryMâu ... truy xuất => nhu cầu đồngbộ hoá13Khoa KTMT V c Lungũ ĐứGiải phápHai tiếntrình cần trao đổi thông tin về diễn tiến xử lýP1P2Job1;Job2;14Khoa KTMT V c Lungũ ĐứMô hình tổ chức phối...
... +++=−=+++=−=+++=)()()()()()(43213'''43212''4321'zkzkzkzkizkzkzkzkizkzkzkzkiiiiiiiiiiiiiACDCCCBCkEJQzyBCACDCCCkEJMzyCCBCACDCkzy (3.48) Từ các điều kiện biên vàcác phương trình (3-47), (3-48) ta ... Đến nay, đà có rất nhiều công trình lớn nghiên cứu về dao động công trình; trong đó các nhà khoa học của các nớc XHCN nh Liên Xô (xem [3],[26]) Ba Lan, Tiệp Khắc, CHDC Đức (xem [15], [12], ... cơ học kết cấu nói chung (xem chơng IV của tài liệu [3]). Trong khuôn khổ của tài liệu giáo khoa, giáo trình này sẽ chỉ đề cập đến những vấn đề rất cơ bản của lý thuyết dao động công trình;...
... vector độ dàilà mvà nKhởitao1. Gọi Work va Finish la hai vector độ dai la m va n. Khơi tạoWork := AvailableFinish[i] := false, i = 1,…, n2 Tìm i thỏa2. Tìm i thoa (a) Finish [i] = false(b) Needi ... banker (tt)á án:số process, m:số loại tài nguyênCác cấu trúc dữ liệuAvailable:vector độ dài maabeec o độ daAvailable[ j] = k loại tài nguyên Rjcó kinstance sẵn sàngMax:ma ... và C(7 instance)instance).Sơ đồ cấp phát trong hệ thống tại thời điểm T0Allocation Max Available NeedABC ABC ABC ABCP0010 753 332 743P1200 322 122P 3 0 2 9 0 2 6 0 0P23...
... wake-upSemaphoreMonitor11Semaphores wait(S):S.value ;if (S.value < 0) { add this process to S.L;bl kblock;}signal(S):signal(S): S.value++;if (S.value <= 0){if (S.value 0) {remove a process P from ... tra và cập nhật một biến trong một thao tác đơn (atomic)bool TestandSet(bool &target) {nShared data: bool lock = false;{bool rv = target;target = true;nProcess Piwhile (1){return ... process hoàn trả tài nguyênCáctácvuyêucầu (request) và hoàntrả (release) đềulà Cac tac vụ yeu cau (request) va hoan tra (release) đeu la system call. Ví dụ– request/release device– open/close...