- •Національний авіаційний університет
- •Лабораторний практикум з дисципліни «Мультиплатформені операційні середовища»
- •Визначення, позначення і скорочення
- •2.2. Використання клавіатури пк в ос qnx
- •2.3. Основні команди в ос qnx
- •2.4. Робота в файловій системі ос qnx
- •2.5. Ініціювання і завершення роботи в графічній оболонці Photon
- •3. Зміст звіту про лабораторну роботу
- •4. Питання для самоконтролю
- •5. Завдання на лабораторну роботу
- •Лабораторна робота № 2. Компіляція програм Короткі теоретичні відомості
- •Мікроядро
- •Системні і користувацькі процеси
- •Драйвери пристроїв
- •Зв'язок між процесами (ipc)
- •Qnx як мережа
- •Текст програми
- •Лабораторна робота №4. Повідомлення Короткі теоретичні відомості Архітектура і структура обміну повідомленнями
- •Текст програми
- •Послідовність дій
- •Результати
- •Лабораторна робота № 5. Тайм-аути Короткі теоретичні відомості Тайм-аути ядра
- •Текст програми
- •Текст програми
- •Послідовність дій
- •Результати
- •Послідовність дій
- •Результати
- •Лабораторна робота № 8. Створення найпростішого сервера в ос qnx
- •Короткі теоретичні відомості Функція Socket
- •Функція Bind
- •Функції listen і accept
- •Читання з сокета
- •Запис в сокет
- •Закриття сокета
2.2. Використання клавіатури пк в ос qnx
При введенні в командному рядку можна використовувати наступні клавіші:
<> <> <Home> <End> <Backspace> <Del> <Ins>.
Ініціація виконання команди - <Enter>.
<Ctrl> + <U> - видалення рядка.
Виклик історії команд: <> <>.
Перемикання віртуальних консолей (/dev/con1, ...):
<Ctrl> + <Alt> + <Enter> або <Ctrl> + <Alt> + <+> - перемикання на наступну консоль;
<Ctrl> + <Alt> + <-> - перемикання на попередню консоль;
<Ctrl> + <Alt> + <n> - перемикання на консоль з номером n.
Перемикання шрифтів здійснюється за допомогою команди cfont.
Швидке перемикання шрифтів:
<Ctrl> + <Alt> + <>> - перемикання на наступний шрифт (до n);
<Ctrl> + <Alt> + <<> - перемикання на попередній шрифт (до 0).
Кінець файлу - <Ctrl> + <D>
Завершення процесу (термінального): <Ctrl> + <C> або <Ctrl> + <Break>
Призупинення виводу на екран: <Ctrl> + <S>
Продовження виводу на екран: <Ctrl> + <D
Перезавантаження комп'ютера (програмна):
<Ctrl> + <Alt> + <Shift> + <Del>
2.3. Основні команди в ос qnx
При роботі користувача з ОС QNX використовується наступний синтаксис команд (на прикладі команди more):
опції команди
ім'я
команди
more [-ceisu] [-n number] [-x tabstop] [file ...]
операнди, аргументи аргументи опцій команди
[...] - Необов'язкові опції або аргументи команди.
-a | -f - альтернатива опцій.
... - Можливе повторення даного аргументу.
Перенаправлення вводу-виводу
Більшість команд читає свій ввід з файлу стандартного вводу (stdin), який зазвичай є клавіатурою і записує свій вивід до стандартного файлу виводу (stdout), який зазвичай є екраном дисплея. Однак, можливо:
• читати з файлу відмінного від клавіатури;
• писати в файл відмінний від екрану дисплея.
• читати з файлу або іншого пристрою < (введення перенаправлених символів)
• писати у файл або в інший пристрій > (висновок перенаправлених символів)
• перенаправлення stdout в файл, додавання до файлу >> (додавання виведених символів)
• канал stdout прямо в іншу команду | (конвеєр, канал символів)
наприклад,
ps > /tmp/pr1
Виконання команд на інших вузлах (node) або консолях (tty)
Ви можете виконувати команди на іншій машині (іншому вузлі) в локальній мережі. Коли команда викликається на іншому вузлі, stdin, stdout, stderr показуються на консолі вашого комп'ютера або на терміналі, поки ви не перенаправили на інший пристрій.
Команда on node - виконання команди на іншому вузлі.
Команда on tty - перенаправлення stdin, stdout на різні tty.
Використання onnode
Приклад 1 Запуск sin на 4 вузлі введення-виведення на вашому екрані:
onnode 4 sin
Еквівалент:
//4 sin
Приклад 2 Завантажити sin з другого вузла з /bin і виконати її на 4 вузлі (потоки введення-виведення sin будуть все ще прикріплені на виконуючому екрані):
onnode 4 //2/bin/sin
Приклад 3 Запустити sin на 4 вузлі і перенаправити висновок на консоль 1 вузла 2 (потоки введення і виведення помилок будуть як і раніше прикріплені до консолі запуску):
onnode 4 sin > //2/dev/con1
Використання ontty
Приклад 1 Запустити команду ls з її введенням і виведенням, пов'язаним з консоллю 3:
ontty /dev/con3 ls
Спільне використання on node і on tty
Приклад 1 Запуск сервера імен nameloc на 4 вузлі і прикріплення всього свого вводу-виводу к /dev/con1 вузла 4:
onnode 4 ontty //4/dev/con1 nameloc &
Але в цьому випадку все одно дана команда залишається «дитиною» запущеного shell. Щоб повністю відкріпити від shell необхідно використовувати команду nohup:
onnode 4 ontty //4/dev/con1 nohup nameloc &
Для отримання довідки про правила використання команд необхідно використовувати команду use:
use sin
Використання універсальних символів
* - Заміна будь-якого числа (> = 0) будь-яких символів.
? - Заміна будь-якого одиночного символу.
[] - Заміна будь-яких символів, що містяться в скобочках. Може бути діапазон, [1-3] [ac].
! - Виняток символів, специфіковані в дужках [! A].
Приклади:
cp f* /tmp
cp *d /tmp
cp freg? /tmp
cp freg[123] /tmp
або
cp freg[1-3] /tmp
cp *.[ch] /tmp
cp *.[!o] /tmp {копіювати всі файли, крім тих, які мають на кінці імені o}
Введення кількох команд:
cp freg /tmp; ls /tmp
