Pull to refresh

Comments 133

Опять «оптимизаторы» на Хабре…

А потом приходят на компьютерные форумы с неочевидными и трудновоспроизводимыми багами в поисках помощи, отчего у них точки восстановления создаются очень медленно (из-за удаления «ScheduledDefrag»).

Ха. А вы наверно тот "старожил" с компьютерного форума, который денно и ночно отвечает на глупые вопросы "новобранцев" в IT сфере? Бросайте это дело!

Дед Слава и компьютерные мастера. Не в обиду!!! Шутка.

Ты что, ждите от него скрипт, как отключить "ненужные" службы. :D Ни пяди телеметрии!

Это какой-то позор, а не Хабр... Может, еще Defender удалим, а то тормозит систему?

Может, еще Defender удалим, а то тормозит систему?
Без иронии, а почему его не удалить, если у меня виртуалка для игр, в которой даже браузера нет? Мне, в целом, было бы интересно ободрать винду так, чтобы там осталось только win32 — то есть, как раз те компоненты, из-за которых люди ею пользуются.

Нужен ли антивирус квалифицированному пользователю?

Ещё момент. Если несколько сотен мегабайт оперативной памяти я могу простить, то задержки файловых операций ощутимо снижают производительность. Можно предложить внести некоторые папки в исключения. Но для меня это прямой эквивалент удалению антивируса.

А вот это реально аргумент. На работе, где Defender убрать нельзя, пришлось добавлять в исключения рабочие папки с проектами, иначе компиляция тормозит.

На домашнем компьютере никаким антивирусом не пользуюсь, т.к. считаю себя достаточно квалифицированным, чтобы самостоятельно разобраться с угрозами. Кроме того, иногда балуюсь экспериментами с файлами, которые «кушает» дефендер. Это не всегда вирусы — могут быть и кейгены, или даже пентест-утилиты, или даже android-эксплойты для рутования, несмотря на то, что они скомпилированы под ARM, антивирус их всё равно удаляет на x64-системе, ему важно показать свой KPI, мол смотрите, я тут не просто так сижу, я нашёл файл по сигнатурам. Не удивлюсь, что в будущем антивирусы начнут удалять слитые базы и исходники, типа той же утечки от Яндекса: мол, 100% вы не имеете права владеть этими файлами, поэтому нефиг.

Но, конечно, не настаиваю, что это единственно правильный путь, мой опыт не всем подходит.

По-моему странно отключать Time Synchronization, вряд ли это требует много ресурсов, а проблем через некоторое время может принести. Это первое что бросилось в глаза, наверняка вопросы будут и к отключению других служб.

Кварцевые часы системной платы компьютера достаточно точные. Не критично если за пол-года системное время уйдёт вперёд или отстанет на пару секунд. К тому же компьютер не всегда имеет доступ в Интернет и поэтому служба синхронизации времени также отключена.

А какие проблемы могут возникнуть из-за отключенной службы времени и удалении соответствующей задачи?

Наблюдал на старом пк, что время периодически сбивалось из-за почти разрядившейся батарейки, из-за этого сайты https не открывались совсем. Частный случай, конечно, но зачем самому себе проблемы создавать.

Дома никаких проблем не будет. А вот DC и различные СУБД рассинхронизацию времени не любят.

Даже дома будут. Сегодня мало кто использует компьютер автономно. Облачные файловые хранилища, OneDrive , DropBox и т.д. , аккаунты в соцсетях, в стриминговых и игровых платформах...

Поподробнее. Вот у меня отключена синхронизация времени с Интернетом, допустим, системное время "отстало" на 30 сек. Что из этого? Я не смогу пользоваться облачными хранилищами, не зайду на свой аккаунт в соцсети, не смогу смотреть фильмы и играть онлайн?

Зависит от того, чем на компьютере заниматься. У меня был случайно залочен NTP на домашнем роутере (забыл включить правило после добавления сетей), время разошлось, получил несколько трудно диагностируемых проблем с M365 (почта, OneDrive). А если на нём только отключением ненужных служб заданий планировщика заниматься - то, да. Можно и не заметить никаких проблем.

При чём тут настройки роутера к настройкам компьютера? Вы бы ещё бортовой компьютер автомобиля сюда в пример привели. Ну то ладно...

А какие проблемы были с М365? Вот конкретно прям объясните.

Ок, объясняю. Роутер --> Комп потерял точное время. Примерно это тут предлагается, как "оптимизация".
Последствия: глюки с синхронизацией в OneDrive, невозможность отправить почту.

Это как? Вот, допустим, часы на 1 мин отстали и что? Нажимаете отправить почту и не отправляется? Пишет: "сначала часы выставь секунда-в-секунду, а потом отправляй"?

Поясняю. В многих протоколах связи используется криптография в виде одноразового сеансового ключа. Ключ генерируется одновременно на клиенте и на сервере, чтобы исключить передачу по незашифрованному каналу. В формировании ключа используется время - это удобно, оно всегда есть, и нельзя просто записать траффик и просто воспроизвести reply attack.

Так вот - если время отличается - пару ключей построить нельзя. На скoлько секунд допускается рассинхронизация - зависит от реализации протокола.

Выводов не будет ;)

2FA через приложение-аутентификатор ломается. И вообще протоколы связи основанные на использовании одинакового времени у отправителя и получателя.

Синхронизация файлов в облачных хранилищах при совместной работе ухудшается ("раньше"/"позже" могут поменяться местами при одновременной работе нескольких человек).

Точность часов очень отличается на разных устройствах, где-то может уйти гораздо сильнее, чем у вас (а вы в статье предлагаете решение для ВСЕХ, а не только для себя).

Ещё на некоторых машинах часы периодически могут вообще сбиваться и синхронизация исправляет этот глюк. А между тем уход часов на несколько часов уже ломает HTTPS и делает невозможным доступ в современный Интернет.

При этом синхронизация времени это очень малозатратный процесс, так что вообще не понятно что можно выиграть его отключением (даже если ваш компьютер не всегда онлайн, неуспешная синхронизация не запустит бесконечный цикл, просто попробует в следующий раз). То же отключение дефрагментации хоть и тоже вредный совет, но его эффект хотя бы можно будет заметить по уменьшению обращений к диску в фоне.

Есть неоднозначные советы дающие реальный прирост производительности. Например, отключение антивируса, отключение защиты от spectre/meltdown. Есть советы дающие сначала прирост производительности, но её снижение в будущем. Например, отключение дефрагментации. Но отключение синхронизации времени не даёт никаких измеряемых профитов.

Ок, уберите из списка SynchronizeTime и ScheduledDefrag. По другим позициям какое мнение?

Есть советы дающие сначала прирост производительности, но её снижение в будущем. Например, отключение дефрагментации.
Только в случае использования HDD в ПК (и при отсутствии стороннего дефрагментатора в это время).

У SSD тоже скорость линейного чтения/записи выше, чем рандомного (по причине того, что настоящий размер сектора легко может быть 128 кб и больше, а контроллер лишь проецирует 512-байтные сектора на них). Так что технически дефрагментация тоже может быть полезна. Но разница будет гораздо меньше, чем у HDD.

Маловероятно, что контроллер маппит 128 кб блоки адресов LBA на физические блоки. Скорее, большой физический блок может включать куски от разных LBA. Дефрагментация может дать положительный эффект, из-за того что блок адресов, записанных подряд, попадёт в один физический блок. Но контроллер в фоне должен сам заниматься переписыванием (для улучения равномерности износа) и дефрагментацией, он это сделает лучше, чем ОС.
Дефрагментация только увеличит износ, но выигрыш скорости чтения будет на уровне погрешности.
И ещё: контроллер сразу записывает данные так, чтобы износ ячеек происходил наиболее равномерно (кроме того удалённые данные не удаляются физически, а только помечаются ячейки с этими данными, как пустые, емнип).
Trim как раз оптимизирует время доступа для перезаписи.
И ещё: контроллер сразу записывает данные так, чтобы износ ячеек происходил наиболее равномерно
Это не всегда возможно. Например, 80% диска заполнено данными, которые только читаются (например, Windows и Program Files). А в оставшиеся 20% интенсивно пишутся/удаляются новые данные, например TEMP. В этом случае, контроллеру ничего не остаётся делать, кроме как «давно записанные данные» передвинуть на другое место, чтобы малоизношенные ячейки под ними тоже стали расходовать ресурс на TEMP.
Так что технически дефрагментация тоже может быть полезна.
Если требуется убить чипы памяти побыстрее, то таки да — полезна (поэтому в винде, начиная с 7-ки система дефрагментацию SSD сама отключает).
У SSD нет необходимости перемещать считывающую головку, у которой есть инерция и относительно низкая скорость перемещения из-за механической природы считывающего механизма HDD. Поэтому дефрагментация не имеет смысла, т.к. доступ к ячейкам происходит со скоростью работы используемого контроллера.

Дефрагментация не требуется, но дефрагментатор как раз посылает команду trim и если убрать его из планировщика, то trim не будет и будет вся надежда на контроллер ssd, а если он у вас дешевое говно, то в итоге он умрет еще быстрее. Поэтому дефрагментатор в винде и остается работать. Там еще по списку пройтись и много глупостей отключено без понимание работы системы в целом и все для мнимой производительности. Надо делать систему под себя , эмбенденд в руки вместе с iot.

Как это trim не будет, если винда после удаления файла сразу посылает trim на все сектора, которые он занимал? Дефрагментатор может потримить пространство, которое отмечено как свободное, но это «на всякий случай».

Если отправлять TRIM после каждого удаления блока , то это создаст так много ненужного трафика ввода-вывода и накладных расходов , что смысла в этом равно почти нулю.

Если не отправлять trim после каждого удаления, то как вообще жить с этим? Например, у меня SSD 1TB. Я его полностью записал, а потом все файлы удалил. Контроллер не знает, что файлы удалены, он думает, что свободного места нет. И когда я начну писать файлы заново, он срочно будет стирать те сектора, в которые сейчас пишем, и снова в них писать. Ну, или пользоваться небольшим резервом свободного места, невидимого для хоста.
Если отправлять TRIM после каждого удаления блока
У драйвера FS нет операции «удаления блока», есть удаление файла.
создаст так много ненужного трафика ввода-вывода и накладных расходов
Да откуда? ATA-команда TRIM работает с диапазонами секторов. Контролер поместит эти сектора в очередь на очистку и в фоне будет чистить.

Вы явно не удаляли много файлов. Сам драйвер чипсета конечно в определенный момент посылает команды , но не постоянно и это видно при различных тестах SSD. В планировщики оставили в виде дефрага дополнительный чек для TRIM.

Вы явно не удаляли много файлов
Что вы этим хотите сказать? Что по вашим наблюдениям после массовых удалений на заполненном диске снижается производительность записи? Но это сходится с моей версией, ведь даже после отправки TRIM реальное форматирование блоков выполняется в фоне некоторое время.
в определенный момент посылает команды, но не постоянно и это видно при различных тестах SSD
Например, какие тесты нужно выполнить, чтобы это увидеть?

Как много домашних компьютеров не имеет, хотя бы периодического, доступа в интернет?
Точность RTC очень сильно разнится. Есть материнки, у которых очень точно часы идут, но мне так же попадались компьютеры, у которых за неделю часы могли и на пару минут уползти.
Последствия всего этого: проблемы с AD, с TLS сертификатами, с невозможностью или проблемам залогиниться на некоторые сайты, синхронизация файлов с облачными хранилищами...
В общем, на мой взгляд, возможный ворох не всегда очевидных проблем сильно перевешивает "нагрузку" от синхронизации времени.

Ни разу не сталкивался с описанными проблемами, при том что синхронизация отключена уже лет 12. И да, часы иногда "уходили" даже на пару минут.

Ну да, "у меня такая же нога, но не болит".
Когда поимеете проблемы, будете в десять раз дольше разбираться, из-за чего это. Я же вам привёл несколько возможных проблем. Теперь вы мне скажите, сколько процессорного времени, или памяти, или за что вы там боролись, вы выиграли отключив синхронизацию времени?

Давайте я попробую воспроизвести описанные вами проблемы? Итак, сейчас вручную переставлю время на своём ПК на пару минут. Дальше что? На каком сайте я не смогу авторизироваться? Что я не смогу синхронизировать?

TOTP у вас точно сломается. Он меняет ключ раз в 30 секунд и живёт ключ, на сколько я помню, полторы минуты (30 секунд до, 30 секунд во время и 30 секунд после).

Хорошо, убедил! SynchronizeTime - вычёркиваем из списка. Что ещё в нём лишнее?

Я лично ТОТР-ом не пользуюсь и не встречал кто пользуется. Может в крупных компаниях это нужно, но в статье была пометка, что мой список для "домашнего" компьютера.

А что у вас служит вторым фактором для входа в сервисы? Ждёте смс? Или письмо на почту? Или вы работаете с критическими сервисами без 2fa? (Банк, госуслуги, основная почта, доступ к админке хостинга и т.д.).

Ок, хостинг с домашнего компа не нужен, но вот представим вполне "домашнюю" ситуацию: отключилось питание на час. В старом компе у бабушки севшая батарейка CMOS. После включения комп стартует с временем по умолчанию (01.01.2015, например). И всё, сайты не открываются и даже по удалёнке я к ней не подключусь. Зато сэкономили целое "ничего" на синхронизации этими "оптимизациями".

Или приходишь к человеку, у него что-то не работает. Лезешь в журнал первым делом, а там пусто, потому что сборка "ZVERskii optimizator ot boga egition"

Случай из практики менее месяца назад. Обратился человек, не работает печать. Оказалось, что комп слабый и какой-то надмозг отключил всё, вместе со спулером. Ну а что, принтера у человека нет, значит никогда и не будет!

Вместе вывода: ненужных сервисов не бывает. Бывают ненужные ИМЕННО ВАМ, именно в этот момент времени.

А что у вас служит вторым фактором для входа в сервисы? Ждёте смс? Или письмо на почту? Или вы работаете с критическими сервисами без 2fa? (Банк, госуслуги, основная почта, доступ к админке хостинга и т.д.).

Да, СМС, кое-где было письмо на почту - проблем не было.

Вопрос по SynchronizeTime закроем. ScheduledDefrag - тут тоже многие защищают, хорошо.

Давайте не будем в общем и целом (истории из жизни про принтеры), а конкретно по скрипту и удаляемым задачам в нём. Что ещё вас в нём смущает?

То и смущает, что нет исчерпывающего списка изменений, которые сделает в системе ваш скрипт.

Спулера у вас, например, нет. Но есть выключение облачной синхронизации игровых сейвов XBOX Live между консолями и ПК. Будет ситуация, аналогичная ситуации с принтером: что-то отвалилось (синхронизация сейвов), но вы нигде об этом не предупредили.

Если бы вы на каждую задачу написали подробно, что перестанет работать, если её отключить, было бы полезно. А сейчас — закрываем глаза, нажимаем ENTER и молимся, чтобы ничего не отвалилось из того, что у нас используется из того, что вы посчитали вообще ненужным.

Меню в ресторане не призывает вас всё заказать и съесть. Вы выбираете то что хотите. Так и с этим скриптом.

Меню хотя бы по пунктам подписано. Если проводить аналогии, вы даёте 20 баночек с едой без подписей и говорите «вас же никто не заставляет есть всё, выбирайте что хотите». При этом, если самостоятельно ковыряться в Task Scheduler, у задач можно хотя бы прочитать описание, посмотреть, какими триггерами они запускаются, как часто и т.п. В вашем скрипте эта информация отрезана.

Кстати, возвращаясь к XblGameSaveTask. На моей системе ни разу не запускался, он там выключен, но не таск целиком, а триггер. То есть, совершенно безобидная запись, которая ресурсы ни разу не потратила. Включится, вероятно, когда я куплю подписку, и фича станет полезной. Если же его под корень снести, то останемся без фичи.

Да. Я предлагаю вам вместе со мной попробовать данный эксперимент по удалению данного набора задач. Это такой бета-тест. Чем больше пользователей попробует и напишет о результатах - тем лучше.

Начиная с 8.1 и в 10 есть такие задачи, которые не имеют триггера, но при этом каким-то образом запускались - видно по полю "Время прошлого запуска". Разработчики MS хитры и коварны.

Вот это уже интереснее. Тут хотя бы явно написано, что это тест, и отвалится может что угодно. Это честнее, по крайней мере. Но тогда заготовок выглядит слишком самоуверенным. Надо было писать: "возможно, Список ненужных задач в Планировщике заданий Windows"

Вы, видимо, так и не поняли, какую мысль вам тут пытаются донести.
Дело не в конкретной службе или задании планировщика, дело в том, что вы не дали никакого описания, что конкретно вы делаете, не описали области применимости, не рассказали, а какой, хотя бы примерно, профит от этих изменений.

Да, вы проделали довольно большую работу, объяснили для себя предназначение того или иного задания, прикинули на свой паттерн использования "домашнего" компьютера и вывалили результат сюда.
При этом, результат в самом плохом варианте. Вы даже для себя не оставили комментариев, а что это и зачем. Т.е. есть все шансы, что через месяц-полгода-год вы сами не вспомните, а что это за задания, и за что они отвечают.
Такой результат можно вывалить в своём блоге, но Хабр это не личный блог. Здесь от статей ожидают гораздо более высокий уровень. Т.е. если вы что-то предлагаете делать, то должна быть мотивация, вариант решения, и область применимости этого решения. Ту же синхронизацию времени например можно спокойно выключать, если у вас машина не имеет доступа к NTP серверам и/или синхронизирует время другими методами. В других же случаях профит от этого отключения стремится к нулю, а вот возможные проблемы могут вылезти совершенно с неочевидных сторон. Для домашнего компьютера это может быть и банальное опоздание на электричку, потому что часы на компьютере отстают на 5 минут.
Но ещё раз повторюсь, дело не только и не столько в синхронизации времени. Синхронизация времени это просто то, что понимают из вашего списка большинство, и большинство знает, к чему такое отключение может привести, и какой выигрыш можно получить от отключения. Аналогично с дефрагментацией.
И вот эти два задания полностью дискредитируют весь ваш список, т.к. если вы вот так просто и безапелляционно отключаете эти две вещи, то и остальное всё надо перепроверять за вами, а такая перепроверка приведёт к тому, что придётся проделать туже работу, что проделали и вы. И польза от этой статьи, в результате, стремится к нулю.

Я в IT не специалист - другая сфера деятельности (медицина), но для саморазвития вопрос: в виртуалке обязательно ли синхронизацию времени включать и зачем - синхронизации на физической машине не хватает?

Зависит от гипервизора и гостевой системы.
Например, для KVM в Линуксе есть драйвер для гостевой системы ptp_kvm, он позволяет синхронизировать время с часами гипервизора, но для его работы его необходимо загрузить, а так же установить демон синхронизации, который сможет получать время через этот драйвер.
Вот тут: https://klink0v.livejournal.com/600660.html
мой коллега описывал настройку.
Но с этим драйвером мы в результате поимели кучу проблем. В какой-то момент он просто сломался и перестал работать. В логи сыпалось постоянно какое-то непонятное сообщение ядра, синхронизация не работала. При этом, видимо из-за особенностей работы KVM во всех виртуалках, где поломалась синхронизация, время случайным образом стало разъезжаться. Причём разъезжалось скачками по 10-30 секунд. Когда мы заметили проблему, время на некоторых машинах разъехалось уже на пару минут.
Соответственно, это ответ на вопрос: "А нужно ли синхронизировать время в виртуалках?"
У нас на фирме обязательным шагом для настройки любого оборудования или сервера присутствует настройка синхронизации времени. Даже если это не какая-нибудь база данных чувствительная даже секундам разбега. Банально для того, чтобы логи сопоставлять можно было.

А если физическая машина под Windows с VirtualBox , имеет смысл в гостевой включать синхронизацию времени?

Честно говоря, не знаю, есть ли у ВиртуалБокса встроенный механизм синхронизации времени гостя.
Лично я бы включил. Я уже обжёгся сильно на этом. Плюс, с точки зрения нагрузки, синхронизацию времени вряд ли получится заметить.

А так, весь вопрос, для чего вы эту виртуалку используете. Если изредка запускаете на пару часов, чтобы, условно, прошить смартфон, то на часы можно забить. Во время запуска оно и так совпадает со временем хоста, а за пару часов разъехаться сильно не успеет, чтобы это могло повлиять на "прошивку смартфона".

Благодарю за исчерпывающий ответ!

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

Кварцевые часы системной платы компьютера достаточно тоточныеЗ

Звучит как материал для статьи "100 заблуждений программистов о времени"

Не всегда мне удавалось найти однозначный ответ на вопрос: «стоит удалять данную задачу или нет?».

И вы в своём посте этого тоже не написали. А стоило бы, без этого пост воспринимается как очередной вредный совет

Не написал что? Задачи по которым не нашлось никакой информации? Не тот формат, это же статья, а не вопросник. Вопросы задают на форумах или соответствующих площадках.

У вас здесь нет статьи. Вы просто вбросили какой-то скрипт, который отключает непонятно что и непонятно зачем, и предлагаете нам разобраться в нём самостоятельно.

А упоминание ScheduledDefrag в нём намекает на то, что скрипт вообще стоит считать вредоносным

Я сожалею, что для вас непонятно что и зачем "отключает" (удаляет!) данный скрипт. Я разрешаю вам не разбираться в нём и идти отдыхать. Только не выключайте компьютер - ждите дефрагментацию в 3 часа ночи.

Т.е. вы сами рассказываете, что потратили кучу времени, чтобы выяснить, что это за задачи в планировщике, а теперь кидаете упрёки другим людям, что они не проделали туже самую работу?
Тогда зачем нужна ваша статья, если информация из неё очевидна всем?
А если не очевидна, и вы сами говорите, что есть "спорные" задачи, то почему бы не написать краткое и понятное описание, что это, и по какой причине решили удалить?
Я уж молчу про то, что вы удаляете задачи, а не отключаете. Вкупе с выше сказанным, этот скрипт больше вредит, чем делает что-то полезное, т.к. простого решения вернуть какую-либо задачу уже не будет.

Я написал эту статью для людей, которые вовлечены в решение подобной задачи прямо сейчас или недавно разбирались с этим вопросом. Это не статья из найчно-развлекательного журнала для "домохозяек". Статья не для широких масс.

Моя аудитория - узконаправленные специалисты из данной отрасли. Я ещё раз сожалею, что моя статья вас не развлекла, не читайте больше такое.

Раз вы специалист, то должны знать вот об этом:
https://learn.microsoft.com/ru-ru/windows/security/threat-protection/security-policy-settings/maximum-tolerance-for-computer-clock-synchronization

Или вот о таком, правда, это больше про Линукс:
https://coderlessons.com/articles/java/sinkhronizatsiia-chasov-v-klastere-kassandra-pt-1-problema

Но я думаю, вы специалист, и с лёгкостью поведаете об аналогичных проблемах в мире Windows.

Ещё пример TOTP:
https://habr.com/ru/post/534064/

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

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

Ща пойду линуксоидов учить как выполнять тонкую настройку системы. Ой, я правда сам на винде сижу, но то не важно...

Про остальные задачи я ничего не знаю, вы никак не описали, что это, а заниматься поиском мне лень, потому что с Windows практически не сталкиваюсь,

Т.е. с терминами Active Directory или Kerberos вы не знакомы?

выключать его имеет смысл только если у вас все накопители твердотельные

Ни в коем случае, ScheduledDefrag запускает TRIM на SSD

О как! Спасибо, буду знать. Совершенно неочевидные для меня последствия.

Ну по идее, TRIM должен выполняться при удалении файла.
Тримить уже свободное пространство нужно, если в драйвере FS есть ошибки.

Не знаю как принято в винде, но многие линукс-дистрибутивы почему-то не рекомендуют так делать и вместо этого имеют свой местный аналог ScheduledDefrag под названием fstrim.timer

В линуксе — никакое. В винде дефрагментация и TRIM делаются через один и тот же defrag.exe

Зачем в винде делать fstrim, если разделы монтируются с опцией discard (в linux-терминологии).

Кстати, фирменные утилиты производителей SSD (Samsung Magician, или Intel SSD Toolbox) умеют делать fstrim. Спрашивается, зачем делать аж целую утилиту, если в винде оно якобы регулярно выполняется из шедулера?

Может и незачем, не знаю. Тоже думаете, что в майкрософте работают дураки, раз добавили "лишний" TRIM в планировщике заданий?

Я скорее поверю, что задача стартует, видит SSD и ничего не делает. А периодически запускается на случай, если вдруг в системе появится HDD.

Полистал «Просмотр событий» на одном из компьютеров — там есть такие записи примерно раз в месяц:


Модуль оптимизации дисков успешно завершил повторная оптимизация на Windows10 (C:)

Аналогичные записи про дефрагментацию HDD появляются раз в неделю. Видимо, винда всё-таки выполняет TRIM, если он не выполнялся дольше месяца?

Нет Просто каждую неделю выполняется принудительно trim. Драйвер ФС не сразу делает trim файлам которые были удалены. В системе может быть storage space с котором вообще все сложно , он может быть гибридным и надо читать документацию как оно все под капотом . Возможно есть другие кейсы почему надо было сделать именно так. (RAID и другая периферия)

Можно просто написать в гугле «are windows send TRIM immediately after deleting file» и почитать первые несколько ссылок. Все они утверждают, что Windows отправляет TRIM сразу при удалении файла.

TRIM Будет вызывается автоматически после удаления файла, если файл был удален с использованием API удаления файлов операционной системы, таких как DeleteFile или SHFileOperation. Но, это не всегда так, а точнее это много когда не так. Так же , может быть ситуация, когда человек удаляет файлы, потом записывает , что то, потом еще удаляет и еще что то записывает и получает сильную фрагментацию , что можно увидеть на разных тестах производительности SSD, уж не поленитесь найти, там же есть графики отработки TRIM и восстановление полной скорости работы SSD. Еще момент, что сильно все зависит от самого контроллера SSD, от его прошивки и его внутреннего сборщика мусора + размера кеша и как он с ним работает. Ну и да же выполнение trim может быть отложено самой системой. Например, если большой объем данных был удален за короткий промежуток времени, операционная система может отложить TRIM на некоторое время, чтобы избежать избыточной нагрузки на SSD. https://www.howtogeek.com/257196/how-to-check-if-trim-is-enabled-for-your-ssd-and-enable-it-if-it-isnt/ вот вам как пример : On Windows 8 and 10, Windows automatically optimizes solid-state drives on a schedule by running the “retrim” operation. This is necessary because, if many TRIM requests are sent to a drive at once, the requests may build up in a queue and then be discarded. Windows regularly performs “retrim” optimizations that ensure all the TRIM requests sent to a drive are in fact processed. You can read more about this on Microsoft employee Scott Hanselman’s blog. Увы искать документацию в microsoft мне тупо лень, если вам так хочется дальше ковырять и проверять мои слова, можете топать в раздел по IoT , hardware и там уже искать по API , trim test итд итп Когда то я там это все видел и читал. UPD. Да еще можно добавить, что перезапись файла - это не удаление, но освобождение блоков , если файл сокращается, тогда вызова trim у вас тупо не будет.

человек удаляет файлы, потом записывает, что то, потом еще удаляет и еще что то записывает и получает сильную фрагментацию
Фрагментация разумеется влияет на SSD, надо считать больше блоков, чтобы собрать файл, но сейчас не про неё.
там же есть графики отработки TRIM и восстановление полной скорости работы SSD
Да, я знаю, после массового удаления/записи скорость работы проседает, но причин этому множество. Самая основная — это кончается SLC кеш и приходится писать сразу на TLC. Также эти эксперименты показывают, что скорость восстанавливается после некоторого времени простоя, и для восстановления не требуется запускать «Оптимизацию дисков». Что говорит о том, что TRIM-ы уже отправлены, и нужно только подождать, когда диск их выполнит.
“retrim” operation. This is necessary because, if many TRIM requests are sent to a drive at once, the requests may build up in a queue and then be discarded
Этого я совсем не понимаю. Типа, при работе с файлами диск был перегружен и отбросил часть TRIM-команд, а при массовой оптимизации, когда система спамит его TRIM-командами вообще на все свободные области, его очередь внезапно не перегружается. Возможно, Windows в этом случае постепенно скармливает свободные области. Но выглядит как баг одного контроллера и костыли, чтобы обойти этот баг.
можно добавить, что перезапись файла — это не удаление, но освобождение блоков, если файл сокращается, тогда вызова trim у вас тупо не будет
Звучит как баг драйвера FS. Нет ни одной причины не триммить неиспользуемую область при изменении размера файла в сторону уменьшения. Нагуглить подтверждение я не смог.

Выше не баг контроллера , а скорее всего совокупность многих факторов как работает система в целом с trim. Кстати вызвал IDA для del и увидел, что используется DeleteFile для удаления, так что я выше был не прав про del. Скорее всего действительно в какой то момент буфер (такой есть в API) просто откидывается. ТЕ в итого получается так, что команда конечно может вызываться , но не факт, что дойдет до контроллера . (мы говорим про обычную ситуацию).

Афтар держи ! ))
@echo off
rem schtasks /change /disable /tn "\Microsoft\Windows\TextServicesFramework\MsCtfMonitor"

schtasks /delete /tn "\Microsoft\Windows\.NET Framework\.NET Framework NGEN v4.0.30319" /f
schtasks /delete /tn "\Microsoft\Windows\.NET Framework\.NET Framework NGEN v4.0.30319 64" /f
schtasks /delete /tn "\Microsoft\Windows\.NET Framework\.NET Framework NGEN v4.0.30319 64 Critical" /f
schtasks /delete /tn "\Microsoft\Windows\.NET Framework\.NET Framework NGEN v4.0.30319 Critical" /f

schtasks /delete /tn "\Microsoft\Windows\Active Directory Rights Management Services Client\AD RMS Rights Policy Template Management (Automated)" /f
schtasks /delete /tn "\Microsoft\Windows\Active Directory Rights Management Services Client\AD RMS Rights Policy Template Management (Manual)" /f

schtasks /delete /tn "\Microsoft\Windows\AppID\EDP Policy Manager" /f
schtasks /delete /tn "\Microsoft\Windows\AppID\PolicyConverter" /f
schtasks /delete /tn "\Microsoft\Windows\AppID\SmartScreenSpecific" /f
schtasks /delete /tn "\Microsoft\Windows\AppID\VerifiedPublisherCertStoreCheck" /f

schtasks /delete /tn "\Microsoft\Windows\Application Experience\StartupAppTask" /f

schtasks /delete /tn "\Microsoft\Windows\ApplicationData\appuriverifierdaily" /f
schtasks /delete /tn "\Microsoft\Windows\ApplicationData\appuriverifierinstall" /f
schtasks /delete /tn "\Microsoft\Windows\ApplicationData\CleanupTemporaryState" /f
schtasks /delete /tn "\Microsoft\Windows\ApplicationData\DsSvcCleanup" /f

schtasks /delete /tn "\Microsoft\Windows\AppxDeploymentClient\Pre-staged app cleanup" /f

schtasks /delete /tn "\Microsoft\Windows\Autochk\Proxy" /f

schtasks /delete /tn "\Microsoft\Windows\BitLocker\BitLocker Encrypt All Drives" /f
schtasks /delete /tn "\Microsoft\Windows\BitLocker\BitLocker MDM policy Refresh" /f

schtasks /delete /tn "\Microsoft\Windows\BrokerInfrastructure\BgTaskRegistrationMaintenanceTask" /f

schtasks /delete /tn "\Microsoft\Windows\Clip\License Validation" /f

schtasks /delete /tn "\Microsoft\Windows\CloudExperienceHost\CreateObjectTask" /f

schtasks /delete /tn "\Microsoft\Windows\Customer Experience Improvement Program\Consolidator" /f
schtasks /delete /tn "\Microsoft\Windows\Customer Experience Improvement Program\KernelCeipTask" /f
schtasks /delete /tn "\Microsoft\Windows\Customer Experience Improvement Program\UsbCeip" /f

schtasks /delete /tn "\Microsoft\Windows\Device Information\Device" /f

schtasks /delete /tn "\Microsoft\Windows\DeviceDirectoryClient\HandleCommand" /f
schtasks /delete /tn "\Microsoft\Windows\DeviceDirectoryClient\HandleWnsCommand" /f
schtasks /delete /tn "\Microsoft\Windows\DeviceDirectoryClient\IntegrityCheck" /f
schtasks /delete /tn "\Microsoft\Windows\DeviceDirectoryClient\LocateCommandUserSession" /f
schtasks /delete /tn "\Microsoft\Windows\DeviceDirectoryClient\RegisterDeviceAccountChange" /f
schtasks /delete /tn "\Microsoft\Windows\DeviceDirectoryClient\RegisterDeviceLocationRightsChange" /f
schtasks /delete /tn "\Microsoft\Windows\DeviceDirectoryClient\RegisterDevicePeriodic24" /f
schtasks /delete /tn "\Microsoft\Windows\DeviceDirectoryClient\RegisterDevicePolicyChange" /f
schtasks /delete /tn "\Microsoft\Windows\DeviceDirectoryClient\RegisterDeviceProtectionStateChanged" /f
schtasks /delete /tn "\Microsoft\Windows\DeviceDirectoryClient\RegisterDeviceSettingChange" /f
schtasks /delete /tn "\Microsoft\Windows\DeviceDirectoryClient\RegisterUserDevice" /f

schtasks /delete /tn "\Microsoft\Windows\Diagnosis\RecommendedTroubleshootingScanner" /f
schtasks /delete /tn "\Microsoft\Windows\Diagnosis\Scheduled" /f

schtasks /delete /tn "\Microsoft\Windows\ErrorDetails\EnableErrorDetailsUpdate" /f
schtasks /delete /tn "\Microsoft\Windows\ErrorDetails\ErrorDetailsUpdate" /f

schtasks /delete /tn "\Microsoft\Windows\DirectX\DirectXDatabaseUpdater" /f
schtasks /delete /tn "\Microsoft\Windows\DirectX\DXGIAdapterCache" /f

schtasks /delete /tn "\Microsoft\Windows\Defrag\ScheduledDefrag" /f
schtasks /delete /tn "\Microsoft\Windows\DiskCleanup\SilentCleanup" /f

schtasks /delete /tn "\Microsoft\Windows\DiskDiagnostic\Microsoft-Windows-DiskDiagnosticDataCollector" /f
schtasks /delete /tn "\Microsoft\Windows\DiskDiagnostic\Microsoft-Windows-DiskDiagnosticResolver" /f

schtasks /delete /tn "\Microsoft\Windows\DiskFootprint\Diagnostics" /f
schtasks /delete /tn "\Microsoft\Windows\DiskFootprint\StorageSense" /f

schtasks /delete /tn "\Microsoft\Windows\DUSM\dusmtask" /f


schtasks /delete /tn "\Microsoft\Windows\EDP\EDP App Launch Task" /f
schtasks /delete /tn "\Microsoft\Windows\EDP\EDP Auth Task" /f
schtasks /delete /tn "\Microsoft\Windows\EDP\EDP Inaccessible Credentials Task" /f
schtasks /delete /tn "\Microsoft\Windows\EDP\StorageCardEncryption Task" /f

schtasks /delete /tn "\Microsoft\Windows\ExploitGuard\ExploitGuard MDM policy Refresh" /f

schtasks /delete /tn "\Microsoft\Windows\Feedback\Siuf\DmClient" /f
schtasks /delete /tn "\Microsoft\Windows\Feedback\Siuf\DmClientOnScenarioDownload" /f

schtasks /delete /tn "\Microsoft\Windows\FileHistory\File History (maintenance mode)" /f

schtasks /delete /tn "\Microsoft\Windows\Flighting\FeatureConfig\ReconcileFeatures" /f
schtasks /delete /tn "\Microsoft\Windows\Flighting\OneSettings\RefreshCache" /f

schtasks /delete /tn "\Microsoft\Windows\HelloFace\FODCleanupTask" /f

schtasks /delete /tn "\Microsoft\Windows\InstallService\ScanForUpdates" /f
schtasks /delete /tn "\Microsoft\Windows\InstallService\ScanForUpdatesAsUser" /f
schtasks /delete /tn "\Microsoft\Windows\InstallService\SmartRetry" /f
schtasks /delete /tn "\Microsoft\Windows\InstallService\WakeUpAndContinueUpdates" /f
schtasks /delete /tn "\Microsoft\Windows\InstallService\WakeUpAndScanForUpdates" /f


schtasks /delete /tn "\Microsoft\Windows\LanguageComponentsInstaller\Installation" /f
schtasks /delete /tn "\Microsoft\Windows\LanguageComponentsInstaller\ReconcileLanguageResources" /f
schtasks /delete /tn "\Microsoft\Windows\LanguageComponentsInstaller\Uninstallation" /f

schtasks /delete /tn "\Microsoft\Windows\License Manager\TempSignedLicenseExchange" /f

schtasks /delete /tn "\Microsoft\Windows\Location\Notifications" /f
schtasks /delete /tn "\Microsoft\Windows\Location\WindowsActionDialog" /f

schtasks /delete /tn "\Microsoft\Windows\Maintenance\WinSAT" /f

schtasks /delete /tn "\Microsoft\Windows\Management\Provisioning\Cellular" /f
schtasks /delete /tn "\Microsoft\Windows\Management\Provisioning\Logon" /f

schtasks /delete /tn "\Microsoft\Windows\Maps\MapsToastTask" /f
schtasks /delete /tn "\Microsoft\Windows\Maps\MapsUpdateTask" /f

schtasks /delete /tn "\Microsoft\Windows\MemoryDiagnostic\ProcessMemoryDiagnosticEvents" /f
schtasks /delete /tn "\Microsoft\Windows\MemoryDiagnostic\RunFullMemoryDiagnostic" /f

schtasks /delete /tn "\Microsoft\Windows\Mobile Broadband Accounts\MNO Metadata Parser" /f

schtasks /delete /tn "\Microsoft\Windows\MUI\LPRemove" /f

schtasks /change /disable /tn "\Microsoft\Windows\Multimedia\SystemSoundsService"

schtasks /delete /tn "\Microsoft\Windows\NetTrace\GatherNetworkInfo" /f

schtasks /delete /tn "\Microsoft\Windows\NlaSvc\WiFiTask" /f

schtasks /delete /tn "\Microsoft\Windows\PI\Secure-Boot-Update" /f
schtasks /delete /tn "\Microsoft\Windows\PI\Sqm-Tasks" /f

schtasks /delete /tn "\Microsoft\Windows\Power Efficiency Diagnostics\AnalyzeSystem" /f

schtasks /delete /tn "\Microsoft\Windows\Printing\EduPrintProv" /f

schtasks /delete /tn "\Microsoft\Windows\PushToInstall\LoginCheck" /f
schtasks /delete /tn "\Microsoft\Windows\PushToInstall\Registration" /f

schtasks /delete /tn "\Microsoft\Windows\Ras\MobilityManager" /f

schtasks /delete /tn "\Microsoft\Windows\RecoveryEnvironment\VerifyWinRE" /f

schtasks /delete /tn "\Microsoft\Windows\Registry\RegIdleBackup" /f

schtasks /delete /tn "\Microsoft\Windows\RemoteAssistance\RemoteAssistanceTask" /f

schtasks /delete /tn "\Microsoft\Windows\RetailDemo\CleanupOfflineContent" /f

schtasks /delete /tn "\Microsoft\Windows\Servicing\StartComponentCleanup" /f

schtasks /delete /tn "\Microsoft\Windows\SettingSync\BackgroundUploadTask" /f
schtasks /delete /tn "\Microsoft\Windows\SettingSync\NetworkStateChangeTask" /f

schtasks /delete /tn "\Microsoft\Windows\Setup\SetupCleanupTask" /f

schtasks /delete /tn "\Microsoft\Windows\SharedPC\Account Cleanup" /f

schtasks /delete /tn "\Microsoft\Windows\Shell\FamilySafetyMonitor" /f
schtasks /delete /tn "\Microsoft\Windows\Shell\FamilySafetyRefreshTask" /f

schtasks /delete /tn "\Microsoft\Windows\SMB\UninstallSMB1ClientTask" /f
schtasks /delete /tn "\Microsoft\Windows\SMB\UninstallSMB1ServerTask" /f

schtasks /delete /tn "\Microsoft\Windows\SoftwareProtectionPlatform\SvcRestartTask" /f
schtasks /delete /tn "\Microsoft\Windows\SoftwareProtectionPlatform\SvcRestartTaskLogon" /f
schtasks /delete /tn "\Microsoft\Windows\SoftwareProtectionPlatform\SvcRestartTaskNetwork" /f

schtasks /delete /tn "\Microsoft\Windows\SpacePort\SpaceAgentTask" /f
schtasks /delete /tn "\Microsoft\Windows\SpacePort\SpaceManagerTask" /f

schtasks /delete /tn "\Microsoft\Windows\Speech\HeadsetButtonPress" /f
schtasks /delete /tn "\Microsoft\Windows\Speech\SpeechModelDownloadTask" /f

schtasks /delete /tn "\Microsoft\Windows\StateRepository\MaintenanceTasks" /f

schtasks /delete /tn "\Microsoft\Windows\Storage Tiers Management\Storage Tiers Management Initialization" /f
schtasks /delete /tn "\Microsoft\Windows\Storage Tiers Management\Storage Tiers Optimization" /f

schtasks /delete /tn "\Microsoft\Windows\Subscription\EnableLicenseAcquisition" /f
schtasks /delete /tn "\Microsoft\Windows\Subscription\LicenseAcquisition" /f

schtasks /delete /tn "\Microsoft\Windows\Sysmain\WsSwapAssessmentTask\HybridDriveCachePrepopulate" /f
schtasks /delete /tn "\Microsoft\Windows\Sysmain\WsSwapAssessmentTask\HybridDriveCacheRebalance" /f

schtasks /delete /tn "\Microsoft\Windows\SystemRestore\SR" /f

schtasks /delete /tn "\Microsoft\Windows\Task Manager\Interactive" /f

schtasks /delete /tn "\Microsoft\Windows\Time Synchronization\ForceSynchronizeTime" /f
schtasks /delete /tn "\Microsoft\Windows\Time Synchronization\SynchronizeTime" /f

schtasks /delete /tn "\Microsoft\Windows\Time Zone\SynchronizeTimeZone" /f

schtasks /delete /tn "\Microsoft\Windows\TPM\Tpm-HASCertRetr" /f
schtasks /delete /tn "\Microsoft\Windows\TPM\Tpm-Maintenance" /f

schtasks /delete /tn "\Microsoft\Windows\UNP\RunUpdateNotificationMgr" /f

schtasks /delete /tn "\Microsoft\Windows\UpdateOrchestrator\Schedule Scan" /f
schtasks /delete /tn "\Microsoft\Windows\UpdateOrchestrator\Schedule Scan Static Task" /f
schtasks /delete /tn "\Microsoft\Windows\UpdateOrchestrator\UpdateModelTask" /f
schtasks /delete /tn "\Microsoft\Windows\UpdateOrchestrator\USO_UxBroker" /f
schtasks /delete /tn "\Microsoft\Windows\UpdateOrchestrator\Maintenance Install" /f
schtasks /delete /tn "\Microsoft\Windows\UpdateOrchestrator\Policy Install" /f
schtasks /delete /tn "\Microsoft\Windows\UpdateOrchestrator\Refresh Settings" /f
schtasks /delete /tn "\Microsoft\Windows\UpdateOrchestrator\Resume On Boot" /f
schtasks /delete /tn "\Microsoft\Windows\UpdateOrchestrator\Schedule Scan" /f
schtasks /delete /tn "\Microsoft\Windows\UpdateOrchestrator\USO_UxBroker_Display" /f
schtasks /delete /tn "\Microsoft\Windows\UpdateOrchestrator\USO_UxBroker_ReadyToReboot" /f

schtasks /delete /tn "\Microsoft\Windows\UPnP\UPnPHostConfig" /f

schtasks /delete /tn "\Microsoft\Windows\USB\Usb-Notifications" /f

schtasks /delete /tn "\Microsoft\Windows\User Profile Service\HiveUploadTask" /f

schtasks /delete /tn "\Microsoft\Windows\WaaSMedic\PerformRemediation" /f

schtasks /delete /tn "\Microsoft\Windows\WCM\WiFiTask" /f

schtasks /delete /tn "\Microsoft\Windows\WDI\ResolutionHost" /f

schtasks /delete /tn "\Microsoft\Windows\Windows Error Reporting\QueueReporting" /f

schtasks /delete /tn "\Microsoft\Windows\Windows Filtering Platform\BfeOnServiceStartTypeChange" /f

schtasks /delete /tn "\Microsoft\Windows\WindowsColorSystem\Calibration Loader" /f

schtasks /delete /tn "\Microsoft\Windows\WindowsUpdate\Scheduled Start" /f
schtasks /delete /tn "\Microsoft\Windows\WindowsUpdate\sih" /f
schtasks /delete /tn "\Microsoft\Windows\WindowsUpdate\sihpostreboot" /f

schtasks /delete /tn "\Microsoft\Windows\WlanSvc\CDSSync" /f

schtasks /delete /tn "\Microsoft\Windows\Workplace Join\Automatic-Device-Join" /f
schtasks /delete /tn "\Microsoft\Windows\Workplace Join\Device-Sync" /f
schtasks /delete /tn "\Microsoft\Windows\Workplace Join\Recovery-Check" /f

schtasks /delete /tn "\Microsoft\Windows\WwanSvc\NotificationTask" /f

schtasks /delete /tn "\Microsoft\XblGameSave\XblGameSaveTask" /f
schtasks /delete /tn "\Microsoft\XblGameSave\XblGameSaveTaskLogon" /f


rem 20h2
schtasks /delete /tn "\Agent Activation Runtime\S-1-5-21-552768228-3364873868-2415157822-1000" /f
schtasks /delete /tn "\Microsoft\Windows\Application Experience\PcaPatchDbTask" /f
schtasks /delete /tn "\Microsoft\Windows\Device Information\Device User" /f
schtasks /delete /tn "\Microsoft\Windows\Device Setup\Metadata Refresh" /f
schtasks /delete /tn "\Microsoft\Windows\Flighting\FeatureConfig\UsageDataFlushing" /f
schtasks /delete /tn "\Microsoft\Windows\Flighting\FeatureConfig\UsageDataReporting" /f
schtasks /delete /tn "\Microsoft\Windows\Input\LocalUserSyncDataAvailable" /f
schtasks /delete /tn "\Microsoft\Windows\Input\MouseSyncDataAvailable" /f
schtasks /delete /tn "\Microsoft\Windows\Input\PenSyncDataAvailable" /f
schtasks /delete /tn "\Microsoft\Windows\Input\TouchpadSyncDataAvailable" /f
schtasks /delete /tn "\Microsoft\Windows\International\Synchronize Language Settings" /f
schtasks /delete /tn "\Microsoft\Windows\Management\Provisioning\Retry" /f
schtasks /delete /tn "\Microsoft\Windows\Management\Provisioning\RunOnReboot" /f
schtasks /delete /tn "\Microsoft\Windows\Multimedia\SystemSoundsService" /f

exit

Ого! Не много ли? Ты всё это удаляешь на рабочих машинах? Твой список или где-то взял?

Попробуйте, запустите =))

Приветствую! Кто-нибудь осмелился удалить это всё из списка? Без последствий?)

Да это комментатор выше так пошутил - внес в скрипт все задачи из Планировщика заданий.

Я составлял данный список путём вдумчивого чтения описания каждой задачи и анализа параметров её запуска.

А надо было после вдумчивого анализа ETW-логов и определения что создаёт какие-либо проблемы и создаёт ли вообще.

Если некоторая задача выполняется на отлично и не сообщает в логах ни о каких ошибках это вроде как не проблема. Проблема в том, что это может быть ненужная мне задача, которая отнимает на себя системные ресурсы и расходует трафик.

Если некоторая задача выполняется на отлично и невооружённым глазом незаметно никаких проблем, значит даже если есть ненужная задача, она отнимает незначительное количество ресурсов и время на поиск такой ненужной задачи лучше потратить на что-то другое с более полезным выхлопом.

Нет ответа на вопросы:

"Зачем?"

"Что и насколько в измеримых единицах стало лучше?"

Все написанное - домыслы автора, который предлагает наделать то, не знаю чего, что бы починить то что не сломано...

Действительно, "зачем?", вам нужно было писать сюда комментарий? Не слушайте эти голоса в голове!

Иногда все таки стоит пытаться ответить на вопросы: свои и чужие, а не жить в мире магических команд и оптимизаций.

Формат подачи рекомендаций я указал в конце статьи: пункты 1 и 2.

Заниматься IT-философией, отвечая на вопросы типа "зачем?", "почему?" - мне не интересно.

Допустим я решил что мне так-же не нужны эти службы. Вопрос: насколько большим я буду идиотом, если выполню скрипт, делающий что-то, что мне неизвестно?

Кмк, здесь нет ни списка служб, которые «не нужны», ни тем более предмета обсуждения. Сложно обсуждать что-либо, когда по каждому пункту скрипта нужно проводить личное расследование, хотя автор вполне мог написать краткое назначение удаляемой службы.

Допустим я решил что мне так-же не нужны эти службы. Вопрос: насколько большим я буду идиотом, если выполню скрипт, делающий что-то, что мне неизвестно?

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

Кмк, здесь нет ни списка служб, которые «не нужны», ни тем более предмета обсуждения. Сложно обсуждать что-либо, когда по каждому пункту скрипта нужно проводить личное расследование, хотя автор вполне мог написать краткое назначение удаляемой службы.

Да, надо вникнуть! Описание каждой задачи сильно растянуло бы статью - вам было бы лень столько читать, а мне писать.

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

Почему должен быть? В чём тогда смысл поста?

Всё что уменьшает неуёмные потребности винды - это хорошо.

можно сделать скрипт так (находит названия задач по фильтру и отключает)

call :TASK_DISABLE "\Application Experience\"
call :TASK_DISABLE "\Office\OfficeTelemetry"

exit /b

:TASK_DISABLE
  for /f "tokens=1 delims=," %%? in ('schtasks /query /fo csv ^| find /i %1') do @schtasks /change /tn "%%~?" /disable
exit /b

Я тоже так умею - составлять псевдофункции в интерпретаторе команд. Но в решении данной задачи всё же выбрал "наглядность". Почему всё же предлагаете отключать, а не удалять?

Почему всё же предлагаете отключать, а не удалять?
Когда-то я этим занимался, и обнаружил, что удалённые задачи волшебным образом появляются снова, а отключенные — не включаются. То есть, какие-то механизмы самопочинки windows понимают, что если задачи нет, то наверное её ещё просто не создали и надо создать, а если отключена, то это сделано специально.

Я так и знал! У меня были подозрения на это. Подумал, что если задача отключена, то механизмы "самопочинки windows" также смогут её включить. Буду наблюдать и если подтвердится "воскрешение" задачи, то переделаю скрипт под отключение.

Здесь идея в том, что полное название задачи находится само по маске. Например в win7 и win10 задачи в ветке "\Application Experience\" могут иметь разное название, следовательно нужно для разных систем делать свои версии скрипта, если прописать полное наименование задачи.

Отключаю же для того, чтобы можно было восстановить в случае необходимости.

Нет, наименования задач буква-в-букву тянутся от прошлых версий Windows к нынешним. Скрипт одинаково отрабатывает на всех версиях ОС, просто если чего-то не было в планировщике старых версий - команда напишет ошибку "нету такого" и выполнение скрипта продолжится.

За долгие, долгие годы работы с Windows начиная с 3.11 я разработал четкий алгоритм оптимизации служб и сервисов Windows.
1. Установите Windows.
2. Ничего не трогайте в сервисах.
3. Работайте.

Справедливости ради, это имело смысл, где-то до Win2003. Там, да. Остановки всякого сетевого барахла позволяли ощутимо снизить потребление памяти. Ну и Delayed Start тоже, да... А дальше...
Время от времени, когда накатывает ностальгия по безоблачному детству сисадминскому прошлому, запускаю профилер, пять рестартов, максимальный дамп и т.д. Так вот. Отключение или включение всего влияет на уровне погрешности - 5-7%. А уж с SSD это вообще на уровне "теплового шума".

Некоторые задачи из данного списка не просто где-то там в фоне "шуршат" своими делами, а вылазят пользователю на экран со своими уведомлениями, напоминаниями и т.д.

Например, уведомление об окончании срока поддержки Windows 7 и Windows 8.1.

Почему среди пользователей закрепилось мнение что разработчики Windows это какие-то дебилы, которые оставляют ненужные службы в системе? Я могу понять параноиков боящихся телеметрии, но не могу понять расплодившихся умников, которые лучше чем Microsoft знают какая служба должна запускаться, а какая нет.

Наверное, потому что

  1. Уровень разработчиков и уровень тестирования ОС снижается

  2. Чем дальше тем больше разработчики windows преследуют свои интересы а не интересы пользователя

  1. Больше похоже на то, что трава с годами становится менее зеленой.

  2. Пусть так, но часто попыткой отстоять свои интересы делаешь только хуже себе самому, так как все начинает работать со сбоями.

    Помню родственникам помогал запустить MS Teams, который тупо вылетал с ошибкой. Оказалось они прошлись по системе очередным "оптимизатором", который вырубил телеметрию и еще рад служб, без которых Teams не хотел работать.
    Вот и выбери - либо твои дети занимаются с преподом удаленно (других вариантво школа не предоставляет), либо ты не даешь этим гадам из майкрософта "следить" за тобой.

Сие плоды цифрового пиратства и безграмотности. Когда условной домохозяйке на комп с 2 гигами знакомый мальчик лепил Windows7x64-Ultimate-ZverEdition. Ну, чтоб всё было на компе.

А ты приходишь, смотришь на все эти битлокеры, корпоративные фичи, shadow copy. И сделать ничего нельзя, потому что "веселая ферма на 150-ом уровне", и "ой тут столько всего".

Слабое железо больше касалось Висты, её прям убила продажа с ноутами на 256Мб. Хотя хотя на нормальном железе она и быстрее 7ки работала, вероятно изза агрессивного перфетча.

Статья про задачи в Планировщике заданий, а не про службы! Ни в коем случае ничего не меняйте в настройках своего компьютера, даже фон Рабочего стола. Разработчикам из Microsoft лучше знать как должно быть.

Так это же вообще-то любимый принцип всех инженеров: работает — не трогай. А вообще без достойной аргументации лучше бездействие, чем действие. У вас достойной аргументации нет, вы просто выложили скрипт.

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

Добавьте, пожалуйста, в скрипт прописывание строк вида

127.0.0.1 reddit.com
127.0.0.1 4pda.to
127.0.0.1 ixbt.com

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

Действительно, что могут найти пользователи данного скрипта на англоязычном научно-развлекательном новостном портале, форуме о мобильных устройствах и форуме о компьютерном железе?

напомнило вечную "шутку":

после установки linux - доустанавливаешь то что нужно..
после установки windows - вычищаешь то что не нужно..

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

..дальше я написал по пунктам какие строки и почему.. а потом стёр, если автору лень писать что он имел ввиду то и мне лень расписывать почему его советы вредные..

Хм, мне действительно интересно. Написал и стёр, а потом написал, что стёр то что писал. Наверно это ScheduledDefrag? -тут многим его жалко. Кто ещё: WinSAT, LPRemove, RacTask?

Приходилось что-то подобное делать на одном из предприятий, ибо, какой-то товарисч накатил на моноблок (на Атоме, 2Гб Рам и хдд от ноута) 10ю Венду последней на тот момент итерацыи. В результате, загрузка системы занимала 10-12 минут. А это был юридический отдел, который работал с заказчиками... Сапиенти сат?

И? Каков ваш опыт в оптимизации "десятки"? Какие задачи в Планировщике заданий удалили, а какие оставили? Вручную делали на одном компьютере или создавали скрипт для "конвейера"?

Какой ужас, кажется автор живет в начале 2000х. Всегда забавно наблюдать людей из другого мира.

Развитие технологий операционных систем Windows осталось в начале 2000х. Ничего принципиально нового компания MS не предлагает - тот же рабочий стол, окна, папки и т.д. Взаимодействие с пользователем всё также осуществляется через клавиатуру с мышью и экран монитора. С каждым новым выходом Windows система становится всё более загромождённой.

Так вы и не интерфейс пользователя крутите. Хотя, с ним тоже очень много изменений произошло за 20 лет.
Что же касается внутренностей системы, то это и поддержка аппаратной виртуализации, и новые протоколы шифрования, и поддержка новых типов оборудования, и поддержка 64-разрядных систем, и поддержка многопроцессорных систем, и поддержка новых ФС... Продолжать можно долго. И будет глупо это всё отрицать.
А так да, компьютер до сих пор управляется с помощью клавиатуры и мыши, а результат наблюдается через монитор. Хотя постойте, а как же сенсорный ввод?...
Если что, автомобильная промышленность тоже остановилась на уровне 50-60-хх годов, ведь ничего принципиально нового автопроизводители не предлагают - тот же руль, педали, лобовое стекло и т.д.

Ну, вы поняли, я думаю.

 Ничего принципиально нового компания MS не предлагает

Ох уж этот максимализм.

Облачнй профиль пользователя - первое, что приходит в голову. Умер тут у меня на днях ноутбук, думал, что на день работа встала. Ничего подобного. Берём запасной, накатываем операционку. Входим под своим аккаунтом - пара часов и всё на месте. И ось активироована и офис стоит. Приложения для разработки и удалённого управления доустановить - час, настроки приехали из профиля.

Коллеги, читая и отвечая на комментарии, могу разделит ваши вопросы и утверждения на несколько групп и ответить на них скопом. Итак:

  1. Пробегающие мимо IT-философы задаются вопросами "зачем?" и "почему?" я предлагаю что-то удалять в системе, ведь она работает идеально, не нужно ничего менять, разработчикам из MS виднее как должно быть.

    Ответ: Как человек регулирующий сидения, зеркала, руль и другое в своём авто чтобы всё было удобно и ничего не мешало, так и я настраиваю свой компьютер (и те которые обслуживаю) под себя, благо что возможности ОС позволяют мне это делать.

  2. Ранимые души очень огорчены приговорам SynchronizeTime и ScheduledDefrag. Приведено много аргументированных доводов в каких случаях удаление этих задач может привести к негативным последствиям.

    Ответ: Назначение данных задач мне вполне понятно, обсуждение их не интересно. Кроме этих двух, в скрипте присутствует ещё несколько десятков других задач подлежащих удалению. Почему-то никто ничего другого не заметил.

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

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

Ещё раз повторюсь. Скрипт это открытый сценарий выполнения заданных в нём команд. Каждый может убрать или добавить что-либо на своё усмотрение. Решение за каждым из вас!

Как человек регулирующий сидения, зеркала, руль и другое в своём авто

Если продолжать аналогию — вы полностью снимаете зеркала со своего авто, чтобы не мешали


Подробное описание каждой задачи сильно бы растянуло статью.

Повторяю ещё раз, у вас здесь нет статьи. Если бы вы написали подробное описание по каждой задаче — тогда получилась бы статья


В некоторых случаях по названию можно догадаться о назначении.

Один только ScheduledDefrag уже намекает, что нельзя


каждый может открыть у себя Планировщик заданий

Каждый может сделать это даже без вашей «статьи». В чём смысл её существования тогда?

Порыв поддерживаю, но реализация - швах.
Небрежно протестировано, непрофессиональный тон, категорично в заявлениях, агрессивно к комментам бывалых.

Сначала с интересом отнесся к скрипту т.к. в виндах есть спорные задачи на отсылку телеметрии или user experience, но обнаружив необходимые задачи, как синхронизация времени, дефраг, периодическая оптимизация, решил почитать комменты.

Автор, может вам более уважительно к советам и комментариям?
Тогда и отзывы будут более конструктивные, и обсуждение из баталии сменится на полезный finetuning.

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

Общаюсь по-принципу: "Каков привет - таков и ответ".

Не надо боятся делится своими наработками. Если что есть - выкладывайте!

Не надо боятся делится своими наработками.

Вредоносными наработками делиться не стоит.

По поводу телеметрии: одно время побаловался её отключением на десятке, перестали приходить обновления версий системы (железо старое). Вернул - опять стали приходить.

А если вручную тыкнуть «проверить обновления»? У меня телеметрия поотключена везде, куда только смог дотянуться, и авто-обновления отключены. Но при ручном обновлении всё ставится. Жаль только, что нельзя ставить выборочно: либо ставится вообще всё прилетевшее, либо не нажимай «проверить обновления». Ты даже не можешь посмотреть перед установкой, что именно прилетело.

Ещё момент, почти год обновления не прилетали (ошибка выдавалась какая-то), но недавно в феврале в очередной раз ткнул, и обновления поставились. То есть, может так совпало, что изменения произошли на стороне Microsoft, не факт, что у вас изменилось что-то из-за телеметрии.

Я перепроверил - откатил изменения. По "проверить обновления приходили только фиксы к текущей версии. Вернул телеметрию - не сразу, а через какое-то время стал предлагаться новый билд. И попадалась тема на сообществе MS с именно такой рекомендацией, и она не у меня одного сработала.

Напиши статью здесь как отключал телеметрию в Windows. "У меня телеметрия поотключена везде, куда только смог дотянуться, и авто-обновления отключены. " - изложи как делал? Может руками всё для личного использования или методами автоматизации с помощью скриптов, твиков реестра для множества машин в обслуживании?

Зачем писать статью, в которой ноль новой информации.
Я просто надёргивал фичи из статей, подобных этой, вдумчиво всё переваривал и прикидывал, что лично мне подойдёт, а что нет.
Sign up to leave a comment.

Articles