Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Sis_prog_zabezpechennya

.pdf
Скачиваний:
60
Добавлен:
17.03.2016
Размер:
832.88 Кб
Скачать

Енциклопедичне видання

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

Маршрутизатор

Маршрутизатори (шлюзи, мости) використовуються як об’єднувальні ланки локальних обчислювальних мереж під час створення єдиної мережі (входженні в Інтернет).

На рис. 10 показана ЕОМ із двома мережевими інтерфейсами (мережевими адаптерами), яка функціонує як маршрутизатор. Вона має дві Ethernet-адреси та дві IP-адреси (див. Стек протоколів).

Модуль IP в цьому випадку складніший, ніж у робочої станції, оскільки він повинен передавати дані між мережами — виконувати ретрансляцію пакета. Під час ретрансляції пакети не передаються протоколам транспортного рівня — модулям ТСР або UDP. Деякі маршрутизатори взагалі не мають у своєму складі модулів ТСР та UDP.

Рис. 10

41

Системне програмне забезпечення

Мережа Інтернет

Всесвітня комп’ютерна мережа Інтернет реалізована як об’єднання різнорідних локальних обчислювальних мереж (ЛОМ) на принципах базової мережі передавання даних. Інтернет базується на чотирирівневій моделі управління процесами мереж із використанням сімейства протоколів TCP/IP. До складу сімейства також входять протоколи UDP, ARP, ICMP, FTP та багато інших.

Роботи зі створення мережі Інтернет були започатковані військовим відомством США, хоча через деякий час вона стала розвиватись самостійно. На початку 70-х років були розроблені протоколи передавання даних TCP/IP, які у 1983 р. стали світовим стандартом. Довгий час мережа Інтернет програвала конкурентам на ринку мережевих комунікаційних послуг. Ще на початку 90-х років плануюче становище тут займала мережа Novell NetWare, яка базується на протоколах IPX/SPX. Але поява Всесвітньої павутини World Wide Web, реалізованої на сімействі протоколів TCP/IP, радикально змінила ситуацію на користь мережі Інтернет. Нині вона займає пануюче становище на ринку комунікаційно-інформаційних послуг і налічує сотні мільйонів абонентів.

Мережевий адаптер (мережева карта)

У мережевому адаптері реалізується канальний протокол локальної мережі відповідного типу. Мережевий адаптер фактично є співпроцесором, який може мати прямий доступ до ОП. Але щоб одержати цей доступ до ОП, він повинен «захопити» шину ПК. Для цього він видає запит центральному процесору. Той дозволяє йому доступ до пам’яті, сам затримуючи виконання своїх програм (знижуючи свою продуктивність на деяку величину). Мережевий адаптер включається через роз’єм в основну плату комп’ютера і має один або два роз’єми для підключення до кабеля мережі. Можна підключитися до локальної мережі і без мережевого адаптера — мережевий кабель підключається безпо-

42

Енциклопедичне видання

середньо до послідовного порту RS-232C. Цей метод придатний для мереж невисокої продуктивності, наприклад, спільне використання принтера. У цьому випадку вся мережева робота приходиться на драйвер роботи з мережею.

Мережевий протокол

Мережевий протокол визначає правила руху інформації на конкретному рівні мережевої взаємодії процесів.

Гнучкість організації та простота реалізації мережі досягається за рахунок того, що обмін повідомленнями (даними) допускається тільки між процесами одного рівня. Це означає, що прикладний процес може взаємодіяти тільки з прикладним процесом, а процеси управління передачею повідомлень на рівнях 1, 2, … моделі управління процесами мережі — тільки з процесами одноімених рівнів.

Процедура взаємодії процесів на основі обміну повідомленнями (даними) називається протоколом. Для процесів кожного рівня використовують свої протоколи. Число рівнів управління і типи використовуваних протоколів визначають архітектуру конкретної мережі ЕОМ.

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

Методи реалізації системи управління файлами

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

43

Системне програмне забезпечення

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

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

Рис. 11. Метод списку блоків

Метод блоку індексів. Він допускає більш гнучке використання файлів. Тут покажчики на блоки зібрані в одну таблицю — блок індексів. Порядок покажчиків у цьому блоці відображає порядок розташування блоків. Блок індексів має стандартний для даної СУФ розмір, і якщо кількість блоків файлу перевищує число комірок у блоці індексів, то використовується кілька блоків індексів, пов’язаних у список (рис. 12).

Рис. 12. Метод блоку індексів

44

Енциклопедичне видання

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

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

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

На рис. 13 наводиться приклад карти файлів, де демонстрований тут файл F1 складається з 5 блоків у такому порядку: 10, 11, 12, 8, 5.

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

Рис. 13

45

Системне програмне забезпечення

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

ОС UNIX використовує блоки по 512 байт, 64-байтові дескриптори зосереджені у фіксованому місці диска, кожен з них має 13 адрес, 10 адрес — це безпосередні посилання на блоки (разом 5Кб), 11-а — посилання на блок другого рівня (128 блоків — 70Кб), 12-та адреса — посилання на блок третього рівня (84Мб), 13-та — посилання на блок четвертого рівня (1Гб). Доступ до блоків реалізується за допомогою довідників, які самі є файлуми і створюють дерево (можливо з додатковими зв’язками).

Механізм переривання

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

Послідовність дій, викликаних сигналом переривання, є наступною:

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

46

Енциклопедичне видання

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

3.Запам’ятовування інформації, необхідної для відновлення виконання перерваної програми. Оскільки метою переривання є виконання спеціальної підпрограми з наступним поверненням до перерваної програми, необхідно запам’ятати всю інформацію, пов’язану з виконанням перерваної програми для наступного відновлення її роботи. Як правило, ця інформація містить такі параметри:

— лічильник команд, що містить адресу, на якій програма була перервана і до якої необхідно повернутися;

— внутрішні регістри процесора: суматор, регістри спільного користування та ін.;

— регістри захисту пам’яті та переадресування;

— індикатори типу індикаторів переповнення та переносу;

— умови виконання програми, які зберігаються, як правило,

услові стану програми (ССП).

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

5.Відновлення інформації і поновлення виконання перерваної програми. Ця фаза є оберненою до фаз запам’ятовування інформації, заборони переривань та переходу до підпрограми. Відновлюються параметри перерваної програми, знімаються заборони з переривань і виконується перехід до того місця, де програма була перервана.

47

Системне програмне забезпечення

Міжмережевий екран

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

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

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

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

фільтрації інформаційних потоків, що проходять через нього;

посередництва в реалізації міжмережевих взаємодій. Прості міжмережеві екрани орієнтовані на використання

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

48

Енциклопедичне видання

Мова програмування

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

та семантики.

Модель планування робіт у мультипрограмній ОС

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

Процес проходження завдань користувачів зображено на рис. 14.

Рис. 14. Модель планування робіт

R — черга готових процесів, B — черга заблокованих процесів, P — процесор.

Відповідно до черг R та B процес може знаходитись у таких станах: готовий, заблокований, виконуваний.

49

Системне програмне забезпечення

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

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

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

витіснений вивантажений процес, у якого, оскільки він все одно знаходиться в пасивному стані, відібрана оперативна пам’ять;

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

Алгоритм планування для такої системи черг передбачає: 1) спосіб вибору готового процесу з R;

2) спосіб обчислення величини кванта для нього.

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

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

Динамічні характеристики процесу: ресурси, які знаходяться

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

50

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]