Монитор процессов и потоков
Скачать 0.64 Mb.
|
Практическая работа №4 Тема: Монитор процессов и потоков Теория: Основными ресурсами современных вычислительных систем (ВС) считаются: аппаратные, программные и, теперь отдельно выделяют, информационные ресурсы. К аппаратным компьютерным ресурсам относятся процессоры, оперативная память, таймеры, периферийные устройства, сетевые устройства. Аппаратные ресурсы компьютерных систем могут объединять более широкую номенклатуру сетевых устройств, включая маршрутизаторы, серверы, накопители больших объемов данных, аппаратную реализацию облачных технологий. Важнейшим ресурсом является процессорное время. Вторым ресурсом принято считать память. Пространственный способ позволяет нескольким процессам (или их исполняемым в текущий период фрагментам) одновременно разделить все адресное пространство между собой. Задача повышения эффективности разделения оперативной памяти между параллельно выполняющимися процессами решаются в соответствии со способом разделения и с учетом того, что в каждый конкретный момент времени процессор при выполнении вычислений обращается к очень ограниченному числу ячеек памяти. Выделение памяти каждому процессу может осуществляться статически или динамически. Статическое выделение означает, что для фиксированного числа вычислительных процессов заранее резервируются области памяти под переменные программных модулей и сами модули. Динамическое предполагает выделение памяти по запросу от процесса (как правило, в результате прерывания), при этом резервирование происходит в системной области памяти, указание на которую осуществляется через стек. Процесс – базовое понятие ОС, часто кратко определяется как программа в стадии выполнения. Программа – это статический объект, представляющий собой файл с кодами и данными. Процесс – это динамический объект, который возникает в ОС после того, как пользователь и сама ОС решает «запустить» программу на выполнение, т.е. создать новую самодостаточную единицу вычислительной работы. В простейшем случае процесс состоит из одного потока. С процессом и с потоком связывается определенный программный код, который оформляется в виде исполняемого модуля. В ОС, поддерживающих и процессы, и потоки, процесс рассматривается операционной системой как заявка на потребление всех видов ресурсов, кроме процессорного времени. Атрибуты процесса В ОС семейства UNIX все процессы могут быть порождены только какими-либо другими процессами. В качестве прародителя всех остальных процессов в разных UNIX-подобных системах могут выступать процессы с идентификатором (PID) 0 или 1. PID (Process ID) – идентификатор процесса (целое положительное число) – его уникальный атрибут, служащий для распознавания процесса операционной системой, т.е. каждый процесс в ОС получает свой собственный PID. При создании каждого нового процесса ОС пытается присвоить ему следующий по возрастанию свободный номер. Если таких свободных номеров не остается (достигли максимума), то ОС выбирает минимальный из всех свободных. Освобождаются идентификаторы по мере завершения процессов. В ОС Linux присвоемние PID начинается с 0, такой идентификатор получает процесс ядра (kernel) при старте ОС. Задача получения списка выполняющихся в системе процессов является одной из основных при выполнении мониторинга ресурсов, как отдельного ПК, так и локальной вычислительной сети в целом, поэтому для ее решения имеется встроенное системное средство – диспетчер задач. Кроме того, разработано значительное количество утилит. Ход практической работы: 1. Запустить операционную систему и изучить работу с Диспетчером задач. Посмотрите на столбец «Тип» (Type). В нем есть несколько разных типов процессов: Приложение (App) – любые программы, работающие в оконном режиме; Фоновые процессы (Background Process) – их не видно, они работают в фоновом режиме; Процессы Windows (Windows Process) – эти процессы запустила сама операционная система и они необходимы для нормального функционирования Windows. 2. Открыть вкладу «Производительность» в диспетчере задач. Запишите сколько в системе запущено процессов и потоков. 3. Какие задачи запущены? 4. Сколько работающих служб запущено в системе? 5. Сколько процессов активно на момент выполнения практической работы, на сколько загружен центральный процессор, какой объем памяти выделен на текущие процессы? 6. Запустите несколько программ на компьютере. Просмотрите количество запущенных программ в «Диспетчер Задач». Просмотрите, сколько запущено процессов, а также насколько загружен процессор. 7. В командной строке наберите команду tasklist и посмотрите список приложений и связанные с ними задачи/процессы, которые в данный момент используются. 8. Для вывода списка активных служб в каждом процессе введите команду tasklist /SVC. Задание для самостоятельной работы: 1. Выполнить все задания также в операционной системе AstraLinux (или любой версии UNIX-подобных операционных систем). 2. Дополнительное задание: Получить информацию о процессах с помощью утилиты ps, общий формат вызова которой имеет вид: ps [-aA] [-defl] [-G список_групп] [-o формат] ... [-p список_процессов] [-t список_терминалов] [-U список_пользователей] [-g список_групп] [-n список_имен] [-u список_пользователей] 3. Написать программу на любом языке программирования, которая создает поток в системе. Вопросы: 1. Что является атрибутами процесса? 2. Как организуется взаимодействие процессов? 3. Каким образом программные средства Linux позволяют динамически порождать процессы? 4. Привести классификацию процессов по временным характеристикам. 5. Дать описание системным процессам: svchost.exe, lsass.exe, ApplicationFrameHost.exe, ctfmon.exe 6. Что означает параметр «бездействие системы»? Требования к содержанию и оформлению отчета Отчет по практической работе должен содержать: а) титульный лист; б) описание хода выполнения работы команд в ОС Windows и AstraLinux (либо любая версия Linux) и снимки экрана; в) ответы на вопросы; г) отчет по практическим работам загружается на СДО (online-edu.mirea.ru). |