logo search
ЯП / ЯП / ЯП экзамен

Потоки и процессы. Сходства и различия.

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

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

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

Необходимая минимальная синхронизация включает:

  1. Операции чтения могут выполняться параллельно

  2. Операции записи не могут выполняться одновременно с чтением.

  3. Операции записи не могут выполняться параллельно с другими операциями записи.