- •Лабораторна робота №1
- •Основні положення. Поняття операційної системи.
- •Завдання
- •Лабораторна робота № 2.
- •Основні положення
- •1. Поняття файлу
- •2. Поняття файлової системи
- •3. Типи файлів
- •4. Імена файлів
- •5. Організація інформації у файловій системі
- •6. Загальні відомості про файлові операції
- •Приклад виконання завдання.
- •Завдання
- •Контрольні питання
- •Лабораторна робота № 3
- •Основні положення.
- •1. Каталоги
- •2. Операції над каталогами
- •3. Робота з каталогами в posix
- •Приклад виконання завдання
- •Завдання
- •Контрольні питання
- •Лабораторна робота № 4
- •Основні положення.
- •Створення процесу.
- •Ієрархія процесів.
- •Реалізація процесів.
- •4. Системні виклики для роботи з процесами
- •Приклад виконання завдання
- •Завдання
- •Контрольні питання
- •Лабораторна робота № 5
- •Основні положення
- •1. Застосування каналів.
- •Приклади виконання завдань
- •Завдання
- •Контрольні питання
- •Лабораторна робота № 6
- •Основні положення.
- •1. Черга повідомлень.
- •2. Створення черг повідомлень.
- •Прикдад виконання завдання
- •Завдання
- •Контрольні питання
Завдання
Відповідно до варіанту завдання розробити і відлагодити програму. Програма повинна використати заголовний файл з описом даних і прототипів функцій. Функції обробки мають бути реалізовані в окремому файлі.
Варіанти завдань
1. У тексті визначити кількість символів, які не є ні цифрами, ні літерами.
2. Для заданої матриці отримати вектор, кожен елемент якого дорівнює сумі
елементів рядка матриці.
3. Виділити перше і останнє слова тексту.
4. Дана матриця A(5,5) і вектор X(5). Обчислити добуток матриці на вектор.
5. Дана матриця B(4,5). Знайти стовпчик з максимальною сумою елементів.
6. Дані два масиви по 10 елементів кожен. Знайти суму квадратів різниць елементів масивів з однаковими індексами.
7. У тексті вставити між другим і третім словом нове слово.
8. Для матриці визначити, яких елементів більше: позитивних або негативних.
9. У тексті визначити кількість розміщених в круглі дужки символів.
10. Вивести на екран друге і четверте слова довільного рядка.
11. У тексті знайти і вивести слова, що містять поєднання символів LF.
12. Для квадратної матриці знайти суму елементів, що знаходяться вище за головну діагональ.
Контрольні питання
1. Що таке ядро операційної системи?
2. Яку роль відіграє функція main ( ) при запуску програми на виконання?
3. Що визначають аргументи функції main ( ) в стандарті ANSI C?
4. Який компілятор використовується в операційній системі Linux?
5. Що таке заголовний файл?
6. Які ви знаєте команди відладчика gdb?
Лабораторна робота № 2.
Тема: Інтерфейс прикладного програмування API для роботи з файлами.
Мета роботи: вивчення використання системних функцій та стандартних бібліотек при програмуванні операцій з файлами.
Основні положення
1. Поняття файлу
Файл - це набір даних, до якого можна звертатися за іменем. Файли організовані у файлові системи. З погляду користувача файл є мінімальним обсягом даних файлової истеми, з яким можна працювати незалежно. Наприклад, користувач не може зберегти дані на зовнішньому носії, не звернувшися при цьому до файлу. Розглянемо особливості використання файлів.
Файли є найпоширенішим засобом зберігання інформації в енергонезалежній пам'яті. Така пам'ять надійніша, й інформація на ній може зберігатися так довго, як це необхідно. Зазначимо, що більшість збоїв у роботі ОС не руйнує інформації, що зберігається у файлах на диску. Для забезпечення збереження даних підвищеної цінності вживають додаткових заходів (гаряче резервування, резервне копіювання тощо).
2. Поняття файлової системи
Файлова система - це підсистема ОС, що підтримує організований набір файлів, здебільшого у конкретній ділянці дискового простору (логічну структуру); низькорівневі структури даних, використовувані для організації цього простору у вигляді набору файлів (фізичну структуру); програмний інтерфейс файлової системи (набір системних викликів, що реалізують операції над файлами).
Файлова система надає прикладним програмам абстракцію файла. Прикладні програми не мають інформації про те, як організовані дані файла, як знаходять відповідність між ім'ям файла і його даними, як пересилають дані із диска у пам'ять тощо - усі ці операції забезпечує файлова система.
Важливо зазначити, що файлові системи можуть надавати інтерфейс доступу не тільки до диска, але й до інших пристроїв. Є навіть файлові системи, які не зберігають інформацію, а генерують її динамічно за запитом. Втім, для прикладних програм усі такі системи мають однаковий вигляд.
До головних задач файлової системи можна віднести: організацію її логічної структури та її відображення на фізичну організацію розміщення даних на диску; підтримку програмного інтерфейсу файлової системи; забезпечення стійкості проти збоїв; забезпечення розподілу файлових ресурсів за умов багатозадачності та захисту даних від несанкціонованого доступу.