Библиотека классов FCL - статический компонент каркаса 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Библиотека классов FCL - статический компонент каркаса



Уже в то время важнейшее значение в библиотеке классов MFC имели классы, задающие архитектуру строящихся приложений. Когда разработчик выбирал один из возможных типов приложения, например, архитектуру Document-View, то в его приложение автоматически встраивались класс Document, задающий структуру документа, и класс View, задающий его визуальное представление. Класс Form и классы, задающие элементы управления, обеспечивали единый интерфейс приложений. Выбирая тип приложения, разработчик изначально получал нужную ему функциональность, поддерживаемую классами каркаса.

Введение в среду Common Language Runtime Как следует из самого названия, общеязыковая среда выполнения CLR обеспечивает исполнение программного кода и является в этом плане основой платформы MS.Net. Среда CLR активизирует исполняемый код, выполняет для него проверку безопасности, располагает этот код в памяти и исполняет его. Важной частью работы среды CLR является управление свободной памятью, автоматически обеспечивая использование освобождающейся при работе программ памяти (сборку мусора). Для обеспечения возможности многоязыковой разработки ПО программный код, получаемого после компиляции программы на одном из алгоритмических языков платформы MS.Net, представляется на специально разработанным в корпорации Microsoft общем промежуточном языке (Common Intermediate Language или CIL). Этот язык, с одной стороны, достаточно близок к машинно-зависимым языкам – ассемблерам, с другой стороны, CIL обеспечивает некоторый более высокий уровень представления различных компьютерных платформ. Как результат, программа на языке CIL остается платформенно- независимой, однако требует некоторой дополнительной настройки (компиляции) перед началом своего выполнения.

Как уже отмечалось выше, сборки перед своим исполнением должны пройти определенную настройку для работы в условиях конкретной выбранной платформы – для выполнения таких настроек в составе среды CLR имеется ряд JIT-компиляторов (Just-InTime compilers), вызываемых для перевода программного кода на промежуточном языке (CIL-кода) в машинный (native) код платформы исполнения. С учетом введенных понятий представим общую схему исполнения сборок в среде CLR (см. рис. 3): − При запуске сборки загрузчик распознает.Net приложение и передает управление среде CLR, далее загрузчик классов находит и загружает класс, в котором содержится точка начала работы сборки (обычно функция Main), затем CLR передает управление сборке, − Загрузчик классов выполняется каждый раз при первом обращении к необходимым для выполнении сборки классам. Загрузчик находит нужный класс, размещает информацию о типах класса в кэше и загружает класс для выполнения (при этом в методах загружаемого класса делается отметка, что они не являются еще готовыми для выполнения, поскольку не прошли через JIT-компиляцию), Поддержка исполнения и управление Сборщик мусора, управление безопасностью, управление кодом, управление исключениями, поддержка многопоточности и т.д. Функции среды выполнения (см. рис. 3) состоят в управлению свободной памятью, обработке исключений, поддержке безопасности и др.

Еталонна модель ВВС

Міжнародна організація по стандартизації (МОС, International Standardization Organization, ISO) запропонувала в 1978 р. еталонну модель взаємодії відкритих систем (ВВС, Open System Interconnect, OSI). На основі цієї моделі був розроблений стек протоколів, що не одержав широкого поширення, хоча він і був прийнятий як національний стандарт урядом США ще в 1990 році (проект GOSIP).

При розробці моделі ВВС виділення рівнів базувалося на наступних принципах:

- кожний рівень повинен виконувати окрему функцію,

- потік інформації між рівнями повинен бути мінімізований,

- функції рівнів повинні бути зручні для визначення міжнародних стандартів,

- кількість рівнів повинне бути достатнім для поділу функцій, але не надлишковим.

Модель ВВС визначає сім рівнів: фізичний, канальний, мережний, транспортний, сеансовий, подання даних, прикладний.

7. прикладний
6. подання даних
5. сеансовий
4. транспортний
3. мережний
2. канальний
1. фізичний

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

Модель OSI описує тільки системні засоби взаємодії, реалізовані операційною системою, системними утилітами, системними апаратними засобами. Модель не включає засобу взаємодії додатків кінцевих користувачів.

Фізичний рівень

Фізичний рівень (Physical layer) має справи з передачею бітів по фізичних каналах зв'язку, таким, як коаксіальний кабель, кручена пара, оптоволоконий кабель або цифровий територіальний канал. Крім того, тут стандартизуються типи роз’ємів і призначення кожного контакту.

Функції фізичного рівня:

· передача бітів по фізичних каналах;

· формування електричних сигналів;

· кодування інформації;

· синхронізація;

· модуляція.

Реалізується апаратно.

Прикладом протоколу фізичного рівня може служити специфікація 100 Base-TX технології Ethernet, що визначає в якості середовища передачі даних неекрановану кручену пару категорії 5 із хвильовим опором 100 Ом, роз’єм RJ- 45, максимальну довжину фізичного сегмента 100 метрів, а також деякі інші характеристики середовища й електричних сигналів.

Канальний рівень

На фізичному рівні просто пересилаються біти. При цьому не враховується, що в тих мережах, у яких лінії зв'язку використовуються (розділяються) поперемінно декількома парами взаємодіючих комп'ютерів, фізичне середовище передачі може бути зайняте.

Тому однієї із завдань канального рівня (Data Link layer) є перевірка доступності середовища передачі. Інше завдання канального рівня - реалізація механізмів виявлення й корекції помилок. Для цього на канальному рівнібіти групуються в набори, називані кадрами (frames).

Канальний рівень забезпечує коректність передачі кожного кадрупоміщаючи спеціальну послідовність біту початок і кінець кожного кадру, для його виділення, а також обчислює контрольну суму, обробляючи всі байти кадрупевним способом, і додає контрольну сумудокадру. Канальний рівеньможе не тільки виявляти помилки, але й виправляти їх за рахунок повторної передачі ушкоджених кадрів. Реалізується апаратно.

Мережний рівень

Мережний рівень (Network layer) служить для утворення єдиної транспортної системи, що поєднує кілька мереж, причому ці мережі можуть використовувати зовсім різні принципи передачі повідомлень між кінцевими вузлами й мати довільну структуру зв'язків. У цьому випадку під мережею розуміється сукупність комп'ютерів, з'єднаних між собою відповідно до однієї зі стандартних типових топологій і, що використовують для передачі даних один із протоколів канального рівня, певний для цієї топології.

Повідомлення мережного рівня прийнято називати пакетами (packets). При організації доставки пакетів на мережному рівні використовується поняття «номер мережі». У цьому випадку адреса одержувача складається зі старшої частини - номера мережі й молодшої - номера вузла в цій мережі. Всі вузли однієї мережі повинні мати ту саму старшу частину адреси, тому терміну «мережа» на мережному рівні можна дати й інше, більше формальне визначення: мережа - це сукупність вузлів, мережна адреса яких містить той самий номер мережі.

На мережному рівні визначаються два види протоколів:

1. мережні протоколи (routed protocols) - реалізують просування пакетів через мережу. Саме ці протоколи звичайно мають на увазі, коли говорять про протоколи мережного рівня.

2. протоколи вирішення адрес - Address Resolution Protocol, ARP, які відповідають за відображення адреси вузла, використовуваного на мережному рівні, у локальну адресу мережі.

Прикладами протоколів мережного рівня є протокол міжмережної взаємодії IP стека TCP/IP і протокол межмережевого обміну пакетами IPX стека Novell.

Транспортний рівень

Транспортний рівень (Transport layer) забезпечує додаткам або верхнім рівням стека - прикладному й сеансовому - передачу даних з тим ступенем надійності, що їм потрібно.

Основні завдання транспортного рівня:

1. розбивка повідомлення сеансового рівня на пакети, їхня нумерація;

2. буферизація прийнятих пакетів;

3. впорядочення пакетів, що прибувають;

4. адресація прикладних процесів;

5. керування потоком.

Як правило, всі протоколи, починаючи із транспортного рівня й вище, реалізуються програмними засобами кінцевих вузлів мережі - компонентами їх мережних операційних систем. Як приклад транспортних протоколів можна привести протоколи TCP і UDP стека TCP/IP і протокол SPX стека Novell.

Сеансовий рівень

Сеансовий рівень (Session layer) забезпечує керування діалогом: фіксує, яка зі сторін є активною в даний момент, надає засоби синхронізації. Останні дозволяють вставляти контрольні точки в довгі передачі, щоб у випадку відмови можна було повернутися назад до останньої контрольної точки, а не починати все спочатку.

Основні завдання сеансового рівня:

1. в становлення способу обміну повідомленнями (дуплексний або напівдуплексний);

2. синхронізація обміну повідомленнями;

3. організація "контрольних точок" діалогу.

Представницький рівень

Представницький рівень (Presentation layer) має справу з формою подання переданої по мережі інформації, не міняючи при цьому її змісту. За рахунок рівня подання інформація, передана прикладним рівнем однієї системи, завжди зрозуміла прикладному рівню іншої системи. За допомогою засобів даного рівня протоколи прикладних рівнів можуть перебороти синтаксичні розходження в поданні даних або ж розходження в кодах символів, наприклад кодів ASCII і EBCDIC. Прикладом такого протоколу є протокол Secure Socket Layer (SSL), що забезпечує секретний обмін повідомленнями для протоколів прикладного рівня стека TCP/IP.

Основні завдання представницького рівня:

1. перетворення даних із зовнішнього формату у внутрішній;

2. шифрування й розшифровка даних.

Прикладний рівень

Прикладний рівень (Application layer) - це в дійсності просто набір різноманітних протоколів, за допомогою яких користувачі мережі одержують доступ ресурсів, що розділяються, таким як файли, принтери або гіпертекстові Web-сторінки, а також організують свою спільну роботу, наприклад, за допомогою протоколу електронної пошти. Одиниця даних, який оперує прикладний рівень, звичайно називається повідомленням(message).

Основні завдання прикладного рівня:

1. ідентифікація, перевірка прав доступу;

2. принт- і файл-сервіс, пошта, вилучений доступ і т.д.



Поделиться:


Последнее изменение этой страницы: 2016-09-13; просмотров: 304; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.16.70.101 (0.022 с.)