Класифікація Прикладне програмне забезпечення Системні програми Інструментальні системи. Презентація на тему "системне програмне забезпечення" Завантажити презентацію на тему схема системного

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


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




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




Редактори документів – це вид прикладних програм, що найбільш широко використовується. Вони дозволяють готувати документи набагато швидше і зручніше, ніж за допомогою друкарської машинки. Текстові редактори можуть забезпечувати виконання різноманітних функцій, а саме: Табличні процесори. Табличні процесори є зручним засобом для проведення бухгалтерських та статистичних розрахунків. У кожному пакеті є сотні інтегрованих математичних функційта алгоритмів статистичної обробки даних Крім того, є потужні засоби для зв'язку таблиць між собою, створення та редагування електронних баз даних. Системи автоматизованого проектування (САПР) або CAD (Computer-Aided Design) програмний пакет, призначений для створення креслень, конструкторської та/або технологічної документації та/або 3D моделей. Серед систем малого та середнього класу у світі найбільш популярна система AutoCad фірми AutoDesk. Вітчизняний пакет із аналогічними функціями – Компас


Графічні редактори дозволяють створювати та редагувати малюнки. У найпростіших редакторах надаються можливості малювання ліній, кривих, розмальовки областей екрану, створення написів різними шрифтами тощо. Більшість редакторів дозволяють обробляти зображення, отримані за допомогою сканерів. Представники графічних редакторів – програми Adobe Photoshop, Corel Draw. Системи управління базами даних (СУБД) дозволяють керувати великими інформаційними масивами – базами даних. Програмні системи цього виду дозволяють обробляти на комп'ютері масиви інформації, забезпечують введення, пошук, сортування, вибірку записів, складання звітів і т.д. Представники цього класу програм – Microsoft Access, Clipper, Paradox, FoxPro. Інтегровані системи поєднують можливість системи управління базами даних, табличного процесора, текстового редактора, системи ділової графіки, котрий іноді інші можливості. Як правило, всі компоненти інтегрованої системи мають схожий інтерфейс, що полегшує навчання роботі з ними. Представники інтегрованих систем – пакет Microsoft Office та його безкоштовний аналог Open Office.


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


Системне програмне забезпечення можна розділити на: Базове програмне забезпечення (base software) мінімальний набір програмних засобів, що забезпечують роботу комп'ютера. До базового програмного забезпечення входять: операційна система; операційні оболонки (текстові та графічні); мережна операційна система. Сервісне програмне забезпечення програми та програмні комплекси, які розширюють можливості базового програмного забезпечення та організують зручніше середовище роботи користувача – утиліти.


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


Утиліти (лат. utilitas користь) - або розширюють та доповнюють відповідні можливості операційної системиабо вирішують самостійні важливі завдання. Коротко опишемо деякі різновиди утиліт: програми контролю, тестування та діагностики програми-пакувальники (архіватори) програми-драйвери антивірусні програми програми для створення резервних копійінформації програми для управління пам'яттю програми оптимізації та контролю якості дискового простору; програми оптимізації та контролю якості дискового простору; комунікаційні програми та ін.


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


Антивірусні програми, призначені для запобігання зараженню комп'ютерними вірусамита ліквідації наслідків зараження вірусами; Представники антивірусного сімейства програм – Kaspersky Antivirus, DrWeb, Norton Antivirus. програми для створення резервних копій інформації дозволяють періодично копіювати важливу інформацію, що знаходиться на жорсткому диску комп'ютера, додаткові носії. Представники програм резервного копіювання- APBackUp, Acronis True Imageпрограми оптимізації та контролю якості дискового простору; комунікаційні програми, призначені організації обміну інформацією між комп'ютерами. Ця програма дозволяє зручно пересилати файли з одного комп'ютера на інший при з'єднанні кабелем їх послідовних портів. Інший вид таких програм забезпечує можливість зв'язку комп'ютерів телефонної мережі(за наявності модему). Вони дають змогу надсилати та приймати телефаксні повідомлення. Представники комунікаційних програм – Venta Fax, Cute FTP. програми для управління пам'яттю, що забезпечують гнучкіше використання оперативної пам'яті;


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


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


Транслятор (англ. translator перекладач) це програма-перекладач. Вона перетворює програму, написану однією з мов високого рівня, на програму, що складається з машинних команд. Транслятори реалізуються як компіляторів чи інтерпретаторів. З погляду виконання роботи компілятор та інтерпретатор суттєво різняться. Компілятор (англ. compiler укладач, збирач) читає всю програму цілком, робить її переклад і створює закінчений варіант програми машинною мовою, який потім і виконується. Інтерпретатор (англ. interpreter тлумач, усний перекладач) перекладає та виконує програму рядок за рядком. Після того, як програма відкомпільована, ні вихідна програма, ні компілятор більше не потрібні. У той же час програма, що обробляється інтерпретатором, повинна заново перекладатися машинною мовою при кожному черговому запуску програми. Відкомпіловані програми працюють швидше, але простіше виправляти і змінювати інтерпретовані. Популярні системи програмування – Turbo Basic, Quick Basic, Turbo Pascal, Turbo C. Borland C++, Borland Delphi та ін.


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

"ПЗ в комп'ютері" - Системи автоматизованого проектування (САПР) або CAD (англ. Представники графічних редакторів - програми Adobe Photoshop, Corel Draw. Найбільш прикладне програмне ПЗ. Група Фік. Програмне забезпечення. Інструментальні системи. Сьогодні більшість систем плавно перетікають у Web.

«Програмне забезпечення урок» - Автор: Вчитель МОУ ЗОШ № 23 Гродинська Валентина Олексіївна e-mail: [email protected]. Тренажери (babytype) Електронні підручники. Використовуються для пакування файлів з метою зменшення місця на диску. Інструментальне програмне забезпечення. Транслятори. Формування інформаційної грамотності учнів.

"Програмне забезпечення ПК" - Програмне забезпечення комп'ютера. Пристрої комп'ютера. Передісторія виникнення ПЗ. Системи програмування є інструментами створення прикладних програм. Прикладне програмне забезпечення. Навчальні програми для самоосвіти або у навчальному процесі. Людина. Математичні пакети складних інженерних розрахунків.

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

«Типи програмного забезпечення» - До освітніх програм належать електронні підручники, навчальні тренажери. MS Access. Photoshop. MS Excel. Системи програмування. Професійні програми. MS PowerPoint. Типи програмного забезпечення AutoCAD MS Access. Системне ПЗ. Багато користувачів починають спілкування з комп'ютером з комп'ютерних ігор.

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

Зв'язування

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

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

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

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

Можливі часи зв'язування

При визначенні мови; під час реалізації компілятора;

під час трансляції, у тому числі:

під час роботи препроцесора (макропроцесора)

під час лексичного, синтаксичного та семантичного аналізу, генерації коду та його оптимізації;

при компонуванні; під час завантаження програми;

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

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

Зв'язування int a,b; … a+b

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

Конкретна розмірність змінної int визначається під час реалізації відповідного компілятора.

Ім'я a може бути визначене у конструкції виду

#define a 0x11FF. У цьому випадку ім'я (псевдо-змінна) пов'язується зі своїм значенням на першій фазі трансляції – у препроцесорі.

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

Зв'язування int a,b; … a+b

Якщо змінна визначається звичайним способом як int a; то зв'язування змінної з відповідним їй типом відбувається під час трансляції (на фазі семантичного аналізу).

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

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

Зв'язування int a,b; … a+b

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

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

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

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

Зв'язування int a,b; … a+b

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

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

Зв'язування int a,b; … a+b

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

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

зв'язування локальною змінною з її адресою в сегменті стека здійснюється при виконанні в момент входу в тіло функції (блок). Завдяки такому способу зв'язування в рекурсивній функції існує стільки «примірників» локальних змінних, скільки функція викликає сама себе.

1 слайд

Презентація до уроку створила: вчитель інформатики МКОУ «Басинська ЗОШ» Гайдукова Ганна Андріївна * *

2 слайд

Принтер; процесор; Клавіатура; Флеш-пам'ять; Монітор; Оперативна пам'ять; Пристрій CD-ROM. Без жодних з наведених нижче пристроїв робота комп'ютера неможлива: * *

3 слайд

Визначте можливий обсяг наступних носіїв інформації, використовуючи вказані варіанти відповідей (1,44 Мб, 700 Мб, 120 Гб, 512 Мб, 4,7 Гб) CD-R; DVD-R; Флеш-пам'ять; Дискет; Жорсткий магнітний диск. * *

4 слайд

Заповніть таблицю * * Пристрій Дія з інформацією (зберігання, введення, виведення, обробка) Процесор Оперативна пам'ять Жорсткий магнітний диск CD-RW Клавіатура Монітор Принтер

5 слайд

У Андрія на жорсткому диску комп'ютера є гра TETRIS. У його друга Колі такої гри немає. Що треба зробити Андрію, щоб і Коля зміг на своєму домашньому комп'ютеріграти цю гру (слід врахувати, що комп'ютер Коли до Інтернету не підключено)? * *

6 слайд

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

7 слайд

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

8 слайд

9 слайд

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

10 слайд

* Завантаження операційної системи Завантаження операційної системи починається в один із трьох випадків – після: включення живлення комп'ютера; натискання кнопки Reset на системному блоцікомп'ютера; одночасного натискання комбінації клавіш на клавіатурі: (Ctrl) + (Alt) + (Del) У процесі завантаження ОС: проводиться тестування працездатності процесора, пам'яті та інших пристроїв; на екран монітора виводяться короткі діагностичні повідомлення про тестування після закінчення завантаження ОС користувач отримує можливість керувати комп'ютером з використання графічного інтерфейсу ОС. *

11 слайд

12 слайд

* Стандартні програмиОС Windows Paint – графічний редактор, що дозволяє створювати, переглядати та редагувати малюнки або відскановані фотографії Imaging – використовується для перегляду та редагування графічних файлів, наприклад, цифрових малюнків або відсканованих фотографій Калькулятор – електронний калькулятор є аналогом звичайного ручного калькулятора Блокнот – текстовий редактор, використовується для створення та редагування текстових файлівпростого формату WordPad – текстовий редактор, що використовується для створення та форматування текстових файлів зі складним форматуванням *

13 слайд

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

Слайд 2

Організація пам'яті

Фізична пам'ять, до якої процесор має доступ по шині адреси називається оперативною пам'яттю (або оперативним пристроєм, що запам'ятовує - ОЗУ). ОЗУ організовано як послідовність осередків – байтів. Кожному байту відповідає свою унікальну адресу (його номер), яку називають фізичною. Діапазон значень фізичних адрес залежить від розрядності шини адреси процесора. Для 80486 та Pentium він знаходиться в межах від 0 до 232 – 1 (4 Гбайт). Для процесорів PentiumPro/II/III/IV цей діапазон ширший – від 0 до 236 – 1 (64 Гбайт). Процесор 8086 мав 1 Мбайт пам'яті при 20-розрядній шині адреси - від 0 до 220-1.

Слайд 3

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

Слайд 4

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

Слайд 5

У сімействі процесорів 80х86 вибір методу звернення до пам'яті визначається режим роботи процесора. У реальному режимі процесор може звертатися лише до першого мегабайту пам'яті, адреси якого знаходяться в діапазоні від 00000 до FFFFF у шістнадцятковому виразі. При цьому процесор працює в однопрограмному режимі (тобто в певний момент часу він може виконувати лише одну програму). Однак при цьому він може в будь-який момент перервати її виконання і перейти на процедуру обробки переривання, що надійшов від одного з периферійних пристроїв. Будь-якій програмі, яку виконує в цей момент процесор, дозволено доступ без обмеження до будь-яких областей пам'яті, що знаходяться в межах першого мегабайта: до ОЗУ - читання та запису, а до ПЗУ, зрозуміло, тільки читання. Реальний режим роботи процесора використовується в операційній системі MS DOS, а також системах Windows 95 та 98 при завантаженні в режимі емуляції MS DOS.

Слайд 6

У захищеному режимі процесор може виконувати кілька програм. При цьому кожному процесу (тобто програмі, що виконується) може бути призначено до 4 Гбайт оперативної пам'яті. Щоб запобігти взаємному впливу програм, що виконуються один на одного, їм виділяються ізольовані ділянки пам'яті. У захищеному режимі працюють такі ОС, як MS Windows та Linux. У віртуальному режимі адресації процесора 8086 останній насправді працює в захищеному режимі. Для кожного завдання створюється власне віртуальна машина, Якою виділяється ізольована область пам'яті розміром 1 Мбайт, і повністю емулюється робота процесора 80x86 в реальному режимі адресації. Наприклад, в операційних системах Windows 2000 і ХР віртуальна машина процесора 8086 створюється щоразу під час запуску користувачем вікна командного інтерпретатора (сеансу MS DOS).

Слайд 7

Реальний режим адресації Відмінні риси механізму адресації фізичної пам'яті в реальному режимі наступні: Діапазон зміни фізичної адреси - від 0 до 1 Мбайт, оскільки при адресації використовується лише 20 молодших розрядів шини адреси Максимальний розмір пам'яті, що адресується за допомогою 16-розрядних регістрів - 64 Кбайт звернення до конкретному фізичному адресою у всій доступної оперативної пам'яті використовується сегментація пам'яті, тобто. розбиття доступного адресного простору на сегменти розміром 64 Кбайт та використання замість фізичної логічної адреси у формі: тобто. комбінації адреси початку сегмента та зміщення всередині сегмента 16-розрядна адреса початку сегмента поміщається в один із шести сегментних регістрів (CS, DS, ES, SS, FS або GS) Програми безпосередньо оперують лише 16-розрядним зміщенням, зазначеним щодо початку сегмента

Слайд 8

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

Слайд 9

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

Слайд 10

Приклад: байт, заданий у формі "сегмент-зміщення": 8000:0250в шістнадцятковій транскрипції. Логічна адреса: 8000:0250 –––––––––––––––––––––––––––––– Сегмент: 80000 + Зміщення: 0250 ––––––– ––––––––––––––––––––––– Фізична адреса: 80250 У типовій програмі, написаній для процесорів сімейства 80x86, як правило, є три сегменти: коду, даних і стека. При запуску програми їх базові сегментні адреси завантажуються в регістри CS, DS та SS відповідно. У трьох регістрах, що залишилися ES, FS і GS програма може зберігати покажчики на додаткові сегменти.

Слайд 11

Недоліки такої організації пам'яті: сегменти безконтрольно розміщуються з будь-якої адреси, кратної 16 (оскільки вміст сегментного регістру апаратно зміщується на 4 розряди), і, як наслідок, програма може звертатися за будь-якими адресами, у тому числі і реально не існуючим сегменти мають максимальний розмір 64 Кбайт сегменти можуть перекриватися іншими сегментами

Слайд 12

Захищений режим адресації Під час роботи в захищеному режимі кожній програмі може бути виділений блок пам'яті розміром до 4 Гбайт, адреси якого в шістнадцятковому поданні можуть змінюватися від 00000000 до FFFFFFFF. У цьому кажуть, що програмі виділяється лінійний адресний простір (linear address space). У захищеному режимі в сегментних регістрах (CS, DS, SS, ES, FS, GS) зберігаються не 16-розрядні базові адреси сегментів, а селектори-покажчики на дескриптори сегмента (segment descriptor), розташовані в одній із системних таблиць дескрипторів (descriptor table) . За інформацією, що знаходиться в дескрипторі, операційна система визначає лінійні адреси сегментів програми. Існує два різновиди таблиць: GlobalDescriptorTable (глобальна таблиця дескрипторів) та LocalDescriptorTables (локальні таблиці дескрипторів).

Слайд 13

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

Слайд 14

Дескриптор 0 є забороненим - його можна безпечно завантажити в сегментний регістр, щоб позначити, що сегментний регістр в даний момент недоступний, але при спробі використовувати його переривання. У типовій програмі, написаній для захищеного режиму, як правило, є три сегменти: коди, даних і стека, інформація про які зберігається в трьох наведених нижче сегментних регістрах. У регістрі CS зберігається покажчик на дескриптор сегмента коду програми У регістрі DS зберігається покажчик на дескриптор сегмента даних програми

Слайд 15

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

Слайд 16

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

Слайд 17

Дескриптори зберігаються у спеціальній системній таблиці, що називається таблицею глобальних дескрипторів (Global Descriptor Table, чи GDT). Для плоскої моделі кожен дескриптор має базову адресу, що дорівнює 0. Значення поля, що визначає межу сегмента, множиться процесором на шістнадцяткове число 1000. Сегменти можуть покривати весь 4-гігабайтний діапазон фізичних адрес, або тільки ті адреси, які відображаються на фізичну пам'ять. Якщо встановити межу сегмента значення 4 гігабайта, механізм сегментації запобігає генерації винятків для посилань до пам'яті, що виходять за кордон сегмента.

Слайд 18

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

Слайд 19

MultisegmentedModel (багатосегментна модель) Для кожної програми виділяється власна таблиця сегментних дескрипторів, яка називається таблицею локальних дескрипторів (Local Descriptor Table, або LDT). При цьому з'являється можливість для кожного процесу створити власний набір сегментів, які не перетинаються з сегментами інших процесів. Через війну кожен сегмент перебуває у ізольованому адресному просторі.

Слайд 20

На малюнку показано, кожен елемент таблиці локальних дескрипторів визначає різні сегменти пам'яті. У кожному дескрипторі сегмента вказується його точна довжина. Наприклад, сегмент, що починається з адреси 3000, має довжину 2000 байтів у шістнадцятковому поданні, оскільки значення поля дескриптора, що визначає межу сегмента, дорівнює 0002 а 0002х1000 = 2000. За аналогією, довжина сегмента, що починається з адреси 8000, дорівнює А000. Слід зазначити, що Flat Model реалізується як окремий випадок сегментованої моделі, коли програма звертається до сегмента, під який відведено весь лінійний простір.

Слайд 21

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

Слайд 22

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

Слайд 23

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

Слайд 24

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

Слайд 25

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

Слайд 26

З віртуальною пам'яттю тісно пов'язана тема захисту. Pentium підтримує чотири рівні захисту, де рівень 0 є найбільш привілейованим, а рівень 3 найменш привілейованим. Кожен сегмент у системі також має свій рівень.

Слайд 27

На рівні 0 знаходиться ядро ​​операційної системи, що займається обробкою операцій введення/виведення, управлінням пам'яттю та іншими першочерговими питаннями. На рівні 1 – обробник системних викликів. Користувальницькі програми цього рівня можуть звертатися до процедур для виконання системних викликів, але лише до певного та захищеного списку процедур. Рівень 2 містить бібліотечні процедури, які, можливо, спільно використовуються кількома працюючими програмами. Користувальницькі програми мають право викликати ці процедури та читати їх дані, але не можуть їх змінювати. І, нарешті, програми користувача працюють на рівні 3, який має найменший ступінь захисту.

Переглянути всі слайди