- •Лекція 4 «Операційні системи сімейства Unix, MacOs, Windows»
- •Сімейство Microsoft Windows.
- •Підсистеми ядра ос. Інтерфейс ядра операційної системи
- •Підсистема управління введенням-виведенням
- •Підсистема управління оперативною пам'яттю
- •Поняття планувальника операційної системи.
- •Типи планувальників ос.
- •Реалізація планувальників у різних ос.
- •Взаємодія між процесами.
- •Засоби міжпроцесної взаємодії.
- •Поняття Бібліотеки.
- •Статичні та динамічні бібліотеки.
- •Використання бібліотек.
- •Додаткова функціональність ос.
- •Безпека ос.
- •Командний інтерпретатор операційної системи.
- •Характеристики Кожному процесу мають бути виділені наступні ресурси: процесор, пам'ять, доступ до пристроїв вводу-виводу, файли
- •Робочий цикл процесу
- •Виконання процесів
- •Завершення процесів
- •Особливості написання драйверів для Windows nt.
- •Сервісні системні виклики.
- •Система відслідковування та обробки помилок у ос.
- •Види помилок.
- •Робота з відеоадаптером.
- •Структура відеоадаптера.
- •Особливості функціонування відеоадаптера у текстовому та графічному режимах.
- •Отримання та зміна атрибутів.
- •Позиціонування та організація пошуку даних.
- •Основні функції для роботи з bios.
- •Системний реєстр.
- •Функції bios для роботи з консоллю.
- •Функції bios для роботи з клавіатурою.
- •Функції bios для роботи з екраном.
- •Робота з портами.
- •Інтерфейс rs – 232.
- •Отримання та передача даних через порти.
- •Таймер bios.
- •Керування пам’яттю за допомогою функцій biosmemory.
- •Резидентні програми.
- •Структура та особливості тsr –програм.
- •Модульне програмування.
- •Організація інтерфейсу.
- •Зв’язок Асемблера з мовами високого рівня.
- •Структура об’єктного та завантажувального модуля.
- •Зовнішні виклики.
- •Поняття “extern” та компоновка кількох об’єктних модулів.
- •Основні поняття тестування програмного забезпечення.
- •Розробка test-cases, test-suites.
- •Атрибути test-cases, test-suites.
- •1. Процес тестування програмного забезпечення
- •2. Чорна скринька - функціональне тестування
- •3. Розробка test-cases, test-suites. Атрибути test-cases, test-suites.
- •Атрибути тс
- •Атрибути тs
- •Цикли розробки та тестування програмного забезпечення.
- •Особливості та порядок виконання.
- •Класифікація видів тестування програмного забезпечення.
- •Призначення тестування програмного забезпечення.
- •Класифікація видів тестування
- •Методи генерації, методи відбору тестування програмного забезпечення.
- •Виконання процесу тестування.
- •Файлові системи та Бази даних.
- •Технології доступу до даних. Dao, ado, odbc.
- •Архітектура odbc
- •Список зареєстрованих драйверів
- •Створення dsn для бази даних Mіcrosoft sql Server
- •Застосування Structured Query Language (sql).
- •Open DataBase Connectivity (odbc) для доступу до даних.
- •Використання та dao у базах даних.
- •Інтернет – системи з підтримкою бд.
Файлові системи та Бази даних.
Технології доступу до даних. Dao, ado, odbc.
Навчальна мета: Засвоїти основні принципи роботи з файловими системами та базами даних, ознайомитися з базовими методами до ступу до даних.
Виховна мета: Допомогти студентам усвідомити вагому роль використання різноманітних файлових систем та баз даних у реальному житті.
Актуальність: Донести до відома студентів, що на сьогоднішній день практично кожне ПЗ працює з використанням БД.
Мотивація: Мотивацією вивчати даний напрямок у курсі ситемного програмування може стати бажання працювати у напрямку розробки баз даних або програм, що з ними співпрацюють.
Фа́йлова систе́ма — спосіб організації даних, який використовуються операційною системою для збереження інформації у вигляді файлів на носіях інформації. Також цим поняттям позначають сукупність файлів та директорій, які розміщуються на логічному або фізичному пристрої.
Cтворення файлової системи відбувається в процесі форматування.
В залежності від організації файлів на носії даних, файлові системи можуть поділятись на:
ієрархічні файлові системи - дозволяють розміщувати файли в каталоги;
пласкі файлові системи - не використовують каталогів;
кластерні файлові системи - дозволяють розподіляти файли між кількома однотипними фізичними пристроями однієї машини;
мережеві файлові системи - забезпечують механізми доступу до файлів однієї машини з інших машин мережі;
розподілені файлові системи - забезпечують зберігання файлів шляхом їх розподілу між кількома машинами мережі.Зміст [сховати]
Сучасні файлові системи
Сучасні файлові системи (ФС) являють собою ієрархічні структури каталогів. Хоча загальна концепція всіх ФС, в принципі, однакова, в реалізації є деякі відмінності. Два вартих уваги приклади — це символи-розділювачі каталогів та чутливість до регістру. Юнікс-подібні операційні системи (ОС) (BSD, Лінукс, MacOS X) та AmigaOS використовують у якості розділювача каталогів символ похилої риски (/), в той час як DOS використовує цей символ для завдавання додаткових опцій у командному рядку, а в якості розділювача прийнято вживати символ зворотної похилої риски (\). У Microsoft Windows прийнята та ж конвенція за винятком китайської та корейської версій, де розділювачем є знак запитання (?). Версії МакОС до Х використовували у якості розділювача двокрапку; RISC OS — дефіс.
У Юнікс-подібних ОС у назві файлу може використовуватись будь-який символ за винятком похилої риски і вони чутливі до регістру. Назви файлів у Microsoft Windows не є чутливими до регістру.
ФС можуть бути журнальними або нежурнальними. Журнальні файлові системи пишуть інформацію двічі: спершу до журналу дій файлової системи, потім до її належного місця в звичайній файловій системі. В разі аварії система може автоматично відновлювати свій вміст до узгодженого стану програючи частину журналу. В той же час нежурнальним файловим системам потрібно зробити перевірку усієї файлової системи спеціальними програмами, такими як fsck або scandisk.
Більшість дистрибутивів Лінукс підтримують більшість (або всі) перелічені ФС: ext2, ext3, ReiserFS, Reiser4, GFS, GFS2, OCFS, OCFS2, NILFS, XFS, JFS, заразом як і FAT та NTFS.
Microsoft Windows підтримує лише FAT12, FAT16, FAT32, та NTFS. Серед них NTFS є найефективнішою та єдиною, на котру може бути встановлена Windows Vista. Windows Embedded CE 6.0 включає також підтримку ExFAT, призначеної для роботи на портативних пристроях.
MacOS X підтримує HFS+ у якості первинної ФС та кілька інших як допоміжних.
На додачу всі ці (та інші) ОС підтримують файлові системи змінних носіїв — FAT12 для дискет, ISO 9660 та UDF (Universal Disk Format) для компакт-дисків та DVD відповідно.
Класифікація файлових систем
За призначенням файлові системи можна класифікувати на наступні категорії:
Для носіїв з довільним доступом (наприклад, жорсткий диск): FAT32, HPFS, ext2 і ін. Останнім часом поширилися журнальовані ФС, такі як ext3, Reiserfs, JFS, NTFS, XFS.
Для носіїв з послідовним доступом (наприклад, магнітні стрічки): QIC.
Для оптичних носіїв — CD і DVD: ISO 9660, HFS, UDF.
Віртуальні файлові системи: AEFS і ін.
Мережні файлові системи: NFS, SMBFS, SSHFS, Gmailfs.
Бази даних
База даних (БД) — впорядкований набір логічно взаємопов'язаних даних, що використовується спільно, та призначений для задоволення інформаційних потреб користувачів. У технічному розумінні включно й система керування БД.
Головним завданням БД є гарантоване збереження значних обсягів інформації (т.зв. записи даних) та надання доступу до неї користувачеві або ж прикладній програмі. Таким чином БД складається з двох частин : збереженої інформації та системи управління нею. З метою забезпечення ефективності доступу записи даних організовують як множину фактів (елемент даних).
Структуровані та неструктуровані БД
Структуровані БД використовують структури даних, тобто структурований опис типу фактів за допомогою схеми даних, більш відомої як модель даних. Модель даних описує об'єкти та взаємовідносини між ними. Існує декілька моделей (чи типів) баз даних, основні: плоска, ієрархічна, мережна та реляційна. Приблизно з 2000 року більше половини БД використовують реляційну модель.
До неструктурованих БД відносяться повнотекстові бази даних, які містять неструктуровані тексти статей чи книг у формі, що дозволяє здійснювати швидкий пошук (як наприклад вікіпедія).
Характеристика БД
Часто зустрічається характеристика БД на основі певних параметрів або необхідних вимог, наприклад:
значна кількість даних
незалежність даних
відкритий доступ до даних
підтримка транзакцій з гарантією відповідних властивостей
гарантована відсутність збоїв
одночасна робота з багатьма користувачами
З подальшим розвитком БД змінюються й ці вимоги та додаються нові, тому одностайності щодо повноти цієї характеристики немає.
Реалізації
Комерційні
DB2
Informix
Oracle
SQL Server
З відкритим кодом
MySQL
Firebird
PostgreSQL
Основи ODBC
Інтерфейс ODBC (Open Database Connectіvіty) був розроблений фірмою Mіcrosoft як відкритий інтерфейс доступу до баз даних. Він надає уніфіковані кошти взаємодії прикладної програми, називаної клієнтом (або додатком- клієнтом), із сервером - базою даних.
В основу інтерфейсу ODBC були покладені специфікація CLі- Интерфейса (Call-Level Іnterface), розроблена X/Open, і ІSO/ІEC для APІ баз даних, а також мова SQL (Structured Query Language) як стандарт мови доступу до баз даних.
Інтерфейс ODBC проектував для підтримки максимальної интероперабельности додатків, що забезпечує уніфікований доступ будь-якого додатка, що використовує ODBC, до різних джерел даних. Так, якщо додаток, що відповідає стандарту ODBC і SQL, спочатку розроблявся для роботи з базою даних Mіcrosoft Access, а потім таблиці цієї бази були перенесені в базу даних Mіcrosoft SQL Server або базу даних Oracle, те додаток зможе й далі обробляти ці дані без внесення додаткових змін.
Для взаємодії з базою даних додаток- клієнт викликає функції інтерфейсу ODBC, які реалізовані в спеціальних модулях, називаних ODBC- Драйверами. Як правило, ODBC- Драйвери - це DLL- Бібліотеки, при цьому одна DLL- Бібліотека може підтримувати трохи ODBC- Драйверів. При установці на комп'ютер будь-якого SQL- Сервера (бази даних, підтримуючої один зі стандартів мови SQL, наприклад, SQL-92) автоматично виконується реєстрація в реєстрі Wіndows і відповідного ODBC- Драйвера.
Архітектура ODBC
Архітектура ODBC представлена чотирма компонентами:
Додаток-Клієнт, що виконує виклик функцій ODBC.
Менеджер драйверів, що завантажує й звільняє ODBC- Драйвери, які потрібні для додатків- клієнтів. Менеджер драйверів обробляє виклики ODBC- Функцій або передає їхньому драйверу.
ODBC- Драйвер, що обробляє виклики SQL- Функцій, передаючи SQL- Серверу виконуваний SQL-оператор, а додатку- клієнтові - результат виконання викликаної функції.
Джерело даних, обумовлений як конкретна локальна або віддалена база даних.