Thảo luận Bài 4
+111
DangLeHieu(I102C)
NguyenTuanHai_I12A
Đỗ Phan Diễm Hương I12A
TRANTHINHPHAT (I11C)
lengocthuthao89 (i11c)
NguyenthechinhI12A
DaoQuangTri38(I12A)
LyHuynhThanhYen (I11C)
BuiDaiNghia-102C
nguyenhuutho
TrinhThiPhuongThaoI12C
TranVanBao(I12A)
tranthithanhuyen85 (I11C)
KimHue36 (I11C)
phanngocthinh(i12a)
fantomas113
PhamDucPhuong(I12A)
VoTrongQuyet-I12A
vominhhai_09H1012028
nguyenvanhonglac_0066
leminhtam13(I12A)
TruongQuocTrung_I12A
HuaTranTuQuyen(I12A)
NguyenNgocDuy(I12A)
PhamMinhLuan(102C)
sonha89
Nguyen Doan Linh051(I11c)
HuynhMinhChanh(i91C)
ngophicamI12A
HuynhNguyenTrungHau_I12C
LeMinhDuc (I11C)
huynhtamhaoI12A
LuongGiaDuc(I12A)
HUYNHMINHHAI(I12A)
TranHuyCuong17 (I12A)
NguyenThanhCang(I12A)
lymydung_I12A
VuNguyenQuynhLam_I12C
TranHoangNhanI12C
BuiHuongTra(I12A)
NgoXuanQuoc_(102C)
NguyenVinhQuang_I12A
LeMInhTien(I11C)
nguyenthihongtham_I12C
maidangvu_I12A
NguyenVanBenI12C
NguyenVanThang25 (I12A)
phamduyI12A
NguyenHaCamThu(I12A)
TranTrungTinh(I12A)
trantrungnam-HC11TH2A
LacChiHao(I12A)
luthioanh-I12A
nguyen_tuan_phat_I12A
lacongchinh_I12A
lethanhsang_I12A
TranTrungHienI12C
plminhhoangI12A
ngothihanHC11TH2A
TranBinhCongLuanI12A
nguyenthanhphongHC11TH2A
quynhnhi.nguyen_I12A
LeXuanHau (I12C)
DaoThaiHuyI12A
levanhop.it
Nguyen Sy Hung I12A
thailongI12C
nguyenthingocmai_I12A
hoanghaiyen
Đinh Đông Dương
NguyenThiHue48(I12A)
phuongnguyen
nguyenthaihiep (I11C)
nguyenthimao_I12A
TranMinhTuan143(I12A)
NguyenHongHaiI12C
nguyenhuutrang_11h1010135
nguyenthanhnghi_I12C
quicly_I111c
NguyenThiHongYen(I12A)
NgoPhuQuoc_I12C
TranThiNgocQuynh(I12C)
hoxuanvu_I12A
LuongHueChanh_I12A
TranThiMyKhanh(I12A)
DoanNgocDan(I12A)
LeLamThang (113A)
tranvanthien27(I12C)
BuiPhamAnBinh(I12A)
LeThanhTung (I11C)
LeQuocKhanh-11H1010059
trinhvanminh_11h1010077
letanthanh18(I12A)
vothingocthuy87(I11C)
NguyenTriVienI12A
NguyenHoangThangI12A
LeThiMaiPhuongI12A
hoanggiangI12C
TranPhiLong (I11C)
phamphihung55
TranThiAnhDao89I12C
TrinhVinhThanh (I12A)
lequanghanh(102c)
Truc_Phuong(I111C)
LePhucHiep(102C)
NguyenXuanTri28
huynhvanhung(I12A)
VoThiHongNhung(I12A)
PhamQuangHien_I12A
minhtam_I12C
Admin
115 posters
Trang 12 trong tổng số 15 trang
Trang 12 trong tổng số 15 trang • 1 ... 7 ... 11, 12, 13, 14, 15
Thao luan bai 4
PCB là một cấu trúc dữ liệu được hệ điều hành duy trì cho mỗi tiến trình dùng để chứa các thông tin cần thiết về tiến trình đó. PCB chứa "Bản sao công việc của tiến trình".
Nó lưu lại trạng thái của tiến trình tại thời điểm đang xét . Trạng thái này bao gồm (các địa chỉ liên kết của tiến trình & dữ liệu, số hiệu tiến trình, bộ đếm lệnh, nội dung các thanh ghi, giới hại bộ nhớ của tiến trình, danh sách các file đang mở, các thông tin về thời gian thống kê tiến trình hiện tại).
Vd: Dùng chung 1 bảng, bạn thứ 2 lên bảng sửa bài thì phải xóa bài của bạn thứ 1 đã viết>> Phải chup lai để nội dung không bị mất khi người khác xóa.khi cần thì sử dụng
Nó lưu lại trạng thái của tiến trình tại thời điểm đang xét . Trạng thái này bao gồm (các địa chỉ liên kết của tiến trình & dữ liệu, số hiệu tiến trình, bộ đếm lệnh, nội dung các thanh ghi, giới hại bộ nhớ của tiến trình, danh sách các file đang mở, các thông tin về thời gian thống kê tiến trình hiện tại).
Vd: Dùng chung 1 bảng, bạn thứ 2 lên bảng sửa bài thì phải xóa bài của bạn thứ 1 đã viết>> Phải chup lai để nội dung không bị mất khi người khác xóa.khi cần thì sử dụng
LeThanhTung (I11C)- Tổng số bài gửi : 50
Join date : 28/08/2011
SO sanh VB6.0 va VB.NET
Khác biệt giữa VB 6.0 và VB.NET có thể phân thành hai nhóm như bảng 1:
• Thay đổi về kỹ thuật cải thiện hiệu suất ứng dụng.
• Thay đổi trong cú pháp và cách thức lập trình.
Thay đổi về kỹ thuật
trong VB.NET là yếu tố dẫn đến thay đổi về cú pháp và cách thức lập trình; xuất phát từ mục tiêu kỹ thuật mà Microsoft hướng đến trong phiên bản mới của VB.
Để VB thống nhất về mặt kỹ thuật với C++ và C#, Microsoft đã phát triển Common Language Runtime (CLR) thành nền tảng chung. VB không còn là công cụ sinh mã giả nữa, CLR làm cho nó trở thành ngôn ngữ hướng đối tượng thực sự và đặt nó ngang cấp với C++ và C#. Về mặt kỹ thuật, một ứng dụng được tạo bởi VB.NET không có gì khác biệt so với ứng dụng tạo bằng C++ hay C#.
Thay đổi cú pháp
Tuy những thay đổi về kỹ thuật trong VB.NET cực kỳ quan trọng (và rất được hoan nghênh) nhưng lại không dễ nhận biết như những thay đổi trong cú pháp và cách thức lập trình. Chúng ảnh hưởng nhiều đến khả năng chuyển đổi ứng dụng VB 6.0 sang VB.NET.
Trong bộ công cụ Studio.Net, Microsoft có cung cấp tiện ích Upgrade Wizard để chuyển đổi ứng dụng VB 6.0 sang VB.NET.
• Thay đổi về kỹ thuật cải thiện hiệu suất ứng dụng.
• Thay đổi trong cú pháp và cách thức lập trình.
Thay đổi về kỹ thuật
trong VB.NET là yếu tố dẫn đến thay đổi về cú pháp và cách thức lập trình; xuất phát từ mục tiêu kỹ thuật mà Microsoft hướng đến trong phiên bản mới của VB.
Để VB thống nhất về mặt kỹ thuật với C++ và C#, Microsoft đã phát triển Common Language Runtime (CLR) thành nền tảng chung. VB không còn là công cụ sinh mã giả nữa, CLR làm cho nó trở thành ngôn ngữ hướng đối tượng thực sự và đặt nó ngang cấp với C++ và C#. Về mặt kỹ thuật, một ứng dụng được tạo bởi VB.NET không có gì khác biệt so với ứng dụng tạo bằng C++ hay C#.
Thay đổi cú pháp
Tuy những thay đổi về kỹ thuật trong VB.NET cực kỳ quan trọng (và rất được hoan nghênh) nhưng lại không dễ nhận biết như những thay đổi trong cú pháp và cách thức lập trình. Chúng ảnh hưởng nhiều đến khả năng chuyển đổi ứng dụng VB 6.0 sang VB.NET.
Trong bộ công cụ Studio.Net, Microsoft có cung cấp tiện ích Upgrade Wizard để chuyển đổi ứng dụng VB 6.0 sang VB.NET.
LeThanhTung (I11C)- Tổng số bài gửi : 50
Join date : 28/08/2011
Bổ sung thêm Khái niệm IPC
Trong máy tính, liên quá trình giao tiếp (IPC) là một tập hợp các phương pháp trao đổi dữ liệu giữa nhiều luồng trong một hoặc nhiều quy trình. Quá trình có thể được chạy trên một hoặc nhiều máy tính nối mạng với nhau. Phương pháp IPC được chia thành các phương pháp : gửi qua tin nhắn, đồng bộ hóa, chia sẻ bộ nhớ và các cuộc gọi thủ tục từ xa (RPC). Phương pháp của IPC sử dụng khác nhau dựa vào băng thông và độ trễ của thông tin liên lạc giữa các chủ đề, và các loại dữ liệu được truyền đạt.
Có nhiều lý do để cung cấp một môi trường cho phép tiến trình hợp tác:
_Chia sẻ thông tin.
_Tính toán tăng tốc
_Tính Mô đun
_Sự Thuận tiện
_Đặc quyền phân tách.
IPC cũng có thể được gọi là truyền thông đa luồng và truyền thôngđa ứng dụng .
Có nhiều lý do để cung cấp một môi trường cho phép tiến trình hợp tác:
_Chia sẻ thông tin.
_Tính toán tăng tốc
_Tính Mô đun
_Sự Thuận tiện
_Đặc quyền phân tách.
IPC cũng có thể được gọi là truyền thông đa luồng và truyền thôngđa ứng dụng .
nguyenthihongtham_I12C- Tổng số bài gửi : 17
Join date : 16/02/2012
Age : 34
Đến từ : Dak Lak
Phương thức liên lạc giữa các tiến trình theo nguyên lý khách - chủ.
Câu 7: Trình bày các phương thức liên lạc giữa các tiến trình theo nguyên lý khách - chủ.
Trong môi trường đa chương, một tiến trình không đơn độc trong hệ thống , mà có thể ảnh hưởng đến các tiến trình khác , hoặc bị các tiến trình khác tác động. Nói cách khác, các tiến trình là những thực thể độc lập , nhưng chúng vẫn có nhu cầu liên lạc với nhau để :
Chia sẻ thông tin: nhiều tiến trình có thể cùng quan tâm đến những dữ liệu nào đó, do vậy hệ điều hành cần cung cấp một môi trường cho phép sự truy cập đồng thời đến các dữ liệu chung.
Hợp tác hoàn thành tác vụ: đôi khi để đạt được một sự xử lý nhanh chóng, người ta phân chia một tác vụ thành các công việc nhỏ có thể tiến hành song song. Thường thì các công việc nhỏ này cần hợp tác với nhau để cùng hoàn thành tác vụ ban đầu, ví dụ dữ liệu kết xuất của tiến trình này lại là dữ liệu nhập cho tiến trình khác. Trong các trường hợp đó, hệ điều hành cần cung cấp cơ chế để các tiến trình có thể trao đổi thông tin với nhau.
Một hốc liên lạc là một điểm cuối của luồng giao tiếp liên xử lý thông qua mạng internet. Các máy tính ngày nay liên lạc với nhau thông qua giao thức cơ sỡ là giao thức mạng TCP/IP. Vì vậy, các socket network hầu hết là Internet socket.
Một socket API là một giao diện chương trình ứng dụng ( Application programming Interface), thường được cung cấp bởi hệ điều hành , nó cho phép các chương trình ứng dụng để kiểm soát và sử dụng hốc mạng. Hốc mạng API là một chuẩn cơ sở trong Berkeley Sockets.
Một địa chỉ hốc mạng là sự kết hợp giữa đại chỉ IP và một chỉ số port . Giống như đầu của một kết nối điện thoại là sự kết hợp của số điện thoại và một phần mở rộng đặc biệt. Căn cứ vào địa chỉ này, ổ cắm internet cung cấp các gói dữ liệu đến quá trình ứng dụng hoặc luồng.
Trong môi trường đa chương, một tiến trình không đơn độc trong hệ thống , mà có thể ảnh hưởng đến các tiến trình khác , hoặc bị các tiến trình khác tác động. Nói cách khác, các tiến trình là những thực thể độc lập , nhưng chúng vẫn có nhu cầu liên lạc với nhau để :
Chia sẻ thông tin: nhiều tiến trình có thể cùng quan tâm đến những dữ liệu nào đó, do vậy hệ điều hành cần cung cấp một môi trường cho phép sự truy cập đồng thời đến các dữ liệu chung.
Hợp tác hoàn thành tác vụ: đôi khi để đạt được một sự xử lý nhanh chóng, người ta phân chia một tác vụ thành các công việc nhỏ có thể tiến hành song song. Thường thì các công việc nhỏ này cần hợp tác với nhau để cùng hoàn thành tác vụ ban đầu, ví dụ dữ liệu kết xuất của tiến trình này lại là dữ liệu nhập cho tiến trình khác. Trong các trường hợp đó, hệ điều hành cần cung cấp cơ chế để các tiến trình có thể trao đổi thông tin với nhau.
Một hốc liên lạc là một điểm cuối của luồng giao tiếp liên xử lý thông qua mạng internet. Các máy tính ngày nay liên lạc với nhau thông qua giao thức cơ sỡ là giao thức mạng TCP/IP. Vì vậy, các socket network hầu hết là Internet socket.
Một socket API là một giao diện chương trình ứng dụng ( Application programming Interface), thường được cung cấp bởi hệ điều hành , nó cho phép các chương trình ứng dụng để kiểm soát và sử dụng hốc mạng. Hốc mạng API là một chuẩn cơ sở trong Berkeley Sockets.
Một địa chỉ hốc mạng là sự kết hợp giữa đại chỉ IP và một chỉ số port . Giống như đầu của một kết nối điện thoại là sự kết hợp của số điện thoại và một phần mở rộng đặc biệt. Căn cứ vào địa chỉ này, ổ cắm internet cung cấp các gói dữ liệu đến quá trình ứng dụng hoặc luồng.
nguyenthihongtham_I12C- Tổng số bài gửi : 17
Join date : 16/02/2012
Age : 34
Đến từ : Dak Lak
Phân biệt điều phối chậm & điều phối nhanh!!!
Điều phối chậm (Long-term scheduler (or job scheduler)) :
• Chọn process nào sẽ được đưa vào ready queue (từ New chuyển sang Ready)
• Kiểm soát Độ đa chương
• Do có nhiều thời gian (tới vài phút), loại scheduler này có điều kiện để lựa chọn kỹ càng nhằm phối hợp cân đối 2 loại tiến trình
. Hướng CPU: tính toán nhiều, ít I/O.
Ví dụ: Công ty có một chiếc ô tô (CPU), nhiều nhân viên cần đi công tác (nhiều tiến trình) phải sử dụng ô tô. Do đó, ô tô (CPU) phải bận (phục vụ) cho nhiều người (nhiều tiến trình).
. Hướng I/O: tính toán ít, nhiều I/O
Ví dụ: Công ty có một chiếc ô tô (CPU), các nhân viên trong công ty chỉ ngồi nghiên cứu (I/O), không sử dụng đến ô tô. Vậy quá lãng phí ô tô (CPU)
• Mục đích cân bằng tải
Điều phối nhanh (Short-term scheduler (or CPU scheduler)) :
• Còn gọi là Điều phối CPU.
• Chọn tiến trình từ Ready Queue để cấp CPU.
• Có tần suất công việc cao. Thường cứ 100 ms lại tốn 10 ms để xác định tiến trình kế tiếp, như vậy 10/(100+10)=9% thời gian CPU được dùng để điều phối công việc.
• Chọn process nào sẽ được đưa vào ready queue (từ New chuyển sang Ready)
• Kiểm soát Độ đa chương
• Do có nhiều thời gian (tới vài phút), loại scheduler này có điều kiện để lựa chọn kỹ càng nhằm phối hợp cân đối 2 loại tiến trình
. Hướng CPU: tính toán nhiều, ít I/O.
Ví dụ: Công ty có một chiếc ô tô (CPU), nhiều nhân viên cần đi công tác (nhiều tiến trình) phải sử dụng ô tô. Do đó, ô tô (CPU) phải bận (phục vụ) cho nhiều người (nhiều tiến trình).
. Hướng I/O: tính toán ít, nhiều I/O
Ví dụ: Công ty có một chiếc ô tô (CPU), các nhân viên trong công ty chỉ ngồi nghiên cứu (I/O), không sử dụng đến ô tô. Vậy quá lãng phí ô tô (CPU)
• Mục đích cân bằng tải
Điều phối nhanh (Short-term scheduler (or CPU scheduler)) :
• Còn gọi là Điều phối CPU.
• Chọn tiến trình từ Ready Queue để cấp CPU.
• Có tần suất công việc cao. Thường cứ 100 ms lại tốn 10 ms để xác định tiến trình kế tiếp, như vậy 10/(100+10)=9% thời gian CPU được dùng để điều phối công việc.
TruongQuocTrung_I12A- Tổng số bài gửi : 18
Join date : 14/03/2012
PHÂN BIỆT TCP và UDP
Giao thức TCP và UDP là hai giao thức phổ biến nhất ở lớp transport của chồng giao thức TCP/IP. UDP dùng ít bytes hơn cho phần header và yêu cầu xử lý từ host ít hơn. TCP thì cần nhiều bytes hơn trong phần header và phải xử lý nhiều hơn nhưng cung cấp nhiều chức năng hữu ích hơn, như khả năng khôi phục lỗi.
[tr]
Chức năng TCP UDP
Multiplexing dùng nhiều cổng Có.
Chỉ số cổng nhận dạng duy nhất một tiến trình trên máy gửi và máy nhận
- Giống như TCP
Truyền dữ liệu tuần tự Có.
TCP tái sắp xếp bất kỳ dữ liệu nào nhận sai thứ tự.
Không.
UDP không có khái niệm sắp xếp dữ liệu
Truyền tin cậy Có.
TCP công nhận dữ liệu, gửi lại những phân đoạn bị mất. Các trường sequence và ACK trong TCP header.
Không hỗ trợ.
Kiểm soát dòng Có.
TCP dùng các cửa sổ trượt để kiểm tra các cửa sổ của máy gửi.
Không
Connection Có.
Quá trình bắt tay 3 lần thiết lập quá trình khởi động cổng Phi kết nối
Kiểu giao thức của IP 6 17
RFC 793 768
[/tr]
Các header của TCP và UDP thì khác nhau ở kích thước (20 và 8 bytes), nguyên nhân chủ yếu là do TCP phải hỗ trợ nhiều chức năng hơn
Do đó : Ứng dụng của TCP,UDP vào các services có khác nhau,ví dụ :
+ TCP thường được ứng dụng vào : Email, File Sharing, Downloading ..
+ UDP : Voice streaming, Video streaming.
Một số ứng dụng thông thường của TCP, UDP:
TCP : FTP, Telnet, HTTP ..
UDP : TFTP, SNMP, ...
[tr]
Chức năng TCP UDP
Multiplexing dùng nhiều cổng Có.
Chỉ số cổng nhận dạng duy nhất một tiến trình trên máy gửi và máy nhận
- Giống như TCP
Truyền dữ liệu tuần tự Có.
TCP tái sắp xếp bất kỳ dữ liệu nào nhận sai thứ tự.
Không.
UDP không có khái niệm sắp xếp dữ liệu
Truyền tin cậy Có.
TCP công nhận dữ liệu, gửi lại những phân đoạn bị mất. Các trường sequence và ACK trong TCP header.
Không hỗ trợ.
Kiểm soát dòng Có.
TCP dùng các cửa sổ trượt để kiểm tra các cửa sổ của máy gửi.
Không
Connection Có.
Quá trình bắt tay 3 lần thiết lập quá trình khởi động cổng Phi kết nối
Kiểu giao thức của IP 6 17
RFC 793 768
[/tr]
Các header của TCP và UDP thì khác nhau ở kích thước (20 và 8 bytes), nguyên nhân chủ yếu là do TCP phải hỗ trợ nhiều chức năng hơn
Do đó : Ứng dụng của TCP,UDP vào các services có khác nhau,ví dụ :
+ TCP thường được ứng dụng vào : Email, File Sharing, Downloading ..
+ UDP : Voice streaming, Video streaming.
Một số ứng dụng thông thường của TCP, UDP:
TCP : FTP, Telnet, HTTP ..
UDP : TFTP, SNMP, ...
TruongQuocTrung_I12A- Tổng số bài gửi : 18
Join date : 14/03/2012
SO SANH VOI VB6.0 VA VB.NET
Khác biệt giữa VB 6.0 và VB.NET có thể phân thành hai nhóm như bảng 1:
• Thay đổi về kỹ thuật cải thiện hiệu suất ứng dụng.
• Thay đổi trong cú pháp và cách thức lập trình.
Thay đổi về kỹ thuật
trong VB.NET là yếu tố dẫn đến thay đổi về cú pháp và cách thức lập trình; xuất phát từ mục tiêu kỹ thuật mà Microsoft hướng đến trong phiên bản mới của VB.
Để VB thống nhất về mặt kỹ thuật với C++ và C#, Microsoft đã phát triển Common Language Runtime (CLR) thành nền tảng chung. VB không còn là công cụ sinh mã giả nữa, CLR làm cho nó trở thành ngôn ngữ hướng đối tượng thực sự và đặt nó ngang cấp với C++ và C#. Về mặt kỹ thuật, một ứng dụng được tạo bởi VB.NET không có gì khác biệt so với ứng dụng tạo bằng C++ hay C#.
Thay đổi cú pháp
Tuy những thay đổi về kỹ thuật trong VB.NET cực kỳ quan trọng (và rất được hoan nghênh) nhưng lại không dễ nhận biết như những thay đổi trong cú pháp và cách thức lập trình. Chúng ảnh hưởng nhiều đến khả năng chuyển đổi ứng dụng VB 6.0 sang VB.NET.
Trong bộ công cụ Studio.Net, Microsoft có cung cấp tiện ích Upgrade Wizard để chuyển đổi ứng dụng VB 6.0 sang VB.NET.
Thay đổi kiểu dữ liệu
VB.NET đã nói lời chia tay với các kiểu dữ liệu Variant, Short và Long. VB.NET kết hợp kiểu dữ liệu Object và Variant thành kiểu dữ liệu Object duy nhất. Variant là kiểu dữ liệu mặc định của VB 6.0 được gán cho tất cả các biến không được khai báo kiểu cụ thể. Kiểu Variant còn được gán cho các biến ngoài biến đầu tiên trên cùng một dòng khai báo. Ví dụ dòng khai báo sau:
Dim ipCount, ipNumber as Integer
Khai báo biến ipCount là Integer và ipNumber là Variant.
Kiểu dữ liệu Integer giờ đây là Short (16-bit) và kiểu dữ liệu Long là Integer (32-bit). Kiểu Long giờ đây là số 64-bit. Tiện ích Upgrade Wizard thực hiện rất tốt việc thay các kiểu dữ liệu này.
TruongQuocTrung_I12A- Tổng số bài gửi : 18
Join date : 14/03/2012
PHÂN BIỆT PORT,SOCKET????
Port: có thể gọi là một cổng kết nối cho mạng thông tin, mạng internet (theo tiếng Việt).
Cổng kết nối có thể là một cổng thực, vật lý, ví dụ như là trong máy tính có cổng kết nối dây chuyền (serial port) COM1, cổng kết nối song song (parallel port) LPT1 cho máy in, cổng USB, cổng qua card mạng ...v.v. Tuy nhiên trong lý thuyết mạng, cổng kết nối có thể là khái niệm trừu tượng, đánh số từ 0 đến 65535, được dùng trong các lớp phần mềm (không vật lý), ví dụ cổng kết nối 8080 cho web browser, cổng kết nối 80 cho web server v.v. Lý do người ta phát minh ra cái khái niệm trừu tượng này là vì có thể có nhiều ứng dụng cùng dùng chung một cổng vật lý, ví dụ có nhiều ứng dụng dùng cổng card mạng: email, browser, ..v.v. Để tránh nhầm lẫn với nhau, mỗi ứng dụng phải dùng riêng ổ kết nối (socket), dùng riêng giao thức (protocol).
Socket: có thể gọi là một ổ kết nối hay là một điểm kết nối cho các ứng dụng thông tin với nhau (theo tiếng Việt).
Đây là một khái niệm trừu tượng (không vật lý) trong lý thuyết mạng, thuộc về phần mềm. Một ổ kết nối (socket) là một kết hợp giữa địa chỉ IP và một cổng kết nối (port), ví dụ socket A (194.125.1.32:2001), socket B (127.0.0.1:1927)..v.v. Với khái niệm này, các ứng dụng có thể thông tin với nhau trên cùng một máy tính, hoặc là trên các máy tính khác nhau qua mạng LAN, mạng internet, ...v.v. Một khái niệm không thể thiếu khi dùng ổ kết nối (socket) đó là giao thức (protocol), các ứng dụng thông thường trao đổi thông tin, dữ liệu qua giao thức, ví dụ UDP, TCP/IP.
Khi nào thì dùng port và khi nào thì dùng socket? Dùng port khi sự kết nối, thông tin qua một môi trường vật lý, ví dụ qua serial port có cáp kết nối, ví dụ qua InfraRed, BlueTooth có sóng radio. Dùng socket khi sự kết nối, thông tin từ xa, có vẽ trừu tượng qua mạng LAN, mạng internet.javascript:emoticonp('')
Cổng kết nối có thể là một cổng thực, vật lý, ví dụ như là trong máy tính có cổng kết nối dây chuyền (serial port) COM1, cổng kết nối song song (parallel port) LPT1 cho máy in, cổng USB, cổng qua card mạng ...v.v. Tuy nhiên trong lý thuyết mạng, cổng kết nối có thể là khái niệm trừu tượng, đánh số từ 0 đến 65535, được dùng trong các lớp phần mềm (không vật lý), ví dụ cổng kết nối 8080 cho web browser, cổng kết nối 80 cho web server v.v. Lý do người ta phát minh ra cái khái niệm trừu tượng này là vì có thể có nhiều ứng dụng cùng dùng chung một cổng vật lý, ví dụ có nhiều ứng dụng dùng cổng card mạng: email, browser, ..v.v. Để tránh nhầm lẫn với nhau, mỗi ứng dụng phải dùng riêng ổ kết nối (socket), dùng riêng giao thức (protocol).
Socket: có thể gọi là một ổ kết nối hay là một điểm kết nối cho các ứng dụng thông tin với nhau (theo tiếng Việt).
Đây là một khái niệm trừu tượng (không vật lý) trong lý thuyết mạng, thuộc về phần mềm. Một ổ kết nối (socket) là một kết hợp giữa địa chỉ IP và một cổng kết nối (port), ví dụ socket A (194.125.1.32:2001), socket B (127.0.0.1:1927)..v.v. Với khái niệm này, các ứng dụng có thể thông tin với nhau trên cùng một máy tính, hoặc là trên các máy tính khác nhau qua mạng LAN, mạng internet, ...v.v. Một khái niệm không thể thiếu khi dùng ổ kết nối (socket) đó là giao thức (protocol), các ứng dụng thông thường trao đổi thông tin, dữ liệu qua giao thức, ví dụ UDP, TCP/IP.
Khi nào thì dùng port và khi nào thì dùng socket? Dùng port khi sự kết nối, thông tin qua một môi trường vật lý, ví dụ qua serial port có cáp kết nối, ví dụ qua InfraRed, BlueTooth có sóng radio. Dùng socket khi sự kết nối, thông tin từ xa, có vẽ trừu tượng qua mạng LAN, mạng internet.javascript:emoticonp('')
TruongQuocTrung_I12A- Tổng số bài gửi : 18
Join date : 14/03/2012
Liên lạc giữa các tiến trình trong hệ thống khách - chủ? Khái niệm Sockets?????
Nhu cầu liên lạc giữa các tiến trình:
- Trong môi trường đa chương, một tiến trình không đơn độc trong hệ thống , mà có thể ảnh hưởng đến các tiến trình khác , hoặc bị các tiến trình khác tác động. Nói cách khác, các tiến trình là những thực thể độc lập , nhưng chúng vẫn có nhu cầu liên lạc với nhau để :
- Chia sẻ thông tin: nhiều tiến trình có thể cùng quan tâm đến những dữ liệu nào đó, do vậy hệ điều hành cần cung cấp một môi trường cho phép sự truy cập đồng thời đến các dữ liệu chung.
- Hợp tác hoàn thành tác vụ: đôi khi để đạt được một sự xử lý nhanh chóng, người ta phân chia một tác vụ thành các công việc nhỏ có thể tiến hành song song. Thường thì các công việc nhỏ này cần hợp tác với nhau để cùng hoàn thành tác vụ ban đầu, ví dụ dữ liệu kết xuất của tiến trình này lại là dữ liệu nhập cho tiến trình khác. Trong các trường hợp đó, hệ điều hành cần cung cấp cơ chế để các tiến trình có thể trao đổi thông tin với nhau.
Khái niệm Sockets:
Sockets được định nghĩa là một điểm đầu của liên kết truyền thông, được xác định bởi địa chỉ IP và số hiệu cổng.
- Là một phương pháp dùng để giao tiếp giữa các tiến trình khác nhau trong mạng máy tính hay là trên một máy đơn.
- Socket là một trong những phương thức giao tiếp giữa các quá trình (inter-process communication) như pipe , message queue .... Giả sử ta muốn thiết kế một hệ thống trao đổi file.
- Hệ thống này hoạt động như sau : Tất cả dữ liệu được lưu trữ trên một máy chủ mạnh để bảo đảm an toàn và dễ quản lý Giao tiếp socket giúp chúng ta hiện thực mô hình client / server dễ dàng hơn.
Ví dụ: A muốn đến nhà B thì trước tiên phải mở cửa đi ra ngoài. Sau đó A đi bộ đến nhà B. Bằng cách nào để đến nhà B không quan tâm phải đi như thế nào.Khi đến nhà B thì A phải bấm chuông để B ra mở cửa. Qúa trình kết nối giữa 2 ứng dụng trên mạng cũng giống như vậy.Client mở một Sockets"Cái cửa' sau đó nó nhờ các lớp mạng tạo ra kết nối tới Server(không quan tâm là kết nối thế nào). Tiếp theo Server cũng tạo ra một sockets khác có địa chỉ "cái cửa thứ 2, nhưng có chuông, số nhà hẻn hoi". Khi có kết nối đúng tới Server dựa vào thông tin trên sockets của server(giống như client tìm đúng số nhà, bấm chuông...) Thì server sẽ mở cổng ra và client/server sẽ bắt đầu trao đổi dữ liệu.
Để thực hiện liên lạc bằng socket, cần tiến hành các thao tác :
- Tạo lập hay mở một socket.
- Gắn kết một socket với một địa chỉ.
- Liên lạc : có hai kiểu liên lạc tùy thuộc vào chế độ nối kết:
a) Liên lạc trong chế độ không liên kết : liên lạc theo hình thức hộp thư:
- Hai tiến trình liên lạc với nhau không kết nối trực tiếp
- Mỗi thông điệp phải kèm theo địa chỉ người nhận.
Hình thức liên lạc này có đặc điểm được :
- Người gởi không chắc chắn thông điệp của học được gởi đến người nhận,
- Một thông điệp có thể được gởi nhiều lần,
- Hai thông điệp đượ gởi theo một thứ tự nào đó có thể đến tay người nhận theo một thứ tự khác.
Một tiến trình sau khi đã mở một socket có thể sử dụng nó để liên lạc với nhiều tiến trình khác nhau nhờ sử hai primitive send và receive.
b) Liên lạc trong chế độ nối kết: Một liên kết được thành lập giữa hai tiến trình. Trước khi mối liên kết này được thiết lập, một trong hai tiến trình phải đợi có một tiến trình khác yêu cầu kết nối.Có thể sử dụng sockets để liên lạc theo mô hình client-server. 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 tin bằng cách sử dụng các primitive send và receive.
- Hủy một socket .
Ví dụ : Trong nghi thức truyền thông TCP, mỗi mối nối giữa hai máy tính được xác định bởi một port, khái niệm port ở đây không phải là một cổng giao tiếp trên thiết bị vật lý mà chỉ là một khái niệm logic trong cách nhìn của người lập trình, mỗi port được tương ứng với một số nguyên dương.
Cơ chế sockets có thể sử dụng để chuẩn hoá mối liên lạc giữa các tiến trình vốn không liên hệ với nhau, và có thể hoạt động trong những hệ thống khác nhau.
- Trong môi trường đa chương, một tiến trình không đơn độc trong hệ thống , mà có thể ảnh hưởng đến các tiến trình khác , hoặc bị các tiến trình khác tác động. Nói cách khác, các tiến trình là những thực thể độc lập , nhưng chúng vẫn có nhu cầu liên lạc với nhau để :
- Chia sẻ thông tin: nhiều tiến trình có thể cùng quan tâm đến những dữ liệu nào đó, do vậy hệ điều hành cần cung cấp một môi trường cho phép sự truy cập đồng thời đến các dữ liệu chung.
- Hợp tác hoàn thành tác vụ: đôi khi để đạt được một sự xử lý nhanh chóng, người ta phân chia một tác vụ thành các công việc nhỏ có thể tiến hành song song. Thường thì các công việc nhỏ này cần hợp tác với nhau để cùng hoàn thành tác vụ ban đầu, ví dụ dữ liệu kết xuất của tiến trình này lại là dữ liệu nhập cho tiến trình khác. Trong các trường hợp đó, hệ điều hành cần cung cấp cơ chế để các tiến trình có thể trao đổi thông tin với nhau.
Khái niệm Sockets:
Sockets được định nghĩa là một điểm đầu của liên kết truyền thông, được xác định bởi địa chỉ IP và số hiệu cổng.
- Là một phương pháp dùng để giao tiếp giữa các tiến trình khác nhau trong mạng máy tính hay là trên một máy đơn.
- Socket là một trong những phương thức giao tiếp giữa các quá trình (inter-process communication) như pipe , message queue .... Giả sử ta muốn thiết kế một hệ thống trao đổi file.
- Hệ thống này hoạt động như sau : Tất cả dữ liệu được lưu trữ trên một máy chủ mạnh để bảo đảm an toàn và dễ quản lý Giao tiếp socket giúp chúng ta hiện thực mô hình client / server dễ dàng hơn.
Ví dụ: A muốn đến nhà B thì trước tiên phải mở cửa đi ra ngoài. Sau đó A đi bộ đến nhà B. Bằng cách nào để đến nhà B không quan tâm phải đi như thế nào.Khi đến nhà B thì A phải bấm chuông để B ra mở cửa. Qúa trình kết nối giữa 2 ứng dụng trên mạng cũng giống như vậy.Client mở một Sockets"Cái cửa' sau đó nó nhờ các lớp mạng tạo ra kết nối tới Server(không quan tâm là kết nối thế nào). Tiếp theo Server cũng tạo ra một sockets khác có địa chỉ "cái cửa thứ 2, nhưng có chuông, số nhà hẻn hoi". Khi có kết nối đúng tới Server dựa vào thông tin trên sockets của server(giống như client tìm đúng số nhà, bấm chuông...) Thì server sẽ mở cổng ra và client/server sẽ bắt đầu trao đổi dữ liệu.
Để thực hiện liên lạc bằng socket, cần tiến hành các thao tác :
- Tạo lập hay mở một socket.
- Gắn kết một socket với một địa chỉ.
- Liên lạc : có hai kiểu liên lạc tùy thuộc vào chế độ nối kết:
a) Liên lạc trong chế độ không liên kết : liên lạc theo hình thức hộp thư:
- Hai tiến trình liên lạc với nhau không kết nối trực tiếp
- Mỗi thông điệp phải kèm theo địa chỉ người nhận.
Hình thức liên lạc này có đặc điểm được :
- Người gởi không chắc chắn thông điệp của học được gởi đến người nhận,
- Một thông điệp có thể được gởi nhiều lần,
- Hai thông điệp đượ gởi theo một thứ tự nào đó có thể đến tay người nhận theo một thứ tự khác.
Một tiến trình sau khi đã mở một socket có thể sử dụng nó để liên lạc với nhiều tiến trình khác nhau nhờ sử hai primitive send và receive.
b) Liên lạc trong chế độ nối kết: Một liên kết được thành lập giữa hai tiến trình. Trước khi mối liên kết này được thiết lập, một trong hai tiến trình phải đợi có một tiến trình khác yêu cầu kết nối.Có thể sử dụng sockets để liên lạc theo mô hình client-server. 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 tin bằng cách sử dụng các primitive send và receive.
- Hủy một socket .
Ví dụ : Trong nghi thức truyền thông TCP, mỗi mối nối giữa hai máy tính được xác định bởi một port, khái niệm port ở đây không phải là một cổng giao tiếp trên thiết bị vật lý mà chỉ là một khái niệm logic trong cách nhìn của người lập trình, mỗi port được tương ứng với một số nguyên dương.
Cơ chế sockets có thể sử dụng để chuẩn hoá mối liên lạc giữa các tiến trình vốn không liên hệ với nhau, và có thể hoạt động trong những hệ thống khác nhau.
TruongQuocTrung_I12A- Tổng số bài gửi : 18
Join date : 14/03/2012
Phương thức liên lạc giữa các tiến trình qua IPC ?
Liên lạc trực tiếp (Direct Communications)
- Theo địa chỉ đối xứng (Symmetric Scheme)
+ Send (P,Message) - Gửi thông điệp cho P
+ Recieve (Q,Message) - Nhận thông điệp từ Q
+ Đặc điểm :
1. Liên kết được thiết lập tự động giữa mỗi cặp tiến trình.
2. Liên kết chỉ giữa 2 tiến trình.
3. Chỉ có 1 liên kết giữa mỗi cặp.
4. Tính đối xứng của liên lạc (2 bên đều biết đích xác tên của nhau khi Gửi/Nhận).
- Theo địa chỉ phi đối xứng (Asymmetric Sheme)
+ Send (P,Message) - Gửi thông điệp cho P
+ Receive (id, Message) - Nhận thông điệp đến từ tiến trình bất kỳ, Biến id chứa số hiệu tiến trình gửi.
Liên lạc gián tiếp (Indirect Communications)
- Qua các hộp thư (Mailboxes) hoặc cổng (Ports).
- Hộp thư là một thực thể qua đó thông điệp được gửi đến và lấy ra.
- Mỗi hộp thư có định dạng riêng.
- Hai tiến trình phải chung nhau một hộp thư nào đó.
- Hai loại hộp thư:
+ Hộp thư tiến trình (Process Mailbox) : Nằm trong vùng địa chỉ của một tiến trình nào đó.
+ Hôp thư hệ điều hành (OS Mailbox) : Nằm trong vùng địa chỉ của hệ điều hành.
- Theo địa chỉ đối xứng (Symmetric Scheme)
+ Send (P,Message) - Gửi thông điệp cho P
+ Recieve (Q,Message) - Nhận thông điệp từ Q
+ Đặc điểm :
1. Liên kết được thiết lập tự động giữa mỗi cặp tiến trình.
2. Liên kết chỉ giữa 2 tiến trình.
3. Chỉ có 1 liên kết giữa mỗi cặp.
4. Tính đối xứng của liên lạc (2 bên đều biết đích xác tên của nhau khi Gửi/Nhận).
- Theo địa chỉ phi đối xứng (Asymmetric Sheme)
+ Send (P,Message) - Gửi thông điệp cho P
+ Receive (id, Message) - Nhận thông điệp đến từ tiến trình bất kỳ, Biến id chứa số hiệu tiến trình gửi.
Liên lạc gián tiếp (Indirect Communications)
- Qua các hộp thư (Mailboxes) hoặc cổng (Ports).
- Hộp thư là một thực thể qua đó thông điệp được gửi đến và lấy ra.
- Mỗi hộp thư có định dạng riêng.
- Hai tiến trình phải chung nhau một hộp thư nào đó.
- Hai loại hộp thư:
+ Hộp thư tiến trình (Process Mailbox) : Nằm trong vùng địa chỉ của một tiến trình nào đó.
+ Hôp thư hệ điều hành (OS Mailbox) : Nằm trong vùng địa chỉ của hệ điều hành.
So sánh 2 giao thức UDP và TCP ?
Giống nhau : đều là các giao thức mạng TCP/IP, đều có chức năng kết nối các máy lại với nhau, và có thể gửi dữ liệu cho nhau....
Khác nhau :
TCP :
- Có kích thướt header lớn hơn vì TCP phải hộ trợ nhiều chức năng hữu ích hơn(như khả năng khôi phục lỗi).
- Dùng cho mạng WAN
- Không cho phép mất gói tin
- Đảm bảo việc truyền dữ liệu
- Tốc độ truyền thấp hơn UDP
UDP :
- UDP dùng ít byte hơn cho phần header và yêu cầu xử lý từ host ít hơn.
- Dùng cho mạng LAN
- Cho phép mất dữ liệu
- Không đảm bảo.
- Tốc độ truyền cao, VolP truyền tốt qua UDP
Khác nhau :
TCP :
- Có kích thướt header lớn hơn vì TCP phải hộ trợ nhiều chức năng hữu ích hơn(như khả năng khôi phục lỗi).
- Dùng cho mạng WAN
- Không cho phép mất gói tin
- Đảm bảo việc truyền dữ liệu
- Tốc độ truyền thấp hơn UDP
UDP :
- UDP dùng ít byte hơn cho phần header và yêu cầu xử lý từ host ít hơn.
- Dùng cho mạng LAN
- Cho phép mất dữ liệu
- Không đảm bảo.
- Tốc độ truyền cao, VolP truyền tốt qua UDP
Phân biệt 2 hốc liên lạc (Two types of Sockets) ?
- Có kết nối (TCP): Thiết lập sẵn mối liên kết giữa hai máy trước khi truyền. Trao đổi dữ liệu an toàn giữa hai đầu, dữ liệu nào gửi trước tới trước đảm bào tính trật tự.
VD: Khi đi qua sông thì phải nối sợi dây cáp từ bờ bên này tới bờ bên kia, rồi men theo sợi dây cáp để đi qua.
- Không kết nối (UDP):Không phải thiết lập sẵn mối liên kết trước khi truyền, do đó dễ dàng liên lạc với nhiều máy cùng một lúc. Nhưng không đảm bảo bằng TCP. Không gắn hai đầu chặt chẽ với nhau, không theo trật tự gửi tin.
VD: Khi qua sông nhưng không đi theo sợi dây cáp có sẵn mà tự do đi qua sông.
Tuy nhiên, TCP và UDP là như nhau, bình đẳng, không có cái nào hơn hẳn cái nào
VD: Khi đi qua sông thì phải nối sợi dây cáp từ bờ bên này tới bờ bên kia, rồi men theo sợi dây cáp để đi qua.
- Không kết nối (UDP):Không phải thiết lập sẵn mối liên kết trước khi truyền, do đó dễ dàng liên lạc với nhiều máy cùng một lúc. Nhưng không đảm bảo bằng TCP. Không gắn hai đầu chặt chẽ với nhau, không theo trật tự gửi tin.
VD: Khi qua sông nhưng không đi theo sợi dây cáp có sẵn mà tự do đi qua sông.
Tuy nhiên, TCP và UDP là như nhau, bình đẳng, không có cái nào hơn hẳn cái nào
Ngoài VNVoice còn có những phần mềm nào trên thị trường?Nêu ưu và khuyết điểm?
Vspeech: phần mềm nhận dạng giọng nói tiếng Việt trên máy tính: do nhóm BK02 của Đại học Bách khoa TP.HCM chế tạo thành công vào cuối năm 2004.
Ưu điểm:
Ngoài việc diều khiển máy tính bằng tiếng Việt, phần mềm này cũng là công cụ nhận dạng và điều khiển máy tính bằng tiếng Anh rất tốt.
Một trong những độc đáo và tiện dụng nhất là VSpeech được tích hợp với Internet Explorer.
Nhược điểm:
Vspeech chưa đủ khả năng điều khiển hoàn toàn một máy tính nhưng ít ra đây cũng là một công cụ giải trí tuyệt hảo, tránh sự nhàm chán cho những người phải làm việc với máy tính thường xuyên. Qua thử nghiệm dường như VSpeech “xung khắc” với các chương trình English Study (4.0, 4.1) nên nó tự động báo lỗi và thoát ra khi kích hoạt English Study hoạt động.
VNSpeech phần mềm giúp máy tính nói tiếng Việt
Ưu điểm:
Ưu điểm của phương pháp là dễ triển khai, tiếng nói tạo ra chính là tiếng người .
Tổng hợp được tiếng Việt bằng các luật từ các thành phần đặc trưng của ngữ âm tiếng Việt, tự động đọc không hạn chế văn bản tiếng Việt.
Là một công cụ mới để nghiên cứu ngữ âm tiếng Việt - Phân tích bằng Tổng hợp. Vnspeech thực hiện phân tích và chuẩn hóa văn bản tiếng Việt, đọc khá rõ tất cả các âm tiết tiếng Việt, thể hiện hợp lý ngữ điệu khi đọc các loại câu khác nhau, có thể điều khiển không hạn chế tốc độ đọc, cao độ của giọng nói để thành các giọng nói khác nhau.
Kích thước toàn bộ của Vnspeech rất nhỏ, không cần file dữ liệu riêng, toàn bộ đều nằm trên file thực thi (chương trình minh hoạ chỉ 350KB), thuận tiện để tích hợp vào mọi loại ứng dụng trên các hệ điều hành, phần cứng khác nhau, hoặc các thiết bị có tài nguyên hạn chế (như thiết bị cầm tay, di động,...).
Vnspeech xử lý văn bản tiếng Việt đầu vào thuộc bảng mã TCVN 5712 và Unicode dựng sẵn, tạo dãy tín hiệu tiếng nói đầu ra mã hóa theo chuẩn PCM (16 bit, mono, có thể thay đổi tần số lấy mẫu tùy ý), có thể ghi lên đĩa thành các file theo định dạng WAV hoặc phát trực tiếp ra loa.
Nhược điểm:
Thêm giọng nói là công việc tốn kém và các tham số đặc trưng chỉ có thể điều khiển hạn chế, điều này dễ dẫn đến méo tiếng và sẽ rất không tự nhiên khi ghép thành đoạn dài ứng với cả câu.
DovisocoTextAloRec phần mềm đọc tiếng Việt, chuyển sang mp3...
Ưu điểm:
Đây là phần mềm được phát triển từ dovisocoTextAloud với độ tuỳ biến cao.
Tự động nhận diện mã tiếng Việt (Unicode, VNI, TCVN-3 ABC) để chọn giọng nói cho thích hợp.
Hỗ trợ từ điển riêng cho mỗi giọng đọc: ví dụ: Thanh Vi.txt là từ điển cho giọng Thanh Vi (mã VNI), Minh Du.txt là từ điển dùng cho giọng đọc Minh Du (mã Unicode),...
Khắc phục được lỗi ngắt dấu câu cho gói giọng nói SaoMai.
Chức năng Text to mp3 cho phép chuyển sang định dạng mp3 với nhiều tuỳ chọn.
Chức năng After reading cho phép tắt, ngủ máy tính sau khi vừa đọc xong văn bản trong bộ nhớ.
Tăng giảm tốc độ, âm lượng cho giọng đọc...
Ưu điểm:
Ngoài việc diều khiển máy tính bằng tiếng Việt, phần mềm này cũng là công cụ nhận dạng và điều khiển máy tính bằng tiếng Anh rất tốt.
Một trong những độc đáo và tiện dụng nhất là VSpeech được tích hợp với Internet Explorer.
Nhược điểm:
Vspeech chưa đủ khả năng điều khiển hoàn toàn một máy tính nhưng ít ra đây cũng là một công cụ giải trí tuyệt hảo, tránh sự nhàm chán cho những người phải làm việc với máy tính thường xuyên. Qua thử nghiệm dường như VSpeech “xung khắc” với các chương trình English Study (4.0, 4.1) nên nó tự động báo lỗi và thoát ra khi kích hoạt English Study hoạt động.
VNSpeech phần mềm giúp máy tính nói tiếng Việt
Ưu điểm:
Ưu điểm của phương pháp là dễ triển khai, tiếng nói tạo ra chính là tiếng người .
Tổng hợp được tiếng Việt bằng các luật từ các thành phần đặc trưng của ngữ âm tiếng Việt, tự động đọc không hạn chế văn bản tiếng Việt.
Là một công cụ mới để nghiên cứu ngữ âm tiếng Việt - Phân tích bằng Tổng hợp. Vnspeech thực hiện phân tích và chuẩn hóa văn bản tiếng Việt, đọc khá rõ tất cả các âm tiết tiếng Việt, thể hiện hợp lý ngữ điệu khi đọc các loại câu khác nhau, có thể điều khiển không hạn chế tốc độ đọc, cao độ của giọng nói để thành các giọng nói khác nhau.
Kích thước toàn bộ của Vnspeech rất nhỏ, không cần file dữ liệu riêng, toàn bộ đều nằm trên file thực thi (chương trình minh hoạ chỉ 350KB), thuận tiện để tích hợp vào mọi loại ứng dụng trên các hệ điều hành, phần cứng khác nhau, hoặc các thiết bị có tài nguyên hạn chế (như thiết bị cầm tay, di động,...).
Vnspeech xử lý văn bản tiếng Việt đầu vào thuộc bảng mã TCVN 5712 và Unicode dựng sẵn, tạo dãy tín hiệu tiếng nói đầu ra mã hóa theo chuẩn PCM (16 bit, mono, có thể thay đổi tần số lấy mẫu tùy ý), có thể ghi lên đĩa thành các file theo định dạng WAV hoặc phát trực tiếp ra loa.
Nhược điểm:
Thêm giọng nói là công việc tốn kém và các tham số đặc trưng chỉ có thể điều khiển hạn chế, điều này dễ dẫn đến méo tiếng và sẽ rất không tự nhiên khi ghép thành đoạn dài ứng với cả câu.
DovisocoTextAloRec phần mềm đọc tiếng Việt, chuyển sang mp3...
Ưu điểm:
Đây là phần mềm được phát triển từ dovisocoTextAloud với độ tuỳ biến cao.
Tự động nhận diện mã tiếng Việt (Unicode, VNI, TCVN-3 ABC) để chọn giọng nói cho thích hợp.
Hỗ trợ từ điển riêng cho mỗi giọng đọc: ví dụ: Thanh Vi.txt là từ điển cho giọng Thanh Vi (mã VNI), Minh Du.txt là từ điển dùng cho giọng đọc Minh Du (mã Unicode),...
Khắc phục được lỗi ngắt dấu câu cho gói giọng nói SaoMai.
Chức năng Text to mp3 cho phép chuyển sang định dạng mp3 với nhiều tuỳ chọn.
Chức năng After reading cho phép tắt, ngủ máy tính sau khi vừa đọc xong văn bản trong bộ nhớ.
Tăng giảm tốc độ, âm lượng cho giọng đọc...
Windows Task Manager
Windows Task Manager là ứng dụng task manager kèm theo trong họ hệ điều hành Microsoft Windows NT. Nó cung cấp thông tin đầy đủ về hiệu năng hệ thống, các ứng dụng đang chạy, các tiến trình và sự phân chia CPU, thông tin về bộ nhớ, sự hoạt động và thống kê mạng, người dùng đăng nhập và các dịch vụ hệ thống.Task manager cũng có thể dùng để thiết lập mức độ ưu tiên cho các tiến trình, chọn nhân CPU cho phép chạy một ứng dụng chỉ định, buộc dừng một tiến trình và tắt máy, khởi động lại, ngủ đông, đăng xuất. Windows Task Manager được giới thiệu với Windows NT 4.0. Những phiên bản trước đó của Windows NT thì có ứng dụng Task List, với một vài chức năng như hiện danh sách các tiến trình, ngắt hoặc tạo một tiến trình mới.
pplications tab trong Task Manager hiện danh sách các chương trình đang hoạt động. Có một vài nguyên tắc để xác định một tiến trình có xuất hiện ở Tab này hay không. Phần lớp các ứng dụng có biểu tượng ở task bar thì cũng xuất hiện trên tab này, nhưng không phải luôn luôn như vậy.
Chuột-phải lên một ứng dụng, sẽ có danh sách các hành động sau:
Switch To: chuyển sang ứng dụng được chọn, thu nhỏ task manager.
Bring To Front: chuyển ứng dụng được chọn lên trên.
End task, New task, minimaze, maximaze: Gửi lệnh đóng cho ứng dụng, khởi động ứng dụng mới, thu nhỏ, phóng to ứng dụng.
Goto process: chuyển qua tiến trình tương ứng với ứng dụng đả chọn ở tab tiến trình.
Chọn nhiều ứng dụng:
Cascade: sắp các ứng dụng được chọn kiểu thác nước.
Tile Horizontally, Tile Vertically: lợp ngang, lợp đứng các cửa sổ.
Processes tab hiện danh sách tất cả các tiến trình đang hoạt động trên hệ thống. Bao gồm cả services và tiến trình từ những người dùng khác (Nếu đánh dấu ô Show processes from all users). trước Windows XP, tên tiến trình dài hơn 15 bị cắt ngắn đi. [1]
Nháy phải chuột vào tên tiến trình sẽ thấy một popup-menu hiện lên, nội dung của menu đó có ý nghĩa như sau:
Open file location: mở vị trí của tiến trình trên đĩa.
End process: Dừng tiến trình.
End process tree: Dừng tiến trình đó và tất cả những tiến trình con (là tiến trình được gọi từ tiến trình đó).
Set priority: Đặt mức ưu tiên của hệ thống cho tiến trình.
Set Affinity: Chọn CPU nào để ứng dụng hoạt động trên đó.
Properties: Hộp thoại thông tin của tệp tiến trình.
Goto service(s): Nhảy tới dịch vụ (những dịch vụ) chạy ứng dụng đó, nếu có.
Để thay đổi những cột thông tin nào sẽ hiện thị trên bảng vào menu View chọn Select columns...
performance tab hiển thị toàn bộ thống kê về hiệu năng hệ thống, đáng kể nhất phải nói đến là phần trăm CPU đả dùng và bao nhiêu RAM bộ nhớ đã cấp. Biểu đồ những thông số đó theo thời gian đồng thời xuất hiện bên cạnh, những thông tin đầy đủ về bộ nhớ cũng được hiển thị bên dưới.
Có một tùy chọn để xem riêng phần nhân và phần ứng dụng chiếm tài nguyên thế nào, để bật tùy chọn, bạn vào menu View chọn show kernel times. Màu đỏ đại diện cho phần tài nguyên dành cho nhân hệ điều hành, màu xanh cho các ứng dụng.
Networking tab hiển thị trạng thái của từng bộ điều hợp mạng trên máy tính. Mặc định hiển thị adapter name, phần trăm của network utilization, link speed và state của bộ điều hợp (để hiển thị thêm: View chọn Select columns). Biểu đồ hoạt động mạng gần đây hiển thị ngay phía trên.
Users tab hiển thị tất cả những người dùng đang đăng nhập vào hệ thống. Trên máy chủ, nhiều người có thể đăng nhập sử dụng Terminal Services. Nếu như là Windows XP, có thể nhiều người cùng đăng nhập vào hệ thống bằng cách Fast User Switching. Người dùng có thể ngắt kết nối ( disconnected) hoặc đăng xuất (logged off ) bằng tab này.
Double-clicking vào vùng lề của Task Manager sẽ thu nhỏ các thông tin, chỉ hiện thị thông tin của tab hiện thời, menu, thanh trạng thái sẽ tạm thời biến mất, bạn sẽ có một giao diện mini. Giao diện này có thể thay đổi kích cỡ. Double clicking lần nữa sẽ đưa về dạng bình thường ban đầu. Chế độ này gọi là Tiny Footprint. [2]
pplications tab trong Task Manager hiện danh sách các chương trình đang hoạt động. Có một vài nguyên tắc để xác định một tiến trình có xuất hiện ở Tab này hay không. Phần lớp các ứng dụng có biểu tượng ở task bar thì cũng xuất hiện trên tab này, nhưng không phải luôn luôn như vậy.
Chuột-phải lên một ứng dụng, sẽ có danh sách các hành động sau:
Switch To: chuyển sang ứng dụng được chọn, thu nhỏ task manager.
Bring To Front: chuyển ứng dụng được chọn lên trên.
End task, New task, minimaze, maximaze: Gửi lệnh đóng cho ứng dụng, khởi động ứng dụng mới, thu nhỏ, phóng to ứng dụng.
Goto process: chuyển qua tiến trình tương ứng với ứng dụng đả chọn ở tab tiến trình.
Chọn nhiều ứng dụng:
Cascade: sắp các ứng dụng được chọn kiểu thác nước.
Tile Horizontally, Tile Vertically: lợp ngang, lợp đứng các cửa sổ.
Processes tab hiện danh sách tất cả các tiến trình đang hoạt động trên hệ thống. Bao gồm cả services và tiến trình từ những người dùng khác (Nếu đánh dấu ô Show processes from all users). trước Windows XP, tên tiến trình dài hơn 15 bị cắt ngắn đi. [1]
Nháy phải chuột vào tên tiến trình sẽ thấy một popup-menu hiện lên, nội dung của menu đó có ý nghĩa như sau:
Open file location: mở vị trí của tiến trình trên đĩa.
End process: Dừng tiến trình.
End process tree: Dừng tiến trình đó và tất cả những tiến trình con (là tiến trình được gọi từ tiến trình đó).
Set priority: Đặt mức ưu tiên của hệ thống cho tiến trình.
Set Affinity: Chọn CPU nào để ứng dụng hoạt động trên đó.
Properties: Hộp thoại thông tin của tệp tiến trình.
Goto service(s): Nhảy tới dịch vụ (những dịch vụ) chạy ứng dụng đó, nếu có.
Để thay đổi những cột thông tin nào sẽ hiện thị trên bảng vào menu View chọn Select columns...
performance tab hiển thị toàn bộ thống kê về hiệu năng hệ thống, đáng kể nhất phải nói đến là phần trăm CPU đả dùng và bao nhiêu RAM bộ nhớ đã cấp. Biểu đồ những thông số đó theo thời gian đồng thời xuất hiện bên cạnh, những thông tin đầy đủ về bộ nhớ cũng được hiển thị bên dưới.
Có một tùy chọn để xem riêng phần nhân và phần ứng dụng chiếm tài nguyên thế nào, để bật tùy chọn, bạn vào menu View chọn show kernel times. Màu đỏ đại diện cho phần tài nguyên dành cho nhân hệ điều hành, màu xanh cho các ứng dụng.
Networking tab hiển thị trạng thái của từng bộ điều hợp mạng trên máy tính. Mặc định hiển thị adapter name, phần trăm của network utilization, link speed và state của bộ điều hợp (để hiển thị thêm: View chọn Select columns). Biểu đồ hoạt động mạng gần đây hiển thị ngay phía trên.
Users tab hiển thị tất cả những người dùng đang đăng nhập vào hệ thống. Trên máy chủ, nhiều người có thể đăng nhập sử dụng Terminal Services. Nếu như là Windows XP, có thể nhiều người cùng đăng nhập vào hệ thống bằng cách Fast User Switching. Người dùng có thể ngắt kết nối ( disconnected) hoặc đăng xuất (logged off ) bằng tab này.
Double-clicking vào vùng lề của Task Manager sẽ thu nhỏ các thông tin, chỉ hiện thị thông tin của tab hiện thời, menu, thanh trạng thái sẽ tạm thời biến mất, bạn sẽ có một giao diện mini. Giao diện này có thể thay đổi kích cỡ. Double clicking lần nữa sẽ đưa về dạng bình thường ban đầu. Chế độ này gọi là Tiny Footprint. [2]
nguyen_tuan_phat_I12A- Tổng số bài gửi : 15
Join date : 17/02/2012
Trình biên dịch
rình biên dịch, còn gọi là phần mềm biên dịch, compiler, là một chương trình máy tính làm công việc dịch một chuỗi các câu lệnh được viết bằng một ngôn ngữ lập trình (gọi là ngôn ngữ nguồn hay mã nguồn), thành một chương trình tương đương nhưng ở dưới dạng một ngôn ngữ máy tính mới (gọi là ngôn ngữ đích) và thường là ngôn ngữ ở cấp thấp hơn, như ngôn ngữ máy. Chương trình mới được dịch này gọi mã đối tượng.
Trình biên dịch cùng bản và trình biên dịch chéo bản
Tất cả các trình biên dịch đều hoặc là biên dịch cùng bản hoặc là biên dịch chéo bản.
Một trình biên dịch có thể sản xuất ra mã chủ định để chạy trên cùng một kiểu máy tính và một kiểu hệ điều hành như là chạy trên trên máy mà trình biên dịch tự nó tiến hành được gọi là một trình biên dịch cùng bản.
Một loại khác, trình biên dịch có thể sản xuất ra mã mà được thiết kế để chạy trên các kiểu máy tính khác hay hệ điều hành khác. Trường hợp này gọi là trình biên dịch chéo bản. Các trình biên dịch chéo bản thì rất có ích khi gặp một hệ thống phần cứng mới trong lần đầu tiên. Trình biên dịch chéo bản cũng rất cần khi việc phát triển phần mềm cho các hệ thống vi điều khiển, mà chúng chỉ có vừa đủ kho lưu trữ cho mã máy cuối, không đủ để tải trình biên dịch. (như trường hợp dịch chương trình để chạy trên các palmtop và các điện thoại di động chẳng hạn).
Số bước chuyển dịch
Tất cả các trình biên dịch thì có thể là một bước hay nhiều bước
Trình biên dịch một bước: Với loại này, sự chuyển dịch hoàn tất trong một bước và do đó rất nhanh.
Thí dụ của các trình biên dịch trước đây cho Pascal hay Borland C là trình biên dịch một bước.
Các trình biên dịch cần nhiều hơn một bước để hoàn tất gọi là trình biên dịch nhiều bước. Các kiểu trình biên dịch nhiều bước bao gồm:
Trình biên dịch nguồn sang nguồn là loại trình biên dịch nhận vào mã nguồn là một ngôn ngữ cấp cao và chuyển dịch thành một ngôn ngữ cấp cao khác.
Thí dụ: Một trình biên dịch tự động song song hoá sẽ thường xuyên lấy chương trình trong ngôn ngữ cấp cao ở ngõ vào và chuyển dạng mã nguồn và chú giải nó với các chú giải mã song song (như OpenMP hay cấu trúc ngôn ngữ (như các câu lệnh DOALL của Fortran)).
Trình biên dịch phân đoạn biên dịch sang ngôn ngữ ASM của một máy lý thuyết như là vài tiến hành của Prolog. Loại máy Prolog này còn được gọi là máy trừu tượng Warren (hay WAM).
Thí dụ: Các trình biên dịch bytecode cho Java, Python và nhiều trình biên dịch khác nữa là một kiểu con của kiểu này.
Trình biên dịch động hay còn gọi là trình biên dịch JIT sẽ chuyển dịch các ứng dụng sang bytecode, sau đó, bytecode sẽ được dịch sang mã của ngôn ngữ máy tương thích trước khi thi hành.
Thí dụ: Trình biên dịch JIT được dùng bởi Smalltalk, Java, cũng như dùng bởi Ngôn ngữ trung gian thông dụng của Microsoft.NET.
Trình biên dịch cùng bản và trình biên dịch chéo bản
Tất cả các trình biên dịch đều hoặc là biên dịch cùng bản hoặc là biên dịch chéo bản.
Một trình biên dịch có thể sản xuất ra mã chủ định để chạy trên cùng một kiểu máy tính và một kiểu hệ điều hành như là chạy trên trên máy mà trình biên dịch tự nó tiến hành được gọi là một trình biên dịch cùng bản.
Một loại khác, trình biên dịch có thể sản xuất ra mã mà được thiết kế để chạy trên các kiểu máy tính khác hay hệ điều hành khác. Trường hợp này gọi là trình biên dịch chéo bản. Các trình biên dịch chéo bản thì rất có ích khi gặp một hệ thống phần cứng mới trong lần đầu tiên. Trình biên dịch chéo bản cũng rất cần khi việc phát triển phần mềm cho các hệ thống vi điều khiển, mà chúng chỉ có vừa đủ kho lưu trữ cho mã máy cuối, không đủ để tải trình biên dịch. (như trường hợp dịch chương trình để chạy trên các palmtop và các điện thoại di động chẳng hạn).
Số bước chuyển dịch
Tất cả các trình biên dịch thì có thể là một bước hay nhiều bước
Trình biên dịch một bước: Với loại này, sự chuyển dịch hoàn tất trong một bước và do đó rất nhanh.
Thí dụ của các trình biên dịch trước đây cho Pascal hay Borland C là trình biên dịch một bước.
Các trình biên dịch cần nhiều hơn một bước để hoàn tất gọi là trình biên dịch nhiều bước. Các kiểu trình biên dịch nhiều bước bao gồm:
Trình biên dịch nguồn sang nguồn là loại trình biên dịch nhận vào mã nguồn là một ngôn ngữ cấp cao và chuyển dịch thành một ngôn ngữ cấp cao khác.
Thí dụ: Một trình biên dịch tự động song song hoá sẽ thường xuyên lấy chương trình trong ngôn ngữ cấp cao ở ngõ vào và chuyển dạng mã nguồn và chú giải nó với các chú giải mã song song (như OpenMP hay cấu trúc ngôn ngữ (như các câu lệnh DOALL của Fortran)).
Trình biên dịch phân đoạn biên dịch sang ngôn ngữ ASM của một máy lý thuyết như là vài tiến hành của Prolog. Loại máy Prolog này còn được gọi là máy trừu tượng Warren (hay WAM).
Thí dụ: Các trình biên dịch bytecode cho Java, Python và nhiều trình biên dịch khác nữa là một kiểu con của kiểu này.
Trình biên dịch động hay còn gọi là trình biên dịch JIT sẽ chuyển dịch các ứng dụng sang bytecode, sau đó, bytecode sẽ được dịch sang mã của ngôn ngữ máy tương thích trước khi thi hành.
Thí dụ: Trình biên dịch JIT được dùng bởi Smalltalk, Java, cũng như dùng bởi Ngôn ngữ trung gian thông dụng của Microsoft.NET.
nguyen_tuan_phat_I12A- Tổng số bài gửi : 15
Join date : 17/02/2012
Những lý do cộng tác giữa các tiến trình
- Chia sẻ thông tin (Information Sharing): Một tiến trình sử dụng thông tin do tiến trình khác cung cấp
- Tăng tốc tính tóan (Conputation Speedup): Các tiến trình cùng làm việc song song trên một hoặc nhiều máy để giải quyết bài tóan chung
- Đảm bảo tính đơn thể (Modularity): Chương trình được chia thành các đơn thể chức năng vận hành trong các tiền trình hoặc luồng khác nhau
- Đảm bảo tính tiện dụng (Convenience): Người dùng có nhu cầu làm nhiều việc một lúc: sọan thải, in ấn, duyệt web...
LeMInhTien(I11C)- Tổng số bài gửi : 40
Join date : 07/09/2011
ý nghĩa của từ id
Đó là viết tắt của Identification number. Nó nằm trong ID card. ( thẻ căn cước)
Nghĩa là số nhận dạng của một cá nhân nào đấy, người ta quản lý theo số hiệu chứ ko theo tên vì tên có thể trùng nhau và trùng cả ngày sinh...., nhưng mỗi người 1 số ID thì ko bao giờ trùng nhau được.
Số CMND hay số hộ chiếu của mình cũng là số ID.
Trong một số Cty cũng có ID của từng người quy định theo quy ước của Cty. Cũng giống như số báo danh của các thí sinh. Ko ai giống ai cả.
Nghĩa là số nhận dạng của một cá nhân nào đấy, người ta quản lý theo số hiệu chứ ko theo tên vì tên có thể trùng nhau và trùng cả ngày sinh...., nhưng mỗi người 1 số ID thì ko bao giờ trùng nhau được.
Số CMND hay số hộ chiếu của mình cũng là số ID.
Trong một số Cty cũng có ID của từng người quy định theo quy ước của Cty. Cũng giống như số báo danh của các thí sinh. Ko ai giống ai cả.
PhamDucPhuong(I12A)- Tổng số bài gửi : 17
Join date : 19/02/2012
NGOÀI VNVOICE CÒN CÓ NHỮNG PHẦN MỀM NÀO TRÊN THỊ TRƯỜNG?NÊU ƯU VÀ KHUYẾT ĐIỂM?
levanhop.it đã viết:Vspeech: phần mềm nhận dạng giọng nói tiếng Việt trên máy tính: do nhóm BK02 của Đại học Bách khoa TP.HCM chế tạo thành công vào cuối năm 2004.
Ưu điểm:
Ngoài việc diều khiển máy tính bằng tiếng Việt, phần mềm này cũng là công cụ nhận dạng và điều khiển máy tính bằng tiếng Anh rất tốt.
Một trong những độc đáo và tiện dụng nhất là VSpeech được tích hợp với Internet Explorer.
Nhược điểm:
Vspeech chưa đủ khả năng điều khiển hoàn toàn một máy tính nhưng ít ra đây cũng là một công cụ giải trí tuyệt hảo, tránh sự nhàm chán cho những người phải làm việc với máy tính thường xuyên. Qua thử nghiệm dường như VSpeech “xung khắc” với các chương trình English Study (4.0, 4.1) nên nó tự động báo lỗi và thoát ra khi kích hoạt English Study hoạt động.
VNSpeech phần mềm giúp máy tính nói tiếng Việt
Ưu điểm:
Ưu điểm của phương pháp là dễ triển khai, tiếng nói tạo ra chính là tiếng người .
Tổng hợp được tiếng Việt bằng các luật từ các thành phần đặc trưng của ngữ âm tiếng Việt, tự động đọc không hạn chế văn bản tiếng Việt.
Là một công cụ mới để nghiên cứu ngữ âm tiếng Việt - Phân tích bằng Tổng hợp. Vnspeech thực hiện phân tích và chuẩn hóa văn bản tiếng Việt, đọc khá rõ tất cả các âm tiết tiếng Việt, thể hiện hợp lý ngữ điệu khi đọc các loại câu khác nhau, có thể điều khiển không hạn chế tốc độ đọc, cao độ của giọng nói để thành các giọng nói khác nhau.
Kích thước toàn bộ của Vnspeech rất nhỏ, không cần file dữ liệu riêng, toàn bộ đều nằm trên file thực thi (chương trình minh hoạ chỉ 350KB), thuận tiện để tích hợp vào mọi loại ứng dụng trên các hệ điều hành, phần cứng khác nhau, hoặc các thiết bị có tài nguyên hạn chế (như thiết bị cầm tay, di động,...).
Vnspeech xử lý văn bản tiếng Việt đầu vào thuộc bảng mã TCVN 5712 và Unicode dựng sẵn, tạo dãy tín hiệu tiếng nói đầu ra mã hóa theo chuẩn PCM (16 bit, mono, có thể thay đổi tần số lấy mẫu tùy ý), có thể ghi lên đĩa thành các file theo định dạng WAV hoặc phát trực tiếp ra loa.
Nhược điểm:
Thêm giọng nói là công việc tốn kém và các tham số đặc trưng chỉ có thể điều khiển hạn chế, điều này dễ dẫn đến méo tiếng và sẽ rất không tự nhiên khi ghép thành đoạn dài ứng với cả câu.
DovisocoTextAloRec phần mềm đọc tiếng Việt, chuyển sang mp3...
Ưu điểm:
Đây là phần mềm được phát triển từ dovisocoTextAloud với độ tuỳ biến cao.
Tự động nhận diện mã tiếng Việt (Unicode, VNI, TCVN-3 ABC) để chọn giọng nói cho thích hợp.
Hỗ trợ từ điển riêng cho mỗi giọng đọc: ví dụ: Thanh Vi.txt là từ điển cho giọng Thanh Vi (mã VNI), Minh Du.txt là từ điển dùng cho giọng đọc Minh Du (mã Unicode),...
Khắc phục được lỗi ngắt dấu câu cho gói giọng nói SaoMai.
Chức năng Text to mp3 cho phép chuyển sang định dạng mp3 với nhiều tuỳ chọn.
Chức năng After reading cho phép tắt, ngủ máy tính sau khi vừa đọc xong văn bản trong bộ nhớ.
Tăng giảm tốc độ, âm lượng cho giọng đọc...
Ngoài những phần mềm trên thì sản phẩm NHMTTS cũng khá hay, nhưng giọng nói thì theo tiếng Miền Bắc hơi khó nghe.
Re: Thảo luận Bài 4
mình xin bổ sung ví dụ thực tế cho các bạn dễ hiểulevanhop.it đã viết:Liên lạc trực tiếp (Direct Communications)
- Theo địa chỉ đối xứng (Symmetric Scheme)
+ Send (P,Message) - Gửi thông điệp cho P
+ Recieve (Q,Message) - Nhận thông điệp từ Q
+ Đặc điểm :
1. Liên kết được thiết lập tự động giữa mỗi cặp tiến trình.
2. Liên kết chỉ giữa 2 tiến trình.
3. Chỉ có 1 liên kết giữa mỗi cặp.
4. Tính đối xứng của liên lạc (2 bên đều biết đích xác tên của nhau khi Gửi/Nhận).
- Theo địa chỉ phi đối xứng (Asymmetric Sheme)
+ Send (P,Message) - Gửi thông điệp cho P
+ Receive (id, Message) - Nhận thông điệp đến từ tiến trình bất kỳ, Biến id chứa số hiệu tiến trình gửi.
Liên lạc gián tiếp (Indirect Communications)
- Qua các hộp thư (Mailboxes) hoặc cổng (Ports).
- Hộp thư là một thực thể qua đó thông điệp được gửi đến và lấy ra.
- Mỗi hộp thư có định dạng riêng.
- Hai tiến trình phải chung nhau một hộp thư nào đó.
- Hai loại hộp thư:
+ Hộp thư tiến trình (Process Mailbox) : Nằm trong vùng địa chỉ của một tiến trình nào đó.
+ Hôp thư hệ điều hành (OS Mailbox) : Nằm trong vùng địa chỉ của hệ điều hành.
vd: như ở lớp học bạn A ghi thông tin cần trao đổi với bạn B vào giấy rồi gửi cho bạn B. Bạn B đọc xong trả lời rồi gửi lại cho bạn A, cứ tiếp tục như thế đó là liên lạc trực tiếp
Ở trường có mỗi ngăn tủ dành cho mỗi sinh viên, Bạn A viết thư rồi đem bỏ vào ngăn tủ của bạn B,bạn B đọc xong thì trả lời và cũng đem thư gửi vào ngăn tủ cho bạn A, như vậy gọi là liên lạc gián tiếp
PhamDucPhuong(I12A)- Tổng số bài gửi : 17
Join date : 19/02/2012
Re: Thảo luận Bài 4
mình sửa ý của bạn chút:nguyenvanhonglac_0066 đã viết:Ví dụ về khối kiểm soát tiến trình(PCB)
Trong lớp học học sinh thứ nhất (P1) lên bảng để trình bày bài viết của mình, trình bày xong học sinh thứ hai(P2) cũng lên bảng trình bày bài viết của mình nên phải xóa bài viết của học sinh thứ nhất(P1), vì vậy bài của học sinh thứ nhất phải được ghi vào vở (PCB1). Nếu mà học sinh thứ nhất (P1) trở lên bảng lại thì phải xóa bài viết của học sinh thứ hai và trình bày lại bài viết của mình giống như lúc chưa xóa.
Trong lớp học học sinh thứ nhất (P1) lên bảng để trình bày bài viết của mình, trình bày xong học sinh thứ hai(P2) cũng lên bảng trình bày bài viết của mình nên phải xóa bài viết của học sinh thứ nhất(P1), thầy ( HĐH) ghi nhớ lại thông tin của bạn P1. Sau đó, học sinh thứ nhất (P1) trở lên để trình bày tiếp thì thầy sẽ khôi phục lại y như cũ thông tin bạn P1 viết trên bảng lúc chưa xóa để bạn P1 tiếp tục trình bày
PhamDucPhuong(I12A)- Tổng số bài gửi : 17
Join date : 19/02/2012
ý nghĩa của từ id
Đó là viết tắt của Identification number. Nó nằm trong ID card. ( thẻ căn cước)
Nghĩa là số nhận dạng của một cá nhân nào đấy, người ta quản lý theo số hiệu chứ ko theo tên vì tên có thể trùng nhau và trùng cả ngày sinh...., nhưng mỗi người 1 số ID thì ko bao giờ trùng nhau được.
Nghĩa là số nhận dạng của một cá nhân nào đấy, người ta quản lý theo số hiệu chứ ko theo tên vì tên có thể trùng nhau và trùng cả ngày sinh...., nhưng mỗi người 1 số ID thì ko bao giờ trùng nhau được.
fantomas113- Tổng số bài gửi : 1
Join date : 22/02/2012
tiến trình khác chương trình như thế nào
-tiến trình (process) là chương trình trong thời gian thực hiện( đặt dưới sự quản lý của hdh).
có sự phân biệt tiến trình hệ thống(của hdh với tiến trình người dùng.
-bản thân chương trình ko là tiến trình vì là thực thể thụ động (passive), trong khi tiến trình là
thực hoạt động (Active) với nhiều thông tin về trạng thái trong đó có bộ đếm chương trình (Program
Counter) cho biết vị trí lẹnh hiện hành.
có sự phân biệt tiến trình hệ thống(của hdh với tiến trình người dùng.
-bản thân chương trình ko là tiến trình vì là thực thể thụ động (passive), trong khi tiến trình là
thực hoạt động (Active) với nhiều thông tin về trạng thái trong đó có bộ đếm chương trình (Program
Counter) cho biết vị trí lẹnh hiện hành.
phanngocthinh(i12a)- Tổng số bài gửi : 47
Join date : 17/02/2012
tại sao phải có điều phối chậm , điều phối vừa , điều phối nhanh
* Long-term scheduler( or job scheduler)
chọn process nào sẽ được đưa vào ready queue( từ new chuyển sang ready)
* short-term scheduler (or cpu scheduler)
chọn process nào sẽ được chiếm cpu để xử lý( từ read chuyển sang running)
* medium-term scheduler
chuyển process từ bộ nhớ chính sang bộ nhớ thứ cấp(nhưng vẫn nằm trong không gian bộ nhớ ảo)
khi nào cần thì nạp process từ bộ nhớ thứ cấp vào bộ nhớ chính
chọn process nào sẽ được đưa vào ready queue( từ new chuyển sang ready)
* short-term scheduler (or cpu scheduler)
chọn process nào sẽ được chiếm cpu để xử lý( từ read chuyển sang running)
* medium-term scheduler
chuyển process từ bộ nhớ chính sang bộ nhớ thứ cấp(nhưng vẫn nằm trong không gian bộ nhớ ảo)
khi nào cần thì nạp process từ bộ nhớ thứ cấp vào bộ nhớ chính
phanngocthinh(i12a)- Tổng số bài gửi : 47
Join date : 17/02/2012
chuyển ngữ cảnh là gì
chuyển ngữ cảnh(context switch)
- là chức năng của dispatcher khi cần chuyển cpu từ tiến trình từ tiến trình p0 sang tiến trình
p1 khác: . ghi môi trường và trạng thái làm việc của p0 vào pcb0
.nạp môi trường và trạng thái làm việc của tiến trình p1 từ pcb1
- thời gian chuyển ngữ cảnh khá lớn từ 1=1000 ms
- công nghệ đa luồng (bài 5) được dùng để giảm thời gian chuyển ngữ cảnh
- hệ máy sun ultraSPARC có nhiều bộ thanh gi được dùng để hỗ trợ context switch
bằng phần cứng chuyển ngữ cảnh đơn thuần chỉ là thay đổi con trỏ từ bộ thanh
ghi này sang bộ thanh ghi khác
- là chức năng của dispatcher khi cần chuyển cpu từ tiến trình từ tiến trình p0 sang tiến trình
p1 khác: . ghi môi trường và trạng thái làm việc của p0 vào pcb0
.nạp môi trường và trạng thái làm việc của tiến trình p1 từ pcb1
- thời gian chuyển ngữ cảnh khá lớn từ 1=1000 ms
- công nghệ đa luồng (bài 5) được dùng để giảm thời gian chuyển ngữ cảnh
- hệ máy sun ultraSPARC có nhiều bộ thanh gi được dùng để hỗ trợ context switch
bằng phần cứng chuyển ngữ cảnh đơn thuần chỉ là thay đổi con trỏ từ bộ thanh
ghi này sang bộ thanh ghi khác
phanngocthinh(i12a)- Tổng số bài gửi : 47
Join date : 17/02/2012
Lập trình Socket giao thức TCP Client/Server
Trong lập trình, Socket là một API (Application Programming Interface) cung cấp các phương thức để giao tiếp thông qua mạng. Trước khi bắt đầu tìm hiểu và viết một ví dụ đơn giản về socket, bạn có thể tham khảo bài viết “Networking – Một số khái niệm cơ bản“ để có cái nhìn sơ lược về những khái niệm cơ bản trong lập trình mạng.
Các lớp .Net cơ bản trong lập trình mạng
Các lớp này được cung cấp trong hai namespace System.Net và System.Net.Sockets. Hai namespace này chứa rất nhiều lớp dùng trong lập trình mạng, nhưng trong phạm vi bài viết ta chỉ quan tâm đến các lớp sau::
Class: IPAddress
Namespace: System.Net
Desciption: Provides an Internet Protocol (IP) address.
Class: IPEndPoint
Namespace: System.Net
Desciption:Represents a network endpoint as an IP address and a port number.
Class: TcpListener
Namespace: System.Net.Sockets
Desciption:Listens for connections from TCP network clients.
Class: Socket
Namespace: System.Net.Sockets
Desciption:Implements the Berkeley sockets interface.
Class: TcpClient
Namespace: System.Net.Sockets
Desciption:Provides client connections for TCP network services.
Class:NetworkStream
Namespace: System.Net.Sockets
Desciption: Provides the underlying stream of data for network access.
Kết nối Server-Client với TCP/IP
Khi được chạy, server cần được xác định rõ địa chỉ IP và sẽ “lắng nghe” trên một port cụ thể. Server sẽ nằm trong trạng thái này cho đến khi client gửi đến một yêu cầu kết nối. Sau khi được server chấp nhận, một connection sẽ hình thành cho phép server và client giao tiếp với nhau.
Cụ thể hơn, các bước tiến hành trên server và client mà ta cần thực hiện sử dụng giao thức TCP/IP trong C# (có thể chạy server và client trên cùng một máy):
Server:
Tạo một đối tượng System.Net.Sockets.TcpListener để bắt đầu “lắng nghe” trên một cổng cục bộ.
Đợi và chấp nhận kết nối từ client với phương thức AccepSocket(). Phương thức này trả về một đối tượng System.Net.Sockets.Socket dùng để gửi và nhận dữ liệu.
Thực hiện giao tiếp với client.
Đóng Socket.
Thông thường quy trình này sẽ được đặt trong một vòng lặp (lặp lại bước 2) để chấp nhận nhiều kết nối cùng lúc (sử dụng Thread) hoặc các kết nối lần lượt.
Client:
Tạo một đối tượng System.Net.Sockets.TcpClient
Kết nối đến server với địa chỉ và port xác định với phương thức TcpClient.Connect()
Lấy luồng (stream) giao tiếp bằng phương thức TcpClient.GetStream().
Thực hiện giao tiếp với server.
Đóng luồng và socket.
Các lớp .Net cơ bản trong lập trình mạng
Các lớp này được cung cấp trong hai namespace System.Net và System.Net.Sockets. Hai namespace này chứa rất nhiều lớp dùng trong lập trình mạng, nhưng trong phạm vi bài viết ta chỉ quan tâm đến các lớp sau::
Class: IPAddress
Namespace: System.Net
Desciption: Provides an Internet Protocol (IP) address.
Class: IPEndPoint
Namespace: System.Net
Desciption:Represents a network endpoint as an IP address and a port number.
Class: TcpListener
Namespace: System.Net.Sockets
Desciption:Listens for connections from TCP network clients.
Class: Socket
Namespace: System.Net.Sockets
Desciption:Implements the Berkeley sockets interface.
Class: TcpClient
Namespace: System.Net.Sockets
Desciption:Provides client connections for TCP network services.
Class:NetworkStream
Namespace: System.Net.Sockets
Desciption: Provides the underlying stream of data for network access.
Kết nối Server-Client với TCP/IP
Khi được chạy, server cần được xác định rõ địa chỉ IP và sẽ “lắng nghe” trên một port cụ thể. Server sẽ nằm trong trạng thái này cho đến khi client gửi đến một yêu cầu kết nối. Sau khi được server chấp nhận, một connection sẽ hình thành cho phép server và client giao tiếp với nhau.
Cụ thể hơn, các bước tiến hành trên server và client mà ta cần thực hiện sử dụng giao thức TCP/IP trong C# (có thể chạy server và client trên cùng một máy):
Server:
Tạo một đối tượng System.Net.Sockets.TcpListener để bắt đầu “lắng nghe” trên một cổng cục bộ.
Đợi và chấp nhận kết nối từ client với phương thức AccepSocket(). Phương thức này trả về một đối tượng System.Net.Sockets.Socket dùng để gửi và nhận dữ liệu.
Thực hiện giao tiếp với client.
Đóng Socket.
Thông thường quy trình này sẽ được đặt trong một vòng lặp (lặp lại bước 2) để chấp nhận nhiều kết nối cùng lúc (sử dụng Thread) hoặc các kết nối lần lượt.
Client:
Tạo một đối tượng System.Net.Sockets.TcpClient
Kết nối đến server với địa chỉ và port xác định với phương thức TcpClient.Connect()
Lấy luồng (stream) giao tiếp bằng phương thức TcpClient.GetStream().
Thực hiện giao tiếp với server.
Đóng luồng và socket.
TruongQuocTrung_I12A- Tổng số bài gửi : 18
Join date : 14/03/2012
Trang 12 trong tổng số 15 trang • 1 ... 7 ... 11, 12, 13, 14, 15
Similar topics
» THAO LUAN MON HOC
» BAI 6: THAO LUAN BAI 6
» Các bạn tích cực và có đóng góp với lớp
» Thảo luận Đề thi Cuối kỳ
» Thảo luận Bài 4
» BAI 6: THAO LUAN BAI 6
» Các bạn tích cực và có đóng góp với lớp
» Thảo luận Đề thi Cuối kỳ
» Thảo luận Bài 4
Trang 12 trong tổng số 15 trang
Permissions in this forum:
Bạn không có quyền trả lời bài viết