Дескрипторы против Потоков против Процессов

Дескрипторы против Потоков против Процессов

Есть ли разница между потоком и процессом?

Я пытаюсь понять расчеты системных данных, перечисленных на вкладке «Производительность».

Дескрипторы: 48097 Потоки: 1602 Процессы: 99 Время работы: 17:23:02:02 Фиксация (ГБ): 3/15

решение1

Поскольку ответ на StackOverflow настолько абстрактный и не зависит от ОС, что бесполезен для ответа на вопрос, касающийся операционной системы, я публикую ответ, специфичный для Windows.

Процессэто изолированная структура памяти, которая поддерживает приложение в аппаратном и программном обеспечении ОС. Процесс Windows содержит 1 или более потоков. https://en.wikipedia.org/wiki/Process_%28computing%29

Нитьпредставляет собой поток последовательных инструкций машинного кода, которые выполняет процессор. За исключением прерываний, всякий раз, когда процессор выполняет инструкцию от имени приложения, он делает это, потому что поток ее содержал. Потоки внутри процесса могут получать доступ к памяти процесса (в той степени, в которой конкретная операция над элементом памяти является «потокобезопасной» и не представляет несогласованныхпараллелизмпроблемы, когда одновременно выполняется более одного потока). Приложение может ускорить свою работу, используя несколько потоков, каждый из которых выполняет изолированную задачу, запуская свой поток инструкций через другой ЦПИсполнительный блок(ЦП/ядро/виртуальное ядро) одновременно.https://en.wikipedia.org/wiki/Thread_%28computing%29

Ручкаявляется логической ассоциацией с общим ресурсом, таким как файл, окно, область памяти и т. д. Когда поток открывает файл, он устанавливает «дескриптор» файла, и внутренне он действует как «имя» для этого экземпляра файла. Дескрипторы используются для ссылки на временные или окружающие ресурсы за пределами структуры памяти процесса.справиться с утечкойэто тип проблемы с программным обеспечением, которая в крайних случаях может дестабилизировать систему. Она вызвана тем, что программа запрашивает дескриптор ресурса и не освобождает его, когда программа заканчивает работу с ресурсом. Однако, основываясь на вашем числе, я не вижу здесь ничего плохого.https://en.wikipedia.org/wiki/Handle_%28computing%29

Связанный контент