Гнучка система імітаційного дослідження зміни топології комп’ютерної мережі

  • Вид работы:
    Дипломная (ВКР)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Украинский
    ,
    Формат файла:
    MS Word
    1,47 Мб
  • Опубликовано:
    2012-10-22
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Гнучка система імітаційного дослідження зміни топології комп’ютерної мережі

Міністерство освіти та науки України

Криворізький інститут

Кременчуцького університету економіки, інформаційних технологій та управління

Кафедра технічної кібернетики








ДИПЛОМНА РОБОТА

зі спеціальності

Гнучкі комп’ютеризовані системи та робототехніка

Гнучка система імітаційного дослідження зміни топології

комп’ютерної мережі




Кривий Ріг

Анотація

система імітаційна комп'ютерна мережа програмна

Метою даної дипломної роботи є доопрацювання гнучкої комп'ютеризованої системи «Емулятор мережі» та розробка комплексних лабораторних робіт на основі даної системи. Система реалізована в середовищі розробки Microsoft Visual C # 8.0 Express Edition з використанням технології dotNet. Система призначена для розробки архітектури комп'ютерних мереж і перевірки їх на працездатність.

Розділів , схем та малюнків , таблиць , бібліографічних посилань , загальний обсяг .

ЗМІСТ

ВСТУП

. ПОСТАНОВКА ЗАВДАННЯ

1.1 Найменування та галузь використання

.2 Підстава для створення

.3 Характеристика розробленого програмного забезпечення

.4 Мета й призначення

.5 Загальні вимоги до розробки

.6 Джерела розробки

2. ТЕОРЕТИЧНІ ДОСЛІДЖЕННЯ ТА ПОРІВНЯЛЬНИЙ АНАЛІЗ ТЕХНОЛОГІЙ РОЗРОБКИ WINDOWS ДОДАТКІВ

2.1 Огляд основних технологій розробки Windows додатків

.1.1 Програмування з використанням Win32/C

.1.2 Програмування з використанням C++/MFC

.1.3 Програмування з використанням Visual Basic

.1.4 Програмування з використанням Java

.1.5 Програмування з використанням СОМ

.1.6 Програмування з використанням Windows DNA

.2 Рішення .NET

.2.1 Основи CLS

.2.2 Основи CLR

.2.3 Стандартна система типів CTS

.2.4 Простори імен

.2.5 Основи MSIL

.2.6 Поняття збірки і виконувані модулі

3. ОГЛЯД МОЖЛИВОСТЕЙ МОВИ ПРОГРАМУВАННЯ Й СЕРЕДИ РОЗРОБКИ MICROSOFT VISUAL STUDIO 2008

3.1 Microsoft Visual Studio 2008

.1.1 Visual Studio 2008 Express Edition

.2 Мови програмування .NET

.2.1 Огляд двійкових файлів.NET

.3.2 Мова програмування C#

.3. Мова XML

.3.1 Короткий огляд синтаксису

4. ОПИС ФУНКЦІОНАЛЬНИХ МОЖЛИВОСТЕЙ ТА ПРОГРАМНОЇ РЕАЛІЗАЦІЇ ПРОЕКТОВАНОЇ СИСТЕМИ

4.1 Функціональне призначення та технологічні особливості розробки

.2 Розробка логіко-функціональної схема роботи користувача

.3 Програмна реалізація проектованої системи

.4 Розроблені лабораторні роботи

5 ЕКОНОМІЧНЕ ОБҐРУНТУВАННЯ ДОЦІЛЬНОСТІ РОЗРОБКИ ПРОГРАМНОГО ПРОДУКТУ

. ОХОРОНА ПРАЦІ

6.1 Аналіз шкідливих і небезпечних виробничих факторів при роботі на комп’ютері

.2 Заходи щодо нормалізації шкідливих і небезпечних факторів

.3 Пожежна безпека

ВИСНОВКИ

СПИСОК ЛІТЕРАТУРИ

ВСТУП


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

Метою даної розробки є створення програмного модуля системи «Емулятор мережі», призначеного для імітаційного дослідження архітектури комп'ютерних мереж.

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

Сучасні мережі Інтернет об'єднують в єдине ціле багато десятків тисяч локальних мереж по всьому світу, побудованих на базі різноманітних фізичних і логічних протоколів (ethernet, Token Ring, ISDN, X.25, Frame Relay, Arcnet і т.д.). Ці мережі об'єднуються один з одним за допомогою послідовних каналів (протоколи SLIP, PPP), мереж типу FDDI (часто використовується і в локальних мережах), ATM, SDH (Sonet) та багатьох інших. У самих мережах використовуються протоколи TCP / IP (Інтернет), IPX / SPX (Novell), Appletalk, Decnet, Netbios і нескінченна безліч інших, визнаних міжнародними, що є фірмовими і т.д. Картина буде неповною, якщо не відзначити різноманіття мережних програмних продуктів. На наступному рівні представлені різноманітні внутрішні (RIP, IGRP, OSPF) і зовнішні (BGP і т.д.) протоколи маршрутизації і маршрутної політики, конфігурація мережі і завдання величезного числа параметрів, проблеми діагностики та мережевої безпеки. Чималу труднощі може викликати і вибір прикладних програмних засобів (Netscape, MS Internet Explorer тощо). Останнім часом мережі впроваджуються в управління (CAN), сферу розваг, торгівлю, відбувається з'єднання мереж Інтернет та кабельного телебачення.

Протоколи Інтернет (TCP / IP), існують вже близько 30 років. Вимоги до телекомунікаційних каналах і послуг виросли, і цей набір протоколів не задовольняє сучасним вимогам. З'являються нові протоколи Delta-t (для керування з'єднанням), NetBLT (для передачі великих обсягів даних), VMTP (для транзакцій; RFC-1045) і XTP для підвищення ефективності передачі даних (заміна TCP), блоки протоколів для роботи з мультимедіа (RTP , RSVP, PIM, ST-II і пр.), але, безумовно, найбільш революційні перетворення викличе впровадження IPv6. Отже важливою метою є вивчення усіх аспектів комп’ютерних мереж.

Як мова програмування для реалізації поставленого завдання була вибрана мова програмування С#, як середа розробки Microsoft Visual Studio 2008. Варто відзначити, що середа розробки Microsoft Visual Studio 2008 є абсолютно безкоштовною, але не дивлячись на безкоштовність, надає безліч зручних засобів для створення складних програмних продуктів.

1. ПОСТАНОВКА ЗАВДАННЯ

 

1.1 Найменування та галузь використання


Найменування розробки: гнучка комп'ютеризована система «Емулятор мережі». Система призначена для розробки архітектури комп'ютерних мереж і перевірки їх на працездатність. Розроблена система може бути інструментом системного адміністратора малих і середніх підприємств, які використовують комп'ютерні мережі для обміну інформацією, а також як засіб для навчання студентів основам організації мереж.

1.2 Підстава для створення


Підставою для розробки є наказ № 62С-01 від 29 жовтня 2008 р. по Криворізькому інституту КУЕІТУ.

Початок робіт: 31.10.09. Закінчення робіт: 01.06.10.

1.3 Характеристика розробленого програмного забезпечення


Гнучка комп'ютеризована система «Емулятор мережі» була реалізована в середовищі розробки Microsoft Visual C # 2008 Express Edition з використанням технології dotNet.

Склад розробленої системи:

·        Network Emulator.exe - виконуваний файл розробленої системи;

·        Network Emulator.exe.config - конфігураційний файл програми;

·        Example.nep - файл прикладу проекту;

·        help.hlp - файл довідки.

1.4 Мета й призначення


Метою даної дипломної роботи є доопрацювання гнучкої комп'ютеризованої системи «Емулятор мережі» та розробка комплексних лабораторних робіт на основі даної системи. Система реалізована в середовищі розробки Microsoft Visual C # 8.0 Express Edition з використанням технології dotNet. Система призначена для розробки архітектури комп'ютерних мереж і перевірки їх на працездатність.

1.5 Загальні вимоги до розробки


Вимоги до програмного забезпечення:

·             Робота в середовищі операційних систем Windows 98, Windows Server 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition, Windows Vista, Windows Server 2003 SP1;

·        Microsoft. NET Framework 2.0 і вище;

·        Відсутність додаткових вимог до розміщення здійснимих файлів;

·        Простота і зрозумілість інтерфейсу.

·        Мінімальні вимоги до апаратного забезпечення:

·        IBM-сумісний комп'ютер, не нижче Pentium IІI 500 MHz, RAM-128Mb, SVGA-800 * 600 * 16bit;

·        Вільний простір на жорсткому диску не менше 1Мб.

 

1.6  Джерела розробки


Джерелами розробки дипломної роботи є:

·   загальний опис технології процесу;

·   довідкова література;

·   наукова література;

·   технічна література;

·   програмна документація.

2. ТЕОРЕТИЧНІ ДОСЛІДЖЕННЯ ТА ПОРІВНЯЛЬНИЙ АНАЛІЗ ТЕХНОЛОГІЙ РОЗРОБКИ WINDOWS ДОДАТКІВ

 

2.1 Огляд основних технологій розробки Windows додатків


.1.1 Програмування з використанням Win32/C

Спочатку під програмуванням під Windows малося на увазі програмування з використанням Windows Application Programming Interface (інтерфейсом прикладного програмування Windows, в 32-разрядних версіях Windows - Win32 API). З використанням цієї технології було створено безліч цілком гідних додатків, проте навряд чи хто-небудь сперечатиметься з тим, що написання додатка з використанням лише Windows API - це дуже трудомістке завдання.

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

.1.2 Програмування з використанням C++/MFC

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

Існує безліч бібліотек для C++, основне призначення яких - полегшити написання додатків під Windows, надавши для цієї мети вже готові класи. Одна з найбільш поширених бібліотек - це MFC (Microsoft Foundation Classes). MFC - це додатковий рівень над Win32 API, який значно спрощує роботу програміста за рахунок використання готових класів, макросів і майстрів. Проте MFC - це лише часткове вирішення проблеми. Навіть при використанні MFC програмістові доводиться працювати з складним для читання кодом, вельми небезпечним з точки зору можливих помилок.

.1.3 Програмування з використанням Visual Basic

Люди завжди прагнуть зробити своє життя простішим. Підкоряючись цьому прагненню багато програмістів на C++ обернули свої погляди до набагато простішої і доброзичливішої мови, якою є Visual Basic (VB). Visual Basic дозволяє працювати з досить складними елементами інтерфейсу користувача, бібліотеками коду (наприклад, Сом-серверами) і засобами доступу до даних при мінімальних витратах часу і сил. Visual Basic в набагато більшому ступені, чим MFC, ховає від користувача виклики Win32 API і надає великий набір інтегрованих засобів швидкої розробки.

Проте в Visual Basic є і недоліки. Головний з них - це набагато менші можливості, які надає ця мова, в порівнянні з C++ (це твердження справедливе, принаймні, для версій раніших, ніж VB.NET). Visual Basic - це мова «для роботи з об'єктами», а не об'єктно-орієнтована мова в звичайному розумінні цього слова. У Visual Basic немає класичного спадкоємства, немає підтримки створення класів, що параметризуються, немає власних засобів створення багатопоточних додатків - і цей список можна продовжувати ще довго.

2.1.4 Програмування з використанням Java

Мова програмування Java - це повністю об'єктно-орієнтована мова, яка відносно синтаксису багато що успадкувала від C++ . Звичайно, переваги Java далеко не вичерпуються міжплатформеностю. Мова Java в синтаксичному відношенні простіша і логічніша, ніж C++. Java як платформа надає в розпорядження програмістів велику кількість бібліотек (пакетів), в яких міститься велика кількість описів класів і інтерфейсів на всі випадки життя. З їх допомогою можна створювати стовідсоткові додатки Java з можливістю звернення до баз даних, підтримкою передачі поштових повідомлень, з клієнтською частиною, якою необхідний лише web-браузер, або на зворот, з клієнтською частиною, що володіє витонченим інтерфейсом.- це дуже елегантна і красива мова. Проте при його використанні проблем також уникнути не вдається. Одна з серйозних проблем полягає в тому, що при створенні складного додатку на Java нам доведеться використовувати лише цю мову для створення всіх частин цього додатку. У Java передбачено не так вже багато засобів для міжмовної взаємодії (що зрозуміло, зважаючи на призначення Java бути єдиною багатоцільовою мовою програмування). Але в реальному світі існують мільйони рядків готового коду, які хотілося б інтегрувати з новими додатками на Java. Проте це зробити дуже важко.- це далеко не ідеальна мова в багатьох ситуаціях. Простий приклад - якщо ми спробуємо створити лише Java додаток, що активно працює з 3d-графікой, швидше за все, працювати такий додаток буде не дуже швидко. Для роботи з 3d-графікой краще використовувати код, написаний на мові з розвиненішими низькорівневими можливостями (наприклад, на C++). Проте інтегрувати такий код з кодом на Java буде дуже складно. Оскільки можливості для звернення до API компонентів, створених на інших мовах, в Java дуже обмежені, говорити про реальну міжмовну взаємодію на основі Java не доводиться.

2.1.5 Програмування з використанням СОМ

Сучасний стан справ такий, що якщо програміст не будуєте Java-додатки, то велика вірогідність, що програміст освоює технологію Microsoft Component Object Model (COM). Сом-технологія проголошує: «Якщо ви створюєте класи в точній відповідності з вимогами СОМ, то у вас вийде блок повторно використовуваного програмного коду».

Краса двійкового СОМ - сервера полягає в тому, що до нього можна звертатися з будь-якої мови. Наприклад, програмісти, використовуючи C++, можуть створювати класи, які можна буде використовувати з додатка на Vbasic. Програмісти, використовуючи Delphi, можуть використовувати класи, створені на С++ и т.д. Проте в міжмовній взаємодії СОМ є свої обмеження. Наприклад, немає можливості провести нового типа СОМ від того, що існує. Для повторного використання існуючих типів СОМ доведеться використовувати інші, набагато менш надійні і ефективні засоби.

Велика перевага СОМ полягає в тому, що програміст може не піклуватися про фізичне місцезнаходження компонентів. Такі засоби, як Application Identifiers (Appids, ідентифікатори додатків), стаби (stubs), проксі, середа виконання СОМ, дозволяють уникати при зверненні до компонентів по мережі необхідності поміщати в додаток код для роботи з сокетами, викликами RPC і іншими низькорівневими механізмами. Досить поглянути на такий код на Visual Basic 6.0 для клієнта СОМ:с as New MyCOMClass. Місцезнаходження класу визначається через AppID c.DoSomeWork.

Об'єктна модель СОМ використовується дуже широко. Проте внутрішній устрій компонентів вельми складний. Щоб навчитися знатися на нім доведеться витратити принаймні декілька місяців. Написання додатків з використанням Сом-компонентів можна спростити, використовуючи стандартні бібліотеки, наприклад біблітеку Active Template Library (ATL) зі своїм набором готових класів, шаблонів і макросів.

Деякі мови (наприклад, Visual Basic) також дозволяють приховати складність інфраструктури СОМ. Проте всіх складнощів уникнути все одно не вдається. Наприклад, навіть якщо працювати з відносно простим і підтримуючим COM Visual Basic, доведеться вирішувати не завжди прості питання, пов'язані з реєстрацією компонентів на комп'ютері і розгортанням додатків.

.1.6 Програмування з використанням Windows DNA

Картина буде неповною, якщо не взяти до уваги як Інтернет. За декілька останніх років Microsoft додала в свої операційні системи велику кількість засобів для роботи з цією середою, у тому числі і засоби, покликані допомогти в створенні Інтернет-додатків. Проте, побудова закінченого web-додатки з використанням технології Windows DNA (Distributed internet Architecture - розподілена міжмережева архітектура) до цих пір залишається вельми складним завданням.

Значна частина складнощів виникає тому, що Windows DNA вимагає використання різнорідних технологій і мов (ASP, HTML, XML, Javascript, Vbscript, COM ( ), ADO і т. д.). Одна з проблем полягає в тому, що синтаксично всі ці мови і технології дуже мало схожі один на одного. Наприклад, синтаксис JavaScript більше схожий на синтаксис С++, тоді як VbScript є підмножиною Visual Basic. Сом-сервери, призначені для роботи в середі виконання СОМ, створені на основі здійснений інших підходів, ніж Asp-сторінки, які до них звертаються. Кінцевим результатом є лякаюче змішення технологій. Окрім всього іншого, в кожній мові, яка входить до складу Windows DNА, передбачена своя система типів, що також не є джерелом великої радості для програмістів. Наприклад, тип даних іnt у JavaScript - це не те ж саме, що іnt у С++, який, у свою чергу, відмінний від іnteger у Visual Basic.

2.2 Рішення .NET


Один з головних принципів .NET звучить так: «Змінюйте все, що хочете, звідки вам завгодно». .NET - це абсолютно нова модель для створення додатків під Windows (а в майбутньому, мабуть, і під іншими операційними системами). Ось коротке перерахування основних можливостей .NET:

·   Повні можливості взаємодії з існуючим кодом.

·   Повна і абсолютна міжмовна взаємодія. На відміну від класичного СОМ, в .NET підтримуються міжмовне спадкоємство, міжмовна обробка виключень і міжмовна відладка.

·   Спільна середа виконання для будь-яких додатків .NET, незалежно від того, на яких мовах вони були створені. Один з важливих моментів при цьому - те, що для всіх мов використовується один і той же набір вбудованих типів даних.

·   Бібліотека базових класів, яка забезпечує приховування всіх складнощів, пов'язаних з безпосереднім використанням викликів API, і пропонує цілісну об'єктну модель для всіх мов програмування, що підтримують .NET,

·   Спрощення процесу розгортання додатка. У .NET немає необхідності реєструвати подвійні типи в системному реєстрі. Більш того .NET дозволяє різним версіям одного і того ж модуля DLL мирно співіснувати на одному комп'ютері.

2.2.1 Основи CLS

CLS (Common Language Specification) - загальна специфікація мов програмування. Це набір конструкцій і обмежень, які є керівництвом для творців бібліотек і компіляторів в середовищі .NET Framework. Бібліотеки, побудовані відповідно до CLS, можуть бути використані з будь-якої мови програмування, підтримуючого CLS. Мови, відповідні CLS (до їх числа відносяться мови Visual C# 2.0, Visual Basic, Visual C++), можуть інтегруватися один з одним. CLS - це основа міжмовної взаємодії в рамках платформи Microsoft .NET.

Немає необхідності доводити, що одні і ті ж програмні конструкції в різних мовах виглядають абсолютно по-різному. Наприклад, в С# і Delphi об'єднання рядків (конкатенація) проводиться за допомогою оператора плюс "+", а в Visual Basic для цієї мети використовується амперсант "&". Для середовища виконання .NET така різниця в синтаксисі абсолютно байдужа: все одно відповідні компілятори створять однаковий код IL. Проте мови програмування відрізняються не тільки синтаксисом, але і можливостями. Наприклад, в одних мовах програмування дозволено перевантаження операторів, а в інших - ні. Одні мови можуть використовувати беззнакові типи даних, в інших такі типи даних не передбачені. Тому потрібні деякі єдині правила для всіх мов .NET. Якщо їм слідувати, то програмні модулі, написані на різних мовах, нормально взаємодіятимуть один з одним. Такий набір правил визначений в універсальній специфікації мови (CLS).

Набір правив CLS не тільки гарантує нормальну взаємодію блоків коду, створених на різних мовах, але і визначає мінімальні вимоги, які пред'являються до будь-якого компілятора .NET. Необхідно пам'ятати, що CLS - це лише частина тих можливостей, які визначені в CTS. Правилам CLS повинні задовольняти і інструментальні засоби середовища розробки - якщо ми хочемо забезпечити міжмовну взаємодію, вони повинні генерувати тільки такий код, який відповідає вимогам CLS. У кожного правила CLS є назва (наприклад, CLS Rule 6). Ось приклад один з найважливіших правил - правило номер 1.

Правило 1. Правила CLS відносяться тільки до частин типу, призначених для взаємодії за межами збірки, в якій вони визначені.

З цього правила виходить, що при реалізації якого-небудь типу можна скільки завгодно порушувати правила CLS - це ні на що не вплине. Наприклад, можна створити додаток .NET, який взаємодіє із зовнішнім світом за допомогою трьох класів, і в кожному з цих класів тільки одна функція. Правилам CLS в цьому випадку повинні задовольняти тільки три цих функції (область видимості, угоди про іменування, типи параметрів і т.д.). У внутрішній реалізації цих функцій, класів або додатку в цілому може бути скільки завгодно відступів від правил CLS.

2.2.2 Основи CLR

CLR (Common Language Runtime) - Середовище Часу Виконання або Віртуальна Машина. Забезпечує виконання збірки. Основний компонент .NET Framework. Під Віртуальною Машиною розуміють абстракцію інкапсульованої (відособленої) керованої операційної системи високого рівня, яка забезпечує виконання (керованого) програмного коду.

Керований код - програмний код, який при своєму виконанні здатний використовувати служби, що надаються CLR.

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

·   Управління кодом (завантаження і виконання).

·   Управління пам'яттю при розміщенні об'єктів.

·   Ізоляція пам'яті додатків.

·   Перевірка безпеки коду.

·   Перетворення проміжної мови в машинний код.

·   Доступ до метаданих (розширена інформація про типи).

·   Обробка виключень, включаючи міжмовні виключення.

·   Взаємодія між керованим і некерованим кодами (у тому числі і COM-об'єктами).

·   Підтримка сервісів для розробки (профілізація, відладка і т.д.).

Коротше, CLR - це набір служб, необхідних для виконання керованого коду

Сама CLR складається з двох головних компонентів: ядра (mscoree.dll) і бібліотеки базових класів (mscorlib.dll). Наявність цих файлів на диску - вірна ознака того, що на комп'ютері, принаймні, була зроблена спроба установки платформи .NET.

Ядро середовища виконання реалізоване у вигляді бібліотеки mscoree.dll. При компоновці збірки в неї вбудовується спеціальна інформація, яка при запуску додатку (EXE) або при завантаженні бібліотеки (звернення до DLL з некерованого модуля - виклик функції LoadLibrary для завантаження керованої збірки) приводить до завантаження і ініціалізації CLR. Після завантаження CLR в адресний простір процесу, ядро середовища виконання проводить наступні дії:

·   знаходить розташування збірки;

·   завантажує збірку в пам'ять;

·   проводить аналіз вмісту збірки (виявляє класи, структури, інтерфейси);

·   проводить аналіз метаданих;

·   забезпечує компіляцію коду на проміжній мові (IL) в платформозалежні інструкції (асемблерний код);

·   виконує перевірки, пов'язані із забезпеченням безпеки;

·   використовуючи основний потік додатку, передає управління перетвореному в команди процесора фрагменту коду збірки.

·   FCL (.NET Framework Class Library) - відповідна CLS-специфікації об'єктно-орієнтована бібліотека класів,

·   інтерфейсів і системи типів (типів-значень), які включаються до складу платформи Microsoft .NET.

Ця бібліотека забезпечує доступ до функціональних можливостей системи і призначена служити основою при розробці .NET- додатків, компонент, елементів управління.

. NET бібліотека класів є другим компонентом CLR. . NET FCL можуть використовувати ВСЕ .NET-додатки, незалежно від призначення архітектури використовуваного при розробці мови програмування, і зокрема:

·   вбудовані (елементарні) типи, представлені у вигляді класів (на платформі .NET все побудовано на структурах або класах);

·   класи для розробки графічного призначеного для користувача інтерфейсу (Windows Form);

·   класи для розробки web-додатків і web-служб на основі технології ASP.NET (Web Forms);

·   класи для розробки XML і Internet-протоколів (FTP, HTTP, SMTP, SOAP);

·   класи для розробки додатків, що працюють з базами даних (ADO .NET) і багато що інше.

Рис. 2.1 Послідовність виконання програм в середовищі CRL

2.2.3 Стандартна система типів CTS

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

Концепція класів - наріжний камінь будь-якого об'єктно-орієнтованого програмування. Вона підтримується всіма мовами програмування .NET. Клас - це необмежений набір полий, властивостей, методів і подій, складових єдине ціле. У CTS передбачені абстрактні члени класів, що забезпечує можливість застосування поліморфізму в похідних класах. Множинне спадкоємство в CTS заборонене. Клас відповідає всім вимогам об'єктно-орієнтованого програмування і може бути абстрактним, мати область видимості, використовувати інтерфейси, а також може бути закритим для створення похідних класів.

Крім класів в CTS також представлені і структури. У першому наближенні структури можна розглядати як спрощені різновиди класів. Структури CTS можуть мати будь-яку кількість конструкторів з параметрами (конструктор без параметрів зарезервований). За допомогою конструкторів з параметрами можна встановити значення будь-якого поля структури у момент створення цього об'єкту. Всі структури CTS проведені від єдиного базового класу System.ValueType.

Цей базовий клас визначає структуру як тип даних для роботи тільки із значеннями, але не з посиланнями. У структурі може бути будь-яка кількість інтерфейсів.

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

Члени типів CTS

Раніше було відмічено, що класи і структури можуть мати будь-яку кількість членів. Член - це або метод, або властивість, або поле, або подія. Для кожного члена в .NET існує набір характеристик. Наприклад, будь-який член в .NET характеризується своєю областю видимості (public, private, protected і т.д.). Член можна оголосити як абстрактний, щоб скористатися можливостями поліморфізму при роботі з похідними класами. Члени можуть бути статичними (такі члени можуть спільно використовуватися всіма об'єктами даного класу) і звичайними - що належать тільки одному об'єкту даного класу.

Перерахування CTS

Перерахування - це зручна програмна конструкція, яка дозволяє об'єднувати пари "ім'я-значення" в групи, до яких потім можна звернутися на ім'я груп.

У CTS всі перерахування є похідними від єдиного базового класу System.Enum. Цей базовий клас містить безліч корисних членів, які допоможуть в роботі з парами "ім'я-значення".

Делегати CTS

Делегати в світі .NET - це безпечні для типів вказівники на функції. Але на відміну від інших мов програмування, делегат .NET це вже не просто адреса в оперативній пам'яті, а клас, похідний від базового класу Multicast-Delegate. Делегати дуже корисні в тих ситуаціях, коли потрібно, щоб одна суть передала виклик іншої суті. Делегати - це наріжний камінь в технології обробки подій в середовищі.NET.

Вбудовані типи даних CTS

У середовищі .NET передбачений багатий набір вбудованих типів даних, причому цей набір використовується всіма мовами програмування .NET. Назви типів даних в різних мовах .NET можуть виглядати по-різному, але ці назви всього лише псевдоніми для вбудованих системних типів даних .NET, визначених в бібліотеці базових типів.

2.2.4 Простори імен

Після знайомства із загальниймовним виконуючим середовищем .NET звернемося до особливостей бібліотеки базових класів .NET. Важливість бібліотек коду очевидна.

Наприклад, бібліотека MFC визначає набір класів C++ для створення форм, діалогових вікон, меню, панелей управління і т.д. В результаті програмісти можуть не займатися створенням того, що вже давно зроблене, а зосередитися на унікальних аспектах застосування, що розробляється ними. Аналогічні засоби існують в Delphi, Visual Basic, Java і в решті всіх мов програмування.

Проте на відміну від цих мов програмування, в мовах для середовища .NET не існує бібліотеки базових класів тільки для однієї мови. Натомість розробники використовують бібліотеку базових типів для всього середовища .NET, а для організації типів усередині цієї бібліотеки використовується концепція просторів імен.

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

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

2.2.5 Основи MSIL

(Microsoft Intermediate Language) - проміжна мова платформи Microsoft .NET. Початкові тексти програм для .NET-приложений пишуться на мовах програмування, відповідних специфікації CLS. Для таких мов може бути побудований перетворювач в MSIL. Таким чином, програми на цих мовах можуть транслюватися в проміжний код на MSIL.

Завдяки відповідності CLS, в результаті трансляції програмного коду, написаного на різних мовах, виходить сумісний IL-код.

Фактично MSIL є асемблером віртуального процесора.

МЕТАДАНІ - при перетворенні програмного коду в MSIL також формується блок метаданих, який містить інформацію про даних, використовуваних в програмі. Фактично це набори таблиць, які включають інформацію про типи даних, визначуваних в модулі (про типи даних, на які посилається даний модуль). Раніше така інформація зберігалася окремо. Наприклад, додаток міг включати інформацію про інтерфейси, яка описувалася на Interface Definition Language (IDL). Тепер метадані є частиною керованого модуля.

Зокрема, метадані використовуються для:

·   збереження інформації про типи. При компіляції тепер не потрібні заголовні і бібліотечні файли. Всю необхідну інформацію компілятор читає безпосередньо з керованих модулів;

·   верифікації коду в процесі виконання модуля;

·   управління динамічною пам'яттю (звільнення пам'яті) в процесі виконання модуля;

·   забезпечення динамічної підказки (IntelliSence) при розробці програми стандартними інструментальними засобами (Microsoft Visual Studio .NET) на основі метаданих.

Мови, для яких реалізований переклад на MSIL:

·   Visual Basic,

·   Visual C++,

·   Visual C# 2.0,

·   і ще багато інших мов.

2.2.6 Поняття збірки і виконувані модулі

Виконуваний модуль - незалежно від компілятора (і вхідної мови) результатом трансляції .NET-додатку є керований виконуваний модуль (керований модуль). Це стандартний переносимий виконуваний (PE - Portable Executable) файл Windows.

Однією з особливостей керованого коду є наявність механізмів, які дозволяють працювати з керованими даними. Керовані дані - об'єкти, які в ході виконання коду модуля розміщуються в керованій пам'яті (у керованій купі) і знищуються складальником сміття CLR. Дані C#, Visual Basic і JScript .NET є керованими за замовчанням. Виконуваний модуль - незалежно від компілятора (і вхідної мови) результатом трансляції .NET-додатку є керований виконуваний модуль (керований модуль). Це стандартний переносимий виконуваний (PE - Portable Executable) файл Windows. Однією з особливостей керованого коду є наявність механізмів, які дозволяють працювати з керованими даними.

Керовані дані - об'єкти, які в ході виконання коду модуля розміщуються в керованій пам'яті (у керованій купі) і знищуються прибиральником сміття CLR. Дані C#, Visual Basic і JScript .NET є керованими за замовчанням.

Дані C# також можуть бути помічені як некеровані.

Збірка (Assembly) - базовий будівельний блок додатку в .NET Framework. Керовані модулі об'єднуються в складки. Збірка є логічним угрупуванням одного або декількох керованих модулів або файлів ресурсів. Керовані модулі у складі складок виконуються в Середовищі Часу Виконання (CLR). Збірка може бути або виконуваним застосуванням (при цьому вона розміщується у файлі з розширенням .exe), або бібліотечним модулем (у файлі з розширенням .dll). При цьому нічого спільного із звичайними (старого зразка!) виконуваними застосуваннями і бібліотечними модулями збірка не має.

Декларація збірки (Manifest) - складова частина збірки. Це ще один набір таблиць метаданих, який:

ідентифікує збірку у вигляді текстового імені, її версію, культуру і цифрову сигнатуру (якщо збірка розподіляється серед додатків);

визначає вхідні в склад файли (по імені і хешу);

указує типи і ресурси, що існують в збірці, включаючи опис тих, які експортуються із збірки;

перераховує залежності від інших складок;

указує набір має рацію, необхідних збірці для коректної роботи.

Ця інформація використовується в період виконання для підтримки коректної роботи додатку.

3. ОГЛЯД МОЖЛИВОСТЕЙ МОВИ ПРОГРАМУВАННЯ Й СЕРЕДИ РОЗРОБКИ MICROSOFT VISUAL STUDIO 2008

 

.1 Microsoft Visual Studio 2008


Існує величезна кількість версій продукту Visual Studio, причому до появи цієї нової версії видавалося, що в Microsoft забули про підтримку ентузіастів, які власне і зробили продукти для розробників найпопулярнішими. Не має сенсу говорити про те, що відчували користувачі, коли Microsoft намагалася зрушити їх від Visual Basic 6.0 до .NET-версії продукту, досить сказати, що деякі просто відмовлялися розуміти, що все змінилося.

У квітні 2008 року Microsoft випустила попередню версію Visual Studio, перероблену Visual Studio .NET 2008. Цей продукт був прив'язаний до випуску Windows 2008 і вважався невеликим оновленням. Випуск Visual Studio .NET 2008 мав на увазі глибоку інтеграцію з широкими новими можливостями Windows Server 2008, наприклад, UDDI, Web-службами і .NET Framework. Windows Server 2003 була першою версією Windows, що поставлялася з інтегрованою середою .NET Framework.

В даний час Visual Studio 2008 є високоефективною середою професійного розробника, яка вільно сполучає декілька технологій, що надають розробникам безпрецедентні можливості для створення додатків Windows, Web-служб, Web-додатків, сайтів і так далі. Звичайно, це зажадало від Microsoft набагато більше часу, чим планувалося для розробки даного комплекту продуктів. На думку фахівців Microsoft, це обумовлено тим, що рівень інтеграції, який вони пропонують у всіх продуктах Visual Studio і SQL Server, має особливий характер. Ось що сказав Девід Кемпбелл, генеральний менеджер SQL Server в Microsoft:

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

У Visual Studio 2008 на самому нижньому рівні знаходяться нові Express-версії (Express Edition) для Visual Basic, Visual C#, Visual C і Visual J, а також новий продукт, званий Visual Web Developer, який коштуватиме дуже дешево. Цей продукт призначається для ентузіастів, незалежних розробників і студентів.

На верхньому сегменті ринку в Microsoft тепер є три нові версії Visual Studio: Team Edition for Software Architects, Team Edition for Software Developers і Team Edition for Software Testers - відповідно, версії для команд архітекторів, розробників і випробувачів програмного забезпечення. Додатково до цього розроблена версія Team Foundation Server - це серверний продукт, який надає засоби для контролю, тестування і автоматизації процесів (рис. 3.1).

Рис. 3.1 Головне вікно Microsoft Visual Studio 2008

Посеред цього сімейства продуктів знаходяться версії Standard і Professional і більшість автономних продуктів (Visual Basic, Visual C#, Visual C++ и Visual J++).

3.1.1 Visual Studio 2008 Express Edition

Тепер багато студентів і викладачі зможуть купити стандартну і професійну версії продуктів Visual Studio (як Visual Basic 2008 або весь комплект). Нові ж версії Express надають унікальну можливість навчання розробці програмного забезпечення або Web-сторінок. Ці продукти призначені для початкуючих користувачів, студентів і для представників малого бізнесу. Вони містять доступніші і стислі версії основних продуктів Visual Studio і відрізняються від повних комплектів продуктів. По суті, продукту Visual Studio 2008 Express Edition немає. Ви просто вибираєте комплекти Express Edition з Visual Basic, Visual C#, Visual C і Visual J . Plus і, додатково, новий Visual Web Developer, про яке я раніше згадував, і вільну версію SQL Server 2005, яка називається SQL Server 2005 Express Edition.

Кожен з цих продуктів включає декілька наборів для початківців - Starter Kit. Вони є заздалегідь побудованими додатками, які можуть вивчати початкуючі розробники. Проте додатки Start Kit служать не лише для демонстрації: вони повністю працездатні і надзвичайно корисні як реальні застосування. У Microsoft передбачають, що скоро з'явиться широкий спектр пропозицій безкоштовного і умовно безкоштовного програмного забезпечення, яке буде побудовано за допомогою Starter Kit. Наприклад, Visual Basic 2008 Express Edition і Visual C# 2008 Express Edition включають в Starter Kit приклади для побудови охоронця екрану і створення додатка для монтажу фільмів.

Кожна Express-редакція включає набір підручників, документацію для початківців і посилання на загальнодоступні ресурси, на зразок тематичних конференцій і форумів. Під час установки можна по вибору завантажити і встановити MSDN 2008 Express Edition Library, яка включає повний набір документації по кожному продукту серії Express. Вона призначається в основному для навчання розробників, це не зовсім традиційна документація MSDN Library. Частина цієї документації навіть посилається на відеоматеріали і презентації на сайті MSDN, що вельми коштовно.

Продукт Visual Web Developer 2008 Express Edition особливо хороший. Visual Web Developer 2008 Express має дві істотні переваги перед Frontpage: перше - можна відкривати і приховувати сегменти кодів, залишаючи відкритими лише ті частини коду, які потрібні для роботи; друге - для створення локального Web-сайта не потрібний Web-сервер Microsoft IIS. Так, Visual Web Developer 2008 Express Edition працює з сайтами IIS, FTP і Windows Sharepoint Services, але також можна створити повнофункціональний Web-сайт з порожньої Web-папки.

Обмеження існують в Express версіях: відсутній доступ до видалених даних; ці версії використовують лише локально встановлене джерело даних (включаючи безкоштовний продукт SQL Server 2008 Express Edition). Розробляти додатки для мобільних пристроїв в VB Express, Visual C# Express або Visual C Express не можна; необхідно буде відновити їх до Visual Studio 2008 Standard Edition, щоб дістати такі можливості. Звичайно, відсутні всі професійні можливості версій Visual Studio Team System, наприклад, моделювання додатків і кодів, перевірка модулів, статичний аналіз коду і т.і.

Продукти Express Edition уроздріб коштують всього 49 дол. за редакцію. Це вигідно для будь-якого розробника-початківця. Microsoft не чекає величезної прямої прибули від цих продуктів, добиваючись того, щоб вони стали відкритими для ширшої аудиторії. Ерік Раддер, віце-президент Microsoft, пояснив: "Це дійсно веде до розширення бази користувачів. Ми намагаємося розширити комерційну екосистему Microsoft. Дешеві і доступні продукти допоможуть початківцям і студентам підвищити свою кваліфікацію в простому і зручному середовищі".

 

.2 Мови програмування .NET


Під час анонса платформи .NET на конференції 2008 Professional Developers Conference (PDC) доповідачі називали фірми, що працюють над створенням .NET-версій своїх компіляторів. На даний момент компілятори для створення .NET-версій додатків розроблялися більш ніж для 30 різних мов. Окрім чотирьох мов, що поставляються з Visual Studio.NET (C#, Visual Basic.NET, «Managed C » і Jscript.NET), очікуються .NET-версії Smalltalk, COBOL. Pascal, Python, Perl і безліч останніх відомих мов програмування. Спільна картина представлена на рис. 3.2.

Рис. 3.2 Компілятори для створення .NET-версій додатків

Двійкові файли .NET, для яких використовуються стандартні розширення DLL і ЕХЕ, по своєму внутрішньому вмісту не мають абсолютно нічого спільного із звичайними виконуваними файлами. Наприклад, файли DLL не надають свої методи в розпорядження додатків на комп'ютері. На відміну від компонентів СОМ двійкові файли .Net не описуються за допомогою коду IDL і реєструються в системному реєстрі. Проте, мабуть, найважливіша відзнака полягає в тому, що двійкові файли NET не містять залежних від платформи команд. Вміст двійкових файлів .NET - це платформено-незалежний «проміжна мова», яка офіційно називається Microsoft Intermediate Language (MSIL, проміжна мова Microsoft), або просто IL.

3.2.1 Огляд двійкових файлів.NET

Коли за допомогою компілятора для платформи .NET створюється модуль DLL або ЕХЕ, вміст цього модуля - це так звана збірка (assembly) на мові IL. Зборка містить код на «проміжній мові» - IL. Призначення IL концептуально аналогічно байт-коду Java - він компілюється в платформено-специфічні інструкції, лише коли це абсолютно необхідно. «Абсолютна необхідність» виникає тоді, коли до блоку інструкцій IL (наприклад, реалізації методу) звертається для використання середа виконання .NET.

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

У багатьох відношеннях метадані .NET є значним удосконаленням в порівнянні з класичною інформацією про типів в СОМ. Класичні двійкові файли СОМ зазвичай описуються за допомогою асоційованої бібліотеки типів (яка дуже схожа на двійкову версію коду IDL). Проблема з інформацією про типів в СОМ полягає в тому, що ніхто не може гарантувати, що ця інформація виявиться повною. Код IDL може створити повний каталог зовнішніх серверів, які можуть бути необхідні для нормальної роботи тих, що містяться в модулі СОМ класів. Існування метадані .NET, навпаки, забезпечується тим, що метадані автоматично генеруються компілятором, що створює додаток .NET.

Метадані описують не лише типи, використовуванів збірці, але і саму збірку. Ця частина метаданих називається маніфестом (manifest). У маніфесті міститься інформація про поточну версію збірки, про використані обмеження по безпеці, про підтримувану природну мову (англійському, російському і т. д.), а також список всіх зовнішніх бібліотек, які буде потрібно для нормального виконання.

3.3.2 Мова програмування C#

Спеціально для платформи .NET Microsoft була розроблена нова мова програмування С#. С# - це мова програмування, синтаксис якої дуже схожий на синтаксис Java (але не ідентичний йому). Наприклад, в С# (як в Java) визначення класу складається з одного файлу (*.cs), на відміну від C, де визначення класу розбите на заголовок (*.h) і реалізацію (*.срр). Проте називати С# клоном Java було б невірно. Як С#, так і Java засновані на синтаксичних конструкціях C . Якщо Java у багатьох відношеннях можна назвати очищеною версією С, то С# можна охарактеризувати як очищену версію Java.

Синтаксичні конструкції С# успадковані не лише від C, але і від Visual Basic. Наприклад, в С#, як і в Visual Basic, використовуються властивості класів. Як C, С# дозволяє проводити перевантаження операторів для створених вами типів (Java не підтримує ні ту, ні іншу можливість). С# - це фактично гібрид різних мов. При цьому С# синтаксично не менш (якщо не більш) чистий, чим Java, також простий, як Visual Basic, і володіє практично тією ж потужністю і гнучкістю, що і C . Основні особливості С#:

·   Покажчики більше не потрібні! У програмах на С#, як правило, немає необхідності в роботі з ними, проте, якщо є необхідність в їх використанні, то С# надає для цього всі необхідні засоби.

·   Управління пам'яттю проводиться автоматично.

·   У С# передбачені вбудовані синтаксичні конструкції для роботи з перерахуваннями, структурами і властивостями класів.

·   У С# залишилася можливість перенавантажувати операторів, успадкованих від C . При цьому значна частина складнощів, що виникали при цьому, ліквідована.

·   Передбачена повна підтримка використання програмних інтерфейсів. Проте на відміну від класичного СОМ вживання інтерфейсів - це не єдиний спосіб роботи з типами, використовуючи різні двійкові модулі. .NET дозволяє передавати об'єкти (як заслання або як значення) через кордони програмних модулів.

·   Також передбачена повна підтримка аспектно-орієнтірованних програмних технологій (таких як атрибути). Це дозволяє привласнювати типам характеристики (що багато в чому нагадує COM IDL) для опису в майбутньому поведінки даної суті.

Можливо, найважливіше, що необхідно сказати про мову С#, - це те, що він генерує код, призначений для виконання лише в середі виконання .NET. Наприклад, немає можливості використовувати С# для створення класичного Сом-сервера. Згідно термінології Microsoft код, призначений для роботи в середі виконання .NET, - це керований код (managed code). Двійковий файл, який містить керований файл, називається збіркою (assembly).

Версія 1.0

Проект C# був початий в грудні 1998 і отримав кодову назву COOL (C-style Object Oriented Language). Версія 1.0 була анонсована разом з платформою .NET у червні 2000 року, тоді ж з'явилася і перша загальнодоступна бета-версия; C# 1.0 остаточно вийшов разом з Microsoft Visual Studio .NET у лютому 2002 року.

Перша версія C# нагадувала по своїх можливостях Java 1.4, декілька їх розширюючи: так, в C# були властивості (що виглядають в коді як поля об'єкту, але що на ділі викликають при зверненні до них методи класу), індексатори (подібні до властивостей, але що приймають параметр як індекс масиву), події, делегати, цикли foreach, структури, що передаються за значенням, автоматичне перетворення вбудованих типів в об'єкти при необхідності (boxing), атрибути, вбудовані засоби взаємодії з неуправляємим кодом (DLL, COM) і інше.

Крім того, в C# вирішено було перенести деякі можливості C, відсутні в Java: беззнакові типи, перевизначення операцій (з деякими обмеженнями, на відміну від C ), передача параметрів в метод по засланню, методи із змінним числом параметрів, оператор goto. Також в C# залишили обмежену можливість роботи з покажчиками - в місцях коду, спеціально позначених словом unsafe і при вказівці спеціальній опції компілятору.

Версія 2.0

Проект специфікації C# 2.0 вперше був викладений Microsoft в жовтні 2003 року; у 2004 році виходили бета-версиі (проект з кодовою назвою Whidbey), C# 2.0 остаточно вийшов 7 листопада 2005 року разом з Visual Studio 2005 і .NET 2.0.

Нові можливості в версії 2.0

Часткові типи (розділення реалізації класу більш ніж на один файл). Узагальнені, або типи, що параметризуються (generics). На відміну від шаблонів C, вони підтримують деякі додаткові можливості і працюють на рівні віртуальної машини. В той же час, параметрами узагальненого типа не можуть бути вирази.

Нова форма ітегратора, що дозволяє створювати співпрограми за допомогою ключового слова yield, подібно Python і Руби.

Анонімні методи замикання, що забезпечують функціональність.

Оператор '??': return obj1 ?? obj2; означає (в нотації C# 1.0) return obj1!=null ? obj1 : obj2;.

Типи-значення (що позначаються знаком питання, наприклад, int? i = null;), що обнуляються ('nullable'), є ті ж самі типи-значення, лише можуть набувати також значення null. Такі типи дозволяють поліпшити взаємодію з базами даних через мову SQL.

Версія 3.0

У червні 2004 року Андерс Хейлсберг вперше розповів на сайті Microsoft про плановані розширення мови в C#3.0. У вересні 2005 року вийшли проект специфікації C# 3.0 і бета-версия C# 3.0, що встановлюється у вигляді доповнення до існуючих Visual Studio 2005 і .NET 2.0.

Нові можливості у версії 3.0В C# 3.0 з'явилися наступні радикальні додавання до мови:

·   Ключові слова select, from, where, що дозволяють робити запр си з SQL, XML, колекцій і тому подібне (запит, інтегрований в мову, LINQ)

·   Ініціалізація об'єкту разом з його властивостями:

Customer c = new Customer(); c.Name = "James";

перетвориться вc = new Customer { Name = "James" };

·   Ламбда-висловлення:

listOfFoo.Where(delegate(Foo x) { return x.size > 10; });

перетвориться в.Where(x => x.size > 10);

·   Тип локальної змінної, що мається на увазі: var x = "hello"; замість string x ="hello";

·   Безіменні типи: var x = new { Name = "James" };

·   Методи-розширення - додавання методу в існуючий клас за допомогою ключового слова this при першому параметрі статичної функції.

C# 3.0 буде сумісний з C# 2.0 по Msil-коду, що генерується; поліпшення в мові - чисто синтаксичні і реалізуються на етапі компіляції. Наприклад, багато з інтегрованих запитів LINQ можна вже зараз здійснити, використовуючи безіменні делегати у поєднанні з предикативними методами над контейнерами начеб List.FindAll и List.RemoveAll.

 

.3 Мова XML

(англ. eXtensible Markup Language - розширювана мова розмітки; рекомендована Консорціумом Усесвітньої павутини мова розмітки, що фактично є зводом спільних синтаксичних правил. XML призначена для зберігання структурованих даних (замість існуючих файлів баз даних), для обміну інформацією між програмами, а також для створення на його основі більш спеціалізованих мов розмітки (наприклад, XHTML), інколи званих словниками. XML є спрощеною підмножиною мови SGML.

Метою створення XML було забезпечення сумісності при передачі структурованих даних між різними системами обробки інформації, особливо при передачі таких даних через інтернет. Словники, засновані на XML (наприклад, RDF, RSS, MATHML, XHTML, SVG), самі по собі формально описані, що дозволяє програмно змінювати і перевіряти документи на основі цих словників, не знаючи їх семантики, тобто не знаючи смислового значення елементів. Важливою особливістю XML також є вживання так званих просторів імен (англ. namespace).

3.3.1 Короткий огляд синтаксису

Нижче наведений приклад простого кулінарного рецепту, розміченого з допомогою XML:

<?xml version="1.0" encoding="UTF-8"?>

<recipe name="хліб" prep_time="5 мин" cook_time="3 час">

<title>Простий хліб</title>

<ingredient amount="3" unit="стакан">Мука</ingredient>

<ingredient amount="0.25" unit="грам">Дрожи</ingredient>

<ingredient amount="1.5" unit="стакан">Тепла вода</ingredient>

<ingredient amount="1" unit="чайна ложка">Сіль</ingredient>

<Instructions>

<step> Змішати всі інгредієнти і ретельно замісити.</step>

<step> Закрити тканиною і залишити на одну годину в теплому приміщенні.</step>

<step> Замісити ще раз, покласти на деко і поставити в духовку.</step>

</Instructions>

</recipe>

Перший рядок Xml-документа називається оголошенням XML - це необязательная рядок, вказуючий версію стандарту XML (звичайно це 1.0), так-же тут може бути вказана кодування символів і зовнішні залежності. Остання частина цього Xml-документа складається з вкладених елементів, деякі з яких мають атрибути і вміст. Елемент зазвичай складається з того, що відкриває і закриваючого тегов (міток), що обрамували текст і інших елементів. Відкриваючий тег складається з імені елементу в кутових дужках, наприклад «step»; закриваючий тег складається з того ж імені в кутових дужках, але перед ім'ям ще додається коса межа, наприклад «/step». Вмістом елементу називається все, що розташоване між тим, що відкриває і закриваючим тегамі, включаючи текст і інші (вкладені) елементи. Нижче наведений приклад Xml-елемента, який містить відкриваючий тег, закриваючий тег і вміст елементу:

<step> Замісити ще раз, покласти на деко і поставити в духовку.</step>

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

<ingredient amount="3" unit="стакан">Мука</ingredient>

У наведеному прикладі в елементу «ingredient» є два атрибути: «amount», що має значення «3», і «unit», що має значення «стакан». З точки зору Xml-разметки, приведені атрибути не несуть жодного сенсу, а є просто набором символів. Окрім тексту елемент може містити інші елементи:

<Instructions>

<step> Змішати всі інгредієнти і ретельно замісити.</step>

<step> Закрити тканиною і залишити на одну годину в теплому приміщенні.</step>

<step> Замісити ще раз, покласти на деко і поставити в духовку.</step>

</Instructions>

В даному випадку елемент «Instructions» містить три елементи «step». XML не допускає елементів, що перекриваються. Наприклад, приведений нижче фрагмент некорректен, оскільки елементи «em» і «strong» перекриваються.

<!-- УВАГА! Некоректний XML! -->

<p>Звичайний <em>акцентований <strong> виділений і акцентований </em> виділений</strong></p>

Кожен Xml-документ повинен містити в точності один кореневий елемент, таким чином, наступний фрагмент не може вважатися коректним Xml-документом.

<!-- УВАГА! Некоректний XML! -->

<thing>Cущність №1</thing>

<thing>Cущність №2</thing>

Для позначення елементу без вмісту, званого порожнім елементом, допускається застосовувати особливу форму запису, що складається з одного тега, в якому після імені елементу ставиться коса межа. Наступні фрагменти повністю рівнозначні:

<foo></foo>

<foo />

<foo/>

У XML визначено два методи запису спеціальних символів: заслання на суть і заслання по номеру символу. Суттю в XML називаються іменовані дані, зазвичай текстові, зокрема спецсимволи. Заслання на суть вказується в тому місці, де має бути суть і складається з амперсанда («»), імені суті і крапки з комою («;»). У XML є декілька зумовленої суті, таких як «lt» (посилатися на неї можна написавши «<») для лівої кутової дужки і «amp» (заслання - «») для амперсанда, можливо також визначати власну суть. Окрім запису за допомогою суті окремих символів, їх можна використовувати для запису текстових блоків, що часто зустрічаються. Нижче наведений приклад використання зумовленої суті для уникнення використання знаку амперсанда в назві:

<company-name>AT&amp;T</company-name>

Повний список зумовленої суті складається з («») < («<»), > («>»), apos; («'»), і " ("") - останні дві корисні для запису роздільників усередині значень атрибутів. Визначити свою суть можна в Dtd-документі. Інколи буває необхідно визначити неразривний пропуск, який в HTML позначається як в XML його записують &#160;

Посилання по номеру символу виглядає як заслання на суть, але замість імені суті вказується символ # і число (у десятковому або шестнадцатерічному запису), що є номером символу в кодовій таблиці Юнікод. Це звичайно символи, які неможливо закодувати безпосередньо, наприклад буква арабського алфавіту в Ascii-кодірованном документі. Амперсанд може бути представлений таким чином:

<company-name>AT&#038;T</company-name>

Існує ще безліч правил, що стосуються складання коректного XML-документа, але метою даного короткого огляду було лише показати основи, необхідні для розуміння структури XML-документа.

Переваги:

·   XML(людино-орієнтирований) - це формат, одночасно зрозумілий і людині і комп'ютеру;

·   XML підтримує Юнікод;

·   в форматі XML можуть бути описані основні структури даних - такі як записи, списки і дерева;

·   XML - це самодокументований формат, який описує структуру і імена полів також як і значення полів;

·   XML має строго певний синтаксис і вимоги до аналізу, що дозволяє йому залишатися простим, ефективним і несуперечливим;

·   XML також широко використовуєтся для зберігання й обробки документів;

·   XML - формат, заснований на міжнародних стандартах;

·   ієрархічна структура XML личить для опису практично будь-яких типів документів;

·   XML є простим текстом, вільним від ліцензування і яких-небудь обмежень;

·   XML не залежить від платформи;

·   XML є підмножиною SGML (який використовується з 1986 року). Вже накопичений великий досвід роботи з мовою і створені спеціалізовані застосування;

·   XML не накладує вимоги на розташування символів на строці.

Недоліки:

·        Синтаксис XML надлишковий.

o   Розмір XML документа істотно більше бінарного представлення тих же даних. У грубих оцінках величину цього чинника приймають за 1 порядок (у 10 разів).

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

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

o  Для великої кількості завдань не потрібна вся потужність синтаксису XML і можна використовувати значно простіші і продуктивніші вирішення.

·        XML не містить вбудованої в мову підтримки типів данних. В нёму нема понять «цеілих чисел», «строк», «дат», «булевих значень» і т.і.

·        Іерархічна модель даних, пропонована XML, обмежена в порівнянні з реляційною моделлю і об'єктно-орієнтованими графами.

o Вираження не ієрархічних даних (наприклад графів) вимагає додаткових зусиль.

o   Крістофер Дейт відзначав, що «XML є спробою заново винайти ієрархічні бази даних …».

·   Простори імен XML складно використовувати і їх складно реалізовувати в XML парсерах;

4. ОПИС ФУНКЦІОНАЛЬНИХ МОЖЛИВОСТЕЙ ТА ПРОГРАМНОЇ РЕАЛІЗАЦІЇ ПРОЕКТОВАНОЇ СИСТЕМИ


4.1 Функціональне призначення та технологічні особливості розробки


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

В якості середовища розробки для реалізації поставленого завдання була обрана Microsoft Visual Studio 2005 Express Edition і мова програмування C #. У ході розробки системи був використані стандартні контролю, які входять до складу пакету Microsoft. NET Framework, і два контрола розроблених власноруч. Необхідність розробки власних контролів обумовлена тим, що стандартні контроли пакету Microsoft. NET Framework не задовольняють поставленим завданням. Так само було проведено удосконалення початкової програми і додані відсутні функції, що стосуються логіки перевірки мережевої роботи.

4.2 Розробка логіко-функціональної схема роботи користувача


Логіко-функціональна схема роботи користувача з системою представлена на рис. 4.1

 

.3 Програмна реалізація проектованої системи


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

 

Рис. 4.2 Приклад повідомлення функції тестування

При запуску тестування проводиться пошук кілець між комутаторами, перевірка параметрів пристроїв на відповідність IP-адрес, пошук повторень IP-адрес у межах підмережі, пошук непідключеним пристроїв, доступ до DNS-серверів, і доступ між підмережами.

Основним інструментом для перевірки доступ до DNS-серверів і доступу між підмережами є метод класу MainForm ping. Вихідний код методу ping наведено нижче:

public bool ping(int dev_id, string src_ip, string dst_ip)

{(dvc[dev_id].static_list[0, 0] != null)

{innetwork = false;next_gateway = static_compare(dev_id, dst_ip);(next_gateway != "notfound")

{src_iface_id = -1;(int i = 0; i < dvc[dev_id].iface_col; i++)

{tmp_array = dvc[dev_id].GetIface(i);

(tmp_array[0].ToString() == dst_ip)

{_iface_id = i;true;

}

}(src_iface_id == -1)

{(int i = 0; i < dvc[dev_id].iface_col; i++)

{tmp = dvc[dev_id].GetIface(i);

(tmp[0].ToString() == next_gateway)

{_iface_id = i;= true;

}

}

}

{_iface_id = find_id(dev_id, next_gateway);

}

}(src_iface_id == -1)

{(dvc[dev_id].default_gateway != "notset")

{_iface_id = Convert.ToInt32(dvc[dev_id].default_gateway);

}

{false;

}

}tmp_dvc_array = dvc[dev_id].GetIface(src_iface_id);(tmp_dvc_array[3].ToString() != "notset")

{((dvc[Convert.ToInt32(tmp_dvc_array[3])].dvc_type == "Workstation") ||

(dvc[Convert.ToInt32(tmp_dvc_array[3])].dvc_type == "Laptop") ||

(dvc[Convert.ToInt32(tmp_dvc_array[3])].dvc_type == "DNS")

)

{tmp_array = dvc[Convert.ToInt32(tmp_dvc_array[3])].GetIface(Convert.ToInt32(tmp_dvc_array[4]));(tmp_array[0].ToString() != dst_ip)

{false;

}

{true;

}

}if (dvc[Convert.ToInt32(tmp_dvc_array[3])].dvc_type == "Switch")

{.Text = "Switch";(innetwork)

{(chech_subnet(-1, dvc[Convert.ToInt32(tmp_dvc_array[3])].number, dst_ip))

{true;

}

{false;

}

}

{(chech_subnet(-1, dvc[Convert.ToInt32(tmp_dvc_array[3])].number, next_gateway))

{-;(TTL == 0)

{false;

}(ping(Convert.ToInt32(default_gw_id), src_ip, dst_ip))

{(TTL == 0)

{false;

}true;

}

{false;

}

}

}

}if (dvc[Convert.ToInt32(tmp_dvc_array[3])].dvc_type == "Server")

{-;(TTL == 0)

{false;

}(ping(Convert.ToInt32(tmp_dvc_array[3]), src_ip, dst_ip))

{(TTL == 0)

{false;

}true;

}

{false;

}

}

}

{false;

}

}

{false;

}

}

{false;

}false;

}

Метод ping повертає значення булевої типу, якщо при перевірці, про-ізошла помилка, метод поверне «false», що буде означати, що доступ до заданої мережі або DNS-сервера відсутня. При цьому метод ping повинен викликатися два рази для перевірки прямого і зворотного доступу. Метод ping, також, відстежує час життя пакету, яке за замовчуванням дорівнює 64 і при проходженні оче-чергової «Маршрутизатор» зменшує це число на одиницю. Якщо індикатор часу життя пакета досягає 0, то це означає, що віддалений вузол не дост-пен. Причиною цьому може служити неправильна маршрутна політика, коли виходить маршрутне кільце між двома або більше маршрутизаторів.

 

.4 Розроблені лабораторні роботи


Лабораторна робота № 1

Тема: Ознайомлення з еталонною моделлю OSI і стеком протоколів TCP / IP.

Мета: Побудова найпростішої комп'ютерної мережі.

Теоретична частина

Модель OSI.

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

Фізичний рівень виконує передачу бітів по фізичних каналах, таким, як коаксіальний кабель, вита пара або оптоволоконний кабель. На цьому рівні визначаються характеристики фізичних середовищ передачі даних і параметрів електричних сигналів.

Канальний рівень забезпечує передачу кадру даних між будь-якими вузлами в мережах з типовою топологією або між двома сусідніми вузлами в мережах з довільною топологією. У протоколах канального рівня закладена певна структура зв'язків між комп'ютерами і способи їх адресації. Адреси, які використовуються на канальному рівні в локальних мережах, часто називають МАС-адресами.

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

Транспортний рівень забезпечує передачу даних між будь-якими вузлами мережі з необхідним рівнем надійності. Для цього на транспортному рівні є засоби встановлення з'єднання, нумерації, буферизації та впорядкування пакетів.

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

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

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

Стек протоколів TCP / IP

Так як стек TCP / IP був розроблений до появи моделі взаємодії відкритих систем ISO / OSI, то, хоча він також має багаторівневу структуру, відповідність рівнів стека TCP / IP рівням моделі OSI досить умовно.

Структура протоколів TCP / IP наведена на малюнку 1. Протоколи TCP / IP поділяються на 4 рівні.

Рис. 1. Стек TCP / IP

Самий нижній (рівень IV) відповідає фізичному і канальному рівням моделі OSI. Цей рівень у протоколах TCP / IP не регламентується, але підтримує всі популярні стандарти фізичного і канального рівня: для локальних мереж це Ethernet, Token Ring, FDDI, Fast Ethernet, 100VG-AnyLAN, для глобальних мереж - протоколи з'єднань "точка-точка" SLIP і PPP, протоколи територіальних мереж з комутацією пакетів X.25, frame relay. Розроблено також спеціальна специфікація, що визначає використання технології ATM як транспорт канального рівня. Зазвичай при появі нової технології локальних або глобальних мереж вона швидко включається в стек TCP / IP за рахунок розробки відповідного RFC, що визначає метод інкапсуляції пакетів IP у її кадри.

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

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

До рівня міжмережевої взаємодії відносяться і всі протоколи, пов'язані з складанням і модифікацією таблиць маршрутизації, такі як протоколи збору маршрутної інформації RIP (Routing Internet Protocol) і OSPF (Open Shortest Path First), а також протокол міжмережевих керуючих повідомлень ICMP (Internet Control Message Protocol ). Останній протокол призначений для обміну інформацією про помилки між маршрутизаторами мережі і вузлом - джерелом пакета. За допомогою спеціальних пакетів ICMP повідомляється про неможливість доставки пакета, про перевищення часу життя або тривалості зборки пакета з фрагментів, про аномальні величини параметрів, про зміну маршруту пересилання і типу обслуговування, про стан системи і т.п.

Наступний рівень (рівень II) називається основним. На цьому рівні функціонують протокол керування передачею TCP (Transmission Control Protocol) і протокол дейтаграм користувача UDP (User Datagram Protocol). Протокол TCP забезпечує надійну передачу повідомлень між віддаленими прикладними процесами за рахунок утворення віртуальних з'єднань. Протокол UDP забезпечує передачу прикладних пакетів датаграмної способом, як і IP, і виконує тільки функції сполучної ланки між мережним протоколом і численними прикладними процесами.

Верхній рівень (рівень I) називається прикладним. За довгі роки використання в мережах різних країн і організацій стек TCP / IP нагромадив велику кількість протоколів і сервісів прикладного рівня. До них відносяться такі широко використовувані протоколи, як протокол копіювання файлів FTP, протокол емуляції терміналу telnet, поштовий протокол SMTP, використовуваний в електронній пошті мережі Internet, гіпертекстові сервіси доступу до віддаленої інформації, такі як WWW і багато інших. Зупинимося дещо докладніше на деяких з них.

Порядок виконання роботи

Налаштування мережі полягає в установці протоколів, які необхідні для її роботи.

Протокол - це певний мова, за допомогою якого комп'ютери мережі обмінюються між собою даними. У нашій мережі робочим протоколом буде протокол TCP / IP. Щоб комп'ютери могли обмінюватися між собою даними цей протокол має бути встановлений на всіх комп'ютерах, які знаходяться в мережі.

Налаштування мережі на базі операційної системи Windows XP.

Клацніть правою кнопкою миші по значку «Мережеве оточення»  і виберіть пункт "Властивості". Відкриється вікно з налаштуваннями мережі.


Клацніть правою кнопкою миші на піктограму "Підключення до локальної мережі" і виберіть пункт "Властивості". Відкриється вікно налаштувань підключення до локальної мережі.


Виберіть пункт "Протокол Інтернету (TCP/IP)" і натисніть кнопку "Властивості". Відкриється вікно налаштувань протоколу TCP/IP.


Тепер нам необхідно задати конкретні налаштування, необхідні для роботи протоколу. У кожного комп'ютера в мережі ці налаштування мають бути індивідуальні. Введіть в точність ті установки, які зображені на малюнку.

Тут:

.242.50.240 - це IP -адрес комп'ютера в мережі.

.255.255.0 - маска підмережі. Це спеціальний параметр, який разом з адресою однозначно визначає мережу, в якій знаходиться комп'ютер.

Після введення налаштувань протоколу натисніть "ОК", вікно "Властивості TCP/IP" закриється. Натисніть "ОК" у вікні "Підключення по локальній мережі". Вікно налаштувань

підключення закриється.

Все вище приведені операції необхідно виконати на усіх клієнтах мережі міняючи останню цифру IP -адреса на унікальну для цієї мережі.

Налаштування мережі в програмі Network Emulator

Розташував усі необхідні елементи на робочій області, виробляємо їх налаштування. Для цього:

За допомогою контекстного меню підключаємо усі пристрої, розміщені на робочій області, безпосередньо один до одного.


Клацніть правою кнопкою миші на піктограмі пристрою і вибравши пункт меню "властивості" і встановлюємо параметри мережевого інтерфейсу



Повторивши вище приведений пункт до іншого пристрою ми повинні отримати працездатну локальну мережу.


Для перевірки працездатності мережі вибираємо пункт меню Инструменты ->Запуск тіста (F5).

Висновок

В ході виконання цієї лабораторної роботи ми ознайомилися з еталонною моделлю осі і стеком протоколів TCP/IP, а так само, навчилися створювати елементарну локальну мережу і проводити її налаштування.

Лабораторна робота № 2

Тема: Огляд Технології Ethernet

Мета: «Створення мережі на витій парі».

Три класи Ethernet

Специфікація Ethernet передбачає три різних типи кабельних систем і мережевої топології, використовуваних для організації мереж. Ці типи відомі як 10Base5, 10Base2 і 10Base-T.

"10" означає смугу пропускання кабелю (10 Мегабіт в секунду), Base метод немодульованою передачі (baseband), при якому в кожний момент часу по кабелю може передаватися тільки один сигнал. 5, 2 і T говорять про накладених на сегмент обмеження (див. нижче).

Коаксіальний кабель: ThickNet, 10BASE5, товстий коаксіал


В якості середовища передачі використовується коаксіальний кабель спеціального типу, який називають зазвичай "товстим". Кожен комп'ютер під'єднується до головного кабелю (магістраль, backbone) за допомогою спеціального "кабелю зниження" (drop cable). Цей кабель, в свою чергу, приєднується до AUI-порту мережевого адаптера за допомогою роз'єму DB15.

Типи кабелю:

BELDEN # 9880, 89980;

кабель зниження BELDEN # 9902, 9903.

Обмеження сегмента (пам'ятаєте, що сегментом називається загальна довжина кабелю між двома термінаторами, що встановлюються на обох кінцях мережі). Стандарт 10Base5 підтримує до 100 вузлів на сегмент, довжина якого не повинна перевищувати 500 метрів.

За і проти 10Base5: :

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

Висока вартість кабелю та його встановлення.

Інсталяція досить складна через необхідність встановлення трансіверов по всій мережі.

Громіздкі кабелі доводиться розміщувати на стелі або під підлогою.

BASE5 зазвичай використовують ті, у кого вже встановлена мережа 10BASE5.

Позначення 5 в акроніми 10BASE5 нагадує про довжину сегмента (до 500 метрів).

Коаксіальний кабель: ThinNet 10BASE2, "CheaperNet", тонкий коаксіал


В якості середовища передачі 10Base2 використовує тонкий коаксіальний кабель (thin Ethernet). Його іноді називають також "cheapernet" (дешевий). Мережа використовує шинну топологію, для підключення адаптерів до кабелю використовуються спеціальні BNC-трійники (T-Connector). По кінцях сегмента встановлюються термінатори. Можна організувати мережу зі змішаною топологією "зірка-шина", використовуючи повторювачі (repeater), що відповідають специфікації 802.3.

Підтримувані кабелі: : # 9907, 89 907.

Відповідні 802.3 кабелі - такі, як RG58A / U або RG58 C / U.

Обмеження сегменти:

Стандарт 10BASE2 Ethernet підтримує до 30 вузлів в сегменті з довжиною не більше 185 метрів. Мінімальна відстань між вузлами складає 0.5 метра.

·        Тонкий коаксіальний кабель вимагає використання трійників для підключення кабелю до адаптера.

·        Мережевий кабель не може бути з'єднаний з адаптером за допомогою кабелю зниження.

·        Термінатори підключаються до трійника першого і останнього комп'ютерів сегмента.

За і проти 10BASE2: :

·        Надійно перевірена технологія.

·        Проста установка і розширення мережі.

Екранування кабелю краще, ніж для UTP (неекранована кручена пара). :

Кабель дорожче, ніж UTP.

Прокладені по стінах кабелі виглядають досить погано.

Від'єднання будь-якого кабелю повністю порушує працездатність мережі.

Назва 10BASE2 нагадує про максимальній довжині сегмента [майже] 200 метрів (точніше, 185).

Скорочення пари: 10BASE-T


Стандарт 10BASE-T передбачає використання кабелю на основі неекранованих скручених пар провідників (UTP) з роз'ємами RJ-45. Вилки RJ-45 вставляються безпосередньо в роз'єм мережного адаптера на кожному комп'ютері. Мережа збирається по топології "зірка" другий кінець кожного кабелю вставляється в роз'єм спеціального пристрою, званого концентратором або хабом. Хаб є загальною точкою з'єднання вузлів мережі (центр зірки). Зазвичай хаб функціонує як повторювач.

Підтримувані кабелі:

·        AT & T: # 104, 315, 205, # 105, 287, 015. категорії 3 (Level 3) або вище (рекомендується Level 5), BELDEN: # 1227A.

Обмеження сегмента.

Стандарт IEEE 802.3 10BASE-T припускає один вузол на кожен сегмент при максимальній довжині сегмента 100 метрів.

За і проти 10BASE-T:


Розведення контактів роз'єму RJ-45 :

·        Більш проста локалізація помилок в порівнянні з іншими варіантами Ethernet - кабелі можна просто від'єднувати для проведення діагностики.

·        Кабель досить дешевий і іноді встановлюється заздалегідь при будівництві будівлі. :

·        Організація мережі здорожує за рахунок установки концентратора, який не потрібно при інших варіантах Ethernet.

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

Буква T в акроніми 10BASE-T нагадує про тип кабелю (twisted pair-); вона ж може служити нагадуванням про спосіб з'єднання - телефонні роз'єми RJ45. Буква Т схожа на цифру 1, що служить нагадуванням про довжину сегмента - 100 метрів.

У роз'ємах RJ-45 для з'єднання мережі 10BASE-T використовуються контакти 1,2,3, 6. Розведення кабелю в роз'ємі показана на малюнку.

Пряме з'єднання


Нормальне з'єднання 10Base-T виконується так, що контакти 1, 2, 3 і 6 з одного кінця кабелю з'єднуються з однойменними кінцями іншого кабелю. [Насправді для оброблення кабелю UTP існують спеціальні стандарти, зокрема, EIA/TIA-568-A]

З'єднання хабів

Для розширення мережі 10Base-T потрібно встановлювати додаткові концентратори, оскільки в кожному сегменті може бути присутнім тільки один вузол. Додаткові хаби підключаються як показано на малюнку. Якщо з'єднання концентраторів здійснюється через порт 10Base-T [Більшість сучасних хабів дозволяють використовувати для нарощування топологію 10Base-2 (загальна шина) або використовують спеціальні кабелі та роз'єми для об'єднання декількох концентраторів в єдиний стек.] Спеціальний кабель, розводка якого відрізняється від звичайної (см . малюнок нижче) [Сучасні концентратори, як правило мають спеціальний порт розширення, який дозволяє використовувати звичайний кабель для підключення додаткового хаба.].

Правила використання повторювачів (Ethernet Repeater)

Між будь-якими двома взаємодіючими вузлами мережі може знаходитися до 5 сегментів, з'єднаних не більше, ніж 4 повторювачами (або хабами). При цьому комп'ютери (вузли мережі) можуть перебувати не більше, ніж у 3 сегментах з 5. Залишилися два сегменти не повинні містити комп'ютерів і служать лише для подовження мережі (з'єднання повторювачів або концентраторів). У кожному кінці порожнього сегмента знаходиться повторювач або хаб.

Правило Ethernet 5-4-3

·        5 - не більше п'яти сегментів, з'єднаних

·        4 - не більше, ніж чотирма повторювачами (або хабами).

·        3 - в мережі не повинно бути більше трьох сегментів, що містять комп'ютери

·        2 - залишилися два сегменти використовуються для з'єднання повторювачів або хабів.

·        1 колізійних домен (Collision Domain)


Всі компоненти Ethernet, включаючи кабель і репітери, вносять деяку затримку у поширення сигналу. Ця затримка впливає на здатність вузлів мережі детектувати колізії [Спроба двох вузлів одночасно використовувати кабель для передачі даних.] І тому, затримка є основним чинником, що обмежує довжину сегмента Ethernet.

Всі конфлікти, що відбуваються в одному колізійним домені, повинні виявлятися будь-яким вузлом мережі при спробі цього вузла надіслати свої дані в мережу.

Порядок виконання роботи

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

Схема мережі має наступний вигляд:


Після запуску програми Network Emulator і розміщення всіх необхідних компонентів на робочій області, їх необхідно налаштувати.

Налаштування мережі.

Налаштування мережі полягає в установці протоколів, які необхідні для її роботи.

Протокол - це певний мова, за допомогою якого комп'ютери мережі обмінюються між собою даними. У нашій мережі робочим протоколом буде протокол TCP / IP. Щоб комп'ютери могли обмінюватися між собою даними цей протокол має бути встановлений на всіх комп'ютерах, які знаходяться в мережі.

На «Клієнтів» необхідно виконати наступні дії:

. Згідно з малюнку, розміщуємо пристрої на робочій області.

. Робить налаштування пристроїв аналогічно методу вивченому в лабораторній роботі № 1 у відповідності з таблицею.

Client 1

IP: 192. 168.0.2


Mask: 255.255.255.0

Client 2

IP: 192. 168.0.3


Mask: 255.255.255.0

Client 3

IP: 192. 168.0.4


Mask: 255.255.255.0

Client 4

IP: 192. 168.0.5


Mask: 255.255.255.0

Web Server

IP: 192. 168.0.1


Mask: 255.255.255.0

 

І встановлюємо всім комп'ютерам в мережі, крім Web Server'a, адреса шлюзу 192.168.0.1.

. Перевіряємо працездатність мережі за допомогою пункту меню Інструменти -> Запуск тесту (F5).

Висновок. У ході виконання цієї лабораторної роботи ми вивчили різні класи технології передачі даних Ethernet і навчилися створювати прості моделі на базі цієї технолтогіі.

Лабораторна робота № 3

Тема: Міжмережевої взаємодії.

Мета: Створення розподіленої обчислювальної мережі.

Теоретична частина

Протокол міжмережевої взаємодії IP.

Основу транспортних засобів стека протоколів TCP / IP складає протокол міжмережевої взаємодії - Internet Protocol (IP). До основних функцій протоколу IP відносяться: перенесення між мережами різних типів адресної інформації в уніфікованому формі, збірка і розбирання пакетів при передачі їх між мережами з різним максимальним значенням довжини пакету.

Формат пакета IP

Пакет IP складається із заголовка і поля даних. Заголовок пакета має наступні поля:

Поле Номер версії (VERS) вказує версію протоколу IP. Зараз повсюдно використовується версія 4 і готується перехід на версію 6, звані аемую також IPng (IP next generation).

Поле Довжина заголовка (HLEN) пакета IP посідає 4 біта і вказує значення довжини заголовка, виміряний у 32-бітових словах. Зазвичай заголовок має довжину в 20 байт (п'ять 32-бітових слів), але при збільшенні обсягу слу жебной інформації ця довжина може бути збільшена за рахунок використання додаткових байт в полі Резерв (IP OPTIONS).

Поле Тип сервісу (SERVICE TYPE) займає 1 байт і задає пріоритетність пакету і вид критерію вибору маршруту. Перші три біти цього підлогу я утворюють підполі пріоритету пакета (PRECEDENCE). Пріоритет може мати значення від 0 (нормальний пакет) до 7 (пакет керуючої інформації). Маршрутизатори та комп'ютери можуть брати до уваги пріоритет пакету і обробляти більш важливі пакети в першу чергу. Поле Тип сервісу містить також три біти, що визначають критерій вибору маршруту. Встановлений біт D (delay) говорить про те, що маршрут повинен вибиратися для мінімізації затримки доставки даного пакету, біт T - для максимізації пропускної здатності, а біт R - для максимізації надійності доставки.

Поле Загальна довжина (TOTAL LENGTH) займає 2 байти і вказує загальну довжину пакета з урахуванням заголовка і поля даних.

Поле Ідентифікатор пакету (IDENTIFICATION) займає 2 байти і використовується для ра спознаванія пакетів, що утворилися шляхом фрагментації вихідного пакету. Всі фрагменти повинні мати однакове значення цього поля.

Поле Прапори (FLAGS) займає 3 біти, воно вказує на можливість фрагментації пакета (встановлений біт Do not Fragment - DF - забороняє маршрутизатора фрагментувати даний пакет), а також на те, чи є даний пакет проміжним або останнім фрагментом вихідного пакету (встановлений біт More Fragments - MF - говорить про те пакет переносить проміжний фрагмент).

П оле Зсув фрагмента (FRAGMENT OFFSET) займає 13 біт, воно використовується для вказівки в байтах зміщення поля даних цього пакета від початку загального поля даних вихідного пакету, який піддали фрагментації. Використовується при складанні / розбиранні фрагментів пакетів при передачах їх між мережами з різними величинами максимальної довжини пакета.

Поле Час життя (TIME TO LIVE) займає 1 байт і вказує граничний термін, протягом якого пакет може переміщатися по мережі. Час життя даного пакету вимірюється в с екундах і задається джерелом передачі засобами протоколу IP. На шлюзах і в інших вузлах мережі після закінчення кожної секунди з поточного часу життя віднімається одиниця; одиниця віднімається також при кожній транзитної передачі (навіть якщо не пройшла секунда). При закінчення часу життя пакет анулюється.

Ідентифікатор Протоколу верхнього рівня (PROTOCOL) займає 1 байт і вказує, якому протоколу верхнього рівня належить пакет (наприклад, це можуть бути протоколи TCP, UDP або RIP).

Контрольна сума (HEADER CHECKSUM) займає 2 байти, вона розраховується по всьому заголовка.

Поля Адреса джерела (SOURCE IP ADDRESS) та Адреса призначення (DESTINATION IP ADDRESS) мають однакову довжину - 32 біта, і однакову структуру.

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

Максимальна довжина поля даних пакету обмежена розрядністю поля, що визначає цю величину, і становить 65535 байтів, однак при передачі по мережах різного типу довжина пакету вибирається з урахуванням максимальної довжини пакета протоколу нижнього рівня, що несе IP-пакети. Якщо це кадри Ethernet, то вибираються пакети з максимальною довжиною в 1500 байтів, уміщаються в поле даних кадру Ethernet.

Порядок виконання роботи.

Наведена на малюнку мережа складається з двох підмереж з'єднані за допомогою шлюзу, на якому знаходиться Web Server


1.Якщо програма «Network Emulator» запущена, з меню "Файл-> Новий» або за допомогою поєднання гарячих клавіш Ctrl + N створіть новий документ.

.Разместіте і з'єднайте пристрої як показано на малюнку.Дана мережа перебуваю іт з двох підмереж з'єднаних між собою за допомогою шлюзу, який також є веб-сервером.

Клієнти з 1-го по 4 включно з'єднані між собою за допомогою підсилювача-концентратора HUB 1 є першою підмережа. А клієнти з 5-го по 8 включно з'єднані між собою за допомогою підсилювача-концентратора HUB 2 представляють собою підмережа 2.

Кліенти 1-й підмережі мають наступні налаштування:

Клієнт 1

IP-адреса: 192.168.0.2


Маска: 255.255.255.0


Шлюз: 192.168.0.1

Клієнт 2

IP-адреса: 192.168.0.3


Маска: 255.255.255.0


Шлюз: 192.168.0.1

Клієнт 3

IP-адреса: 192.168.0.4


Маска: 255.255.255.0


Шлюз: 192.168.0.1

Клієнт 4

IP-адреса: 192.168.0.5


Маска: 255.255.255.0


Шлюз: 192.168.0.1


Кліенти 2-й підмережі мають наступні налаштування:

Клієнт 5

IP-адреса: 192.168.1.2


Маска: 255.255.255.0


Шлюз: 192.168.1.1

Клієнт червня

IP-адреса: 192.168.1.3


Маска: 255.255.255.0


Шлюз: 192.168.1.1

Клієнт 7

IP-адреса: 192.168.1.4


Маска: 255.255.255.0


Шлюз: 192.168.1.1

Клієнт 8

IP-адреса: 192.168.1.5


Маска: 255.255.255.0


Шлюз: 192.168.1.1


3. Настройкі мережевих карт Веб-сервера мають наступний вигляд:

Інтерфейс eth0:


Інтерфейс eth1:

Перевіряємо працездатність мережі за допомогою пункту меню Інструменти-> Запуск тесту (F5).

Висновки. В ході виконання даної лабораторної роботи ми навчилися розбивати локальну мережу на підмережі за допомогою шлюзу.

Лабораторна робота № 4

Тема: Введення в Віртуальні приватні мережі (VPN).

Мета: Побудова розподіленої обчислювальної мережі на базі VPN

Теоретична частина

Останнім часом у світі телекомунікацій спостерігається підвищений інтерес до так званих Віртуальним Приватним Мережам (Virtual Private Network - VPN). Це обумовлено необхідністю зниження витрат на утримання корпоративних мереж за рахунок більш дешевого підключення віддалених офісів та віддалених користувачів через мережу Internet (див. рис. 1). Дійсно, при порівнянні вартості послуг по з'єднанню декількох мереж через Internet, наприклад, з мережами Frame Relay можна помітити істотну різницю у вартості. Однак, необхідно відзначити, що при об'єднанні мереж через Internet, відразу ж виникає питання про безпеку передачі даних, тому виникла необхідність створення механізмів, що дозволяють забезпечити конфіденційність і цілісність інформації, що передається. Мережі, побудовані на базі таких механізмів, і отримали назву VPN.

 

Віртуальна Приватна мережа.

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

Що таке VPN

Існує безліч визначень, проте головною відмітною рисою даної технології є використання мережі Internet як магістралі для передачі корпоративного IP-трафіка. Мережі VPN призначені для вирішення завдань підключення кінцевого користувача до віддаленої мережі та з'єднання декількох локальних мереж. Структура VPN включає в себе канали глобальної мережі, захищені протоколи та маршрутизатори.

Як же працює Віртуальна Приватна Мережа? Для об'єднання віддалених локальних мереж у віртуальну мережу корпорації використовуються так звані віртуальні виділені канали. Для створення подібних з'єднань використовується механізм тунелювання. Ініціатор тунелю інкапсулює пакунки локальної мережі (у тому числі, пакети немаршрутізіруемих протоколів) в нові IP-пакети, що містять у своєму заголовку адресу цього ініціатора тунелю та адреса термінатора тунелю. На протилежному кінці тунелю термінатором проводиться зворотний процес витягання вихідного пакету.

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

Для того щоб була можливість створення на базі VPN обладнання та програмного забезпечення від різних виробників необхідний деякий стандартний механізм. Таким механізмом побудови VPN є протокол Internet Protocol Security (IPSec). IPSec описує всі стандартні методи VPN. Цей протокол визначає методи ідентифікації при ініціалізації тунелю, методи шифрування, що використовуються кінцевими точками тунелю та механізми обміну та управління ключами шифрування між цими точками. З недоліків цього протоколу можна відзначити те, що він орієнтований на IP.

Іншими протоколами побудови VPN є протоколи PPTP (Point-to-Point Tunneling Protocol), розроблений компаніями Ascend Communications і 3Com, L2F (Layer-2 Forwarding) - компанії Cisco Systems і L2TP (Layer-2 Tunneling Protocol), що об'єднав обидва вищеназвані протоколу. Однак ці протоколи, на відміну від IPSec, не є повнофункціональними (наприклад, PPTP не визначає метод шифрування).

Порядок виконання роботи

Представлена комп'ютерна мережа складається з двох окремих мереж перебувають на значній відстані один від одного і з'єднаних між собою за допомогою технології VPN через глобальну комп'ютерну мережу Інтернет.

 

. Якщо програма «Network Emulator» запущена, з меню "Файл-> Новий» або за допомогою поєднання гарячих клавіш Ctrl + N створіть новий документ.

. Додайте і з'єднайте пристрої як показано на малюнку.

Клієнти з 1-го по 4 включно з'єднані між собою за допомогою підсилювача-концентратора HUB представляють собою мережу підключену до шлюзу з можливістю виходу в інтернет. А клієнти з 5-го по 10 включно та Веб-сервер з'єднані між собою за допомогою підсилювача-концентратора HUB представляють собою іншу мережу, розташовану на значній відстані від першої мережі і мають доступ до Інтернет за допомогою шлюзу № 2.

Ці дві мережі з'єднані в єдину обчислювальну мережу за допомогою VPN і, таким чином, мережа № 1 має доступ до Веб-сервера розташованому в мережі №2.

3. Клієнти 1-й мережі мають наступні налаштування:

 Клієнт 1

IP-адреса: 192.168.0.2


Маска: 255.255.255.0


Шлюз: 192.168.0.1

Клієнт 2

IP-адреса: 192.168.0.3


Маска: 255.255.255.0


Шлюз: 192.168.0.1

Клієнт 3

IP-адреса: 192.168.0.4


Маска: 255.255.255.0


Шлюз: 192.168.0.1

Клієнт 4

IP-адреса: 192.168.0.5


Маска: 255.255.255.0


Шлюз: 192.168.0.1

 

. Клієнти 2-й мережі мають наступні налаштування:

Клієнт 5

IP-адреса: 192.168.2.2


Маска: 255.255.255.0


Шлюз: 192.168.2.1

Клієнт червня

IP-адреса: 192.168.2.3


Маска: 255.255.255.0


Шлюз: 192.168.2.1

Клієнт 7

IP-адреса: 192.168.2.4


Маска: 255.255.255.0


Шлюз: 192.168.2.1

Клієнт 8

IP-адреса: 192.168.2.5


Маска: 255.255.255.0


Шлюз: 192.168.2.1

Клієнт 9

IP-адреса: 192.168.2.6


Маска: 255.255.255.0


Шлюз: 192.168.2.1

Клієнт 1910

IP-адреса: 192.168.2.7


Маска: 255.255.255.0


Шлюз: 192.168.2.1

Інтерфейс eth0  на Веб-сервері

IP-адреса: 192.168.2.8


Маска: 255.255.255.0


Шлюз: 192.168.2.1

Установки мережевих карт шлюзу для першої мережі мають наступний вигляд:


Шлюз 192.168.1.1 є інтернет шлюзом для першої мережі.

Установки мережевих карт шлюзу для другої мережі мають наступний вигляд:


Шлюз 192.168.5.1 є інтернет шлюзом для другої мережі.

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

Висновки. В ході виконання даної лабораторної роботи ми дізналися про існування віртуальних приватних мереж і навчилися створювати мережні моделі на їх основі.

5. ЕКОНОМІЧНЕ ОБҐРУНТУВАННЯ ДОЦІЛЬНОСТІ РОЗРОБКИ ПРОГРАМНОГО ПРОДУКТУ

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

Розроблена система була реалізована за допомогою високорівневої мови програмування C# в середовищі розробки Microsoft Visual C# 2008 Express Edition, яка є абсолютно безкоштовною і доступна для вільного завантаження з сайту компанії Microsoft.

Економічний ефект від впровадження розробки може бути досягнутий за рахунок заміни лабораторного обладнання віртуальними стендами та здобування студентами більш поглиблених навичок в розрахунку та проектуванні комп’ютерних мереж.

Визначення витрат на створення програмного продукту.

Оскільки середа розробки є безкоштовною, витрати на створення програмного продукту складаються з витрат по оплаті праці розробника програми і витрат по оплаті машинного часу при відладці програми:

Зсппзпспп мвспп,

де

Зспп - витрати на створення програмного продукту;

Ззпспп - витрати на оплату праці розробника програми;

Змвспп - витрати на оплату машинного часу.Витрати на оплату праці розробника програми (Ззпспп) визначаються шляхом множення трудомісткості створення програмного продукту на середню годинну оплату програміста (з урахуванням коефіцієнта відрахувань на соціальні потреби):

Ззпспп=t•Tчас.

Розрахунок трудомісткості створення програмного продукту.

Трудомісткість створення програми, містить в собі наступні складові:

·        знайомство з проблемою і визначення шляхів її рішення;

·        розробка інформаційної структури;

·        розробка алгоритму;

·        розробка модулю системи та циклу віртуальних лабораторних робіт;

·        відладка програми на ПК;

·        підготовка документації по завданню.

При розробці програмного продукту реально витрачений час розрахуємо по календарному плану виконання робіт (таблиця 5.1).

Таблиця 5.1 Календарний план створення програми

Найменування етапів виконання робіт

Термін виконання

Кількість годинника на виконання

Знайомство з проблемою і визначення шляхів її рішення

08.03.10

16

Розробка інформаційної структури та алгоритму виконання поставленої задачі

15.03.10

40

Розробка додаткового модулю програмного продукту “Network Emulator” та циклу віртуальних лабораторних робіт

19.03.10

240

Відладка програми на ПК і тестування

26.04.10

40

Підготовка документації

28.04.10

16


Таким чином, користуючись календарним планом виконання робіт, можемо розрахувати сумарну трудомісткість.

tрозр= tпробл+tстр..+tбібл.+tпрогр.+tвідл.+tдок., де:

tпробл - час на знайомство з проблемою і визначення шляхів її рішення;стр - час на розробку структурної схеми програми;бібл - час на створення програмних бібліотек;прогр - час на розробку програмного продукту;відл - час на відладку програми на ПК;док - час на підготовку документації по завданню.розр = 16+40+240+40+16 = 352 [люд/годин].

Приймаємо трудомісткість розробки програмного продукту приблизно 1 робочий місяць.

Розрахунок середньої зарплати програміста

Середня зарплата програміста в сучасних ринкових умовах може варіюватися в широкому діапазоні. Для розрахунку візьмемо середню годинну оплату праці, яка складає Тчас.=10 грн/година, що означає 1760 грн/мес при 8-ми годинному робочому дні і 5-ти денному робочому тижню.

Витрати на оплату праці програміста складаються із зарплати програміста і нарахувань на соціальні потреби. Нарахування на соціальні потреби включають:

,2% - пенсійний фонд;

,4% - соціальне страхування;

.6% - відрахування до державного фонду зайнятості на випадок безробіття;

% - на соціальне страхування від нещасного випадку на виробництві і професійних захворювань, які спричинили втрату працездатності.

Разом нарахування на соціальні потреби складають 37,2%.

Тобто 1760 грн • 37,2%=654,72 грн

Звідси витрати на оплату праці програміста складають:

Ззпспп= 1760+654,72= 2414,72 грн.

Витрати на оплату машинного часу.

Витрати на оплату машинного часу при проектуванні системи визначаються шляхом множення фактичного машинного часу на ціну машино-години:

Змвспп год•tЕОМ,

 

де

Сгод - ціна машино-години, грн/год;ЕОМ - фактичний час використання ЕОМ;

Розрахунок витрат машинного часу.

В ході розробки програмного комплексу ЕОМ використовувалася на наступних етапах:

·        для написання програми по готовій схемі алгоритму;

·        для відладки програми на ПК;

·        для підготовки документації по завданню.

Таким чином, витрати машинного часу склали (tЕОМ):

tЕОМ = tпрог+ tвідл + tдок

tЕОМ = 240 + 40 + 16 = 296 [люд/годин]

Розрахунок ціни машино-години.

Ціну машино-години знайдемо по формулі:

Сгод = Зеомеом,

 

де

Зеом - повні витрати на експлуатацію ЕОМ на протязі року;

Теом - дійсний річний фонд часу ЕОМ, год/рік.

Розрахунок річного фонду часу роботи ПЕОМ.

Загальна кількість днів в році - 365. Число святкових і вихідних днів - 114(10 святкових і 52•2- вихідні).

Час простою в профілактичних роботах визначається як щотижнева профілактика по 3 години.

Разом річний фонд робочого часу ПЕОМ складає:

Теом = 8•(365-114)-52•3=1852 год.

Розрахунок повних витрат на експлуатацію ЕОМ.

Повні витрати на експлуатацію можна визначити по формулі:

Зеом = (Ззп+ Зам+ Зэл+ Здм+ Зпр+ Зін),

де,

Ззп - річні витрати на заробітну плату обслуговуючого персоналу, грн/рік;

Зам - річні витрати на амортизацію, грн/рік;

Зел - річні витрати на електроенергію, споживану ЕОМ, грн/рік;

Здм - річні витрати на допоміжні матеріали, грн/рік;

Зпр - витрати на поточний ремонт комп'ютера, грн/рік;

Зін - річні витрати на інші і накладні витрати, грн/рік.

Амортизаційні відрахування.

Річні амортизаційні відрахування визначаються по формулі:

Замбал•Нам,

 

де Сбал - балансова вартість комп’ютера, грн/шт.;

Нам - норма амортизації, %;

Нам =25%.

Балансова вартість ПЕОМ включає відпускну ціну, витрати на транспортування, монтаж устаткування і його відладку:

Сбал = Срин уст ;

де

Срин - ринкова вартість комп’ютеру, грн/шт.,

Зуст - витрати на доставку і установку комп'ютера, грн/шт;

Комп'ютер, на якому велася робота, був придбаний за ціною

Срин =5000 грн, витрати на установку і наладку склали приблизно 10% від вартості комп'ютера.

Зуст = 10%• Срин

Зуст =0.1•5000=500 грн.

Звідси,

Сбал = 5000 +500 =5500 грн./шт.;

а Зам=5500•0,25= 1375 грн/год.

Розрахунок витрат на електроенергію.

Вартість електроенергії, споживаної за рік, визначається по формулі:

Зел = Реом • Теом • Сел • А,

де

Реом - сумарна потужність ЕОМ,

Теом - дійсний річний фонд часу ЕОМ, год/рік;

Сел - вартість 1кВт•год електроенергії;

А - коефіцієнт інтенсивного використання потужності машини.

Згідно технічному паспорту ЕОМ Реом =0.22 кВт, вартість 1кВт•год електроенергії для споживачів Сел =0,2436 грн., інтенсивність використання машини А=0.98.

Тоді розрахункове значення витрат на електроенергію:

Зел = 0.22 • 1852• 0.2436• 0.30 = 29,78 грн.

Розрахунок витрат на поточний ремонт.

Витрати на поточний і профілактичний ремонт приймаються рівними 5% від вартості ЕОМ:

Зтр = 0.05• Сбал

Зтр = 0.05• 5500 = 275 грн.

Розрахунок витрат на допоміжні матеріали.

Витрати на матеріали, необхідні для забезпечення нормальної роботи ПЕОМ, складають близько 1 % від вартості ЕОМ:

Звм =0,01• 5500 =55 грн.

Інші витрати по експлуатації ПЕОМ.

Інші непрямі витрати, пов'язані з експлуатацією ПЕОМ, складаються з вартості послуг сторонніх організацій і складають 5% від вартості ЕОМ:

Зпр = 0,05• 5500 =275 грн.

Річні витрати на заробітну плату обслуговуючого персоналу.

Витрати на заробітну плату обслуговуючого персоналу складаються з основної заробітної плати, додаткової і відрахувань на заробітну плату:

Ззп = Зоснзп допзп отчзп.

 

Основна заробітна плата визначається, виходячи із загальної чисельності тих, що працюють в штаті:

Зоснзп =12 •∑Зіокл,

 

де

Зіокл - тарифна ставка і-го працівника в місяць, грн;

- кількість місяців.

У штат обслуговуючого персоналу повинні входити інженер-електронщик з місячним окладом 1500 грн. і електрослюсар з окладом 1200 грн. Тоді, враховуючи, що даний персонал обслуговує 20 машин, маємо витрати на основну заробітну плату обслуговуючого персоналу, які складуть:

Зоснзп = 12•(1500+1200)/20=1620 грн.

Додаткова заробітна плата складає 60 % від основної заробітної плати:

Здопзп = 0.6 •1620 = 972 грн.

Відрахування на соціальні потреби складають 37,2% від суми додатковою і основною заробітних плат:

Зотчзп = 0,372•(1620 + 972) = 959,04 грн.

Тоді річні витрати на заробітну плату обслуговуючого персоналу складуть:

Ззп = 1620 +972 +959,04 = 3551,04 грн.

Повні витрати на експлуатацію ЕОМ в перебігу року складуть:

Зеом = 3551,04 + 1375+ 29,78 + 55 + 275+ 275= 5560,82 грн.

Тоді ціна машино-години часу, що орендується, складе

Сгод = 5560,82 /1852 = 3 грн.

А витрати на оплату машинного часу складуть:

Змвспп год•tеом

Змвспп = 3 • 296= 888 грн.

Розрахунок загальних витрат.

Зсппзпспп мвспп

Зспп = 2414,72+888 = 3302,72 грн.

Тобто собівартість програмного продукту 3302,72 грн.

А зараз визначимо ціну програмного продукту:

Ц = Зспп + Р,

Где Ц - ціна програмного продукту;

Р - 15% від витрат на створення програмного продукту.

Ц = 3302,72+ 495,41= 3798,13 грн.

Ціна програмного продукту дорівнює 3798,13 грн.

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

В порівнянні з лабораторним обладнанням, за допомогою якого можна було б проводити лабораторні роботи з вивчення архітектури комп’ютерних мереж орієнтовною вартістю $2000, розроблена система та цикл віртуальних лабораторних робіт обійдеться значно дешевше.

Економія від використання однієї розробленої програми представлятиме:

,1 - курс долара Національного банку України

ЕК = $2000 * 8,1 - 3798,13 = 12401,87 грн.

6. ОХОРОНА ПРАЦІ


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

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

Законодавство України про охорону праці базується на:

Конституція України, яка гарантує права громадян на працю, відпочинок, охорону здоров’я, медичну допомогу і страхування;

Закон України „Про охорону праці”, де вказано, що державна політика в області охорони праці базується на пріоритеті життя і здоров’я людей в умовах їх трудової діяльності. Відповідальність за створення нормальних і безпечних умов труда несе роботодавець незалежно від форми власності підприємства чи установи які здійснюють розробку виробництва та застосування ПЕОМ і ПК;

Норми штучного та природного освітлення визначені СНиП;

Закон України „Про забезпечення санітарного та епідемічного благополуччя населення” де вказані основні вимоги гігієни та санітарії;

Параметри мікроклімату на робочих місцях регламентовані Держстандартом і ДСН;

Категорія робіт по величині загальних енергозатрат встановлена ДСН;

Закон України „Про загальнообов’язкове державне соціальне страхування від нещасного випадку на виробництві та професійного захворювання, які спричинили втрату працездатності”, який гарантує право трудящих на соціальний захист і компенсацію постраждалим матеріальних втрат при травмуванні і професійного захворювання;

Кодекс законів про працю (КЗпП) де викладені окремі вимоги охорони праці;

Пожежна безпека викладена в законі України „Про пожежну безпеку” і „Правила про пожежну безпеку в Україні”

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

 

.1 Аналіз шкідливих і небезпечних виробничих факторів при роботі на комп’ютері


Фактори виробничого середовища впливають на функціональний стан і працездатність оператора. Наразі загальноприйнятою є класифікація небезпечних і шкідливих чинників, які згідно ДОСТ 12.0.003-74 по характерним видам дій на організм людини, підрозділяються на фізичні, хімічні, біологічні і психофізіологічні.

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

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

До психофізичних небезпечних і шкідливих виробничих факторів можна віднести: фізичні перевантаження (статичні й динамічні), нервово-психічні перевантаження (розумова напруга й перенапруга, монотонність праці, емоційні перевантаження, стомлення, емоційний стрес, емоційне перевантаження).

Значним фізичним фактором є мікроклімат робочої зони, особливо температура й вологість повітря.

Згідно з інструкцією по проектуванню будівель і приміщень для електронно-обчислювальних СН 512-78 будівлі і приміщення для ЕОМ повинні бути обладнані системами центрального опалювання, кондиціонування повітря, протипожежного водопроводу, гарячого водопостачання, каналізації.

Мікроклімат на робочому місці характеризується: температурою, відносною вологістю, швидкість руху повітря на робочому місці, інтенсивністю теплового випромінювання, барометричним тиском.

Відповідно до ДОСТ 12.1.005-88 нормовані параметри мікроклімату підрозділяються на оптимальні і допустимі.

Оптимальні параметри мікроклімату - таке поєднання температури, відносної вологості і швидкості повітря, яке при тривалій і систематичній дії не викликає відхилень в стані людини.

Допустимі параметри мікроклімату - таке поєднання параметрів мікроклімату, яке при тривалій дії викликає тимчасові зміни в стані людини.

Норми мікроклімату зазначені у санітарних нормах мікроклімату виробничих приміщень ДСН 3.3.6.042-99.

Шум - це безладне поєднання звуків різної частоти і інтенсивності. Шум виникає при механічних коливаннях в твердих, рідких і газоподібних середовищах. Механічні коливання з частотами 20 - 20 000 Гц сприймаються слуховим апаратом у вигляді чутного звуку. Коливання з частотою нижче 20 і вище 20 000 Гц не викликають слухових відчуттів, але надають шкідливу біологічну дію на організм людини. Шум погіршує умови праці, впливаючи на організм людини. При тривалому впливі шуму на організм людини відбуваються небажані явища: знижується гострота зору, слуху, підвищується кров'яній тиск, знижується увага. Сильний тривалий шум може бути причиною функціональних змін серцево-судинної й нервової систем, що приводить до захворювань серця й підвищеної нервозності.

Раціональне освітлення є одним з найважливіших чинників попередження травматизму і професійних захворювань. Правильно організоване освітлення створює сприятливі умови праці, підвищує працездатність і продуктивність праці. Освітленість виробничих, службових і допоміжних приміщень регламентується будівельними нормами і правилами (СНіП II-4-79) і галузевими нормами.

Освітлення на робочому місці повинне бути таким, щоб працівник міг без напруги зору виконувати свою роботу. Стомлюваність органів зору залежить від ряду причин - недостатність освітленості, надмірна освітленість, неправильний напрям світла.

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

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

Шкідливий вплив на людину має електромагнітне поле. Електромагнітне поле великої інтенсивності призводить до перегріву тканин, впливає на органи зору і органи статевої сфери.

Нормованим параметром електромагнітного поля в діапазоні частот 60 КГц - 300 МГц, згідно з ДОСТ 12.1.006-84, є граничне допустиме значення складових напруг електричних і магнітних полів.

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

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

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

Зорове навантаження зростає через необхідність постійного переміщення погляду з екрану на клавіатуру і паперовий текст.

Людина дистанційно не може визначити, чи знаходиться установка під напругою чи ні. Можливість отримання електротравм має місце не тільки при дотику, але і через напругу кроку і через електричну дугу.

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

Крайній випадок - стан клінічної смерті (зупинка роботи серця і порушення постачання киснем клітин мозку). В стані клінічної смерті знаходяться до 6-8 хв.

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

Напруга дотику - це різниця потенціалів точок електричного ланцюга, яких людина торкається одночасно, зазвичай в точках розташування рук і ніг.

Напруга кроку - це різниця потенціалів j1 і j2 в полі розтікання струму по поверхні землі між місцями, розташованими на відстані кроку (» 0,8 м).

Спеціальні засоби захисту: заземлення, занулення, захисне відключення.

Захисне заземлення слід виконувати відповідно до ПУЕ і СНіП 3.05.06-85 («Електротехнічні пристрої»).

Ергономічна безпека комп'ютера оцінюється за двома вимогами: до візуальних параметрів дисплеїв (з урахуванням світлового клімату робочого місця) і до емісійних параметрів - випромінювань дисплеїв і ПК.

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

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

Друга - нерівномірність яскравості, відблиски, мигтіння, тремтіння, геометричні і нелінійні спотворення і т.д. (всього більше 20 параметрів) незалежні, і кожен з них може бути окремо заміряний.

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

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

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

Нерівномірність і складна форма розподілу змінних електромагнітних полів у ряді випадків може представляти велику небезпеку опромінювання для сусідів по робочому приміщенню, ніж для користувача даного ПК.

Монітори комп'ютерів є джерелом рентгенівського, бета - і гамма-випромінювань. Рентгенівське випромінювання присутнє тільки при роботі монітора. Для зменшення шкідливої дії іонізуючих випромінювань в моніторах було понижено анодну напругу, а в скло моніторів доданий свинець. Небезпечні або не небезпечні іонізуючі випромінювання, що випускаються моніторами комп'ютерів, - все залежить від рівнів іонізуючих випромінювань, що потрапляють в очі користувачів комп'ютера. Безпека рівнів іонізуючих випромінювань комп'ютерних моніторів регламентується ДОСТ Р50948-96 і нормами НРБ-99. ДОСТ Р50948-96 обмежує потужність дози рентгенівського випромінювання величиною 100 мкР/час на відстані 5 см від поверхні екрану монітора, а НРБ-99 установлює для населення межу річної еквівалентної дози випромінювань на кришталик ока - 15 мкР/час.

 

.2 Заходи щодо нормалізації шкідливих і небезпечних факторів


Норми мікроклімату зазначені у санітарних нормах мікроклімату виробничих приміщень ДСН 3.3.6.042-99.

Температура повітря може відрізнятися від норм залежно від пори року та інших умов. Щоб уникнути небажаних відхилень потрібно встановлювати допоміжні засоби регулювання мікроклімату: кондиціонери, обігрівачі тощо.

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

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

Звукопоглинальне облицювання поверхонь похідних приміщень зменшує інтенсивність відбитих звукових хвиль. Використання звукопоглинальних конструкцій дозволяє понизити УЗ в зоні відбитого звуку на 4-8 дб.

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

Застосування окулярів з такими покриттями у інтенсивних користувачів ПК дало зниження зорового стомлення і поліпшення показників акомодації в порівнянні із звичайними окулярами у 85% працівників.

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

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

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

Максимальний час безперервної роботи за комп'ютером не повинен перевищувати 4-х годин в день. Через кожні 7 хвилин потрібно робити коротку перерву на 10-15 секунд. Можна подивитися у вікно (у далечінь) або на картину з приємним для очей пейзажем, яку необхідно повісити за комп'ютером. У картині повинні переважати неяскраві, заспокійливі зір кольори, такі, наприклад, як зелені, блакитні. Також потрібно робити декілька простих вправ для очей.

Монітор повинен стояти так, щоб прямі сонячні відблиски з вікна і люмінесцентне світло денних ламп не падали на екран і безпосередньо на око. Якщо моніторів в кабінеті багато, то відстань між ними повинна бути не менш ніж два метри, щоб не підсилювати впливу шкідливих полів і бічним зором не бачити інший екран. Важливе правильне локальне і загальне освітлення навколо монітора. Розміщувати монітор потрібно трохи вище за рівень очей. Це дозволить розслабити ті групи м'язів, які напружені при звичайному погляді вниз і вперед. Відстань від очей до монітора повинна бути близько 70-80 см.

Тіло повинне бути достатньо розслаблене, руки вільно лежати на опорі. Тому в кріслі оператора ЕОМ повинні бути передбачені окремі підлопаткові і поперекові опори. Спинка крісла і підлокітники повинні регулюватися по висоті і розташуванню в площині, глибину крісла треба теж встановлювати індивідуально. Але як би зручно ви не влаштувалися за своїм комп'ютером, робочий день перед екраном не повинен перевищувати шести годин. Через кожні дві години принаймні, а то і частіше, необхідно робити перерви і короткі фізкультурні паузи - наприклад, обертання очима, повороти голови, розминка рук.

Захисне заземлення слід виконувати відповідно до ПУЕ і Сніп 3.05.06-85 («Електротехнічні пристрої»).

Стійкі, металеві кронштейни з ізоляторами, антенні пристрої ТБ, а також металеві частини шаф, кросів, пультів і інші металоконструкції устаткування, на яких встановлено електроустаткування напругою вище 42В змінного струму, повинні мати захисне занулення шляхом з'єднання з нульовою жилою електричної мережі напругою 380/220 В.

Величина опору заземлення устаткування повинна відповідати ГОСТ 464-79. Опір заземлення загалом не повинен перевищувати значення 2 Ом у будь-який час року.

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

Все устаткування будівлі під’єднано до трифазної мережі, напругою 380В з ізольованою нейтралю. Загальна потужність джерел живлення мережі перевищує 100 кВА. Будівлю має залізобетонний фундамент на глинистому ґрунті. Площа, обмежена периметром будівлі 852000 м2.

Оскільки живляча мережа не перевищує 1000В, має ізольовану нейтраль і потужність джерел живлення більшу 100 кВА, як нормативний опір заземлення беремо Rн = 4 Ом.

Як природне заземлення використовуємо фундамент будівлі. Для нашого випадку опір ґрунту (глина) r = 40 Ом * м; коефіцієнти сезонності, залежні від кліматичної зони СНД в = 1,5 - 1,8 при розрахунку вертикальних електродів і г = 3,5 - 4,5 при розрахунку опору горизонтальних електродів, приймаємо рівними: в = 1,65 г = 4.

Питомий електричний опір ґрунту в зоні розміщення заземлення визначається по формулі:

 = r * г = 40 * 4 = 160 Ом * м

Опір природного заземлення для залізобетонного фундаменту:

Re = 0,5 S1/2 = 0,5 *160/2001/2 = 5,66 Ом,

що перевищує Rн = 4 Ом.

Отже необхідний штучне заземлення, підключене паралельно природному, з допустимим опором:

Rн.доп. = Re * Rн /(Re - Rн) = 5б7 *4 /(5,7 - 4) = 13,4 Ом.

Штучне заземлення розташовуємо на зниженій і зволоженій ділянці території підприємства на відстані 30 м від будівлі. Заземлення виконуємо як систему розташованих в ряд вертикальних електродів у вигляді стрижнів довжиною l = 2,6м з кутової сталі з шириною b = 0,05м, верхні кінці яких лежать на глибині t0 = 0,7м і сполучені смугою зв'язку із сталі, перетином 5 х 40 мм.

Для вертикальних електродів, питомий опір ґрунту в зоні розміщення заземлення:

= в * в = 40 * 1,65 = 66 Ом * м

Опір одиночного вертикального електроду визначимо:

RЕ = 0,366 * lg 2l/d + 0,5lg (4t+l)/(4t-l = 20,32 Ом

де l>>d; t = 0,5l = t0; l, d відповідно довжина і діаметр електроду;

для електроду із сталі значення d = 0,95b.

Визначаємо кількість вертикальних електродів:

Е* n = RЕ /Rн.доп. = 1,52

Задавшись відстанню  між електродами у вигляді співвідношення /l, знаходимо n (для /l = 2; n = 2).

Знаходимо довжину L горизонтального провідника, що сполучає вертикальні електроди. При розташуванні в ряд:

L = 1,05 * (n-1)*  = 1,05*(2-1)*5,2 = 5,46 м

при розташуванні по контуру

L = 1,05 * n*  = 1,05*2*5,2 = 10,92м

Опір горизонтальної смуги якщо L>>4 t0 >>c,

Rn = (0,366 L)lg 2L2/c* t0 = 17,39 Ом.

де с - ширина смуги, рівна діаметру вертикального електроду.

При /l = 2 і n = 2 знаходимо э=0,91 і n=0,94. Тоді результуючий опір штучного заземлення:

Rи = Rэ * Rn /(RЕ * Е + Rn * n *n) = 6,96 Ом.

Набутого значення не перевищує допустимого опору Rн.доп=13,4 Ом.

Оскільки штучне заземлення достатньо віддалене від природного, можна нехтувати впливом їх полів розтікання струму. Тоді загальний опір всього комплексу заземлення, що складається з природного і штучного заземлення:

Rз = Rи * RЕ /(Rи + RЕ) = 3,12 Ом, що менше Rн = 4 Ом.

6.3 Пожежна безпека


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

Горіння - хімічна реакція, яка супроводжується виділенням тепла і світла.

Класифікація приміщень і будівель за ступенем рівнем пожежної безпеки ОНТП 24-85.

Основні причини пожеж: коротке замикання, перевантаження проводів, утворення перехідних опорів.

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

Причини виникнення короткого замикання: помилки при проектуванні, старіння ізоляції, зволоження ізоляції, механічні перевантаження.

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

При 1,5 кратному перевищенні потужності резистори нагріваються до 200-300˚ С.

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

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

Пожежна небезпека струмів витоку - локальний нагрів ізоляції між окремими елементами і заземленими конструкціями.

Заходи по пожежній профілактиці: будівельно-планувальні, технічні, способи і засоби гасіння пожеж, організаційні.

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

Всі будівельні конструкції по межі вогнестійкості підрозділяються на 8 ступенів від 1/7 години до 2 годин.

Для приміщень ОЦ використовують матеріали з межею стійкості від 1 до 5 ступенів. Залежно від ступеня вогнестійкості визначають найбільші додаткові відстані від виходів для евакуації при пожежах (5 ступінь - 50 хвилин).

Організаційні заходи - проведення навчання по пожежній безпеці, дотримання заходів по пожежній безпеці.

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

Засоби вогнегасіння:

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

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

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

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

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

Особливістю сучасних ЕОМ є дуже висока щільність розташування елементів електронних схем, висока робоча температура процесора й мікросхем пам'яті. Отже, вентиляція й система охолодження, передбачені в системному блоці комп'ютера повинні бути постійно в справному стані.

Надійна робота окремих елементів і електронних схем у цілому забезпечується тільки в певних інтервалах температури, вологості й при заданих електричних параметрах.

Серйозну небезпеку становлять різні електроізоляційні матеріали. Материнські плати електронних пристроїв, а також плати всіх додаткових пристроїв ЕОМ виготовляють із гетинаксу або стеклотекстоліту. Пожежна небезпека цих ізоляційних матеріалів невелика, ставляться до групи важкопальних і можуть запалитися тільки при тривалому впливі вогню й високої температури.

Оскільки в розглянутому випадку при загоряннях електропристрої можуть перебувати під напругою, то використати воду й піну для гасіння пожежі неприпустимо, оскільки це може привести до травм. Іншою причиною, по якій небажане використання води є те, що на деякі елементи ЕОМ неприпустиме потрапляння вологи. Тому для гасіння пожеж у розглянутому приміщенні можна використати або порошкові склади, або установки вуглекислотного гасіння. Але оскільки останні призначені тільки для гасіння невеликих вогнищ загоряння, то область їхнього застосування обмежена. Тому для гасіння пожеж у цьому випадку застосовуються порошкові склади, тому що вони мають наступні властивості: діелектрики, практично не токсичні, не роблять корозійного впливу на метали, не руйнують діелектричні лаки.

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

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

 

ВИСНОВКИ


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

Як мова програмування для реалізації поставленого завдання була обрана С#, як середовище розробки Microsoft Visual C# 8.0 Express Edition. Середовище розробки Microsoft Visual C# 8.0 Express Edition, не дивлячись на безкоштовність, надає всі необхідні засоби для розробки запланованого функціонала, при цьому спростивши створення як інтерфейсу користувача, так і реалізацію функціонально-інструментальної частини програми. Використані при розробці програмні продукти є безкоштовними і тому впровадження розробленого програмного продукту є економічно ефективним.

Якщо сказати, що мова С# і пов'язана з ним середа .NET Framework є одній з найважливіших технологій для розробників за багато років, це не буде перебільшенням. .NET спроектована як нова середа, в рамках якої можна розробити практично будь-яке застосування для Windows, тоді як С# - нова мова програмування, призначена спеціально для роботи з .NET. За допомогою С# можливо, наприклад, створити динамічну Web-сторінку, Web-службу XML, компонент розподіленого додатку, компонент доступу до бази даних, класичний настільний додаток Windows або навіть інтелектуальне клієнтське програмне забезпечення, що має засоби онлайнової і автономної роботи.

СПИСОК ЛІТЕРАТУРИ

1.   Агуров П.В. C#. Сборник рецептов - СПб.: БХВ-Петербург, 2007.

2.       Арчер Т.. Основы С#. - М.: Русская Редакция, 2002.

3.       Бишоп Дж. C# в кратком изложении. -М.: Бином. Лаборатория знаний, 2005.

4.       Гарнаев А.Ю. Самоучитель Visual Studio .NET 2003. - СПб.: БХВ-Петербург, 2003.

5.       Грэхем И. Объектно ориентированные методы. - М.: Издательский дом "Вильямс", 2004.

6.       Гуннерсон Э. Введение в C#. - СПб.: Питер, 2001.

7.       Дубовцев А. Microsoft .Net в подлинеке. - СПб.: БВХ-Петербург, 2008.

8.       Кариев Ч.А. Разработка Windows-приложений на основе Visual C# . БИНОМ. Лаборатория знаний, Интернет-университет информационных технологий - ИНТУИТ.ру, 2007.

9.       Кент Бек. Экстремальное программировнаие. - СПб.: Питер, 2002.

10.     Мартин Ф. Архитектура корпоративных программных приложений. - М.: Издательский дом "Вильямс", 2004 .

11.     Нейлгел К., Ивьен Б., Глинн Дж. С# 2008 для профессионалов. -М.: Издательский дом "Вильямс", 2008.

12.     Петцольд Ч. Программирование для Microsoft Windows на C#. - М.: Русская Редакция, 2009.

.        Прайс Дж., Гандерлой М. Visual C# .NET : Пер. с англ. - М.: ВЕК+, 2005.

.        Прайс Дж. Visual C# .NET Полное руководство. - М.: ВЕК+, 2004.

.        Рихтер Дж.. Программирование на платформе Microsoft .Net Framework. - М.: Русская Редакция, 2007.

.        Робинсон С., Корнес О., Глинн Дж. С# для профессионалов. - М.: Лори, 2008.

.        Сидни Фейт. TCP/IP. Архитектура, протоколы, реализация. - М.: Лори, 2000.

.        Смайли Дж. Учимся программировать на C# вместе с Джоном Смайли. - СПб.: Диасофт-ЮП, 2008.

.        Таненбаум. Э. Компьютерные сети. - СПб.: Питер, 2007.

.        Троелсен Э. Язык программирования С# 2005 и платформа .Net 2.0. - М.: Издательский дом "Вильямс", 2007.

.        Троелсен Э. С# и платформа .NET. Библиотека программиста. - СПб.: Питер, 2004.

22. Фролов А.В. Язык C#. Самоучитель. - М.: Диалог-МИФИ, 2003.

23.     Чакработи А., Кранти Ю., Сандху Р. Microsoft .NET Framework: разработка профессиональных проектов: Пер. с англ. - СПб.: БХВ-Петербург, 2006.

.        Microsoft Corporation. Разработка Web-сервисов XML и серверных компонентов на Microsoft Visual Basic .NET и Microsoft Visual C# .NET. Учебный курс MCAD/MCSD. /Пер. с англ. - М.: Издательско-торговый дом "Русская Редакция", 2004.

25.     j@alba.ua <mailto:j@alba.ua> - адрес автора

.        <http://algolist.manual.ru/> // Исходные коды и книги по алгоритмам

.        <http://www.intuit.ru/> // Интернет-университет информационных технологий

.        <http://ru.wikipedia.org/> // Свободная Интернет-энциклопедия

.        <http://www.rsdn.ru/> // Russian Software Developer Network

30.     <http://www.opennet.ru/> //Портал по открытому ПО, Linux, BSD и Unix системам

31.     <http://www.gotdotnet.ru/> // GotDotNet.Ru: Сообщество .Net разработчиков

Похожие работы на - Гнучка система імітаційного дослідження зміни топології комп’ютерної мережі

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!