- •Міністерство освіти і науки України
- •Жуковецька с.Л., Шестопалов с.В.
- •Анотація
- •Введення
- •Лабораторна робота №1 Технологія розробки програм у середовищі Linux
- •1. Команди роботи з командним інтерпретатором ос unix
- •2. Створення програми
- •3. Функції введення-виведення.
- •4. Приклад програми
- •5. Основні керуючі конструкції мови с
- •6. Індівідуальні завдання
- •Лабораторна робота № 2. Автоматизація пакетних завдань
- •1. Компіляція багатомодульною програми
- •2. Автоматизація пакетних завдань
- •4. Завдання
- •Лабораторна робота № 3. Взаємодія програми з середовищем виконання
- •1. Аргументи командного рядка
- •2. Змінні оточення
- •3. Індівідуальні завдання
- •Лабораторна робота №4. Контроль виконання програми
- •1. Коди завершення програми
- •2. Функції обробки значення errno
- •3. Функція atexit()
- •4. Макрос asssert()
- •5. Індівідуальні завдання
- •Лабораторна робота №5 Файлові api.
- •1 Основні поняття
- •2. Права доступу до файлів
- •3. Інтерфейси для файлового введення / виводу
- •4. Системні виклики роботи з файлами
- •5. Індівідуальні завдання
- •Варіанти завдань
- •Лабораторна робота №6 Робота з каталогами та посиланнями
- •Методичні вказівки
- •1. Створення та видалення каталогу
- •2. Читання каталогу
- •3. Зміна каталогу
- •4. Управління жорсткими посиланнями
- •5. Управління символічними посиланнями
- •6. Перейменування файлів і каталогів
- •7. Індівідуальні завдання
- •Лабораторна робота №7. Одержання і відображення метаданих файлу.
- •Методичні вказівки
- •1. Механізми управління файлами ос unix
- •2. Отримання даних індексного дескриптору
- •3. Додаткові функції маніпулювання даними індексних дескрипторів
- •4. Отримання даних про відкриті файли
- •5. Індівідуальні завдання
- •Лабораторна робота №8. Керування процесами
- •Методичні вказівки
- •1. Загальні поняття
- •2. Створення поцесу
- •4. Перезавантаження програми процесу
- •5. Завершення виконання процесу
- •6. Системні виклики wait, waitpid
- •7. Індівідуальні завдання
- •Лабораторна робота №9. Використання каналів
- •Методичні вказівки
- •1. Заганьні відомості
- •2. Використання каналів
- •3. Індівідуальні завдання
- •Варіанти завдань
- •Лабораторна робота №10 Використання повідомлень
- •Методичні вказівки
- •1. Загальні відомості
- •2. Використання повідомлень
- •3. Індівідуальні завдання
- •Література
- •Системне програмування Посібник до виконання лабораторних та самостійних робіт
- •65082, Одеса, вул. Дворянська, 1/3
5. Індівідуальні завдання
Написати програму, що складається з функцію funct () і головного модуля.
1. Функція повинна зчитувати з екрану деяке ціле число і повертати 1 у разі введення позитивного числа і -1 - у разі введення негативного числа. У головному модулі реалізувати обробку значення, що повертається за допомогою макросу assert (). У разі введення негативного числа програма зупиняється і виводить повідомлення на екран.
2. Функція повинна зчитувати з екрану деяке ціле число і повертати 1 у разі, коли введене число кратне 10, інакше - -1. У головному модулі реалізувати обробку значення, що повертається за допомогою макросу assert (). У разі введення числа, не кратного 10 програма зупиняється і виводить повідомлення на екран.
3. Функція повинна зчитувати з екрану деяке ціле число і повертати кількість десятків у цьому числі. У головному модулі реалізувати обробку значення, що повертається за допомогою макросу assert (). У разі введення числа з кількістю десятків менше 5, програма зупиняється і виводить повідомлення на екран.
4. Функція повинна зчитувати з екрану деяке ціле число і виводити на екран рядок виду «НАДАНО N», де N - введене число. У головному модулі за допомогою макросу assert () реалізувати контроль кількості викликів функції. Коли кількість викликів функції перевищить 5, програма зупиняється і виводить повідомлення на екран.
5. Функція повинна зчитувати з екрану деяке ціле число і виводити на екран рядок виду «НАДАНО N», де N - введене число. N передається в головний модуль. У головному модулі Прийняті значення заносяться в масив. Потім треба за допомогою макросу assert () реалізувати контроль виведення певної кількості елементів масиву. Програма зупиняється і виводить повідомлення на екран. Після того, як буде виведено 5 елементів.
6. Функція повинна зчитувати з екрану деяке ціле число і повертати суму цифр у цьому числі. У головному модулі реалізувати обробку значення, що повертається за допомогою макросу assert (). У разі введення числа з непарної сумою цифр, програма зупиняється і виводить повідомлення на екран.
7. Функція повинна зчитувати з екрану два цілих числа і повертає їх суму. У головному модулі реалізувати обробку значення, що повертається за допомогою макросу assert (). Якщо сума введених чисел є непарною, програма зупиняється і виводить повідомлення на екран.
8. Функція повинна зчитувати з екрану два цілих числа, які є координатами деякої точки на площині і повертати 1 у випадку, коли точка потрапляє в перший квадрант і -1 - в інших випадках. У головному модулі реалізувати обробку значення, що повертається за допомогою макросу assert (). У разі введення координат точки, що потрапляє в перший квадрант.
Лабораторна робота №5 Файлові api.
Мета: Оволодіння технологією використання файлових API ОС UNIX. Застосування отриманих знань для написання програм керування файлами.
Завдання для самостійної підготовки:
Вивчити:
організацію файлів ОС UNIX;
бібліотечні функції роботи з файлами ОС UNIX;
системні виклики роботи з файлами ОС UNIX;
формування прав доступу до файлів ОС UNIX.
Методичні вказівки