- •Введення
- •1. Структура та обсяг дисципліни
- •2. Основи програмування на мові с
- •2.1 Найпростіші конструкції мови
- •2.2 Типи даних
- •2.4 Операції мови с
- •2.5 Структура простої с програми
- •2.6 Організація введення-виведення
- •2.7 Компіляція в системі Linux
- •2.8 Організація розгалужень в програмі
- •2.9 Організація циклів
- •2.10 Оператор break
- •2.11 Оператор continue
- •2.11 Масиви
- •2.12 Функції
- •2.13 Вызов функции с переменным числом параметров
- •2.14 Рекурсивні функції
- •2.15 Читання і запис текстових файлів
- •2.16 Структури даних
- •2.17 Перелік|перерахування| (enumeration)
- •2.18 Об'єднання (union)
- •3. Операційні системи і системне програмування
- •3.1. Поняття операційної системи
- •4. Корисні команди Linux
- •4.1. Загальні|спільні| команди
- •4.1.1. Команда arch – виведення архітектури комп'ютера
- •4.1.2. Команда clear – очищення екрану
- •4.1.3. Команда date
- •4.1.9. Команда uptime – інформація про роботу системи
- •4.1.10. Команда users – інформація про користувачів
- •4.1.11. Команди w, who і whoami інформація про користувачів
- •4.1.12. Команда xf8config – настройка графічної підсистеми
- •4.2. Команди для роботи з текстом
- •4.2.1. Команди diff і cmp
- •4.2.2. Команди grep і egrep – текстовий фільтр
- •4.2.3. Команди more и less – посторінкове виведення
- •4.2.4. Команди head і tail – виведення начала і хвоста файлу
- •4.2.5. Команда wc – підрахунок слів у файлі
- •5. Захист інформації в інформаційних системах
- •5.1 Основні завдання забезпечення безпеки
- •5.2 Базові поняття криптографії
- •5.2.1 Поняття криптографічного алгоритму і протоколу
- •5.2.2 Криптосистеми з секретним ключем
- •5.2.3 Криптосистеми із відкритим ключем
- •5.2.4. Гибридні криптосистеми
- •5.2.5. Цифрові підписи
- •5.2.6. Сертифікати
- •5.3. Принципи аутентифіекації і керування доступом
- •5.3.1. Основи аутентифікації
- •5.3.2. Основи керування доступом
- •5.4. Аутентифікація та керування доступом в unix
- •5.4.1. Облікові записи користувачів
- •5.4.2. Аутентифікація
- •5.4.3. Керування доступом
- •6. Програмний інтерфейс unix. Системні виклики і функції стандартних бібліотек
- •6.1. Підтримка програмування в oc unix. Вивчення передачі інформації
- •6.2. Змінні оточення
- •6.3. Обробка помилок
- •6.4. Правила формування і засоби розбору командних рядків
- •7. Операції над файлами
- •7.1 Файлові операції posix
- •7.2. Збирання інформації про атрибути файла
- •7.3. Операції над каталогами
- •Література
3. Операційні системи і системне програмування
3.1. Поняття операційної системи
Операційна система є програмою, що управляє. Програма, що управляє, контролює виконання програм користувачів з метою уникнення помилок і неправильного використання обчислювальної системи.
ОС реалізує безліч функцій, зокрема:
визначає так званий інтерфейс користувача;
забезпечує розподіл апаратних ресурсів між користувачами;
дає можливість працювати з общимімі даними в режимі колективного користування;
планує доступ користувачів до загальних ресурсів;
забезпечує ефективне виконання операцій введення/виведення;
здійснює оновлення інформації про обчислювальний процес у разі помилок.
ОС можуть розрізнятися особливостями реалізації внутрішніх алгоритмів управління основними ресурсами обчислювальної системи (процесами, пам'яттю, пристроями введення/висновку, файлами, що зберігаються в зовнішній пам'яті), особливостями використаних методів проектування, типами апаратних платформ, областями використання і т.д.
Залежно від алгоритму управління процесором, операційні системи ділять на:
багатозадачні і однозадачні;
розраховані на багато користувачів і розраховані на одного користувача;
системи, які підтримують многопоточноую обробку і не підтримують її;
на багатопроцесорні і однопрцессорниє системи.
Багатозадачні ОС підрозділяються на три типи залежно від використаного при їх розробці критерію ефективності:
системи пакетної обробки (наприклад, ОС ЄС);
системи розділення часу (UNIX, Windows);
системи реального часу (QNX RT/11).
4. Корисні команди Linux
4.1. Загальні|спільні| команди
4.1.1. Команда arch – виведення архітектури комп'ютера
Дана команда дозволяє дізнатися|упізнати,взнати,пізнати| тип апаратної платформи, наприклад: i386, i586, i686 і ін.
Приклад|зразок| використання:
$ arch
i686
4.1.2. Команда clear – очищення екрану
Команда clear очищає екран при роботі в консолі.
Приклад|зразок| використання:
$ clear
4.1.3. Команда date
Команда date використовується для виведення поточної дати. Ця команда може застосовуватися також для установки дати, якщо запущена|занедбана| від імені адміністратора.
Приклад|зразок| використання:
$ date
# date 1609131707
Перша команда виводить дату, а друга – встановлює дату (за умови, що|при умові , що,при условии | команда запущена|занедбана| від імені root) 16 вересня 2013 року і час 17:07. Дізнатися|упізнати,взнати,пізнати| можливі формати дати можна за допомогою man date.
4.1.4. Команда echo
Команда echo виводить текстовий рядок, вказаний як аргумент, наприклад:
$ echo “Hello, World!”
Hello, World!
Звичайно ця команда використовується в сценаріях командного інтерпретатора для виведення повідомлення|сполучення| на екран.
4.1.5. Команда exit – вихід з|із| системи
Для завершення роботи в системі (за умови, що|при умові , що,при условии | ви працюєте в консолі) потрібно використовувати команду exit. Якщо не завершити сеанс роботи, хто завгодно зможе працювати в системі під вашим ім'ям.
4.1.6. Команда man – виведення довідки
Команда man використовується для отримання|здобуття| довідки про будь-яку команду системи. Наприклад, команда man ls виведе довідку про використання команди ls, яка виводить вміст каталога. Про те, як правильно використовувати саму довідкову систему, можна дізнатися|упізнати,взнати,пізнати| за допомогою команди man man.
4.1.7. Команда passwd – зміна пароля
Вона забезпечує зміну пароля користувача, який її запустив. Суперкористувач root має право змінити|поміняти| пароль будь-якого користувача:
$ passwd имя_пользователя
4.1.8. Команда startx – запуск графічного інтерфейсу
Linux може запускатися на різних рівнях запуску. На п'ятому рівні запуску графічний інтерфейс X.Org (колишня назва X Window) запускається автоматично (якщо він взагалі був встановлений|установлений|). На третьому ж рівні запуск графічного інтерфейсу не проводиться|виробляється,справляється|. Якщо він вам проте|тим не менше| потрібен, то його можна запустити за допомогою команди startx. Ніяких|жодних| параметрів не вимагається.
