ЦП против виртуальных ЦП и потоков против ядер
Центральные процессоры (ЦП) — это мозг наших компьютеров. Они обрабатывают все, что мы делаем ежедневно, от открытия приложения до просмотра фильма. Но что такое процессор? Как это работает? И в чем разница между ЦП и все более популярными виртуальными ЦП?
Понимание мозгов компьютеров
Согласно полному руководству по истории, первые электронные компьютеры были созданы в начале 1800-х годов. опубликовано G2. Однако эти компьютеры были большими и дорогими, и ими могли пользоваться только подготовленные математики и ученые.
Чарльзу Бэббиджу приписывают изобретение первой вычислительной машины, разностной машины, которую можно было запрограммировать на выполнение любых вычислений, которые можно было выполнить вручную. Однако проект Difference Engine так и не был завершен из-за отсутствия финансирования. по данным Музея компьютерной истории.
В 1937 году Бэббидж впервые упомянул об аналитической машине, которая станет первым в мире механическим компьютером общего назначения. «Аналитическая машина включала в себя все элементы современного компьютера: арифметико-логическое устройство, поток управления в виде условных ветвлений и циклов и встроенную память» (Примечания по электронике).
Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)
Ключевым компонентом современного компьютера является ЦП или центральный процессор. ЦП отвечает за выполнение инструкций, данных ему программным обеспечением, таким как операционная система или приложение. С точки зрения непрофессионала, вы можете думать о ЦП как о мозге вашего компьютера. Центральный процессор состоит из двух основных частей: блока управления и арифметико-логического блока (АЛУ). Если вас смущают эти сокращения, ознакомьтесь с нашим обзором различий APU, CPU и GPU.
Блок управления отвечает за выборку инструкций из памяти, их декодирование и последующую отправку в арифметико-логическое устройство для выполнения. АЛУ выполняет арифметические и логические операции с данными, хранящимися в регистрах, которые являются внутренними единицами хранения внутри ЦП.
Современные ЦП также содержат кэш, представляющий собой небольшой объем высокоскоростной памяти, в котором хранятся часто используемые инструкции и данные. Тайники разделены на уровни; Кэш-память уровня 1 (L1) встроена в сам кристалл ЦП, кэш-память уровня 2 (L2) находится на отдельном чипе, близком к ЦП, а кэш-память уровня 3 (L3) находится дальше от ЦП на своем собственном чипе или даже на своя печатная плата.
ЦП против виртуального ЦП
С появлением облачных сервисов появился виртуальный центральный процессор, или сокращенно vCPU. TechTarget определяет виртуальный ЦП как «физический центральный процессор (ЦП), назначенный виртуальной машине (ВМ)».
Виртуальные машины — это в основном автономные операционные системы, которые работают внутри другой операционной системы, как если бы они были приложениями. Виртуальные машины используются для различных целей, таких как тестирование нового программного обеспечения в безопасной среде, запуск нескольких операционных систем (например, Windows и Linux) на одном компьютере или объединение нескольких физических серверов в один сервер для экономии места и снижения затрат.
Итак, виртуальный ЦП — это программная реализация ЦП; он физически не существует внутри вашего компьютера, как настоящий процессор. Гипервизор, который представляет собой программное обеспечение, которое создает виртуальные машины и управляет ими, назначает виртуальные ЦП виртуальной машине. Каждый виртуальный ЦП воспринимается операционной системой внутри ВМ как реальное ядро ЦП. См. наше объяснение гипервизоров, чтобы узнать больше.
Однако, поскольку виртуальные ЦП основаны на программном обеспечении, они не так эффективны, как настоящие ЦП. Поэтому при покупке компьютера важно указать, сколько ядер у вашего процессора (например, «четырехъядерный» означает четыре ядра). То же правило применяется при выборе виртуального частного сервера (VPS) или плана хостинга выделенного сервера.
Основное различие между ЦП и виртуальными ЦП заключается в том, что ЦП являются аппаратными, а виртуальные ЦП — программными. Это означает, что ЦП физически существуют внутри вашего компьютера, а виртуальные ЦП — нет; вместо этого они создаются гипервизорами по мере необходимости. Из-за этой разницы в реализации ЦП намного эффективнее, чем виртуальные ЦП; у них нет накладных расходов, связанных с запуском программного обеспечения.
С начала 2000-х годов виртуальные ЦП становятся все более популярными, поскольку они дешевле и их проще назначать, чем физические ЦП; однако, если вам нужна производительность, лучше всего использовать компьютер с несколькими ядрами ЦП, поскольку каждое ядро может обрабатывать инструкции независимо.
Ядра против потоков
ЦП может иметь одно или несколько ядер, которые являются процессором, выполняющим задачи в указанное время. Ядро будет поддерживать порядок выполнения задач, регистры и кэш (если применимо) и выполнять операции через АЛУ. ЦП управляет ядрами, но ядро выполняет каждый программный процесс или поток, запланированный операционной системой. Поток — это независимая последовательность инструкций, которую может обрабатывать центральный процессор.
Несколько потоков могут существовать в одном процессе и совместно использовать одно и то же пространство памяти. Это позволяет им легче взаимодействовать друг с другом, чем если бы они работали в отдельных процессах. Потоки часто используются для повышения производительности многопоточных приложений, позволяя различным частям программы работать одновременно на разных ядрах или процессорах.
Термин «поток» уже много лет используется в вычислительной терминологии; однако только в начале 2000-х годов в процессоры была введена аппаратная поддержка потоков. Это позволяло одновременно выполнять несколько потоков на отдельных ядрах. Раньше на одном ядре одновременно мог выполняться только один поток, независимо от того, сколько ядер было в процессоре. В настоящее время многоядерные процессоры стали обычным явлением, и большинство операционных систем обеспечивают некоторый уровень поддержки запуска программ в виде нескольких потоков.
Завершение основных вопросов
Подводя итог, можно сказать, что ЦП — это аппаратный мозг наших компьютеров, в то время как их виртуальные аналоги, виртуальные ЦП, основаны на программном обеспечении и создаются гипервизорами для работы на виртуальных машинах. Ядра — это аппаратные процессоры внутри ЦП, а потоки — это программные инструкции, которые могут обрабатываться ЦП.
Потоки могут выполняться одновременно на отдельных ядрах, что позволяет одновременно выполнять разные части программы. Это может повысить производительность оборудования, поскольку несколько задач могут обрабатываться одновременно, а не последовательно.
Теперь, когда вы понимаете разницу между ЦП, ВЦП, ядрами и потоками, вы можете принять взвешенное решение при выборе компьютера или сервера. Если вам нужна производительность, лучше всего выбрать компьютер с несколькими ядрами ЦП, поскольку каждое ядро может обрабатывать инструкции независимо. Однако, если вы ищете экономичное решение, вам могут подойти виртуальные ЦП.