Посібник по промисловим мережам
Промислові мережі та інтеграційні технології в автоматизованих системах. 12. ВІДКРИТІ ТЕХНОЛОГІЇ ПРОГРАМНОЇ ІНТЕГРАЦІЇ В СЕРЕДОВИЩІ WINDOWS
В системах автоматизації все більше впроваджуються Інтернет-технології. Так, наприклад, у контролерах або модулях розподілених входів/виходів, які підтримують Ethernet TCP/IP, часто вбудовані примітивні функції Web-сервера, з якого можна отримати необхідну початкову інформацію про його функціонування.
World Wide Web (WWW) – це гігантська розподілена система для доступу до зв’язаних документів, яка складається з великої кількості (мільйони) клієнтів та серверів. Web-cервер приймає запити на видачу документу і передає їх клієнту. Документ може зберігатися у файлі, або генеруватися “на льоту” на сервері. Клієнт взаємодіє з web-серверами за допомогою браузера (browser). Браузер відповідає за правильну обробку документу, обробляє операції зроблені користувачем, викликає при необхідності зв’язані документи.
Для посилання на конкретний ресурс (документ) використовуються уніфікований показчик ресурсу URL (Uniform Resource Locator), який вміщує інформацію, де і як можна отримати доступ до документу. URL може складатися з трьох, або чотирьох частин: ім’я протоколу (http://); DNS або адреса IP вузла, де розміщена сторінка (www.nuft.edu.ua або 130.42.23.10); номеру ТСР або UDP порту, при відсутності використовується стандартний (:80), імені файлу сторінки (index.html). Наприклад:
http:// www.nuft.edu.ua /home/index.html;
http:// www.nuft.edu.ua :80 /home/index.html;
http:// 130.42.23.10 :80 /home/index.html.
Звісно, що необхідний вузол у локальній мережі або в Інтернеті знаходиться за його ІР адресою. Для пошуку вузла по DNS-імені, його необхідно зіставити з потрібною ІР-адресою. DNS (Domain Name System – служба імен доменів) – це система, яка служить для ідентифікації вузлів по іменам, які мають ієрархічну структуру. Для перетворення DNS-імені в ІР-адресу прикладна програма (наприклад браузер) звертається за допомогою UDP-пакету до локального DNS-серверу, який шукає у своїй базі даних відповідну до імені ІР-адресу і повертає її програмі. Це спрощена модель функціонування. Для того, щоб програма знала знаходження DNS-серверу, його ІР адресу необхідно їй вказати. В MS Windows це робиться в настройках ТСР та ІР: “Свойства подключения локальной сети” -> “Протокол ТСР/IР”->”Свойства”.
Крім протоколу http в URL можна використати також: ftp, file, data, telnet, tel, modem.
Більшість документів у web описуються за допомогою мови HTML (Hyper Text Markup Language - мова розмітки гіпертексту). Ця мова призначена для розбивки тексту документу на окремі розділи, списки, таблиці і форми для його наочного представлення. Також у певні місця документу можна вставити зображення та анімацію. Для гнучкого представлення даних в HTML код можна вставити різноманітні сценарії, написані наприклад на мові Java-Script. Для посилання на інші зв’язані документи або навігації по самій сторінці використовуються гіперпосилання hyperlinks.
Крім HTML використовується також мова XML (eXtensible Markup Language – розширювана мова розмітки). XML забезпечує тільки структурування документу. Вона не забезпечує ключових слів для форматування документу, наприклад вирівнювання тексту по центру та виділення його курсивом, однак її можна використовувати для визначення похідних структур. Тобто XML надає засоби для визначення різних типів документів. Все частіше ця мова використовується в якості зв’язку між прикладними програмами. Так в технології SOAP (Simple Object Access Protocol – простий протокол доступу до об’єктів) XML надає можливість виконання віддаленого виклику процедур між прикладними програмами способом, незалежним від мови системи. Клієнт формує запит у вигляді повідомлення XML і відсилає його на сервер по протоколу HTTP. Сервер відсилає назад відповідь, яка представляє собою форматоване XML-повідомлення. Таким чином можуть працювати прикладні програми, які працюють на різнорідних платформах. В області автоматизації XML все більше використовується як в якості стандартного формату збереження структурованих даних та для міграції програм користувача, так і для обміну даними між прикладними програмами
Для динаміки web-сторінок, у HTML код крім сценаріїв можуть вставлятися ActiveX елементи та скомпільовані програми у вигляді аплетів. Аплет (applet) представляє собою невелику автономну прикладну програму, яку можна надіслати клієнту і виконати її в просторі адрес браузера. Найбільш часто використовуються аплети у вигляді програм на мові Java, скомпільованих у інтерпретований байт-код Java. Тобто на стороні клієнта повинна існувати наперед інстальована Java-машина (інтерпретатор), яка перетворює байт-коди в коди процесору. Існують серверні варіанти аплетів, які називаються сервлетами (servlets). Вони виконуються на стороні серверу.
Будь-яка взаємодія між клієнтом і сервером Web проходить по протоколу передачі гіпертексту (HTTP – Hyper text Transfer Protocol). Це протокол прикладного рівня моделі OSI, який базується на клієнт-серверній архітектурі. На транспортному рівні HTTP використовує протокол TCP та адресується 80-тим портом. Зв’язок проводиться таким чином: клієнт (браузер) відправляє запити на сервер і очікує відповіді. Той, обробивши запит відсилає потрібну сторінку.
<– 12.5. Технології СОМ/DCOM
–> 13. Технологія ОРС
Наведіть приклади програмного забезпечення, яке використовується в інтегрованих автоматизованих системах управління. В чому заключається їх програмна інтеграція? Які проблеми виникають при програмній інтеграції продуктів від різних виробників?
Поясніть принципи функціонування багатозадачного режиму Windows.
Як розподіляються часові ресурси процесору між Потоками? Яким чином операційна система розділяє регістри процесору між Потоками за допомогою контексту Потоку?
Розкажіть в чому заключається багатозадачність з витісненням?
Що таке віртуальна пам’ять?
Поясніть призначення Процесів в ОС Windows.
Які об’єкти відносяться до об’єктів ядра Windows? Як ідентифікуються об’єкти ядра?
Які прикладні програми відносяться до Служб? Як запускаються Служби?
Як ідентифікуються вікна Windows? Яким чином вікна реагують на події?
Яке призначення рівнів привілеїв для процесорів Pentium? Які рівні привілеїв використовуються в Windows і для яких програм вони використовуються.
Прокоментуйте функціональну структуру Windows NT сумісних операційних систем. Що таке системні Процеси? Які ви можете назвати системні Процеси?
Яке призначення інтерфейсу Win32 API? Які бібліотеки входять до складу Win32 API?
В чому заключається проблема обміну даними між двома різними Процесами?
Розкажіть основні принципи функціонування технології DDE? Наведіть приклади використання DDE/NetDDE в інтегрованих системах управління.
Як ідентифікуються дані на DDE-Сервері? Розкажіть які функції надає розділ System в даних DDE-Сервера?
Якими програмами забезпечується функціонування сервісів NetDDE? Які дії повинен зробити користувач NetDDE для роботи цієї технології? Яким чином виділяються загальні ресурси DDE?
Розкажіть про призначення технологій COM/DCOM. Які технології базуються на COM/DCOM?
Яким чином забезпечується доступ до методів об’єктів COM? Як забезпечується унікальність ідентифікаторів Інтерфейсів та Класів об’єктів COM?
Як відрізняються СОМ-Сервери по їх розміщенню відносно СОМ-Клієнта?
Як забезпечується захист доступу до об’єктів класів? Де налаштовуються параметри захисту?
Наведіть приклади використання технології OLE, компонентів ActiveX.
Розкажіть основні принципи обміну даними між браузером та WEB-сервером. На основі яких мережних, транспортних та прикладних протоколів функціонує такий обмін? Яким чином відбувається ідентифікація вузлів в Інтернет по символьному доменному імені?
Розкажіть про функціональне призначення HTML, XML та SOAP.
Наведіть приклади використання технологій WEB в інтегрованих автоматизованих системах управління.
Розкажіть про використання технологій JAVA та ActiveX в WEB-технологіях.