Онлайн-рабочие станции OnWorks Linux и Windows

Логотип

Бесплатный хостинг в Интернете для рабочих станций

<Предыдущая | Содержание: | Следующая>

Имейте в виду, что разные системы будут вести себя по-разному при одинаковой средней нагрузке. Например, система с видеокартой, поддерживающей аппаратное ускорение, не будет иметь проблем с рендерингом 3D-изображений, в то время как та же система с дешевой картой VGA будет сильно замедляться при рендеринге. Мой старый P133 станет довольно неудобным, когда я запускаю X-сервер, но в современной системе вы почти не заметите разницы в загрузке системы.


изображение

4.3.5. Могу ли я что-нибудь делать как пользователь?


Большое окружение может вас замедлить. Если у вас установлено много переменных среды (вместо переменных оболочки), длинные пути поиска, которые не оптимизированы (ошибки при установке переменной среды пути) и другие параметры, которые обычно выполняются «на лету», системе потребуется больше времени на поиск и чтение данных.


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


- добродетель, если не покупать новый компьютер каждый год.


изображение

4.3.5.1. приоритет


Приоритет или важность работы определяется ее хороший количество. Программа с большим приятным числом дружественна другим программам, другим пользователям и системе; это не важная работа. Чем меньше хорошее число, тем важнее работа и тем больше ресурсов она потребует без совместного использования.


Улучшение работы за счет увеличения ее числа полезно только для процессов, которые используют много процессорного времени (компиляторы, математические приложения и т. Д.). Процессы, которые всегда используют много времени ввода-вывода, автоматически вознаграждаются системой и получают более высокий приоритет (меньшее приятное число), например, ввод с клавиатуры всегда имеет наивысший приоритет в системе.


Определение приоритета программы осуществляется с помощью хороший команда.


Большинство систем также предоставляют BSD Ренис команда, которая позволяет вам изменить любезность запущенной команды. Опять же, прочтите страницу руководства для получения информации о вашей системе.


изображениеИнтерактивные программы

Это НЕ хорошая идея хороший or Ренис интерактивная программа или задание, выполняющееся на переднем плане.

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


изображение

4.3.5.2. Ресурсы процессора


В каждой системе Linux многие программы хотят использовать ЦП одновременно, даже если вы единственный пользователь в системе. Каждой программе требуется определенное количество циклов на процессоре для запуска. Могут быть случаи, когда циклов недостаточно, потому что ЦП слишком загружен. В Провел на сайте команда крайне неточна (она отображает только средние значения, вы должны знать, что является нормальным), но отнюдь не бесполезна. Вот некоторые действия, которые вы можете предпринять, если считаете, что ваш процессор виноват в зависании вашей системы:


• Запускать тяжелые программы при низкой нагрузке. Это может быть в вашей системе ночью. См. Следующий раздел для планирования.

• Не позволяйте системе выполнять ненужную работу: останавливайте демонов и программы, которые вы не используете, используйте

найти вместо тяжелой находки, ...

• Выполняйте большие задания с низким приоритетом.


Если ни одно из этих решений не подходит в вашей конкретной ситуации, вы можете обновить свой процессор. На машине UNIX это работа системного администратора.


изображение

4.3.5.3. Ресурсы памяти


Когда выполняющиеся в данный момент процессы ожидают больше памяти, чем физически доступно системе, система Linux не выйдет из строя; он начнет пейджинг, или обменЭто означает, что процесс использует память на диске или в пространстве подкачки, перемещая содержимое физической памяти (части запущенных программ или целые программы в случае подкачки) на диск, таким образом освобождая физическую память для обработки большего количества процессов. Это сильно замедляет работу системы, поскольку доступ к диску намного медленнее, чем доступ к памяти. В топ Команда может использоваться для отображения памяти и использования подкачки. Системы, использующие glibc, предлагают воспоминание и мемусагестат команды для визуализации использования памяти.


Если вы обнаружите, что используется много памяти и пространства подкачки, вы можете попробовать:


• Удаление, остановка или реновирование программ, которые используют большой кусок памяти.

• Добавление в систему дополнительной памяти (а в некоторых случаях и пространства подкачки).

• Настройка производительности системы, которая выходит за рамки этого документа. См. Список литературы в Приложении A.


изображение

4.3.5.4. Ресурсы ввода / вывода


Хотя ограничения ввода-вывода являются основной причиной стресса для системных администраторов, система Linux предлагает довольно плохие утилиты для измерения производительности ввода-вывода. В ps, vmstat и топ инструменты дают некоторое представление о том, сколько программ ожидают ввода-вывода; NetStat отображает статистику сетевого интерфейса, но практически отсутствуют инструменты для измерения реакции ввода-вывода на нагрузку системы, а IOSTAT Команда дает краткий обзор общего использования ввода-вывода. Существуют различные графические интерфейсы, позволяющие представить вывод этих команд в понятной для человека форме.


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


Проблемы сетевого ввода-вывода:


• Перегрузка сети:


Объем данных, передаваемых по сети, превышает емкость сети, что приводит к медленному выполнению каждой сетевой задачи для всех пользователей. Их можно решить путем очистки сети (что в основном включает отключение протоколов и служб, которые вам не нужны) или путем перенастройки сети (например, использования подсетей, замены концентраторов на коммутаторы, обновления интерфейсов и оборудования).

• Проблемы целостности сети:


Происходит при неправильной передаче данных. Решить такую ​​проблему можно, только изолировав неисправный элемент и заменив его.


Проблемы с дисковым вводом-выводом:


• слишком низкая скорость передачи данных для каждого процесса:


Скорость чтения или записи для одного процесса недостаточна.

• слишком низкая совокупная скорость передачи:


Максимальная общая пропускная способность, которую система может предоставить всем запускаемым программам, недостаточна.


Этот вид проблемы труднее обнаружить, и обычно требуется дополнительное оборудование для перераспределения потоков данных по шинам, контроллерам и дискам, если причиной проблемы является перегруженное оборудование. Одним из решений этой проблемы является конфигурация массива RAID, оптимизированная для действий ввода и вывода. Таким образом, вы получите то же оборудование. Другой вариант - переход на более быстрые шины, контроллеры и диски.


Если причина не в перегрузке, возможно, ваше оборудование постепенно выходит из строя или плохо подключено к системе. Для начала проверьте контакты, разъемы и вилки.


изображение


4.3.5.5. пользователей


Пользователи могут быть разделены на несколько классов, в зависимости от их поведения при использовании ресурсов:


• Пользователи, выполняющие (большое) количество мелких заданий: например, вы, начинающий пользователь Linux.

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

• Пользователи, выполняющие мало заданий, но использующие много процессорного времени (разработчики и т. П.).


Как видите, системные требования могут различаться для каждого класса пользователей, и удовлетворить всех может быть сложно. Если вы работаете в многопользовательской системе, полезно (и весело) узнать привычки других пользователей и систему, чтобы получить от нее максимальную отдачу для ваших конкретных целей.


изображение

4.3.5.6. Графические инструменты


Для графической среды доступен целый набор инструментов для мониторинга. Ниже приведен снимок экрана системного монитора Gnome, в котором есть функции для отображения и поиска информации о процессах, а также для мониторинга системных ресурсов:


Рисунок 4-3. Системный монитор Gnome


изображение


Также есть несколько удобных значков, которые вы можете установить на панели задач, например, диск, память и монитор нагрузки. xload - еще одно небольшое приложение X для мониторинга загрузки системы. Найдите свой любимый!


изображение

4.3.5.7. Прерывание ваших процессов


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


1. Сделайте так, чтобы процесс потреблял меньше ресурсов, не прерывая его;

2. Остановить процесс полностью.


Если вы хотите, чтобы процесс продолжался, но вы также хотите дать шанс другим процессам в системе, вы можете Ренис процесс. Не использовать хороший or Ренис команды, топ это простой способ обнаружить проблемные процессы и снизить приоритет.


Укажите процесс в столбце «NI», он, скорее всего, будет иметь отрицательный приоритет. Тип r и введите идентификатор процесса, который вы хотите переименовать. Затем введите значение nice, например «20». Это означает, что отныне этот процесс будет занимать не более 1/5 циклов ЦП.


Примерами процессов, которые вы хотите продолжить, являются эмуляторы, виртуальные машины, компиляторы и так далее.


изображение

Если вы хотите остановить процесс из-за того, что он зависает или полностью переходит в неистовство из-за потребления ввода-вывода, создания файлов или использования других системных ресурсов, используйте убивать команда. Если у вас есть возможность, попробуйте сначала тихонько убить процесс, отправив ему СИГТЕРМ сигнал. Это инструкция для завершения того, что она делает, в соответствии с процедурами, описанными в коде программы:


Джо: ~> пс-эф | GREP Mozilla

joe 25822 1 0 Mar11?

00:34:04 /usr/lib/mozilla-1.4.1/mozilla-

Джо: ~> пс-эф | GREP Mozilla

joe 25822 1 0 Mar11?


Джо: ~> убить -15 25822

Джо: ~> убить -15 25822

В приведенном выше примере пользователь Джо остановил свой браузер Mozilla, потому что он завис.


изображение

От некоторых процессов избавиться немного сложнее. Если у вас есть время, вы можете отправить им сигнал SIGINT, чтобы прервать их. Если и это не помогает, используйте самый сильный сигнал, SIGKILL. В приведенном ниже примере Джо останавливает зависшую Mozilla:


Джо: ~> пс-эф | GREP Mozilla

joe 25915 1 0 Mar11?

00:15:06 /usr/lib/mozilla-1.4.1/mozilla-

Джо: ~> пс-эф | GREP Mozilla

joe 25915 1 0 Mar11?


Джо: ~> убить -9 25915


Джо: ~> пс-эф | GREP 25915

Джо 2634 32273 0 18:09 птс / 4 00:00:00 grep 25915

Джо: ~> убить -9 25915


Джо: ~> пс-эф | GREP 25915

Джо 2634 32273 0 18:09 птс / 4 00:00:00 grep 25915

В таких случаях вы можете захотеть проверить, действительно ли процесс мертв, используя GREP снова отфильтруйте PID. Если это только возвращает GREP вы можете быть уверены, что вам удалось остановить процесс.


Среди процессов, которые трудно убить, - ваша оболочка. И это хорошо: если бы их было легко убить, вы теряли бы свою оболочку каждый раз, когда печатали Ctrl-C в командной строке случайно, поскольку это эквивалентно отправке SIGINT.


изображениеUNIX без каналов практически немыслим

Использование каналов (|) для использования вывода одной команды в качестве ввода другой объясняется в следующей главе, Глава 5.

Лучшие облачные вычисления для ОС в OnWorks: