- Microsoft .NET Framework 4.8 автономный установщик для Windows
- Введение
- О Microsoft .NET Framework 4.8
- Проблемы, которые устраняет это обновление
- Дополнительная информация
- 990x.top
- Простой компьютерный блог для души)
- Microsoft .NET Framework NGEN — что это за служба? (mscorsvw.exe)
- Разбираемся
- Тип запуска
- Можно ли отключать?
- Вывод
- Повышение производительности при запуске с помощью генератора NGen Improving startup performance with NGen
- Использование NGen.exe How to use NGen.exe
- Когда следует использовать NGen.exe When to use NGen.exe
- Использование NGen.exe на компьютере разработки Using NGen.exe in a development machine
Microsoft .NET Framework 4.8 автономный установщик для Windows
Введение
О Microsoft .NET Framework 4.8
Microsoft .NET Framework 4.8 — это высоко-совместимое обновление на месте для .NET Framework 4, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1 и 4.7.2.
Автономный пакет можно использовать в ситуациях, когда установщик не может быть использован из-за отсутствия подключения к Интернету. Этот пакет больше, чем онлайн установщик, и не включает языковые пакеты. Рекомендуется использовать онлайн установщик вместо автономного установщика для оптимальной производительности и требований к пропускной способности.
При установке этого пакета на операционную систему устанавливаются следующие пакеты или обновления:
В Windows 7 с пакетом обновления 1 (SP1) и Windows Server 2008 R2 с пакетом обновления 1 (SP1), обновление для .NET Framework 4.8 (KB4503548) отображается как установленный продукт в разделе Программы и компоненты панели управления.
В Windows Server 2012 обновление для Microsoft Windows (KB4486081) отображается в разделе Установленные обновления на панели управления. В Windows RT 8.1, Windows 8.1 и Windows Server 2012 R2 обновление для Microsoft Windows (KB4486105) отображается в разделе Установленные обновления на панели управления.
В Windows RT 8.1, Windows 8.1 и Windows Server 2012 R2 обновление для Microsoft Windows (KB4486105) отображается в разделе Установленные обновления на панели управления.
В Windows 10 Anniversary Update (версия 1607), Windows 10 Creators Update (версия 1703) и Windows Server 2016 Обновление для Microsoft Windows (KB4486129) отображается в разделе Установленные обновления на панели управления.
В Windows 10 Falls Creator’s Update версия 1709, Windows 10 Обновление от апреля 2018 года (Версия 1803), Windows 10 Обновление от октября 2018 года (версия 1809) и Windows Server 2019, оно указано как обновление для Microsoft Windows (KB4486153) под установленными обновлениями в панели управления.
Сведения о загрузке
На сайте загрузок .NET можно загрузить указанные ниже файлы:
Для Windows RT 8.1
Дополнительные сведения о загрузке файлов поддержки Майкрософт см . в разделе Как получить файлы поддержки Майкрософт из веб-служб.
Заявление о поиске вирусов: Корпорация Майкрософт проверила этот файл на отсутствие вирусов Майкрософт использует самую свежую версию антивирусного программного обеспечения, которая доступна на момент размещения файла. Файл хранится на защищенных серверах, что предотвращает его несанкционированное изменение.
Проблемы, которые устраняет это обновление
В этом обновлении исправлены следующие проблемы в .NET Framework 4.8.
Исправлена ошибка инициализации System.Web.Caching при использовании ASP.NET кэша на машинах без IIS.
Исправлена возможность выбора редактирования текста поля ComboBox с помощью мыши вниз+move.
Исправлена проблема с взаимодействием между управлением пользователем WPF и хостингом приложения WinForms при обработке ввода клавиатуры.
Исправлена проблема с объявлением экранным диктором/NVDA о расширении и свертывании ComboBox PropertyGrid.
Исправлена проблема с визуализацией «. » кнопки управления PropertyGrid в режиме HC, чтобы нарисовать фон кнопки и контрастные точки.
Исправлена утечка маркера во время создания приложения «Окно» в Приложениях WPF, которые проявляются для Per Monitor DPI V2 Awareness. Эта утечка может привести к посторонней GC. Сбор вызовов, которые могут повлиять на производительность в сценариях создания окон.
Исправлена регрессия, вызванная исправлением ошибки, включающая привязку с недвусмысленностью DataContext на пути связывания.
Дополнительная информация
Дополнительную информацию о .NET Framework 4.8 см. в статье Известные проблемы .NET Framework 4.8.
Эта версия .NET Framework работает параллельно с .NET Framework 3.5 SP1 и более ранними версиями, но она выполняет обновление на месте для .NET Framework 4, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1 и 4.7.2.
Параметры командной строки для этого обновления
Дополнительные сведения о различных параметрах командной строки, поддерживаемых этим обновлением, см. в разделе «Параметры командной строки» в руководстве по развертыванию .NET Framework для разработчиков.
Возможно, потребуется перезагрузить компьютер после установки этого обновления. Перед установкой обновления рекомендуется закрыть все приложения, использующие .NET Framework.
Microsoft .NET Framework 4.8 (автономный установщик) поддерживается следующими операционными системами:
Windows 10 версии 1809
Windows 10 версии 1803
Windows 10 версии 1709
Windows 10 версии 1703
Windows 10 версии 1607
Windows 7 с пакетом обновления 1 (SP1)
Windows Server 2019
Windows Server версия 1803
Windows Server, версия 1809
Windows Server 2016
Windows Server 2012 R2.
Windows Server 2012;
Windows Server 2008 R2 с пакетом обновления 1 (SP1)
990x.top
Простой компьютерный блог для души)
Microsoft .NET Framework NGEN — что это за служба? (mscorsvw.exe)
Приветствую друзья! Сегодня у нас на разбор попала служба Microsoft .NET Framework NGEN. Моя задача — максимально узнать зачем она, насколько важна, может ее вообще можно безопасно отключить? Будем разбираться!
Разбираемся
Microsoft .NET Framework NGEN — служба, работающая под процессом mscorsvw.exe. Теоретически может ускорять работу программ, для которых необходима среда .NET Framework.
Информации в интернете мало. То что относится к .NET Framework — это и так понятно. Однако упоминание в названии NGEN — скорее всего не просто так..
Вообще NGEN расшифровывается вроде как Native Image Generator, вот инфа с вики:
Если вы точно уверены, что Windows у вас исправна, то можно разрешить службе выполнить свою работу, для этого используйте команду:
%WinDir%\Microsoft.NET\Framework\v4.0.30319\ngen.exe update /force /queue
Если винда 64-бит добавьте в пути 64 к слову Framework. Пусть сделает то что ей нужно — грузить ПК может пару часов, если не остановится — делайте перезагрузку. Если остановится, и после этого снова иногда будет вызывать нагрузку — пробуйте исправить командой ниже либо отключайте ее вообще. Команду нашел на форуме — надеюсь работает.
У некоторых пользователей данная служба вызывала долгую загрузку винды, также тормоза были и после запуска. Тормоза могут быть связаны с сетью, происходит какой-то конфликт между службой и сетевыми процессами.. на форуме OSzone авторитетный юзер предложил выполнить команду в командой строке:
Тут также, если винда 64-битная — добавьте 64 к слову Framework.
Судя по тому, сколько юзеров посчитало сообщение полезным — есть вероятность что команда поможет и вам.
При проблемах со службой, а также вообще с Фраемворком — можно воспользоваться офф инструментом Microsoft .NET Framework Repair Tool. Правда исправит ли ошибки — гарантии нет, но все таки его предлагает сама компания Майкрософт, поэтому можно и попробовать… вот офф ссылка, внешний вид программы:
Реально, при проблемах — стоит попробовать эту прогу.
У одного чела не запускался фаервол. И в этом была виновата служба NGEN. Как видим — реально может создавать разные проблемы((
Еще вроде как имеет свои задания в планировщике по этому адресу:
Библиотека планировщика заданий > Microsoft > Windows > .NET Framework
То что обведено красной рамкой — непонятно, вроде как критически важное задание что ли.. Да, их можно отключить, возможно после — грузить ПК уже не будут. Чтобы быстро открыть планировщик — зажмите Win + R, напишите команду taskschd.msc > OK.
Тип запуска
На офф форуме Майкрософт говорится — лучше чтобы служба имела тип запуска вручную:
Чтобы изменить тип запуска — два раза нажмите по службе, будет окошко свойств, и там будет меню Тип запуска — выберите Вручную.
Быстро открыть список служб можно так: зажимаете Win + R, пишите команду services.msc и нажимаете ОК.
Хотя один юзер написал — служба однократно грузит ПК, проводит там какую-то работу, и после этого уже тормозов не будет. Но.. увы.. кажется у многих это происходит далеко не однократно((
Можно ли отключать?
В принципе, как я понимаю — служба не основная. Она вроде как нужна именно для ускорения работы некоторых программ. Во-вторых отключение — действие, которое можно всегда исправить.
Поэтому не вижу причин чтобы не попробовать отключить. Внимание! На всякий случай перед отключением можно создать точку восстановления:
- Зажимаете Win + R, пишите команду sysdm.cpl, далее нажимаете ОК.
- Появится окошко, активируйте вкладку Защита системы.
- Выбираете системный диск. Нажимаете Создать. Если кнопка создать неактивна — нажимаете настроить и включаете защиту системы. Нажали создать > пишите название, советую назвать например До отключения NGEN.
- После создания точки уже можно службу отключать, а также при необходимости провести еще некоторые эксперименты, в случае проблем — при помощи точки вернетесь в прошлое))
Теоретически если процесс mscorsvw.exe грузит ПК — то отключение службы тоже может помочь..
Нашел полезную инфу:
Что это значит? Что после отключения некоторые приложения, написанные на платформе .NET — могут работать медленнее. Ничего критически опасного здесь нет, поэтому можно и обойтись без службы, учитывая что она способна создавать тормоза..
Вывод
- Мы точно не смогли выяснить зачем нужна служба. Но предположительно — для ускорения работы программ, для которых нужна среда .NET Framework.
- Вероятно всего — можно отключить. При проблемах — включите обратно. Точка восстановления перед отключением не помешает.
Повышение производительности при запуске с помощью генератора NGen Improving startup performance with NGen
Только в EF6 и более поздних версиях. Функции, API и другие возможности, описанные на этой странице, появились в Entity Framework 6. EF6 Onwards Only — The features, APIs, etc. discussed in this page were introduced in Entity Framework 6. При использовании более ранней версии могут быть неприменимы некоторые или все сведения. If you are using an earlier version, some or all of the information does not apply.
.NET Framework поддерживает создание образов в машинном кодах для управляемых приложений и библиотек в качестве способа запуска приложений быстрее, а также в некоторых случаях использует меньше памяти. The .NET Framework supports the generation of native images for managed applications and libraries as a way to help applications start faster and also in some cases use less memory. Образы в машинном коде создаются путем преобразования сборок управляемого кода в файлы, содержащие машинные инструкции перед выполнением приложения, освобождая разработчика JIT-компилятору .NET (JIT), от необходимости создавать собственные инструкции во время выполнения приложения. Native images are created by translating managed code assemblies into files containing native machine instructions before the application is executed, relieving the .NET JIT (Just-In-Time) compiler from having to generate the native instructions at application runtime.
До версии 6 основные библиотеки среды выполнения EF были частью .NET Framework и образы в машинном кодах были автоматически созданы для них. Prior to version 6, the EF runtime’s core libraries were part of the .NET Framework and native images were generated automatically for them. Начиная с версии 6, вся среда выполнения EF была объединена в пакет NuGet EntityFramework. Starting with version 6 the whole EF runtime has been combined into the EntityFramework NuGet package. Образы в машинном коде должны быть созданы с помощью средства командной строки NGen.exe для получения аналогичных результатов. Native images have to now be generated using the NGen.exe command line tool to obtain similar results.
В ходе наблюдаемых наблюдений показано, что образы в машинном образах сборок среды выполнения EF могут вырезаться между 1 и 3 секундами времени запуска приложения. Empirical observations show that native images of the EF runtime assemblies can cut between 1 and 3 seconds of application startup time.
Использование NGen.exe How to use NGen.exe
Самой простой функцией NGen.exe является установка (то есть создание и сохранение на диске) машинных образов для сборки и всех ее прямых зависимостей. The most basic function of the NGen.exe tool is to “install” (that is, to create and persist to disk) native images for an assembly and all its direct dependencies. Вот как это можно сделать: Here is how you can achieve that:
Откройте окно командной строки с правами администратора. Open a Command Prompt window as an administrator.
Измените текущий рабочий каталог на расположение сборок, для которых требуется создать образы в машинном код: Change the current working directory to the location of the assemblies you want to generate native images for:
В зависимости от операционной системы и конфигурации приложения, возможно, потребуется создать образы в машинном коде для архитектуры 32 разрядов, 64 разрядной архитектуры или для обеих версий. Depending on your operating system and the application’s configuration you might need to generate native images for 32 bit architecture, 64 bit architecture or for both.
Для 32 разрядного запуска: For 32 bit run:
Для 64 разрядного запуска: For 64 bit run:
Очень распространенной ошибкой является создание образов в машинном код для неверной архитектуры. Generating native images for the wrong architecture is a very common mistake. Если вы сомневаетесь, вы можете просто создавать образы в машинном код для всех архитектур, применяемых к операционной системе, установленной на компьютере. When in doubt you can simply generate native images for all the architectures that apply to the operating system installed in the machine.
NGen.exe также поддерживает другие функции, такие как удаление и отображение установленных образов в машинном кодах, постановка в очередь создания нескольких образов и т. д. Дополнительные сведения об использовании см. в документации поNGen.exe. NGen.exe also supports other functions such as uninstalling and displaying the installed native images, queuing the generation of multiple images, etc. For more details of usage read the NGen.exe documentation.
Когда следует использовать NGen.exe When to use NGen.exe
Когда приходится решать, какие сборки должны создавать образы в машинном образах для в приложении, основанном на EF версии 6 или выше, следует рассмотреть следующие варианты. When it comes to decide which assemblies to generate native images for in an application based on EF version 6 or greater, you should consider the following options:
- Основная сборка среды выполнения EF, EntityFramework.dll: Типичное приложение на основе EF выполняет значительный объем кода из этой сборки при запуске или при первом доступе к базе данных. The main EF runtime assembly, EntityFramework.dll: A typical EF based application executes a significant amount of code from this assembly on startup or on its first access to the database. Следовательно, создание образов в машинном образах этой сборки приведет к наибольшему повышению производительности при запуске. Consequently, creating native images of this assembly will produce the biggest gains in startup performance.
- Любая сборка поставщика EF, используемая приложением: время запуска также может немного отличаться от создания собственных образов. Any EF provider assembly used by your application: Startup time can also benefit slightly from generating native images of these. Например, если приложение использует поставщик EF для SQL Server необходимо создать образ в машинном код для EntityFramework.SqlServer.dll. For example, if the application uses the EF provider for SQL Server you will want to generate a native image for EntityFramework.SqlServer.dll.
- Сборки приложения и другие зависимости. ДокументацияNGen.exe охватывает общие критерии выбора сборок для создания образов в машинном коде, а также влияние образов в машинном коде на безопасность, дополнительные параметры, например «жесткая привязка», такие сценарии, как использование образов в машинном коде в сценариях отладки и профилирования и т. д. Your application’s assemblies and other dependencies: The NGen.exe documentation covers general criteria for choosing which assemblies to generate native images for and the impact of native images on security, advanced options such as “hard binding”, scenarios such as using native images in debugging and profiling scenarios, etc.
Тщательно измерьте влияние использования образов в машинном коде на производительность при запуске и общую производительность приложения и сравните их с реальными требованиями. Make sure you carefully measure the impact of using native images on both the startup performance and the overall performance of your application and compare them against actual requirements. В то время как образы в машинном образах обычно помогают повысить производительность, а в некоторых случаях снижается использование памяти, не все сценарии будут иметь одинаковое преимущество. While native images will generally help improve startup up performance and in some cases reduce memory usage, not all scenarios will benefit equally. Например, при выполнении устойчивого состояния (то есть когда все методы, используемые приложением, были вызваны по крайней мере один раз) код, создаваемый JIT-компилятором, может обеспечить немного лучшую производительность, чем образы в машинном коде. For instance, on steady state execution (that is, once all the methods being used by the application have been invoked at least once) code generated by the JIT compiler can in fact yield slightly better performance than native images.
Использование NGen.exe на компьютере разработки Using NGen.exe in a development machine
Во время разработки JIT-компилятор .NET будет предоставлять оптимальный общий компромисс для кода, который часто изменяется. During development the .NET JIT compiler will offer the best overall tradeoff for code that is changing frequently. Создание образов в машинном образах для скомпилированных зависимостей, таких как сборки среды выполнения EF, может помочь ускорить разработку и тестирование, выполнив несколько секунд в начале каждого выполнения. Generating native images for compiled dependencies such as the EF runtime assemblies can help accelerate development and testing by cutting a few seconds out at the beginning of each execution.
Хорошим местом для поиска сборок среды выполнения EF является расположение пакета NuGet для решения. A good place to find the EF runtime assemblies is the NuGet package location for the solution. Например, для приложения, использующего EF 6.0.2 с SQL Server и нацеливанием на .NET 4,5 или более поздней версии, в окне командной строки можно ввести следующую команду (не забудьте открыть ее от имени администратора): For example, for an application using EF 6.0.2 with SQL Server and targeting .NET 4.5 or greater you can type the following in a Command Prompt window (remember to open it as an administrator):