Текущий контроль процессов: команда ps
Категория: Управление процессами | Автор: admin | 30-09-2009, 04:21

Команда ps — основной инструмент, которым системный администратор пользуется для текущего контроля процессов. Версии этой команды различаются аргументами и выходным форматом, но, по сути, выдают одну и ту же информацию. Все версии можно разбить на два основных лагеря: системы семейства System V (Solaris, HP-UX) и системы семейства BSD (Red Hat, FreeBSD). Кроме того, поставщики могут настраивать эту команду с учетом конфигурации системы, так как она тесно связана с особенностями обработки процессов в ядре и поэтому часто отражает изменения в ядре.

С помощью команды ps можно получить информацию об идентификаторах, приоритете, управляющем терминале того или иного процесса и многое другое. Она также позволяет узнать о том, какой объем памяти использует процесс, сколько времени центрального процессора он затребовал, каково его текущее состояние (выполняется, остановлен, простаивает и т.д.). Процессы-зомби листинге команды ps обозначаются как <exiting> или <defunct>.


Просмотров: 18082 | Подробнее... | Комментариев: 0
  Улучшенный текущий контроль процессов: программа top
Категория: Управление процессами | Автор: admin | 30-09-2009, 04:22

Команда ps позволяет сделать только разовый, моментальный "снимок" системы, но получить полную картину всего происходящего в ней довольно сложно. Существует бесплатная программа top, которую можно установить в системах многих типов, чтобы получать с ее помощью регулярно обновляемую сводку активных процессов и используемых ими ресурсов. Автором этой программы является Уильям Лефевр (William LeFebvre).

 

Вот примерные результаты ее работы:

last pid: 21314; load averages: 2.97, 2.95, 2.69 15:51:51

75 processes: 71 sleeping, 3 running, 1 zombie

cpu states: 44.5% user, 0% nice, 23.9% system, 31.6% idle

Memory: 113M avail, 108M in use, 4972K free, 6232K locked

 

PID

USER

PRI

NICE

SIZE

RES

STATE

TIME

WCPU

CPU

COMMAND

1313

root

1

-19

297K

148K

sleep

0:00

9.3%

0.7%

ercpd

2858

root

1

0

1564K

676K

sleep

0:20

5.4%

0.7%

sendma

1310

root

27

0

812K

488K

run

0:00

7.6%

0.3%

sendma

981

root

29

0

2152K

2324K

run

0:03

0.0%

0.0%

top

192

root

1

0

44K

276K

sleep

0:48

0.0%

0.0%

in.rlo

778

uucp

27

0

244K

508K

run

0:04

0.0%

0.0%

uucico

5298

randy

15

0

228K

176K

sleep

0:00

0.0%

0.0%

csh

151

root

15

0

12K

8K

sleep

54:40

0.0%

0.0%

update

0962

trent

15

0

212K

0K

sleep

0:00

0.0%

0.0%

csh

5843

beth

15

0

208K

0K

sleep

0:00

0.0%

0.0%

csh

167

root

15

0

100K

0K

sleep

0:00

0.0%

0.0%

lpd

1311

randy

5

0

224K

408K

sleep

0:00

0.0%

0.0%

prev

По умолчанию эта информация обновляется каждые десять секунд. Наиболее активные процессы указываются первыми. Программа top позволяет также посылать процессам сигналы и использовать команду renice, чтобы пользователь мог наблюдать за тем, как его действия влияют на общее состояние системы.

Для того чтобы обновлять информацию каждые десять секунд, программа top должна занимать некоторую часть времени центрального процессора. По этой причине ее следует использовать только для диагностических целей, а не как программу, постоянно работающую в отдельном окне.

Пользователь root может запустить программу top с опцией -q, чтобы обеспечить ей максимально возможный приоритет. Это очень удобно, если какие-то процессы уже существенно замедлили работу системы.


Просмотров: 2665 | | Комментариев: 0
  Процессы, вышедшие из-под контроля
Категория: Управление процессами | Автор: admin | 30-09-2009, 04:24

Иногда в системе появляются процессы, которыми по той или иной причине должен заниматься администратор. Неуправляемые процессы бывают двух видов: пользовательские, потребляющие слишком много системных ресурсов (например, времени центрального процессора или дискового про­странства), и системные, которые внезапно "впадают в буйство" и начинают вести себя непредсказуемо. Процессы первого типа могут быть вполне работоспособными, просто они некорректно обращаются с ресурсами. В то же время системные процессы всегда должны работать в соответствии с определенными правилами.

 

Процессы, занимающие чересчур много времени центрального процессора, можно выявить, проанализировав результаты работы команды ps. Если очевидно, что какой-либо пользовательский процесс потребляет больше ресурсов, чем ему действительно необходимо, его нужно исследовать. Самый простой способ разобраться в ситуации — связаться с владельцем процесса и спросить, что происходит. Если это невозможно, придется действовать на свой страх и риск. Хотя в обычной ситуации системный администратор старается не заходить в каталоги пользователей, это допускается, если нужно изучить исходный текст неуправляемого процесса и выяснить, что же он делает.

Просмотров: 3225 | Подробнее... | Комментариев: 0
  Файловая система
Категория: Файловая система | Автор: admin | 30-09-2009, 04:32

Ответьте, не раздумывая, на вопрос: что из нижеперечисленного можно встретить в файловой системе?

  • Процессы

  • Последовательные порты

  • Каналы межзадачного взаимодействия

  • Совместно используемые сегменты памяти

Если речь идет о UNIX, ответом будет "все вышеперечисленное". Ну и, конечно, в файловую систему входят собственно файлы.

Хотя основным предназначением файловой системы является организация хранимых ресурсов системы (т.е. файлов), программистам не хотелось каждый раз заново изобретать колесо при управлении объектами других типов. Очень часто оказывалось удобным представлять такие объекты в виде элементов файловой системы. Подобный унифицированный подход имеет как преимущества (единый программный интерфейс, легкий доступ из командного интерпретатора), так и недостатки (реализация файловых систем по методу доктора Франкенштейна). Но независимо от того, нравится он вам или нет, именно такой подход применяется в UNIX.

Файловую систему можно представить состоящей из четырех основных компонентов:

  • пространство имен — методы именования объектов и организации их в виде иерархий;

  • API — набор системных вызовов, предназначенных для перемещения между узлами системы и управления ими;

  • модель безопасности — схема защиты, укрывания и совместного использования объектов;

  • реализация — программный код, который связывает логические модели с дисковой подсистемой.

Современные файловые системы в UNIX определяют абстрактный интерфейс уровня ядра, позволяющий работать с различными аппаратными интерфейсами. Некоторые части файлового дерева обрабатываются традиционной дисковой подсистемой, другие управляются отдельными драйверами ядра. Например, за работу сетевых файловых систем (NFS) отвечает драйвер, который перенаправляет запросы серверу на другой компьютер.

К сожалению, архитектурные границы нечетко очерчены, и имеется слишком много "особых" случаев. Скажем, файлы устройств позволяют программам взаимодействовать с драйверами ядра. Они не являются файлами данных, но обрабатываются базовыми средствами файловой системы, а их характеристики записываются на диск. Наверное, имело бы смысл переписать операционную систему с учетом опыта последнего десятилетия.

Другим усложняющим фактором является то, что современные версии UNIX поддерживают несколько типов файловых систем. Помимо базового варианта — 4.3BSD, распознаваемого большинством ОС, существуют файловые системы, обладающие повышенной надежностью или упрощенными средствами восстановления после сбоев (например, VXFS в HP-UX), системы, поддерживающие иную семантику (например, расширения, связанные со списками прав доступа в Solaris и HP-UX), и системы, построенные на других типах носителей (в частности, жесткие диски DOS или компакт-диски формата ISO-9660). Все они могут отличаться от стандартной файловой системы UNIX, описываемой в настоящей главе.


Просмотров: 3074 | | Комментариев: 0
  Путевые имена
Категория: Файловая система | Автор: admin | 30-09-2009, 04:34

Файловая система — это единая иерархическая структура, которая начинается с каталога / и разветвляется, охватывая произвольное число подкаталогов. Каталог самого верхнего уровня именуется корневым.

Цепочка имен каталогов, через которые необходимо пройти для доступа к заданному файлу, вместе с именем этого файла называется путевым именем. Путевые имена могут быть абсолютными (например, /tmp/affle) или относительными (скажем, bоокЗ/filesystem). Последние интерпретируются, начиная с текущего каталога. Некоторые считают, что текущий каталог задается командным интерпретатором. На самом деле текущий каталог имеется у каждого процесса.

Термины файл и имя файла, а также путевое имя и путь в большей или меньшей степени являются взаимозаменяемыми. Понятия имя файла и путь можно употреблять как для абсолютных, так и для относительных путевых имен. Под путевым именем, как правило, подразумевают абсолютный путь. Слово файл часто используется в случаях, когда нужно сконцентрировать внимание на содержимом файла, а не на его имени.


Просмотров: 3361 | | Комментариев: 0


 
Логин
Пароль
 

 
Locations of visitors to this page