
- •1. Общие сведения об операционных системах
- •1.1. Назначение и функции
- •1.2. Архитектура
- •1.3. Процессы и потоки
- •1.4. Управление памятью
- •1.5. Ввод-вывод и файловая система
- •2. Установка и работа в Linux
- •2.1. Обзор процесса установки Linux
- •2.2. Использование редактора VI
- •2.3. Управление процессами
- •2.3. Файловые системы и каталоги
- •3. Практические задания
- •3.1. Использование внутренних команд Linux
- •3.2. Работа в текстовом редакторе Pico
- •3.3. Работа с командными файлами
- •3.4. Работа с графическими оболочками kde и gnome
- •3.5. Работа с пакетом офисных приложений StarOffice
- •3.6. Контрольные задания
2.2. Использование редактора VI
Linux поставляется со стандартным текстовым редактором vi, которым оснащена любая платформа UNIX. Кроме того, vi крайне нетребователен к ресурсам, а значит, им можно воспользоваться в критических ситуациях, когда другие редакторы недоступны.
Имена редакторов vi и ex в составе Red Hat Linux в действительности представляют собой символические связи с редактором vim (от improved).
Поскольку редактор vi является составной частью стандартной среды UNIX, его знают и успешно применяют миллионы пользователей. Он быстро запускается, его можно использовать для решения простых и сложных задач, а именно: для ввода, модификации или удаления текста; поиска и замены или замены текстовых фрагментов; копирования, вырезания и вставки блоков текста. Есть возможность переместить курсор в любую область экрана или в любое место файла.
Редактор vi работает в двух режимах:
— Командный режим. Нажатия клавиш интерпретируются как команды, позволяющие сохранить текст, выйти из редактора, переместить курсор, модифицировать, переупорядочить, удалить, заменить и найти нужный текстовый фрагмент.
— Режим ввода текста. Нажатия клавиш воспринимаются как текст редактируемого файла.
Редактор vi — интерактивный. Он общается с вами, отображая информацию о состоянии или ошибках, или ничего не отображая на экране. Последняя экранная строка называется строкой состояния.
В отличие от большинства текстовых процессоров редактор vi запускается в командном режиме. Поэтому прежде, чем вводить текст, нужно перейти в режим ввода текста с помощью клавиш <a> (для добавления текста) или <i> (для вставки текста). Чтобы сохранить файл и выйти из редактора сначала переключитесь в командный режим. Для перехода из режима ввода текста в командный нажмите клавишу <Esc>.
2.3. Управление процессами
Linux — система многопользовательская и многозадачная. Потоки не поддерживаются, в качестве единицы управления и единицы потребления ресурсов выступает процесс.
Операционная система отвечает за корректную работу нескольких пользователей и нескольких процессов, скрывая детали этой работы от пользователя.
Как и в UNIX, в Linux принята следующая классификация процессов:
• интерактивный — запускается из системной оболочки и работает в фоновом режиме или на переднем плане;
• пакетный — обычно представляет собой серию процессов, запускаемых в определенное время;
• демон — обычно запускается во время загрузки; необходим для выполнения ОС своих функций.
При управлении процессами ОС использует два основных типа информационных структур: дескриптор процесса и контекст процесса.
Дескриптор процесса содержит такую информацию о процессе, которая необходима ядру в течение всего жизненного цикла процесса, независимо от того, находится он в активном или пассивном состоянии, находится образ процесса в оперативной памяти или выгружен на диск.
Образ процесса — совокупность его кодов и данных. Дескрипторы различных процессов объединены в список, образующий таблицу процессов. Память для таблицы процессов отводится динамически в области ядра. На основании этой информации ОС осуществляет планирование и синхронизацию процессов.
Контекст процесса содержит менее оперативную, но более объемную часть информации о процессе, необходимую для возобновления выполнения процесса с прерванного места: содержимое регистров процессора, коды ошибок выполняемых процессором системных вызовов, информация обо всех открытых данным процессом файлах и незавершенных операциях ввода-вывода и другие данные, характеризующие состояние вычислительной среды в момент прерывания.
Linux отслеживает работу процессов, назначая каждому из них свой идентификатор процесса (Process ID – PID).
Мониторинг многозадачной среды
• Список зарегистрировавшихся в системе пользователей
$who
$who -uH
$finger username
$finger username@domain
• Запуск фонового процесса
$lp report.txt &
3146
• Информация о состоянии процессов
$ps
Планирование запуска команд
ОС Linux предоставляет различные возможности контроля выполнения команд. Команда at, например, получает список команд и запускает их в определенное в команде время. Команда batch подобна at, но запускается не в определенное пользователем время, а когда система сама решит, что загрузка позволяет ей запустить дополнительные процессы. Команда cron позволяет запускать какие-либо команды периодически, а crontab — определять эти команды и периодичность их использования.