Здравствуйте. Некоторые владельцы ПК начали замечать, что в результате скачивания и установки обновлений для Win 7, система начала «тормозить». А в диспетчере задач новый элемент mscorsvw.exe грузит процессор. Самое странное, что этот процесс может присутствовать в списке два или три раза. Что это за «напасть», можно ли её устранить простым отключением для ускорения компьютера? Сейчас разберемся!
Суть проблемы
Mscorsvw.exe (.NET Runtime Optimization Service) является служебным компонентом Виндовс, предназначенным для оптимизации программ, разработанных на платформе «дот Нэт». Ну это знать не обязательно, поэтому углубляться не буду. Если интересуют технические особенности, можете посетить официальный ресурс Майкрософт для разработчиков – MSDN.
Наблюдаете подобную картину?
Не спешите завершать процесс (снимать задачу), поскольку такое явление имеет кратковременный характер. Но зато польза от него весьма ощутимая. Очень много утилит, запускаемых на ПК, работают при поддержке .NET, и если mscorsvw.exe остановить, то это негативно скажется на производительности программ. Да, Вы снизите нагрузку, но в последствии проиграете в скорости работы приложений. Лучше немного подождать пока служебный файл выполнит все необходимые действия.
Но можно пойти и другим путем.
- Индекс производительности Windows 10
- Убираем уведомление «некоторыми параметрами управляет ваша организация» Windows 10
- Не работают старые игры после обновления до Windows 10
Оптимизируем ресурсы
В первую очередь, следует определить, какая версия фреймфорка установлена на Вашем ПК. В этом поможет простая утилита от ASoft, скачать которую можно по ссылке.
Распаковываем архив и запускаем файл «dotnet». После принятия условий соглашения (кнопка «ОК») видим информацию о модулях.
В моем случае, имеем версию 4.6.2.
Теперь открываем утилиту командной строки одним из способов, перечисленных здесь. Обязательно с правами администратора!
Вводим одну из команд, в зависимости от версии Windows, разрядности:
Для Win 7, XP и фреймворка выше четверки (то, что мы определяли выше):
- 32 bit:
C:\Windows\Microsoft.NET\Framework\v4.0.30319\ngen.exe executeQueuedItems
- 64 bit:
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\ngen.exe executeQueuedItems
Для Win 8 и фреймворка выше четверки:
- 32 bit:
C:\Windows\Microsoft.NET\Framework\v4.0.30319\ngen.exe executeQueuedItems schTasks /run /Tn "\Microsoft\Windows\.NET Framework\.NET Framework NGEN v4.0.30319"
- 64 bit:
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\ngen.exe executeQueuedItems schTasks /run /Tn "\Microsoft\Windows\.NET Framework\.NET Framework NGEN v4.0.30319 64"
Для версии ниже «четверки» вводим:
- 32 bit:
C:\Windows\Microsoft.NET\Framework\v2.0.50727\ngen.exe executeQueuedItems
- 64 bit:
C:\Windows\Microsoft.NET\Framework64\v2.0.50727\ngen.exe executeQueuedItems
Если этот рекомендуемый способ не помог, или возникает ошибка, то стоит перейти к радикальному лечению. Сейчас расскажу, как отключить.
Полная деактивация
- Нажимаем на клавиатуре сочетание клавиш Win + R . Появится на экране окно «Выполнить». В строку ввода пишем — services.msc:
- Через несколько секунд отобразится перечень всех служб. Находим среди них Runtime Optimization Service и открываем свойства элемента (двойным щелчком левой кнопки мыши или через контекстное меню правой клавиши мышки).
- Указываем тип запуска «Отключена» и нажимаем на «Остановить». Чтобы сохранить внесенные изменения, кликаем на «ОК».
Mscorsvw.exe что это за процесс и почему он грузит систему – мы разобрались. Научились оптимизировать его или полностью отключать. Уверен. У Вас все получилось. Если возникли трудности – пишите в комментариях.
С уважением, Виктор!
Содержание
- Оптимизация процесса Mscorsvw.exe
- Способ 1: Использование утилиты ASoft .NET Version Detector
- Способ 2: Очистка от вирусов
- Способ 3: Отключение службы Runtime Optimization Service
- Вопросы и ответы
Процесс Mscorsvw.exe появляется вследствие обновления компонентов Windows. Он выполняет функцию оптимизирования некоторого программного обеспечения, разработанного на платформе .NET. Часто случается, что данная задача сильно нагружает систему, в частности процессор. В этой статье мы рассмотрим несколько способов оптимизации и устранения проблемы с нагрузкой процессора задачей Mscorsvw.exe.
Определить, что систему нагружает именно задача Mscorsvw.exe достаточно просто. Достаточно запустить диспетчер задач и нажать на галочку возле «Отображать процессы всех пользователей». Вызвать «Диспетчер задач» можно быстро с помощью горячих клавиш Ctrl + Shift + Esc.
Теперь, если проблема загрузки процессора кроется именно в этой задаче, необходимо приступить к ее исправлению. Осуществляется это очень просто одним из приведенных ниже способов.
Способ 1: Использование утилиты ASoft .NET Version Detector
Существует специальная утилита ASoft .NET Version Detector, которая поможет оптимизировать процесс Mscorsvw.exe. Все выполняется в несколько простых действий:
- Перейдите на официальный сайт разработчика, скачайте утилиту и запустите ее. Она отобразит информацию об последней версии .NET Framework, установленной на компьютере.
- Запустите командную строку. Для этого откройте «Выполнить» сочетанием клавиш Win + R, введите в строку cmd и нажмите «ОК».
- В открывшемся окне необходимо записать одну, подходящую вам команду, что зависит от версии Виндовс и .NET Framework. Обладателям Windows 7 и XP с версиями выше 4.0 необходимо ввести:
Скачать .NET Version Detector
C:\Windows\Microsoft.NET\Framework\v4.0.30319\ngen.exe executeQueuedItems
– для 32-разрядной системы.
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\ngen.exe executeQueuedItems
– 64-разрядной.
Пользователям Windows 8 с .NET Framework от 4.0 версии:
C:\Windows\Microsoft.NET\Framework\v4.0.30319\ngen.exe executeQueuedItems schTasks /run /Tn "\Microsoft\Windows\.NET Framework\.NET Framework NGEN v4.0.30319"
– для 32-разрядной системы.
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\ngen.exe executeQueuedItems schTasks /run /Tn "\Microsoft\Windows\.NET Framework\.NET Framework NGEN v4.0.30319 64"
– 64-разрядной.
Для любой версии Windows c .NET framework ниже 4.0:
C:\Windows\Microsoft.NET\Framework\v2.0.50727\ngen.exe executeQueuedItems
– для 32-разрядной системы.
C:\Windows\Microsoft.NET\Framework64\v2.0.50727\ngen.exe executeQueuedItems
– 64-разрядной
Если возникли какие-то сбои или способ не сработал, то следует попробовать два следующих.
Читайте также: Как определить версию Microsoft .NET Framework
Способ 2: Очистка от вирусов
Некоторые вредоносные файлы могут маскироваться под процесс Mscorsvw.exe и нагружать систему. Поэтому рекомендуется выполнить сканирование на вирусы и очистить их в случае обнаружения. Выполняется данная задача просто, с использованием одного из нескольких способов сканирования на вредоносные файлы.
Подробнее: Борьба с компьютерными вирусами
Если сканирование не показало никаких результатов, или после удаления всех вирусов Mscorsvw.exe все равно нагружает систему, то здесь поможет только радикальный метод.
Способ 3: Отключение службы Runtime Optimization Service
Процесс Mscorsvw.exe выполняется службой Runtime Optimization Service, поэтому ее отключение поможет разгрузить систему. Отключается служба всего за несколько шагов:
- Запустите «Выполнить» клавишами Win + R и введите в строку services.msc.
- Найдите в списке строку «Runtime Optimization Service» или «Microsoft .NET Framework NGEN», нажмите на нее правой кнопкой мыши и выберите «Свойства».
- Установите тип запуска «Вручную» или «Отключена» и не забудьте остановить сервис.
- Остается только перезагрузить компьютер, теперь процесс Mscorsvw.exe не включится самостоятельно.
В этой статье мы рассмотрели три различных способа оптимизации и устранения процесса Mscorsvw.exe. Изначально непонятно, почему он сильно нагружает не только процессор, но и всю систему, поэтому лучше воспользоваться первыми двумя способами, а если проблема осталась, тогда уже прибегать к радикальному методу – отключению службы.
Читайте также: Что делать, если систему грузит процесс SVCHost.exe, Explorer.exe, Trustedinstaller.exe, Бездействие системы
Еще статьи по данной теме:
Помогла ли Вам статья?
Многие, наверное, замечали, что время от времени компьютер начинает сильно снижать производительность и виной этому процесс (или даже несколько процессов) mscorsvw.exe, который используется службой NET Runtime Optimization Service. Но не все знают, для чего предназначена эта служба и каким образом можно ускорить ее работу. Чтобы устранить этот пробел мы, на основе материалов инженерной команды NET, подготовили данную статью.
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.
Для чего нужен и как работает .NET Framework?
.NET Framework — программная платформа от компании Microsoft, которая позволяет разработчикам создавать приложения, не привязываясь к аппаратным особенностям платформы и версиям ОС. Написанное с помощью .NET Framework приложение будет одинаково работать в любой системе, где установлена данная платформа. Такой подход также позволяет облегчить разработку и устранить возможные конфликты версий библиотек, так как наличие необходимой версии платформы автоматически подразумевает наличие необходимых компонентов и их не требуется включать в поставку программы. В настоящий момент .NET Framework выпускается как свободное ПО под лицензией MIT.
Для написания программного кода может быть использовать один из поддерживаемых платформой языков программирования, который затем компилируется в промежуточный байт-код CIL (Common Intermediate Language) и исполняется виртуальной машиной платформы CLR (Common Language Runtime). Использование виртуальной машины позволяет исполнять один и тот же код на системах с различными версиями аппаратной и программной платформы.
Проще говоря, он будет одинаково эффективно работать и на одноядерном стареньком Pentium 4 c 32-битной системой, и на многоядерном Core i7 в современной 64-битной среде. При этом разработчику не надо вникать в тонкости работы платформы, это задача разработчиков .NET Framework.
Как можно ускорить запуск и работу .NET Framework приложений?
Несмотря на то, что современные процессоры уже давно позволяют эффективно использовать JIT-компиляцию (just in time, компиляция «на лету»), несложно заметить, что компилятор CLR будет выполнять много повторяющихся действий, каждый раз компилируя в машинный код используемой платформы CIL-код общих библиотек и компонентов. Этого можно избежать, если выполнить компиляцию один раз и разместить готовый машинный код в кэше.
Для выполнения этой задачи предназначен механизм NGEN (The Native Image Generator) — генератор образов в машинном коде. Чтобы NGEN мог выполнять свою задачу в фоновом режиме предназначена служба .NET Runtime Optimization Service (mscorsvw.exe), которая запускается каждый раз после того, как набор библиотек .NET Framework был изменен.
Когда это происходит? Прежде всего после установки данной платформы, но это довольно редкий сценарий, тем более что .NET Framework уже входит в состав современных версий Windows. Однако обновления для .NET Framework выпускаются достаточно регулярно, что заставляет mscorsvw.exe выполнять перекомпиляцию библиотек платформы.
Как поясняют сотрудники инженерной команды NET, система обновлений Windows Update, через которую получает обновления и .NET Framework, настроена по-умолчанию таким образом, чтобы производить обновление системы в ночное время, когда компьютер не используется пользователем. Но иногда это сделать невозможно, например, если компьютер выключен, поэтому процесс обновления может начаться и посреди дня, в этот момент вы можете заметить снижение производительности системы, так как основные ресурсы будут заняты mscorsvw.exe.
В Windows 8 на смену NGEN пришел более совершенный механизм AutoNGEN. Теперь компилируются только те библиотеки, которые фактически используются на ПК, и данная работа производится только в период простоя, при необходимости служба способна остановить свою работу в течении 2 секунд. Начиная с Windows 8.1 ряд важных библиотек .NET Framework уже имеют готовые образы в машинном коде для большинства актуальных платформ и могут быть получены через Windows Update, что позволяет отказаться от их компиляции на клиентских ПК.
Как заставить mscorsvw.exe работать быстрее?
Начавшийся в разгар рабочего дня ресурсоемкий процесс оптимизации .NET Framework конечно же неприятен и, чаще всего, пользователи, не разбираясь в причинах происходящего, завершают работу mscorsvw.exe или идут еще дальше и отключают службу. Однако делать этого не стоит, так как .NET Runtime Optimization Service выполняет важную задачу и поможет вашим приложениям работать эффективнее. В тоже время есть способ выполнить эту работу быстрее, по умолчанию служба использует только одно процессорное ядро, если разрешить ей использовать большее количество ядер (в настоящее время не более 6), то оптимизация будет выполнена за меньшее количество времени, и вы снова сможете вернуться к своей работе.
Для запуска NGEN без ограничения на количество используемых ядер инженерная команда NET подготовила специальный скрипт:
Сценарий WSH (зеркало)
Вам нужно будет запустить его из командной строки с правами администратора. Данный скрипт успешно работает в системах до Windows 7 / Server 2008R2 включительно. При его запуске в среде Windows 8.1 мы сталкивались с ошибками, поэтому для Windows 8 / Server 2012 следует использовать сценарий PowerShell (также никто не мешает его использовать и в среде Windows 7):
Сценарий PowerShell (зеркало)
Так как PowerShell, к сожалению, еще недостаточно знаком многим системным администраторам, остановимся на запуске сценария более подробно. Если вы просто попытаетесь его выполнить, то скорее всего получите следующую ошибку:
По умолчанию выполнение сценариев PowerShell запрещено даже Администратору, что в общем-то правильно с точки зрения безопасности. Чтобы узнать текущие разрешения запустим среду исполнения PowerShell с правами администратора и выполним команду:
Get-ExecutionPolicy -list
В ответ вы получите политики для различных уровней: текущего сеанса, текущего пользователя или компьютера.
По-умолчанию политики не заданы: Undefined, что соответствует уровню Restricted, который разрешает запуск любых команд, но запрещает запуск скриптов. Для выполнения сценария нам нужно установить один из режимов разрешающий выполнение скриптов: Unrestricted или Bypass. В целях безопасности такой режим следует устанавливать только для текущего сеанса, т.е. на уровне Process. Для этого выполним команду:
Set-ExecutionPolicy Bypass -Scope Process
После чего можем успешно выполнить наш сценарий без каких-либо ошибок:
Что именно делает данный сценарий и можно ли обойтись без него?
Данные скрипты были подготовлены для тех, кто не хочет иметь дело с командной строкой, если же вы предпочитаете делать все самостоятельно, то можете выполнить несколько команд вручную:
.NET Framework 4 в Windows 7 и более ранних версиях:
c:\Windows\Microsoft.NET\Framework\v4.0.30319\ngen.exe executeQueuedItems
В 64-битных системах также выполните:
c:\Windows\Microsoft.NET\Framework64\v4.0.30319\ngen.exe executeQueuedItems
.NET Framework 4 в Windows 8 / 8.1:
c:\Windows\Microsoft.NET\Framework\v4.0.30319\ngen.exe executeQueuedItems
schTasks /run /Tn "\Microsoft\Windows\.NET Framework\.NET Framework NGEN v4.0.30319"
В 64-битных системах также выполните:
c:\Windows\Microsoft.NET\Framework64\v4.0.30319\ngen.exe executeQueuedItems
schTasks /run /Tn "\Microsoft\Windows\.NET Framework\.NET Framework NGEN v4.0.30319 64"
Если вы используете .NET 2.0 или 3.5, то команды будут следующими:
c:\Windows\Microsoft.NET\Framework\v2.0.50727\ngen.exe executeQueuedItems
В 64-битных системах также выполните:
c:\Windows\Microsoft.NET\Framework64\v2.0.50727\ngen.exe executeQueuedItems
Эти команды должны быть выполнены в командной строке работающей с правами администратора, в противном случае вы получите ошибку выполнения.
Подготовлено по материалам:
- Wondering why mscorsvw.exe has high CPU usage? You can speed it up.
- Got a need for speed? .NET apps start faster.
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.
Пользователи операционной системы Windows время от времени обращают внимание, что компьютер начинает медленно загружаться. Это может быть следствием неправильной работы службы Mscorsvw.exe. Чтобы повысить быстродействие компьютера в данном случае, необходимо оптимизировать систему или отключить данный процесс.
Чтобы понять, как именно работает процесс Mscorsvw, необходимо разобраться для чего он предназначен. Служба регулирует работу .NET Framework. Данная программная платформа разработана компанией Майкрософт.
После появления этой платформы, у разработчиков появилась возможность создавать программные продукты без привязки к аппаратным составляющим ПК или версии ОС. Пользователь устанавливает NET Framework вместе с операционной системой. Все программы, которые разрабатывались на данной платформе будут корректно работать без загрузки дополнительных библиотек. Это значительно упрощает весь процесс и повышает быстродействие ПК.
Mscorsvw или NET Runtime Optimization Service отвечает за запуск и работу приложений, которые были разработаны на основе NET Framework. Так как таких программ достаточно много, служба запускается регулярно. В некоторых случаях, она слишком перегружает систему. Тогда, пользователь может заметить, что компьютер начал работать в разы медленнее.
Что делать, если Mscorsvw грузит систему?
В большинстве случаев Mscorsvw включается всего на несколько секунд. Это позволяет программе запуститься. Также, в этот момент проходит проверка на наличие нужных библиотек. Если служба работает неправильно, то процесс Mscorsvw не завершится так быстро и начинает грузить процессор. При таких обстоятельствах, рекомендуется оптимизировать систему.
Для начала, необходимо разобраться по какой причине NET Runtime Optimization Service перестал корректно работать. После этого устранить ее, чтобы повысить быстродействие компьютера. Проверить, как Mscorsvw влияет на процессор можно в диспетчере задач.
Пользователю необходимо нажать комбинацию клавиш «Ctrl + Shift + Esc». Откроется окно, в котором следует выбрать нужную команду. Открыть диспетчер задач можно также через панель задач. Следует кликнуть правой клавишей мыши и выбрать соответствующий пункт.
После этого, нужно перейти в раздел «Производительность». В нижней части экрана находится команда «Открыть монитор ресурсов». В открытом окне, во вкладке «ЦП» пользователь может ознакомится со всеми запущенными службами, которые влияют на нагрузку процессора.
Причины
Главной причиной влияния .NET Runtime Optimization Service на центральный процессор, является переустановка платформы. Windows предлагает пользователю обновить систему вечером или ночью, чтобы данный процесс не влиял на работу компьютера.
Часто пользователи не проводят обновление в рекомендуемое время. Тогда, библиотеки обновляются в фоновом режиме днем. Это приводит к тому, что система начинает медленнее загружаться. Все программы не могут продолжать корректную работу в процессе обновления.
Кроме того, пользователь может столкнуться с вирусами на компьютере. Если служба перегружает центральный процессор, рекомендуется проверить компьютер на наличие вредоносного ПО. С этим помогут антивирусные программы.
Оптимизация системы
Если Mscorsvw (NET Runtime Optimization Service ) грузит систему Windows 7, 8, 10 или процессор, то лучшим вариантом будет оптимизация. Для этого понадобится программа ASoft .NET Version Detector, которую нужно скачать и установить. С ее помощью нужно проверить версию платформы NET Framework. Также необходимо знать разрядность и версию ОС.
После запуска приложения на экране отобразится окно, в котором можно ознакомится с информацией о NET Framework. В зависимости от версии следует вводить те или иные команды.
После этого, можно открывать командную строку от имени администратора. Сделать это можно через «Выполнить» или поиск.
Для Windows 7, XP с .NET Framework 4.0 и выше в консоли нужно ввести:
- для 32-разрядной системы:
C:\Windows\Microsoft.NET\Framework\v0.30319\ngen.exe executeQueuedItems
- 64-разрядной:
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\ngen.exe executeQueuedItems
Для Windows 8 с .NET Framework 4.0 и выше:
- для 32-разрядной системы:
C:\Windows\Microsoft.NET\Framework\v4.0.30319\ngen.exe executeQueuedItems schTasks /run /Tn "\Microsoft\Windows\.NET Framework\.NET Framework NGEN v4.0.30319"
- 64-разрядной:
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\ngen.exe executeQueuedItems schTasks /run /Tn "\Microsoft\Windows\.NET Framework\.NET Framework NGEN v4.0.30319 64"
Для.NET framework ниже 4.0:
- для 32-разрядной системы:
C:\Windows\Microsoft.NET\Framework\v0.50727\ngen.exe executeQueuedItems
- 64-разрядной:
C:\Windows\Microsoft.NET\Framework64\v2.0.50727\ngen.exe executeQueuedItems
Отключение процесса
Рекомендуется не отключать процесс Runtime Optimization Service. Если же это необходимо, достаточно следовать инструкции:
- Запустить «Выполнить» комбинацией клавиш Win+R.
- Ввести команду «services.msc».
- Перейти в свойства службы «Runtime Optimization Service» или «Microsoft.NET Framework NGEN», нажав правой клавишей мыши.
- Установить тип запуска «Вручную» или «Отключить».
После сохранения всех изменений, процесс остановится и не будет влиять на быстродействие компьютера.
August 6th, 2013
This post was written by Rich Lander, a Program Manager on the .NET Framework Team. It was written for people who want to understand why mscorsvw.exe is running on their machines and want to know how to speed it up.
Have you noticed that your machine is slowing down, and you’ve looked in Task Manager to find that mscorsvw.exe is the culprit? If so, this post will help you resolve those performance issues. Mscorsvw.exe is a component of Windows, and is otherwise known as the .NET Framework Optimization Service. It optimizes your machine to launch apps faster.
Most of the time, users do not notice mscorsvw. If you are noticing it and would like it to stop affecting your computer’s performance, we recommend that you run the script provided below. This script will cause mscorsvw to run at maximum speed in order to complete its work faster, and will likely slow down your machine during that period of time. Once the script has completed its work, it will close itself. If you notice mscorsvw again, you can re-run this script, however, we hope you don’t need to do that.
- Click here: .NET Framework optimization speed up script
Upon clicking the link above, you will need to click through a set of dialogs asking you to open and run the script. Please do that. If you get asked which program to run the script with, choose the Windows Script Host. On Windows XP, you will need to save the script to your desktop (or another location on your computer) before running it (just double click on it).
Why do I need mscorsvw and the .NET Framework?
Millions of software developers around the world choose to write apps using the .NET Framework, which is provided by Microsoft. You’ve probably used many apps built with the .NET Framework without even knowing that. The .NET Framework includes a technology called Native Image Generator (NGEN) that makes apps launch much faster and that periodically does work to optimize your machine. You can read more about this technology in a related post: Got a need for speed? .NET apps start faster.
How can I tell if mscorsvw is running?
Task manager can tell you which apps or services are running on your machine and how much machine resources they are using. You can see mscorsvw.exe in Task Manager, highlighted below. You might see more than one reference to mscorsvw.exe in Task Manager. That’s OK and part of how it normally operates.
How often and when does mscorsvw run?
The .NET Framework optimization service runs at two main times:
- When the .NET Framework is installed on your machine.
- When the .NET Framework is serviced by Windows Update.
The first case doesn’t happen very often. The .NET Framework comes with Windows, so you often already have the .NET Framework version you need to run a given app. The second case happens more often. We update the .NET Framework a handful of times of year, usually to improve security. These updates will typically occur on a “patch Tuesday,” if you are familiar with that term.
We try to update and optimize the .NET Framework during the night (specific to each time zone), while most people are sleeping. Sometimes, it isn’t possible to do that, particularly if a machine is turned off. As a result, the .NET Framework is sometimes updated during the day, which then requires the .NET Framework Optimization Service to run during the day, too. When that happens, you might notice the service running and possibly slowing down your machine for a period of time. You might wonder why this is happening, since the .NET Framework Optimization service runs in the background.
In Windows 8, we changed the .NET Framework Optimization Service, to operate in more of a silent mode. It only does work during idle time (when you are not actively using your computer). That means that you should never notice it, even if it is operating during the day.
Can I disable or turn off mscorsvw?
We do not recommend turning off or killing the .NET Framework Optimization Service in Task Manager. It is performing an important task for your machine and will help your apps launch much faster, once it’s done that work.
However, you can speed up the .NET Framework Optimization Service. By default, it only uses one CPU core. Instead, you can tell it to get its work done as quickly as possible by using more cores (currently, it will not use more than 6). That way, it will get its work done faster, and you can get on to other things.
You can run this .NET Framework optimization speedup script (same one as provided above) to tell the .NET Framework Optimization Service to speed up. If you prefer PowerShell and have it installed, we’ve also provided a PowerShell script to speed up the optimization service. You will need to download the script to your machine, and call it from an admin PowerShell command prompt. The script needs to run under either RemoteSigned or Unrestricted PowerShell execution policy.
Note that the majority of the speed up occurs for the .NET Framework 4. If you only have the .NET Framework 2 or 3.5 installed, the speedup effect will be more minor.
Tell me more about the script. What are the mscorsvw commands?
The scripts we’ve provided are a convenience for people who don’t want to deal with a command prompt. If you prefer to use the command prompt, you can use the commands below instead. These commands depend on the version of the .NET Framework you have installed and the version of Windows that you have and whether it’s 32-bit or 64-bit.
- .NET 4, 4.5, or 4.5.1 Preview on Windows 7 or earlier:
c:WindowsMicrosoft.NETFrameworkv4.0.30319ngen.exe executeQueuedItems
On a 64-bit operating system, add:
c:WindowsMicrosoft.NETFramework64v4.0.30319ngen.exe executeQueuedItems
- .NET 4, 4.5, or 4.5.1 Preview on Windows 8 or 8.1 Preview:
c:WindowsMicrosoft.NETFrameworkv4.0.30319ngen.exe executeQueuedItems
schTasks /run /Tn «MicrosoftWindows.NET Framework.NET Framework NGEN v4.0.30319»On a 64-bit operating system, add:
c:WindowsMicrosoft.NETFramework64v4.0.30319ngen.exe executeQueuedItems
schTasks /run /Tn «MicrosoftWindows.NET Framework.NET Framework NGEN v4.0.30319 64» - If you don’t have .NET 4 or later installed, but you do have .NET 2.0 or 3.5, use this command instead:
c:WindowsMicrosoft.NETFrameworkv2.0.50727ngen.exe executeQueuedItems
On a 64-bit operating system, add:
c:WindowsMicrosoft.NETFramework64v2.0.50727ngen.exe executeQueuedItems
These commands assume that Windows is installed on the C drive. If that’s not the case, you can change the drive letter, or use the %windir% environment variable (ex: %windir%Microsoft.NETFrameworkv4.0.30319ngen.exe executeQueuedItems)
These commands must be typed from a command prompt that you have “run as administrator”. If not, you will get an error message that directs you to run the commands with administrative credentials.
Summary
The .NET Framework is installed on over a billion machines and is used to run millions of apps every day. On the .NET Framework product team, we focus on making those apps launch as quickly as possible. A big part of how we do that is by optimizing both the .NET Framework and the apps that run on it. This optimization needs to be done on your machine a handful of times a year, due to updates to the .NET Framework.
You can learn more about .NET Framework optimization in our other post on this topic: Got a need for speed? .NET apps start faster.