Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Взаємодія гніздових процесів



Сокети, як засоби взаємодії між процесами, вперше були реалізовані саме на платформі Unix (4.2BSD), проте, концепція сокетів, як універсального засобу обміну даними між процесами, виявилася настільки вдала, що всі сучасні системи підтримують, принаймні, деяку підмножину сокетів. Причини успіху сокетів полягають у їх простоті і універсальності. Програми, що обмінюються даними за допомогою сокетів, можуть працювати як в одній так і в різних системах, використовуючи для обміну даними як спеціальні об'єкти системи, так і мережевий стек. Як і канали, сокети використовують простий інтерфейс, заснований на «файлових» функціях read() і write() сокети дозволяють передавати дані в обох напрямках, як в синхронному, так і в асинхронному режимі.

Універсальний метод взаємодії процесів на основі використання багаторівневих мережевих протоколів під назвою "sockets" (гнізда):

Структура ядра має три рівні: сокетів, протоколів і пристроїв. Рівень сокетів виконує функції інтерфейсу між зверненнями до операційної системи(системних функцій) і засобами низьких рівнів, рівень протоколів містить модулі, що забезпечують взаємодію процесів, а рівень пристроїв містить драйвери, керуючі мережевими пристроями. Допустимі поєднання протоколів і драйверів вказуються при побудові системи; цей спосіб поступається по гнучкості вищезазначеного потоковому механізму. Процеси взаємодіють між собою за схемою клієнт-сервер: сервер чекає сигналу від гнізда, перебуваючи на одному кінці дуплексної лінії зв'язку, а процеси-клієнти взаємодіють з сервером через гніздо, що знаходиться на іншому кінці, який може розташовуватися на інший машині. Ядро забезпечує внутрішній зв'язок і передає дані від клієнта до сервера.


Виклик гнізд (сокетів)

Сокети Берклі - прикладний програмний інтерфейс (API), що представляє собою бібліотеку для розробки додатків на мові Сі з підтримкою між процесами взаємодії (IPC), часто вживаний в комп'ютерних мережах.

API сокетів Берклі сформував фактично стандарт абстракції для мережевих сокетів. Більшість інших мов програмування використовують інтерфейс, схожий з API мови Сі.

API Інтерфейсу транспортного рівня (TLI), заснований на STREAMS, являє собою альтернативу сокетних API. Тим не менш, API сокетів Берклі значно переважає в популярності і кількості реалізацій.

Інтерфейс сокета Берклі - API, що дозволяє реалізовувати взаємодію між комп'ютерами або між процесами на одному комп'ютері. Дана технологія може працювати з безліччю різних пристроїв введення-виведення і драйверів, незважаючи на те, що їхня підтримка залежить від реалізації операційної системи. Подібна реалізація інтерфейсу лежить в основі TCP/IP, завдяки чому вважається однією з фундаментальних технологій, на яких ґрунтується Інтернет.

Програмісти можуть отримувати доступ до інтерфейсу сокетів на трьох різних рівнях, найбільш потужним і фундаментальним з яких є рівень сирих сокетів.





Дата публикования: 2015-10-09; Прочитано: 407 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.007 с)...