Đối với thông báo được gửi đi giữa các máy tính, điểm đến của một thông báo phải được đặt ra, và thông báo phải được truyền tới đích.
dụng thiết bị cuối truyền thông tĩnh( ví dụ như, số hiệu cổng cho các dịch vụ dựa trên giao thức điều khiển TCP hoặc UDP ).
Một trong những nguyên lý của Mach là tất cả các đối tượng trong hệ thống vị trí độc lập và vị trí là minh bạch cho người dùng. Nguyên lý này đòi hỏi Mach phải cung cấp vị trí đặt tên và vận chuyển để mở rộng IPC qua nhiều máy tính.
`
Thao tác gửi Thao tác nhận
Hình 1.5: Mach thông báo chuyển giao
Đặt tên và vận chuyển được thực hiện bởi Mạng Máy chủ thông báo (NetMsgServer ), một người sử dụng cấp, trình trợ quản nối mạng dựa trên khả năng chuyển tiếp thông báo giữa máy chủ. Nó cũng cung cấp dịch vụ tên networkwide truyền thống cho phép tác vụ thanh ghi cổng tra cứu bằng tác vụ trên
bất cứ một máy tính nào khác trong mạng. Cổng Mach chỉ có thể được chuyển giao trong thông báo, và thông báo phải được gửi đến cổng ; dịch vụ tên truyền
A map Kernel B map A map Kernel B map
A B A B
tính khác nhau để trao đổi thông điệp. Tương tác IPC tiếp theo là hoàn toàn minh bạch ; Mạng máy chủ theo dấu tất cả những quyền và ra –vào – tuyến bộ nhớ thông qua thông báo intercomputer và sắp xếp để chuyển giao thích hợp.
Mạng máy chủ duy trì với nhau sự phân bố cơ sở dữ liệu của cổng đã được chuyển giao giữa máy tính và cổng mà các quyền này tương ứng.
Phần lõi sử dụng NetMsgServer (Mạng máy chủ) khi thông báo cần được gửi đến cổng không phải là trên máy tính của phần lõi. IPC Mach của phần lõi được dùng để chuyển thông báo sang NetMsgServer cục bộ. Các NetMsgServer sau đó sử dụng giao thức mạng thích hợp để chuyển thông báo sang đồng đẳng của nó trên các máy tính khác; khái niệm của NetMsgServer là giao thức độc lập, và NetMsgServers đã được xây dựng sử dụng giao thức khác nhau. Tất nhiên, NetMsgServers tham gia trong việc chuyển giao phải đồng ý về các giao thức được sử dụng. Cuối cùng, NetMsgServer trên máy tính đích sử dụng IPC của phần lõi để gửi thông báo nhiệm vụ đến đích chính xác. Khả năng mở rộng IPC cục bộ rõ ràng trên các nút được hỗ trợ bởi việc sử dụng cổng proxy. Khi gửi phải được truyền từ một máy tính này sang một máy tính khác, NetMsgServer trên máy tính đích tạo ra cổng mới, hoặc proxy, để đại diện cho cổng gốc ở đích. Thông điệp được gửi tới proxy này được nhận bởi NetMsgServer và được gửi rõ ràng đến cổng gốc ; thủ tục này là một ví dụ về cách NetMsgServers hợp tác để làm cho một proxy không thể phân biệt được từ cổng gốc. Bởi vì Mach được thiết kế để hoạt động trong một hệ thống mạng lưới không đồng nhất, nó phải cung cấp để gửi giữa hệ thống dữ liệu
định dạng theo phương thức dễ hiểu bởi cả người gửi và người nhận. Máy tính khác nhau về định dạng mà họ sử dụng để lưu trữ các loại dữ liệu khác nhau. Chẳng hạn như, một số nguyên trên một hệ thống có thể lấy 2 byte để lưu trữ, và byte quan trọng nhất có thể được lưu trữ. Một hệ thống khác có thể đảo ngược thứ tự sắp xếp này. Do đó, NetMsgServer sử dụng loại thông tin được lưu trữ trong
này, mọi dữ liệu được biểu diễn chính xác khi chúng đến đích.
Chương trình chỉ cần gửi một thông điệp đến cổng mà nó có quyền gửi. Thông báo đầu tiên được chuyển đến phần lõi, giao ở người nhận đầu tiên của nó, NetMsgServer trên nút A. NetMsgServer sau đó liên lạc (qua cơ sở dữ liệu thông tin của nó) NetMsgServer trên nút B nút và gửi thông báo. Các NetMsgServer trên nút B sau đó giới thiệu thông báo đến phần lõi với cổng cục bộ thích hợp cho nút B. Phần lõi cuối cùng cung cấp các thông báo cho tác vụ nhận khi luồng trong tác vụ thực hiện một msg nhận cuộc gọi. Mach 3.0 cung cấp một giải pháp thay thế cho NetMsgServer như một phần của nó được cải thiện hỗ trợ bộ đa xử lý NORMA. Phân hệ NORMA IPC của Mach 3.0 thực hiện chức năng giống với NetMsgServer trực tiếp trong phần lõi Mach, cung cấp hiệu quả hơn nhiều IPC gian nút cho multicomputers với phần cứng kết nối nhanh chóng. Chẳng hạn như, bản sao mất thời gian thông báo giữa NetMsgServer và phần lõi bị loại bỏ. Sử dụng NORMA IPC không loại trừ việc sử dụng của NetMsgServer ; NetMsgServer vẫn có thể được sử dụng để cung cấp dịch vụ Mach IPC trên các mạng liên kết bộ đa xử lý NORMA với các máy tính khác. Ngoài raNORMA IPC, Mach 3.0 cũng cung cấp hỗ trợ cho quản lý bộ nhớ trên một hệ thống NORMA và khả năng tạo một công việc trong hệ thống, như vậy để tạo ra các tác vụ khác hơn. Những tính năng này hỗ trợ việc triển khai một hệ thống ảnh- hệ điều hành trên bộ đa xử lý NORMA ; bộ đa xử lý hoạt động như một hệ thống lớn thay vì sự tập hợp của hệ thống nhỏ hơn ( cho cả hai người dùng và ứng dụng ).
Người gửi Người nhận Hình 1.6: IPC mạng chuyển tiếp bằng máy chủ (NetMsgServer)