рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

Програмна сумісність

Програмна сумісність - раздел Образование, Тема 1. Основні концепції операційних систем Апаратна Залежність І Переносимість Ос Багато Операцій...

Апаратна залежність і переносимість ОС

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

Машинно-залежні компоненти ОС

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

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

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

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

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

Для комп'ютерів на основі процесорів Intel x86/Pentium розробка екрануючого машинно-залежного шару ОС дещо спрощується за рахунок вбудованої в постійну пам'ять комп'ютера базової системи введення-виводу — BIOS. BIOS містить драйвери для усіх пристроїв, що входять у базову конфігурацію комп'ютера : жорстких і гнучких дисків, клавіатури, дисплея і т. д. Ці драйвери виконують дуже примітивні операції з керованими пристроями, наприклад читання групи секторів даних з певної доріжки диска, але за рахунок цих операцій екрануються відмінності апаратних платформ персональних комп'ютерів і серверів на процесорах Intel різних виробників. Розробники операційної системи можуть користуватися шаром драйверів BIOS як частиною машинно-залежного шару ОС, а можуть і замінити усе або частина драйверів BIOS компонентами ОС.

Переносимість операційної системи

Якщо код операційної системи може бути порівняльний легко перенесений з процесора одного типу на процесор іншого типу і з апаратної платформи одного типу на апаратну платформу іншого типу, то таку ОС називають переносимою (portable), або мобільною.

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

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

Об'єм машинно-залежних частин коду, які безпосередньо взаємодіють з апаратними засобами, має бути по можливості мінімізований. Так, наприклад, слід всіляко уникати прямого маніпулювання регістрами і іншими апаратними засобами процесора. Для зменшення апаратної залежності розробники ОС повинні також унеможливити використання за умовчанням стандартних конфігурацій апаратури або їх характеристик. Апаратно-залежні параметри можна «заховати» в програмно- дані абстрактного типу, що задаються. Для здійснення усіх необхідних дій з управління апаратурою, представленою цими параметрами, має бути написаний набір апаратно-залежних функцій. Кожного разу, коли якому-небудь модулю ОС вимагається виконати деяку дію, пов'язану з апаратурою, він маніпулює абстрактними даними, використовуючи відповідну функцію з наявного набору. Коли ОС переноситься, то змінюються тільки ці дані і функції, які ними маніпулюють. Наприклад, в ОС Windows NT диспетчер переривань перетворить апаратні рівні переривань конкретного типу процесора в стандартний набір рівнів переривань IRQL, з якими працюють інші модулі операційної системи. Тому при перенесенні Windows NT на нову платформу треба переписати, зокрема, ті коди диспетчера переривань, які займаються відображенням рівнів переривання на абстрактні рівні IRQL, а ті модулі ОС, які користуються цими абстрактними рівнями, змін не зажадають.

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

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

Контрольні запитання

  1. Що таке апаратна незалежність ОС?
  2. Як реалізовується переносимість ОС на разні платформи?
  3. Що таке машинний залежні компоненти?

Література

Електроний ресурс: http://vv 303.narod.ru/files/inst/olifer/chapter3/default.htm


– Конец работы –

Эта тема принадлежит разделу:

Тема 1. Основні концепції операційних систем

Мета Ознайомитися і вивчити історію розвитку ОС Ознайомитися з існуючими класифікаціями сучасних операційних систем Дізнатися про функції та... План Історія розвитку операційних систем Класифікація сучасних... Сторія розвитку операційних систем Перші ЕОМ були побудовані і знайшли...

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Програмна сумісність

Что будем делать с полученным материалом:

Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Все темы данного раздела:

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

Операційна система Unix
Вважається, що в появі Юнікса зокрема винна... комп'ютерна гра. Річ у тому, що Кен Томпсон (дивитеся фото лі

Операційна система DOS
ДОСы були завжди. Перші - від IВМ, року в 1960-х, вони були дуже обмежені функціонально. Нормальні, такі, що

Операційна система OS/2
Усе почалося з OC VM (Virtual Machine), що вийшла в 1972 році. Випущений тоді продукт називався VM/370 і був призначений для підтримки сервера для певної кількості користувачів. Ця ОС, що давно від

Операційна система Windows
Windows була, напевно, першою операційною системою, яку Білу Гейтсу (дивитеся фото ліворуч) ніхто не замовля

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

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

Властивості операційних систем
Властивості ОС - розраховані на багато користувачів, багатозадачні, мережеві ОС. Многозада́чность (англ. multitasking) — властивість операційної системи або середовищ

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

Ядро і допоміжні модулі ОС
Найбільш загальним підходом до структуризації операційної системи є розподіл усіх її модулів на дві групи: · ядро — модулі, що виконують основні функції ОС; · модулі, що виконують

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

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

Концепція віртуальних машин
Віртуальна машина (ВМ, від англ. virtual machine) - · програмна і/або апаратна система, що емулює апаратне забезпечення деякої платформи і виконуюча програми для цієї платформи (target — ц

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

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

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

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

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

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

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

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

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

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

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

Завдання
Процеси можна об'єднувати в об'єкти завдань (job objects), що дозволяє управляти процесами як групою, встановлювати ліміти ресурсів для усіх процесів, що входять в об'єкт завдання, і вести облікову

Сторія створення MS - DOS
DOS (англ. Disk Operating System — дискова операційна система) — батьківщина тісно пов'язаних операційних систем, які домінували на ринку сумісних із IBM PC комп' ютерів до 1995 року. DOS — однозад

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

Які існують типи дистрибутивів MS - DOS
Операційна система MS - DOS поставляється в двох варіантах. Перший варіант призначений для установки на непідготовлений (неформатований) диск комп'ютера і зазвичай поставляється разом з комп'ютером

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

Тема 6. Операційна система WINDOWS
Мета: Вивчення операційної системи WINDOWS. Навчитися роботі в ній. Вивчити структуру ОС WINDOWS План 6.1. Робота з вікнами, переглядання вмісту комп'ютера

Тема 6. Операційна система WINDOWS
Мета: Вивчення операційної системи WINDOWS. Навчитися роботі в ній. Вивчити структуру ОС WINDOWS План 6.1. Робота з вікнами, переглядання вмісту комп'ютера

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

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

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

Створення та завершення процесів у Windows
  Створення процесів Створення Win32 процесу здійснюється викликом однієї з таких функцій, як CreateProcess, CreateProcessAsUser (для Win NT/2000) і CreateProcessWith

Завершення процесів
Процес завершується якщо: - Вхідна функція первинного потоку повернула управління. - Один з потоків процесу викликав функцію ExitProcess. - Потік іншого процесу викликав

Програмний інтерфейс керування процесами Win32 API
У ОС Windows між додатком і сукупністю системних викликів (системних сервісів в термінології Microsoft) розташований додатковий абстрактний шар - програмний інтерфейс Win32 API. За рахунок цього Wi

Складові елементи та структури даних потоку у Windows
У об'єкті ядра "потік" є змінна — лічильник числа простоїв даного по струму При виклику CreateProcess або CreateThread він ініціалізувався значенням, рав ным 1, яке забороняє системі виді

Створення потоків у Windows
  Первинний потік створюється автоматично при створенні процесу. Інші потоки створюються функціями CreateThread і CreateRemoteThread (тільки у Win NT/2000/XP).  

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

Тема 7. Операційні системи UNIX та LINUX
Мета: вивчення історії створення та найпоширеніших версій ОС Unix та Linux. Іх структуру. План 7.1. Історія виникнення операційної системи UNIX та LINUX

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

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

Системні характеристики операційної системи LINUX
Linux - багатозадачна і розрахована на багато користувачів операційна система для бізнесу, освіти і індивідуального програмування. Linux належить сімейству UNIX -подобных операційних систем, яка мо

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

Качан інсталяції операційної системи LINUX
Для того, щоб почати власне установку Red Hat Linux, вставте настановну дискету (при виготовленні Ви повинні були помітити її як "Boot Diskette'') в дисковод і перезавантажите комп'ютер. Після

Запуск нових програм в ОС UNIX
  Управління пакетами за допомогою RPM Red Hat Package Manager(RPM) - це відкрита система управління пакетами, доступна усім, і використовувана усіма користувачами Red Hat Li

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

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

Основні завдання забезпечення захисту інформації в операційних системах
Ефективність захисту інформації в автоматизованих системах досягається застосуванням засобів захисту інформації (СЗИ). Під засобом захисту інформації розуміється технічний, програмний засіб або мат

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

Локальна та мережна безпека даних
Украй важливо зрозуміти, що безпека - це не продукт, який можна купити в магазині і бути упевненим у власній захищеності. "Безпека"; - особлива комбінація як технічних, так і адміністрати

Локальна та мережна безпека даних
Украй важливо зрозуміти, що безпека - це не продукт, який можна купити в магазині і бути упевненим у власній захищеності. "Безпека"; - особлива комбінація як технічних, так і адміністрати

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

Підтримка багатопроцесорності в LINUX
Ранні SMP системи Linux були слабозв'язаними багатопроцесорними системами, тобто побудованими з декількох окремих систем, пов'язаних високошвидкісним з'єднанням (таким як 10G Ethernet, Fibre Channe

Сильносвязанная багатопроцесорна обробка
Сильносвязанная багатопроцесорна обробка відноситься до обробки на рівні кристала (CMP -- chip - level multiprocessing). Представте слабозв'язану архітектуру, зменшену до рівня кристала. Це і є іде

SMP і ядро Linux
Коли тільки з'явився Linux 2.0, підтримка SMP складалася з основної системи блокування, яке упорядковувало доступ в системі. Пізніше невеликий прогрес в підтримці SMP був, але тільки з ядром 2.6 на

Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • Популярное
  • Облако тегов
  • Здесь
  • Временно
  • Пусто
Теги