Что именно делает Google Chrome при открытии новой вкладки?
Сегодня я заметил интересное поведение. Я использую ОС Windows XP-sp3.
Когда я открываю новую вкладку в Google Chrome и просматриваю диспетчер задач, создается новый процесс.
Но через некоторое время этот процесс прекращается.
Почему это показывает такое поведение? Это из-за системного вызова vfork()
? Дочерний процесс немедленно вызывает exec()
?
Это происходит только с Google Chrome или все другие браузеры ведут себя аналогичным образом?
1 ответ
AFAIK Chrome поддерживает один процесс для каждой вкладки, а также один процесс для некоторых плагинов. Они предпочли многопроцессную архитектуру, а не многопоточную, потому что когда вы создаете сетевое приложение, которое постоянно взаимодействует с сетью, вы можете ожидать получения пакетов, которые могут искажать память. Таким образом, многопроцессорность предотвратит все процессы, кроме одного, в отличие от многопоточности убьет вкладки.
Вы можете просветить себя в следующем блоге:
http://blog.chromium.org/2008/09/multi-process-architecture.html