- •Оглавление
- •Введение
- •Лабораторная работа 1 Операционная система Linux в графическом режиме
- •1.1. Изучим элементы рабочего стола gnome
- •1.2. Познакомимся с авторами интегрированной среды gnome и других программ
- •1.3. Создадим панель и изучим порядок изменения ее свойств
- •1.4. Освоим порядок изменения свойств программы Наутилус
- •1.5. Изучим управление свойствами окна в графической среде gnome
- •1.6. Сохраним в виде графического файла содержимое экрана
- •1.7. Освоим программу создания архивов в графическом режиме
- •1.8. Используем простой текстовый редактор для подготовки командного файла – сценария
- •1.9. Изучим действия, позволяющие ассоциировать документ с приложением
- •Лабораторная работа 2 Основы использования командной строки
- •2.1. Выполним первые действия в командном режиме
- •2.2. Изучим команды, сообщающие информацию о программно-аппаратном комплексе компьютера
- •2.3. Познакомимся с командой echo, и переменными оболочки
- •2.4. Изучим систему помощи в командном режиме семейства unix/Linux
- •2.5. Изучим, что такое команда
- •2.5.1. Рассмотрим типы и количество команд
- •2.5.2. Рассмотрим параметры командной строки
- •2.5.3. Рассмотрим использование нескольких опций одной команды
- •2.6. Рассмотрим использование специальных символов оболочки
- •2.7. Изучим историю набранных команд и средства редактирования командной строки
- •2.8. Рассмотрим простейшее использование текстового редактора VI
- •VI file_one
- •2.9. Ознакомимся с основами работы с программой Midnight Commander
- •Лабораторная работа 3 файловая система
- •3.1. Изучим иерархическую файловую систему
- •3.2. Рассмотрим права доступа к файлам
- •3.3. Рассмотрим типы файлов
- •3.4. Рассмотрим примеры файлов разного типа
- •3.5. Рассмотрим команды работы с каталогами
- •3.5.1. Научимся создавать каталоги
- •VI script3
- •VI script4
- •3.5.2. Научимся удалять каталоги
- •3.5.3. Научимся копировать и перемещать файлы и каталоги
- •3.5.4. Изучим возможность выполнять разные операции над каталогами с разными правами доступа
- •3.6. Рассмотрим использование ссылочных файлов
- •3.7. Изучим понятие таблицы иноде (inode)
- •3.8. Расширим понимание и умение использовать команды less и more
- •3.9. Рассмотрим сортировку содержимого файлов
- •3.10. Познакомимся с командой grep
- •3.11. Познакомимся с командой diff
- •3.12. Познакомимся с командой find
- •1) Find / -name echo
- •4.1. Рассмотрим классификацию процессов Linux
- •4.2. Изучим команды получения информации о загруженности системы и активных пользователях
- •VI working
- •4.3. Познакомимся с командами top и ps
- •Vim topfile
- •4.4. Рассмотрим работу в фоновом режиме
- •4.5. Рассмотрим управление приоритетами процессов
- •4.6. Изучим простые возможности обмена информацией между пользователями
- •4.7. Рассмотрим средства управление ресурсами пользователя
- •Лабораторная работа 5 Сценарии в операционной системе Linux
- •If условие
- •If условие
- •If условие
- •Библиографический список
4.5. Рассмотрим управление приоритетами процессов
В любой многопользовательской системе, когда процессы выполняются одновременно, поддерживается система динамически изменяемых приоритетов. Две команды позволяют влиять на последние.
nice. Эта команда запускает процесс с отличным от принятого в система значения атрибута «число nice» (он участвует в вычислении реального приоритета процесса и по умолчанию имеет начальное значение, равное 0). Интервал его значений установлен в пределах от –20 (наивысший приоритет) до +19 (самый низший приоритет).
renice. В отличие от предыдущей эта утилита действует на уже запущенные процессы. Она имеет такой формат:
renice –number PID
Запустим на первом виртуальном терминале текстовый редактор такой командой
vi &
Для того чтобы посмотреть приоритеты процессов выполните
ps -o fname,pid,ni,priority –sort ni
с таким результатом
COMMAND PID NI PRI
bash 5053 0 15
vi 5284 0 15
ps 5298 0 16
[1] Stopped vi
Такой командой про каждый процесс выводятся значения четырех атрибутов, при этом они отсортированы по значению атрибута число nice. Но в данном случае все эти значения равны 0.
Сделаем следующее. Определим номер процесса тестового редактора, запущенного на втором виртуальном терминале. Дадим такие команды и убедимся, что его приоритет изменился. Например, сначала введем
renice –5 5284
а после такой команды
ps -o fname,pid,ni,priority –sort ni
увидим
COMMAND PID NI PRI
vi 5284 -5 15
bash 5053 0 16
ps 5298 0 16
Теперь запустим еще один экземпляр программы, но для этого используем команду, упомянутую ранее утилиту
nice vi &
Эта команда по умолчанию присвоит запускаемой программе значение атрибута число ni равное 10. После ее выполнения получим такое распределение приоритетов
ps -o fname,pid,ni,priority –sort ni
COMMAND PID NI PRI
vi 5284 -5 15
bash 5053 0 16
ps 5308 0 16
vi 5304 10 30
[2] Stopped vi
Теперь уменьшим приоритет второго из запущенных нами процессов (с pid 5304) такой командой
renice –10 5304
5304: old priority 10, new priority -10
После нее приоритеты распределятся так:
ps -o fname,pid,ni,priority –sort ni
COMMAND PID NI PRI
vi 5304 -10 10
vi 5284 -5 15
bash 5053 0 15
ps 5308 0 15
Таким образом, стало ясно, что в системе Linux с приоритетами процессов связаны два атрибута, один из которых вычисляет система, а другой можно изменять пользователям. Заметим, что главный администратор системы может изменять приоритеты всех процессов в любую сторону, а другие пользователи – только своих процессов и только в сторону уменьшения приоритета.
Задание 37.
Выполните такую же последовательность действий, которые произведены в разделе 4.5, но в сеансе пользователя asplinux.
4.6. Изучим простые возможности обмена информацией между пользователями
UNIX создавалась как многопользовательская операционная система, работающая на нескольких компьютерах. С самых ее первых версий создавались средства общения пользователей. Ярким примером является утилита mail, появившаяся в самых первых версиях UNIX.
Сейчас познакомимся с другой простой утилитой обмена информации двух пользователей. Для выполнения описанных ниже действий откроем на двух виртуальных терминалах сеансы двух пользователей root и asplinux. Перейдем на второй виртуальный терминал, где открыт сеанс asplinux. Задавая
write root
будем посылать набираемый текст на первый виртуальный терминал, где зарегистрирован пользователь с именем root. Для того чтобы увидеть это, переключимся на сеанс последнего. Завершаем команду за asplinux, набирая <Ctrl+D>.
Вновь переключимся на виртуальный терминал пользователя root. Здесь даем команду
write asplinux tty1
Указывать номер виртуального терминал необходимо, иначе сообщения будут адресованы на терминал xterm, в графический режим, даже если он не активен.
После этого все, что будет набираться на клавиатуре root, будет дублироваться на экране asplinux. Возвратиться к строке ввода команд пользователя root можно набрав <Ctrl+C>. Но если после этого продолжить набирать текст на терминале asplinux, на экране root символы появятся вновь.
