- •Міністерство освіти і науки України
- •Жуковецька с.Л., Шестопалов с.В.
- •Анотація
- •Введення
- •Лабораторна робота №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. Індівідуальні завдання
Відповідно до варіанта завдання розробити й налагодити програму. Вихідні дані вводяться із клавіатури й записуються в текстовий файл. Програма читає ці дані, після обробки результати також містяться у файлі.
Варіанти завдань
З текстового файлу видалити кожне четверте слово. Ім'я файлу задати у вигляді аргументу командного рядка.
У текстовий файл додати після кожного третього слова заданий нове слово. Ім'я файлу задати у вигляді аргументу командного рядка.
У текстовому файлі видалити зайві прогалини. Ім'я файлу задати у вигляді аргументу командного рядка.
У текстовому файлі є довільно розташовані російські й англійські слова. Розділити вихідний файл на два. В одному повинні знаходитися англійські слова, в іншому - росіяни. Імена файлів задавати у вигляді аргументів командного рядка.
Перетворити текстовий файл таким чином, щоб кожне слово стало укладеним в круглі дужки. Ім'я файлу задати у вигляді аргументу командного рядка.
З файлу, що містить відомості про студентів сформувати файл, в який входять тільки прізвища. Імена файлів задавати у вигляді аргументів командного рядка.
З текстового файлу вибрати парні слова і помістити їх в інший файл. Імена файлів задавати у вигляді аргументів командного рядка.
У текстовому файлі поміняти місцями перше і останнє слова. Ім'я файлу задати у вигляді аргументу командного рядка.
Скопіювати байти з одного файлу в інший в зворотному порядку. Імена файлів задавати у вигляді аргументів командного рядка.
Написати програму, яка додає вміст одного файлу в кінець іншого у зворотному порядку. Імена файлів задавати у вигляді аргументів командного рядка.
Написати програму, яка підраховує кількість рядків у файлі, ім'я якого задається у вигляді аргументу командного рядка. Перевіряти, чи не виникають помилки при системних викликах.
Написати програму, яка дописує в кінець файлу його вміст у зворотному порядку. Ім'я файлу задавати у вигляді аргументу командного рядка.
Написати програму порівняння двох файлів, яка буде друкувати першу з розрізняються рядків і позицію символу, в якому вони розрізняються. Імена файлів задавати у вигляді аргументів командного рядка.
Написати програму, яка копіює вміст одного файлу в іншій, видаляючи всі входження даного символу. Імена файлів і видаляється символ задавати у вигляді аргументів командного рядка.
Написати програму, яка копіює вміст одного файлу в іншій, замінюючи при цьому всі багаторазові входження прогалин знаком табуляції. Імена файлів задаваті у вігляді аргументів командного рядка.
Лабораторна робота №6 Робота з каталогами та посиланнями
Мета: Оволодіння технологією використання API для роботи з каталогами й посиланнями ОС UNIX. Застосування отриманих знань для написання програм керування файлами.
Завдання для самостійної підготовки:
Вивчити:
організацію каталогів ОС UNIX;
види й властивості посилань ОС UNIX;
бібліотечні функції роботи з каталогами й посиланнями;
системні виклики роботи з каталогами й посиланнями.