Thi Kiểm tra Giữa kỳ Lần 2

Trang 1 trong tổng số 2 trang 1, 2  Next

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

Thi Kiểm tra Giữa kỳ Lần 2

Bài gửi  Admin on 19/4/2012, 08:22

Thảo luận Đề thi Kiểm tra Giữa kỳ Lần 2 !

Admin
Admin

Tổng số bài gửi : 294
Join date : 18/02/2009

Xem lý lịch thành viên http://hedieuhanh.forumvi.net

Về Đầu Trang Go down

giới thiệu chức năng và giao diện của ứng dụng: UDPclient C#.NET 2005

Bài gửi  luthioanh-I12A on 19/4/2012, 08:43

- Chức năng: gởi nhận thông điệp giữa các tiến trình
- Giao diện: có 4 textbox: gởi, nhận, địa chỉ máy tính cần kết nối, port kết nối. 1 nút gởi dữ liệu, khi nhận dữ liệu thì dữ liệu đó sẽ hiện lên trong textbox nhận, và có tooltipball hiện lên nội dung vừa nhận. khi muốn gởi thông điệp thì nhập nội dung vào ô gởi và nhấn nút gửi
cách mở ứng dụng: vào thư mục: ...\HeDieuHanh\Tu hoc\Lap trinh Da luong voi .NET\UDPClient C# .NET 2005 (Remote)\WindowsApplication1 mở file udpPeerClient.sln rồi dịch lại chương trình (F5 hoặc bấm nút mũi tên màu xanh).
chương trình sử dụng using System.Net.Sockets để lập trình cho giao tiếp sockets.
sử dụng lớp udpClient (cung cấp phương thức cho việc gởi và nhận thông điệp không có kết nối UDP) và lớp IPEndPoint (đối tượng sẽ cho phép chúng ta đọc datagrams gửi từ bất kỳ nguồn nào) của lớp net.sockets
udpClient.Send(sendBytes, sendBytes.Length, txtRemoteHost.Text, Convert.ToInt16(txtRemotePort.Text)); // dùng để gởi thông điêp đến cổng định sẵn
RemoteIpEndPoint = new IPEndPoint(IPAddress.Any, 0);// bị khóa cho đến khi có dữ liệu từ 1 địa chỉ bất kỳ gởi đến
SetText(returnData, RemoteIpEndPoint.Address.ToString()); // Dữ liệu nhận được và Địa chỉ IP nơi gửi

Mong thầy và các bạn góp ý thêm!

luthioanh-I12A

Tổng số bài gửi : 29
Join date : 17/02/2012
Age : 32

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

Về Đầu Trang Go down

Re: Thi Kiểm tra Giữa kỳ Lần 2

Bài gửi  trinhvanminh_11h1010077 on 19/4/2012, 08:58

RÚT KINH NGHIỆM THI LẦN 1, LẦN 2 BÁM SÁT DIỄN ĐÀN LÀM CŨNG ĐƯỢC 2 CÂU VÀ HẾT GIỜ. Sad CÓ LẼ VIẾT DÀI QUÁ Sad LẦN SAU CHẮC PHẢI VIẾT Ý CHÍNH, NGẮN GỌN MỚI ĐƯỢC.
TỪ GIỜ ĐẾN KHI THI HẾT MÔN PHẢI TÍCH CÓP THÊM KIẾN THỨC MỚI ĐƯỢC. Surprised
avatar
trinhvanminh_11h1010077

Tổng số bài gửi : 90
Join date : 15/02/2012
Age : 32
Đến từ : tphcm

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

Về Đầu Trang Go down

Câu 1: Giải Thích và cho ví dụ minh hoa các khái niem sau:

Bài gửi  BuiPhamAnBinh(I12A) on 19/4/2012, 09:01

Thread: (luồng ) là một tiến trình nhung khác với tiến trình truyền thống luồng là một tiến trình nhẹ hay nói cách khác luồng là một bộ phận của tiến trình truyền thống
Còn tiến trình truyền thống là một tiến trình nặng((HWP - Heavy Weight Process)
bên trong nó có nhiều luồng và một luồng chính

vd: Lớp TinI12A là một tiến trình nặng bên trong lớp tinI12a bao gồm nhiều sinh viên của lớp tinI12a ( là các luồng ) thầy dóng vai trò là luồng chính.

BuiPhamAnBinh(I12A)

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

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

Về Đầu Trang Go down

Re: Thi Kiểm tra Giữa kỳ Lần 2

Bài gửi  ngothihanHC11TH2A on 19/4/2012, 09:10

Câu 1:
-Process: là tiến trình chạy dưới sự quản lý của HDH.
Vd: Các bạn sinh viên đang làm bài kiểm tra(tiến trình), dưới sự quản lý của thầy giáo(Hệ điều hành).
-Theard: là luồng, đơn vị cơ bản sử dụng CPU.
Vd: mỗi bạn học sinh trong lớp là mỗi luồng, thầy giáo là luồng chính.
-Process Pool:là 1 tập luồng luôn sẵn sàng chờ công việc
Vd: khi nộp bài kiểm tra trên lớp, mỗi bạn sinh viên(mỗi luồng trong 1 tập luồng) sẽ sẵn sàng lên nộp bài khi được thầy gọi tên(Process).
-Mutual Exclusion:là tính loại trừ lẫn nhau hay loại trừ tương hỗ, tức là tại mỗi thời điểm chỉ có 1 Process được phép truy cập và sử dụng tài nguyên.
Vd: viết 1 đơn xin việc, nếu có 2 người(process) cùng sửa 1 nội dung tại 1 thời điểm sẽ gây ra sai sót trong dơn xin việc đó.
Hoặc 1 ví dụ khác: khi thầy giáo gọi sinh viên lên bảng làm bài tập, tại 1 thời điểm chỉ có 1 bạn được phép lên làm, nếu có 2 bạn cùng lên làm bài 1 lúc thì sẽ dẫn sai sót.
-Semaphore: là đèn hiệu với 2 tác nguyên là Wait, Signal.
Vd: Tại ngã tư, khi gặp đèn đỏ, tất cả mọi người đều phải dừng lại(wait), sau khi nhận được tín hiệu của cảnh sát giao thông hay thông báo đèn xanh (Signal) thì mới được đi tiếp.

Mong thầy và các bạn góp ý!


ngothihanHC11TH2A

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

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

Về Đầu Trang Go down

Re: Thi Kiểm tra Giữa kỳ Lần 2

Bài gửi  nguyenthanhphongHC11TH2A on 19/4/2012, 09:25

ngothihanHC11TH2A đã viết:Câu 1:
-Process: là tiến trình chạy dưới sự quản lý của HDH.
Vd: Các bạn sinh viên đang làm bài kiểm tra(tiến trình), dưới sự quản lý của thầy giáo(Hệ điều hành).
-Theard: là luồng, đơn vị cơ bản sử dụng CPU.
Vd: mỗi bạn học sinh trong lớp là mỗi luồng, thầy giáo là luồng chính.
-Process Pool:là 1 tập luồng luôn sẵn sàng chờ công việc
Vd: khi nộp bài kiểm tra trên lớp, mỗi bạn sinh viên(mỗi luồng trong 1 tập luồng) sẽ sẵn sàng lên nộp bài khi được thầy gọi tên(Process).
-Mutual Exclusion:là tính loại trừ lẫn nhau hay loại trừ tương hỗ, tức là tại mỗi thời điểm chỉ có 1 Process được phép truy cập và sử dụng tài nguyên.
Vd: viết 1 đơn xin việc, nếu có 2 người(process) cùng sửa 1 nội dung tại 1 thời điểm sẽ gây ra sai sót trong dơn xin việc đó.
Hoặc 1 ví dụ khác: khi thầy giáo gọi sinh viên lên bảng làm bài tập, tại 1 thời điểm chỉ có 1 bạn được phép lên làm, nếu có 2 bạn cùng lên làm bài 1 lúc thì sẽ dẫn sai sót.
-Semaphore: là đèn hiệu với 2 tác nguyên là Wait, Signal.
Vd: Tại ngã tư, khi gặp đèn đỏ, tất cả mọi người đều phải dừng lại(wait), sau khi nhận được tín hiệu của cảnh sát giao thông hay thông báo đèn xanh (Signal) thì mới được đi tiếp.

Mong thầy và các bạn góp ý!


Theo mình thì về ví dụ của Semaphore là:
Vd: xe qua cầu yếu, thì phải lập trình công việc để tại mỗi thời điểm chỉ có 1 xe được phép qua cầu. khi gặp tín hiệu đèn đỏ thì xe B phải chờ(Wait) cho xe A qua cầu trước sau đó có tín hiệu đèn xanh tức là Signal thì xe B mới được qua.

nguyenthanhphongHC11TH2A

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

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

Về Đầu Trang Go down

Câu 3:

Bài gửi  luthioanh-I12A on 19/4/2012, 09:30

IntPtr hApp = FindWindow(null, "Speaking VN");
IntPtr hFrame = FindWindowEx(hApp, IntPtr.Zero, "AfxFrameOrView42s", "");
IntPtr hRichEditBox = FindWindowEx(hFrame, IntPtr.Zero, "RICHEDIT", "");
SendMessageW(hRichEditBox, WM_SETTEXT, 0, (int)Marshal.StringToHGlobalUni(strTCVN3));

Giải:
IntPtr hApp = FindWindow(null, "Speaking VN"); //Tìm cửa sổ có tiêu đề là Speaking VN rồi gán cho biến hApp (cửa sổ chính của chương trình)
IntPtr hFrame = FindWindowEx(hApp, IntPtr.Zero, "AfxFrameOrView42s", ""); //Tìm cửa sổ mở rộng của cửa sổ cha với lớp của cửa sổ là AfxFrameOrView42s và tiêu đề của sổ là ""
IntPtr hRichEditBox = FindWindowEx(hFrame, IntPtr.Zero, "RICHEDIT", ""); // Tiếp tục tìm cửa sổ mở rộng của cửa sổ cha với lớp của cửa sổ là RICHEDIT và tiêu đề của cửa sổ là ""
SendMessageW(hRichEditBox, WM_SETTEXT, 0, (int)Marshal.StringToHGlobalUni(strTCVN3)); // gửi đoạn văn bản strTCVN3 đã được chuyển sang kiểu Marshal đến cửa sổ RICHEDIT.

Bài này mình mới tham khảo của các bạn khóa trên nên Post lên đây để các bạn tham khảo chứ bữa thi mình làm không tốt như vậy.....hjxhjx

luthioanh-I12A

Tổng số bài gửi : 29
Join date : 17/02/2012
Age : 32

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

Về Đầu Trang Go down

Re: Thi Kiểm tra Giữa kỳ Lần 2

Bài gửi  ngothihanHC11TH2A on 19/4/2012, 09:33

luthioanh-I12A đã viết:IntPtr hApp = FindWindow(null, "Speaking VN");
IntPtr hFrame = FindWindowEx(hApp, IntPtr.Zero, "AfxFrameOrView42s", "");
IntPtr hRichEditBox = FindWindowEx(hFrame, IntPtr.Zero, "RICHEDIT", "");
SendMessageW(hRichEditBox, WM_SETTEXT, 0, (int)Marshal.StringToHGlobalUni(strTCVN3));

Giải:
IntPtr hApp = FindWindow(null, "Speaking VN"); //Tìm cửa sổ có tiêu đề là Speaking VN rồi gán cho biến hApp (cửa sổ chính của chương trình)
IntPtr hFrame = FindWindowEx(hApp, IntPtr.Zero, "AfxFrameOrView42s", ""); //Tìm cửa sổ mở rộng của cửa sổ cha với lớp của cửa sổ là AfxFrameOrView42s và tiêu đề của sổ là ""
IntPtr hRichEditBox = FindWindowEx(hFrame, IntPtr.Zero, "RICHEDIT", ""); // Tiếp tục tìm cửa sổ mở rộng của cửa sổ cha với lớp của cửa sổ là RICHEDIT và tiêu đề của cửa sổ là ""
SendMessageW(hRichEditBox, WM_SETTEXT, 0, (int)Marshal.StringToHGlobalUni(strTCVN3)); // gửi đoạn văn bản strTCVN3 đã được chuyển sang kiểu Marshal đến cửa sổ RICHEDIT.

Bài này mình mới tham khảo của các bạn khóa trên nên Post lên đây để các bạn tham khảo chứ bữa thi mình làm không tốt như vậy.....hjxhjx

Mình cũng chưa làm được bài này.
Cảm ơn bạn đã Post bài này lên

ngothihanHC11TH2A

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

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

Về Đầu Trang Go down

Re: Thi Kiểm tra Giữa kỳ Lần 2

Bài gửi  nguyenthanhphongHC11TH2A on 19/4/2012, 09:38

luthioanh-I12A đã viết:- Chức năng: gởi nhận thông điệp giữa các tiến trình
- Giao diện: có 4 textbox: gởi, nhận, địa chỉ máy tính cần kết nối, port kết nối. 1 nút gởi dữ liệu, khi nhận dữ liệu thì dữ liệu đó sẽ hiện lên trong textbox nhận, và có tooltipball hiện lên nội dung vừa nhận. khi muốn gởi thông điệp thì nhập nội dung vào ô gởi và nhấn nút gửi
cách mở ứng dụng: vào thư mục: ...\HeDieuHanh\Tu hoc\Lap trinh Da luong voi .NET\UDPClient C# .NET 2005 (Remote)\WindowsApplication1 mở file udpPeerClient.sln rồi dịch lại chương trình (F5 hoặc bấm nút mũi tên màu xanh).
chương trình sử dụng using System.Net.Sockets để lập trình cho giao tiếp sockets.
sử dụng lớp udpClient (cung cấp phương thức cho việc gởi và nhận thông điệp không có kết nối UDP) và lớp IPEndPoint (đối tượng sẽ cho phép chúng ta đọc datagrams gửi từ bất kỳ nguồn nào) của lớp net.sockets
udpClient.Send(sendBytes, sendBytes.Length, txtRemoteHost.Text, Convert.ToInt16(txtRemotePort.Text)); // dùng để gởi thông điêp đến cổng định sẵn
RemoteIpEndPoint = new IPEndPoint(IPAddress.Any, 0);// bị khóa cho đến khi có dữ liệu từ 1 địa chỉ bất kỳ gởi đến
SetText(returnData, RemoteIpEndPoint.Address.ToString()); // Dữ liệu nhận được và Địa chỉ IP nơi gửi

Mong thầy và các bạn góp ý thêm!

Cảm ơn bạn đã post bài!
Mình chỉ mới nói được về chức năng của UDP Client C#.NET 2005 thôi, không biết như vậy có điểm không nữa. hihi

nguyenthanhphongHC11TH2A

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

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

Về Đầu Trang Go down

Ví dụ về tập luồng

Bài gửi  huynhtamhaoI12A on 19/4/2012, 09:50

Trong một siêu thị có nhiều quầy thu ngân, mỗi quầy như là 1 luồng, khi có khách hàng tính tiền thì một quầy sẽ chịu trách nhiệm về việc đó, Nếu số lượng khách hàng đông hơn số lượng quầy thu thì phải đợi cho đến khi một quầy nào đó tính tiền xong.
avatar
huynhtamhaoI12A

Tổng số bài gửi : 24
Join date : 17/02/2012
Age : 27

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

Về Đầu Trang Go down

Re: Thi Kiểm tra Giữa kỳ Lần 2

Bài gửi  TranThiMyKhanh(I12A) on 19/4/2012, 10:55

IntPtr hApp = FindWindow(null, "Speaking VN");//Tìm cửa sổ mang tên "Speaking VN" đó là cửa sổ chạy chương trình vnvoice

IntPtr hFrame = FindWindowEx(hApp, IntPtr.Zero, "AfxFrameOrView42s", "");//tìm frame chứa cửa sổ lưu đoạn văn bản cần đọc

IntPtr hRichEditBox = FindWindowEx(hFrame, IntPtr.Zero, "RICHEDIT", "");//định vị vùng chứa đoạn văn bản cần đọc

SendMessageW(hRichEditBox, WM_SETTEXT, 0, (int)Marshal.StringToHGlobalUni(strTCVN3));//gửi đoạn văn bản cần đọc đến vùng chứa đoạn văn bản cần đọc, để phần mềm vnvoice đọc thành tiếng việt phát ra loa

avatar
TranThiMyKhanh(I12A)

Tổng số bài gửi : 24
Join date : 02/03/2012
Age : 27

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

Về Đầu Trang Go down

Re: Thi Kiểm tra Giữa kỳ Lần 2

Bài gửi  nguyenthanhphongHC11TH2A on 19/4/2012, 11:01

luthioanh-I12A đã viết:IntPtr hApp = FindWindow(null, "Speaking VN");
IntPtr hFrame = FindWindowEx(hApp, IntPtr.Zero, "AfxFrameOrView42s", "");
IntPtr hRichEditBox = FindWindowEx(hFrame, IntPtr.Zero, "RICHEDIT", "");
SendMessageW(hRichEditBox, WM_SETTEXT, 0, (int)Marshal.StringToHGlobalUni(strTCVN3));

Giải:
IntPtr hApp = FindWindow(null, "Speaking VN"); //Tìm cửa sổ có tiêu đề là Speaking VN rồi gán cho biến hApp (cửa sổ chính của chương trình)
IntPtr hFrame = FindWindowEx(hApp, IntPtr.Zero, "AfxFrameOrView42s", ""); //Tìm cửa sổ mở rộng của cửa sổ cha với lớp của cửa sổ là AfxFrameOrView42s và tiêu đề của sổ là ""
IntPtr hRichEditBox = FindWindowEx(hFrame, IntPtr.Zero, "RICHEDIT", ""); // Tiếp tục tìm cửa sổ mở rộng của cửa sổ cha với lớp của cửa sổ là RICHEDIT và tiêu đề của cửa sổ là ""
SendMessageW(hRichEditBox, WM_SETTEXT, 0, (int)Marshal.StringToHGlobalUni(strTCVN3)); // gửi đoạn văn bản strTCVN3 đã được chuyển sang kiểu Marshal đến cửa sổ RICHEDIT.

Bài này mình mới tham khảo của các bạn khóa trên nên Post lên đây để các bạn tham khảo chứ bữa thi mình làm không tốt như vậy.....hjxhjx

mình cũng chưa làm xong câu này.Hôm trước ngồi xa quá nên không nghe rõ thầy giảng. Cảm ơn bạn đã đóng góp.

nguyenthanhphongHC11TH2A

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

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

Về Đầu Trang Go down

Re: Thi Kiểm tra Giữa kỳ Lần 2

Bài gửi  NguyenTuanHai_I12A on 19/4/2012, 11:01

Thread (luồng) còn gọi là tiến trình nhẹ, 1 đơn vị cơ bản sử dụng CPU, luồng cũng có thông tin trạng thái như của tiến trình.
Ví dụ: nếu có nhiều người dùng cùng chương trình, lập trình viên có thể viết ứng dụng sao cho ứng với mỗi người dùng sẽ có 1 luồng mới được tạo ra.

NguyenTuanHai_I12A

Tổng số bài gửi : 14
Join date : 15/02/2012
Age : 27
Đến từ : Long An

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

Về Đầu Trang Go down

Re: Thi Kiểm tra Giữa kỳ Lần 2

Bài gửi  nguyenthanhphongHC11TH2A on 19/4/2012, 11:05

luthioanh-I12A đã viết:- Chức năng: gởi nhận thông điệp giữa các tiến trình
- Giao diện: có 4 textbox: gởi, nhận, địa chỉ máy tính cần kết nối, port kết nối. 1 nút gởi dữ liệu, khi nhận dữ liệu thì dữ liệu đó sẽ hiện lên trong textbox nhận, và có tooltipball hiện lên nội dung vừa nhận. khi muốn gởi thông điệp thì nhập nội dung vào ô gởi và nhấn nút gửi
cách mở ứng dụng: vào thư mục: ...\HeDieuHanh\Tu hoc\Lap trinh Da luong voi .NET\UDPClient C# .NET 2005 (Remote)\WindowsApplication1 mở file udpPeerClient.sln rồi dịch lại chương trình (F5 hoặc bấm nút mũi tên màu xanh).
chương trình sử dụng using System.Net.Sockets để lập trình cho giao tiếp sockets.
sử dụng lớp udpClient (cung cấp phương thức cho việc gởi và nhận thông điệp không có kết nối UDP) và lớp IPEndPoint (đối tượng sẽ cho phép chúng ta đọc datagrams gửi từ bất kỳ nguồn nào) của lớp net.sockets
udpClient.Send(sendBytes, sendBytes.Length, txtRemoteHost.Text, Convert.ToInt16(txtRemotePort.Text)); // dùng để gởi thông điêp đến cổng định sẵn
RemoteIpEndPoint = new IPEndPoint(IPAddress.Any, 0);// bị khóa cho đến khi có dữ liệu từ 1 địa chỉ bất kỳ gởi đến
SetText(returnData, RemoteIpEndPoint.Address.ToString()); // Dữ liệu nhận được và Địa chỉ IP nơi gửi

Mong thầy và các bạn góp ý thêm!

mình chỉ làm được phần chức năng của UDP client C#.NET 2005 là gửi và nhận thông điệp giữa các tiến trình. Không biết như vậy có đúng không? Bạn nào hiểu rõ thì giải thích thêm cho mọi người với nhé! Thanks !

nguyenthanhphongHC11TH2A

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

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

Về Đầu Trang Go down

Re: Thi Kiểm tra Giữa kỳ Lần 2

Bài gửi  TranThiMyKhanh(I12A) on 19/4/2012, 11:29

huynhtamhaoI12A đã viết:Trong một siêu thị có nhiều quầy thu ngân, mỗi quầy như là 1 luồng, khi có khách hàng tính tiền thì một quầy sẽ chịu trách nhiệm về việc đó, Nếu số lượng khách hàng đông hơn số lượng quầy thu thì phải đợi cho đến khi một quầy nào đó tính tiền xong.
Còn mình cho ví dụ như sau: Trong 1 rạp chiếu phim có nhiều nhân viên bán vé, mỗi nhân viên được xem như là 1 luồng, khi khách hàng lại mua vé thì 1 nhân viên sẽ phục vụ việc bán vé cho khách hàng đó, khi số lượng khách hàng nhiều hơn số lượng nhân viên thì phải đợi cho đến khi bán vé xong cho 1 khách hàng rồi mới tới khách hàng tiếp theo.
avatar
TranThiMyKhanh(I12A)

Tổng số bài gửi : 24
Join date : 02/03/2012
Age : 27

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

Về Đầu Trang Go down

bổ sung câu 3

Bài gửi  NguyenAnhTan15 (I12C) on 19/4/2012, 11:47

dòng 1: tìm cửa sổ có tên "Speaking VN"
dòng 2: tìm frame chứa cửa sổ có đoạn văn bản cần phát ra
dòng 3: tìm vị trí của vùng chứa đoạn văn bản phát ra
dòng 4: gửi đoạn văn bản cần phát ra đến vùng chứa đoạn văn bản, sau đó sẽ phát ra loa bằng chương trình vnvoice

NguyenAnhTan15 (I12C)

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

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

Về Đầu Trang Go down

bổ sung Câu 3

Bài gửi  nguyenthaihiep (I11C) on 19/4/2012, 13:48

IntPtr hApp = FindWindow(null, "Speaking VN");
/* tìm những chương trình đang chạy có chương trình nào có tên "Speaking VN" hay không? Nếu có thì trả về giá trị Mục quản của cửa sổ tìm được cho biến hApp còn không thì trả về NULL */

IntPtr hFrame = FindWindowEx(hApp, IntPtr.Zero, "AfxFrameOrView42s", "");
/* với chương trình vừa tìm được thì tiếp tục tìm kiếm mở rộng trong chương trình đó có frame nào tên là “AfxFrameOrView42s” hay không? Nếu có thì trả Mục quản của nó về cho biến hFrame còn nếu không thì trả về NULL */

IntPtr hRichEditBox = FindWindowEx(hFrame, IntPtr.Zero, "RICHEDIT", "");
/*với frame vừa tìm được thì tiếp tục lại tìm kiếm mở rộng trong đó có đối tượng nào tên là “RICHEDIT” hay không? Nếu có thì trả Mục quản của nó về cho biến hFrame còn nếu không thì trả về NULL*/

SendMessageW(hRichEditBox, WM_SETTEXT, 0, (int)Marshal.StringToHGlobalUni(strTCVN3));
/* Gửi đoạn văn bản chứa bởi strTCVN3 tới đối tượng RICHEDIT của chương trình "Speaking VN" */

Admin
Đơn giản-Rõ ràng-Thuyết phục !

nguyenthaihiep (I11C)

Tổng số bài gửi : 34
Join date : 31/08/2011

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

Về Đầu Trang Go down

Trả lời bài kiểm tra

Bài gửi  TRANTHUYOANH_10H1010066 on 19/4/2012, 14:11

Ví dụ về tập luồng, một phòng học có nhiều cửa, nếu cửa này bị nghẽn do có quá nhiều sinh viên chen vào thì các sinh viên đến sau có thể chọn một cửa khác để vào phòng học.

TRANTHUYOANH_10H1010066

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

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

Về Đầu Trang Go down

hay wa !

Bài gửi  ThuyDuong23 (I12A) on 19/4/2012, 14:57

TranThiMyKhanh(I12A) đã viết:IntPtr hApp = FindWindow(null, "Speaking VN");//Tìm cửa sổ mang tên "Speaking VN" đó là cửa sổ chạy chương trình vnvoice

IntPtr hFrame = FindWindowEx(hApp, IntPtr.Zero, "AfxFrameOrView42s", "");//tìm frame chứa cửa sổ lưu đoạn văn bản cần đọc

IntPtr hRichEditBox = FindWindowEx(hFrame, IntPtr.Zero, "RICHEDIT", "");//định vị vùng chứa đoạn văn bản cần đọc

SendMessageW(hRichEditBox, WM_SETTEXT, 0, (int)Marshal.StringToHGlobalUni(strTCVN3));//gửi đoạn văn bản cần đọc đến vùng chứa đoạn văn bản cần đọc, để phần mềm vnvoice đọc thành tiếng việt phát ra loa


ThuyDuong23 (I12A)

Tổng số bài gửi : 35
Join date : 17/02/2012
Age : 27
Đến từ : DakLak

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

Về Đầu Trang Go down

Re: Thi Kiểm tra Giữa kỳ Lần 2

Bài gửi  phamduyI12A on 19/4/2012, 15:29

nguyenthanhphongHC11TH2A đã viết:
ngothihanHC11TH2A đã viết:Câu 1:
-Process: là tiến trình chạy dưới sự quản lý của HDH.
Vd: Các bạn sinh viên đang làm bài kiểm tra(tiến trình), dưới sự quản lý của thầy giáo(Hệ điều hành).
-Theard: là luồng, đơn vị cơ bản sử dụng CPU.
Vd: mỗi bạn học sinh trong lớp là mỗi luồng, thầy giáo là luồng chính.
-Process Pool:là 1 tập luồng luôn sẵn sàng chờ công việc
Vd: khi nộp bài kiểm tra trên lớp, mỗi bạn sinh viên(mỗi luồng trong 1 tập luồng) sẽ sẵn sàng lên nộp bài khi được thầy gọi tên(Process).
-Mutual Exclusion:là tính loại trừ lẫn nhau hay loại trừ tương hỗ, tức là tại mỗi thời điểm chỉ có 1 Process được phép truy cập và sử dụng tài nguyên.
Vd: viết 1 đơn xin việc, nếu có 2 người(process) cùng sửa 1 nội dung tại 1 thời điểm sẽ gây ra sai sót trong dơn xin việc đó.
Hoặc 1 ví dụ khác: khi thầy giáo gọi sinh viên lên bảng làm bài tập, tại 1 thời điểm chỉ có 1 bạn được phép lên làm, nếu có 2 bạn cùng lên làm bài 1 lúc thì sẽ dẫn sai sót.
-Semaphore: là đèn hiệu với 2 tác nguyên là Wait, Signal.
Vd: Tại ngã tư, khi gặp đèn đỏ, tất cả mọi người đều phải dừng lại(wait), sau khi nhận được tín hiệu của cảnh sát giao thông hay thông báo đèn xanh (Signal) thì mới được đi tiếp.

Mong thầy và các bạn góp ý!


Theo mình thì về ví dụ của Semaphore là:
Vd: xe qua cầu yếu, thì phải lập trình công việc để tại mỗi thời điểm chỉ có 1 xe được phép qua cầu. khi gặp tín hiệu đèn đỏ thì xe B phải chờ(Wait) cho xe A qua cầu trước sau đó có tín hiệu đèn xanh tức là Signal thì xe B mới được qua.
Semaphore: là đèn hiệu với giá trị 0 là đèn đỏ, và 1 là đèn xanh. Có đèn hiệu các tiến trình sẽ chạy có thứ tự hơn và tránh tình trạn hỗn loạn.Đó là cách hiểu của mình!

phamduyI12A

Tổng số bài gửi : 20
Join date : 19/02/2012
Age : 27
Đến từ : TPHCM

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

Về Đầu Trang Go down

cảm ơn bạn đã post lời giải của câu 2 trong đề kiểm, mình thấy câu trả lời của bạn rất hay

Bài gửi  lamtienkhoa(102c) on 19/4/2012, 15:30

luthioanh-I12A đã viết:- Chức năng: gởi nhận thông điệp giữa các tiến trình
- Giao diện: có 4 textbox: gởi, nhận, địa chỉ máy tính cần kết nối, port kết nối. 1 nút gởi dữ liệu, khi nhận dữ liệu thì dữ liệu đó sẽ hiện lên trong textbox nhận, và có tooltipball hiện lên nội dung vừa nhận. khi muốn gởi thông điệp thì nhập nội dung vào ô gởi và nhấn nút gửi
cách mở ứng dụng: vào thư mục: ...\HeDieuHanh\Tu hoc\Lap trinh Da luong voi .NET\UDPClient C# .NET 2005 (Remote)\WindowsApplication1 mở file udpPeerClient.sln rồi dịch lại chương trình (F5 hoặc bấm nút mũi tên màu xanh).
chương trình sử dụng using System.Net.Sockets để lập trình cho giao tiếp sockets.
sử dụng lớp udpClient (cung cấp phương thức cho việc gởi và nhận thông điệp không có kết nối UDP) và lớp IPEndPoint (đối tượng sẽ cho phép chúng ta đọc datagrams gửi từ bất kỳ nguồn nào) của lớp net.sockets
udpClient.Send(sendBytes, sendBytes.Length, txtRemoteHost.Text, Convert.ToInt16(txtRemotePort.Text)); // dùng để gởi thông điêp đến cổng định sẵn
RemoteIpEndPoint = new IPEndPoint(IPAddress.Any, 0);// bị khóa cho đến khi có dữ liệu từ 1 địa chỉ bất kỳ gởi đến
SetText(returnData, RemoteIpEndPoint.Address.ToString()); // Dữ liệu nhận được và Địa chỉ IP nơi gửi

Mong thầy và các bạn góp ý thêm!

lamtienkhoa(102c)

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

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

Về Đầu Trang Go down

Re: Thi Kiểm tra Giữa kỳ Lần 2

Bài gửi  PhamDucPhuong(I12A) on 19/4/2012, 23:08

luthioanh-I12A đã viết:- Chức năng: gởi nhận thông điệp giữa các tiến trình
- Giao diện: có 4 textbox: gởi, nhận, địa chỉ máy tính cần kết nối, port kết nối. 1 nút gởi dữ liệu, khi nhận dữ liệu thì dữ liệu đó sẽ hiện lên trong textbox nhận, và có tooltipball hiện lên nội dung vừa nhận. khi muốn gởi thông điệp thì nhập nội dung vào ô gởi và nhấn nút gửi
cách mở ứng dụng: vào thư mục: ...\HeDieuHanh\Tu hoc\Lap trinh Da luong voi .NET\UDPClient C# .NET 2005 (Remote)\WindowsApplication1 mở file udpPeerClient.sln rồi dịch lại chương trình (F5 hoặc bấm nút mũi tên màu xanh).
chương trình sử dụng using System.Net.Sockets để lập trình cho giao tiếp sockets.
sử dụng lớp udpClient (cung cấp phương thức cho việc gởi và nhận thông điệp không có kết nối UDP) và lớp IPEndPoint (đối tượng sẽ cho phép chúng ta đọc datagrams gửi từ bất kỳ nguồn nào) của lớp net.sockets
udpClient.Send(sendBytes, sendBytes.Length, txtRemoteHost.Text, Convert.ToInt16(txtRemotePort.Text)); // dùng để gởi thông điêp đến cổng định sẵn
RemoteIpEndPoint = new IPEndPoint(IPAddress.Any, 0);// bị khóa cho đến khi có dữ liệu từ 1 địa chỉ bất kỳ gởi đến
SetText(returnData, RemoteIpEndPoint.Address.ToString()); // Dữ liệu nhận được và Địa chỉ IP nơi gửi

Mong thầy và các bạn góp ý thêm!
mình thấy bạn chỉ cần trình bày chức năng và giao diện của ứng dụng UDPClient C#.NET 2005 là được rồi, còn phần giải thích code ,mở chương trình thế nào thì hơi dư,vì đề chỉ yêu cầu giới thiệu chức năng và giao diện của ứng dụng thôi mà

Admin
- Góp ý đúng !
- Sau khi trình bày Chức năng và Giao diện, còn thời gian mới đề cập đến mã, mà không cần cụ thể thế đâu, vì sao mà nhớ chính xác được !

PhamDucPhuong(I12A)

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

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

Về Đầu Trang Go down

Re: Thi Kiểm tra Giữa kỳ Lần 2

Bài gửi  LePhucHiep(102C) on 20/4/2012, 08:47

nguyenthaihiep (I11C) đã viết:IntPtr hApp = FindWindow(null, "Speaking VN");
/* tìm những chương trình đang chạy có chương trình nào có tên "Speaking VN" hay không? Nếu có thì trả về giá trị Mục quản của cửa sổ tìm được cho biến hApp còn không thì trả về NULL */

IntPtr hFrame = FindWindowEx(hApp, IntPtr.Zero, "AfxFrameOrView42s", "");
/* với chương trình vừa tìm được thì tiếp tục tìm kiếm mở rộng trong chương trình đó có frame nào tên là “AfxFrameOrView42s” hay không? Nếu có thì trả Mục quản của nó về cho biến hFrame còn nếu không thì trả về NULL */

IntPtr hRichEditBox = FindWindowEx(hFrame, IntPtr.Zero, "RICHEDIT", "");
/*với frame vừa tìm được thì tiếp tục lại tìm kiếm mở rộng trong đó có đối tượng nào tên là “RICHEDIT” hay không? Nếu có thì trả Mục quản của nó về cho biến hFrame còn nếu không thì trả về NULL*/

SendMessageW(hRichEditBox, WM_SETTEXT, 0, (int)Marshal.StringToHGlobalUni(strTCVN3));
/* Gửi đoạn văn bản chứa bởi strTCVN3 tới đối tượng RICHEDIT của chương trình "Speaking VN" */

Admin
Đơn giản-Rõ ràng-Thuyết phục !
Bài giải của bạn đơn giản, ngắn gọn thật.
Mình làm chỉ tìm trong windown với chương trình có tên: "Speaking VN" còn không có trả về giá trị Null,....
Mình không nói rõ mục quản giống như bạn
avatar
LePhucHiep(102C)

Tổng số bài gửi : 69
Join date : 29/08/2011
Age : 33
Đến từ : Đăk Nông

Xem lý lịch thành viên http://www.ngoisao24h.com

Về Đầu Trang Go down

post

Bài gửi  lequanghanh(102c) on 20/4/2012, 13:58

ban co the cho them 1 vi du minh hoa
lamtienkhoa(102c) đã viết:
luthioanh-I12A đã viết:- Chức năng: gởi nhận thông điệp giữa các tiến trình
- Giao diện: có 4 textbox: gởi, nhận, địa chỉ máy tính cần kết nối, port kết nối. 1 nút gởi dữ liệu, khi nhận dữ liệu thì dữ liệu đó sẽ hiện lên trong textbox nhận, và có tooltipball hiện lên nội dung vừa nhận. khi muốn gởi thông điệp thì nhập nội dung vào ô gởi và nhấn nút gửi
cách mở ứng dụng: vào thư mục: ...\HeDieuHanh\Tu hoc\Lap trinh Da luong voi .NET\UDPClient C# .NET 2005 (Remote)\WindowsApplication1 mở file udpPeerClient.sln rồi dịch lại chương trình (F5 hoặc bấm nút mũi tên màu xanh).
chương trình sử dụng using System.Net.Sockets để lập trình cho giao tiếp sockets.
sử dụng lớp udpClient (cung cấp phương thức cho việc gởi và nhận thông điệp không có kết nối UDP) và lớp IPEndPoint (đối tượng sẽ cho phép chúng ta đọc datagrams gửi từ bất kỳ nguồn nào) của lớp net.sockets
udpClient.Send(sendBytes, sendBytes.Length, txtRemoteHost.Text, Convert.ToInt16(txtRemotePort.Text)); // dùng để gởi thông điêp đến cổng định sẵn
RemoteIpEndPoint = new IPEndPoint(IPAddress.Any, 0);// bị khóa cho đến khi có dữ liệu từ 1 địa chỉ bất kỳ gởi đến
SetText(returnData, RemoteIpEndPoint.Address.ToString()); // Dữ liệu nhận được và Địa chỉ IP nơi gửi

Mong thầy và các bạn góp ý thêm!

lequanghanh(102c)

Tổng số bài gửi : 61
Join date : 18/02/2011
Age : 31
Đến từ : Phương Đông - Trà Đông - Bắc Trà My - Quảng Nam

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

Về Đầu Trang Go down

Đóng góp đề thi giữa kì Lần II

Bài gửi  huynhvanhung(I12A) on 20/4/2012, 16:32

Đề thi giữa kì lần này có nội dung cũng tương đối khó ; khó ở câu 3. câu 1 và câu 2 có thể làm theo sự hiểu biết + với chú ý nghe bài giảng các câu ví dụ thực tế của thầy đã nói trên lớp là làm cũng được kha khá. Mong rằng đề thi học phần sắp tới thầy sẽ cho nội dung thi sát với bài ôn.để Mở cho chung em được Một con đường bước tiếp đến chân trời Mới. " Đại Học Mở Muôn Năm"

Trân trọng cám ơn thầy !!!

Admin
- Câu 3 đã được giảng kỹ trên lớp và có mục riêng thảo luận trên Diễn đàn.
- Tự hào về trường của mình là đúng !
avatar
huynhvanhung(I12A)

Tổng số bài gửi : 43
Join date : 17/02/2012
Age : 29
Đến từ : TP.HCM

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

Về Đầu Trang Go down

Re: Thi Kiểm tra Giữa kỳ Lần 2

Bài gửi  Sponsored content


Sponsored content


Về Đầu Trang Go down

Trang 1 trong tổng số 2 trang 1, 2  Next

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


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