24-ядерный CPU, а я не могу сдвинуть курсор

https://randomascii.wordpress.com/2017/07/09/24-core-cpu-and-i-cant-move-my-mouse/
  • Перевод
Всё началось, как это часто бывает, когда моя машина стала подтормаживать. На рабочем компьютере Windows 10 c 24-ядерным процессором (48 потоков), который на 50% простаивал. Из 64 ГБ памяти использовалось меньше половины. Быстрый SSD тоже не особо использовался. И всё же, когда я двигал мышкой, курсор реагировал не сразу — иногда с задержкой в несколько секунд.

Так что я сделал то, что и всегда — записал и проанализировал трассировку событий с помощью ETW. В результате я обнаружил баг Windows 10, серьёзно влияющий на производительность завершения процессов.

Трассировка ETW показала, что UI зависает во многих программах. Я решил исследовать 1,125-секундное зависание в Диспетчере задач:



На скриншоте внизу вы можете видеть использование системой CPU во время зависания, сгруппированное по названиям процессов — обратите внимание, что использование CPU редко поднимается выше 50%.



Таблица CPU Usage (Precise) показывает, что поток UI Диспетчера задач постоянно блокировался вызовами функций вроде SendMessageW, видимо, ожидающих в критическом регионе ядра (это версия критических секций в режиме ядра), глубоко в стеке вызовов в win32kbase.sys!EnterCrit (не показано здесь):



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

Taskmgr.exe (72392) завис на 1,125 с (MsgCheckDelay) на треде 69,196. Наибольшая задержка была 115,6 мс на win32kbase.sys!EnterCrit, который был подготовлен к исполнению процессом conhost.exe (16264), тред 2560 на 3.273101862. conhost.exe (16264), 2560 был подготовлен на 3.273077782 после ожидания 115,640.966 мс, процессом mstsc.exe (79392), 71272. mstsc.exe был подготовлен (то же время, та же задержка) процессом TabTip.exe (8284), 8348, который был подготовлен к исполнению процессом UIforETW.exe (78120), 79584, который был подготовлен процессом conhost.exe (16264), 58696, который был подготовлен процессом gomacc.exe (93668), 59948, который был подготовлен процессом gomacc.exe (95164), 76844.

Я вынужден был продолжать, потому что большинство процессов отпускали блокировку всего через несколько микросекунд. Но в итоге я нашёл несколько процессов (процессы gomacc.exe), которые как будто держали блокировку несколько сотен микросекунд. Или, по крайней мере, они были подготовлены кем-то, кто удерживал блокировку, а затем через несколько микросекунд они готовили кого-то ещё для её снятия. Все эти процессы снимали блокировку в пределах NtGdiCloseProcess.

Я устал вручную ходить по этим цепочкам ожидания, так что решил посмотреть, как часто встречается такой же стек вызовов. Я сделал это, перетащив колонку Ready Thread Stack налево и поискав там NtGdiCloseProcess. Затем я использовал опцию View Callers -> By Function в WPA, чтобы отобразить все стеки Ready Thread Stacks, которые встречались с этой функцией — в этом окне родительские стеки внизу.



Произошло 5768 контекстных переключений, когда процесс NtGdiCloseProcess был в стеке Ready Thread Stack, и каждый из них означает момент, когда освобождается критическая секция. Потоки на этих стеках вызовов провели в ожидании в общей сложности 63,3 секунды — неплохо для задержки в 1,125 с! И если каждое из этих событий случилось после того, как поток удержал блокировку всего на 200 микросекунд, то 5768 событий будет достаточно, чтобы сложиться в подвисание на 1,125 с.

Я не знаком с этой частью Windows, но сочетание PspExitThread и NtGdiCloseProcess ясно показывает, что такое поведение наблюдается при завершении процесса.

Это происходило во время сборки Chrome, а сборка Chrome порождает много процессов. Я использовал нашу распределённую систему сборки, то есть процессы создавались — и завершались — очень быстро.

Следующим шагом было найти, сколько времени потрачено внутри NtGdiCloseProcess. Так что я перенёс таблицу CPU Usage (Sampled) в WPA и получил граф «бабочка», на этот раз вызовов NtGdiCloseProcess. На скриншоте внизу показано, что из всего времени 1,125 с около 1085 мс было потрачено внутри процесса NtGdiCloseProcess, то есть 96% всего времени:



Очень плохо, если блокировку 95% времени удерживает одна функция, особенно, если ту же блокировку нужно получить для вызовов GetMessage или обновления положения курсора. Ради эксперимента я написал тестовую программу, которая с максимальной скоростью создаёт 1000 процессов, ждёт 0,5 секунды, а затем командует всем процессам завершиться одновременно. На скриншоте показано использование этой программой CPU на моём четырёхъядерном (восемь потоков) домашнем ноутбуке:



Итак, что мы видим. Создание процессов ограничено по CPU, как и должно быть. А вот закрытие процессов ограничено по CPU только в начале и в конце, а в середине есть длительный промежуток (около секунды), где оно идёт последовательно — используя всего один из восьми доступных потоков в системе, поскольку 1000 процессов борются за единственную блокировку внутри NtGdiCloseProcess. Это серьёзная проблема. Данный промежуток представляет собой время, когда программы зависнут, а движения курсора будут задерживаться — а иногда этот промежуток растягивается на несколько секунд.

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



Если запустить такой же тест на старом компьютере Windows 7 (Intel Core 2 Q8200, образца 2008 года), то вот результаты:



Создание процессов здесь идёт медленнее, как и можно было ожидать на гораздо более слабом CPU, но завершение процессов настолько же быстрое, как на моём новом ноутбуке, и полностью распараллелено.

Это указывает на то, что сериализация завершения процессов — новая проблема, которая появилась где-то между Windows 7 и Windows 10.

48 потоков, 47 из них простаивают


Закон Амдала говорит, что если вы распределите свою задачу среди достаточного количества ядер, то суммарное время её выполнения будет равно времени выполнения самого длинного фрагмента, который нельзя распараллелить. Если я интенсивно использовал свой рабочий компьютер в течение нескольких дней, то эта проблема сериализации проявляла себя достаточно явно, когда завершение процессов было значительной частью времени распределённой сборки — и большее количество ядер тут не помогало. Чтобы максимально ускорить сборку (и чтобы курсор начал двигаться во время её проведения), нужно было перезагружать компьютер каждые несколько дней. И даже тогда скорость сборки была не такой высокой, какой должна быть, так что Windows 7 выглядела всё заманчивее.

На самом деле добавление ядер в мою систему замедляло скорость реакции UI. Это потому что система сборки Chrome довольно умная и порождает больше процессов, если у вас больше ядер, так что ещё больше завершающихся процессов борются за глобальную блокировку. Поэтому здесь не просто «24-ядерный CPU, а я не могу сдвинуть курсор», а здесь «24-ядерный CPU, и поэтому я не могу сдвинуть курсор».

О проблеме сообщили в Microsoft, они проводят расследование.

И ещё кое-что...


Вот как выглядит моя тестовая программа по созданию и завершению процессов на 24-ядерной машине:



Видите эту маленькую горизонтальную красную линию в правом нижнем углу? Это наглядная иллюстрация закона Амдала, когда 98% ресурсов моей машины простаивают почти две секунды, в то время как процедура завершения процессов заграбастала блокировку, которая мне нужна, чтобы переместить курсор.

Материалы


Код ProcessCreateTests доступен здесь.

Если вам понравилась эта статья, вам могут понравиться и другие расследования:

«Твой браузер попал в мой компилятор!»
«Завершение работы Windows: расследование и идентификация» (и продолжение)
«Проблема слабой производительности PowerPoint»
«DoS-атака Visual Studio на саму себя через функцию поиска»
Поделиться публикацией
AdBlock похитил этот баннер, но баннеры не зубы — отрастут

Подробнее
Реклама
Комментарии 445
  • +20
    Мигающий курсор — это самая «тяжелая» задача для Windows ;)
    • –4
      Ну мне всегда казалось, что у Windows с этим не всё так плохо, как у Linux. Последняя винда, на которой фризы курсора напрямую зависели от загрузки процессора — Windows 95. Начиная с 98-й я начал замечать, что курсор остаётся живым, даже при сильной загрузке. А вот у Linux всё хуже из-за особенностей реализации системы UI на этой ОС. И я как 16 лет назад впервые увидел на Linux фризы при загрузке CPU, так до сих пор их наблюдаю даже на свежих версиях.
      • +9
        что такое система UI в линуксе?
        Вы говорите о каком-то конкретном дистрибутиве, может о каком-то оконном менеджере, или может о X сервере? Сейчас все из перечисленного существует в нескольких вариантах.
        • +21
          И в которых курсор не фризится?
          • +1
            А в которых фризится?
          • +1
            Я имею в виду архитектуру UI в Linux — её полную изоляцию от ядра.
            Я не большой специалист в ОС, особенно в Linux, поэтому смотрю на проблему с точки зрения рядового пользователя. В начале нулевых устанавливал для «попробовать» RedHat, и не так давно ковырял Ubuntu на ноуте родителей (привезли, чтобы я разобрался с тормозами). Те же самые проблемы с фризами мыши и UI в целом, что и у RedHat 15 лет назад.
            • +6

              Здесь должна быть картинка про 'а вы сделали плавное воспроизведение видео с ютуба? — а разве этим кто-то пользуется?'

              • +9
                Тоже вспомнилась она, да.
                image
                • 0
                  вот кстати одна из вещей, за которые мне нравится линукс — под него сделали такую замечательную вещь как streamlink. Транслирует видео-поток из интернетов в vlc, проигрывает без всяких фризов и тормозов, по сравнению с браузерными плеерами — небо и земля. Работает с ютюбом и твитчем.
                  • 0
                    вот кстати одна из вещей, за которые мне нравится линукс — под него сделали такую замечательную вещь как streamlink

                    Streamlink же кросс-платформенный, как и vlc. Работает и под винду, и под макось.
              • +4
                Вы действительно не понимаете, что разницы никакой? Во всех дистрах, где представлены GUI есть эта проблема. Стоит загрузке процессора/использованию физической памяти дойти до 100% и это всегда происходит.
                Дебаг сборка llvm-clang при линковке у меня заставляет Xorg задуматься о сущности вселенной минут на 40. Это связано даже не с иксами, т.к. Wayland эту проблему не решает
                • 0
                  если честно, то да, не понимаю. В тонкостях этого зоопарка я действительно не разбираюсь, может и глупость написал…
                  • +4
                    Здесь три проблемы сразу.

                    Где-то в недрах работы с блочными устройствами есть spinlock. Если ваша система приближается к пределу физической памяти, ядро, во-первых, вынуждено постоянно искать свободное место для выделяемой памяти, среди всех ее фрагментированных частей, во-вторых, свопить память на диск, что блокирует spinlock (иногда на секунды, с выключенными прерываниями), и bufferbloat — накапливание больших объемов данных перед их записью на диск. Буферы для диска выделяются в процентном соотношении от физической памяти, поэтому чем больше оперативки в компьютере, тем проблема более выражена.

                    Последнюю проблему более-менее решили через writeback throttling на ядре, если не ошибаюсь, 4.9. По умолчанию он включен только для устройств, которые настроены на использования нескольких очередей. Активировать можно параметрами ядра:
                    scsi_mod.use_blk_mq=1 dm_mod.use_blk_mq=y

                    И еще, желательно, задать фиксированные максимальные размеры буферов:
                    $ cat /etc/sysctl.d/60-dirty.conf
                    vm.dirty_bytes = 66554432
                    vm.dirty_background_bytes = 33554432

                    Также рекомендую включить сжатие свопа перед сбросом данных на диск — zswap, параметром ядра:
                    zswap.enabled=1
                    • +1

                      А бывает ещё такое веселье, когда своп выключен (например, в системе 16 Гб RAM), но при нехватке памяти HDD всё равно начинает гореть ровно, и тормозит вообще всё. Информации по этой теме прямым текстом практически нет, но вроде как такое происходит из-за выкидывания образов программ из RAM и загрузке их с диска, когда выполнение доходит до выкинутой страницы. В целом да, проблема имеется, и лучшее решение — поставить больше памяти, чтобы не доходить до заполнения а 90%+. Ещё бывают тормоза при записи на флешку, хотя такое я видел и на Win7, внезапно. Похоже, многие линукс-специфичные баги на винду таки портировали.

                      • 0

                        Да, я вот фризы курсора тоже наблюдаю при очень интенсивной записи на USB 3.0 накопитель (flash или HDD без разницы). И мне правда очень дико это видеть в 2017-то году.

                        • 0
                          Да, вытесняется дисковый кэш и memory mapped files из памяти.
                          • 0
                            У меня такое постоянно на ноуте, если открыть много вкладок в хроме и атоме одновременно. Иногда это заканчивается полным зависанием. Ядро 4.11
                            • +1
                              исполняемые файлы — memory mapped. так что — да, при загрузке сегменты кода подключаются как страницы свопа. и да, это не только в линуксе — в винде тот же механизм (начиная с 95-й).

                              и да, в винде с этим, к слову, еще хуже. там дисковый кэш порой вытесняет страницы кода/данных приложений в своп (что, к примеру, наблюдается при копировании больших файлов с диска на диск). и это оборачивается очень веселыми тормозами…
                              • 0
                                Не знаю, как в линуксе, но в Windows memory mapped files вытесняются не в своп, а просто выгружаются из памяти, а затем при необходимости подгружаются с диска обратно.
                                • +2
                                  аналогично. блоки memory-mapped файлов по сути подключаются как дополнительный своп (рид-онли если это исполняемые, rw если созданные memory-mapped). и работа с ними практически ничем не отличается от работы с обычным свопом.
                            • 0
                              Да, я поднимал этот вопрос тут: https://www.linux.org.ru/forum/general/13458278
                              • 0
                                О!
                                А не посоветуете что делать если vm.swappiness уже 1 а при 6гб памяти а он всё ещё лезет в подкачку когда занято только 4гб?
                                И можно ли чтобы он агрессивнее загонял из подкачки обратно в память?

                                Активировать можно параметрами ядра:

                                scsi_mod.use_blk_mq=1 dm_mod.use_blk_mq=y

                                Это надо ядро перекомпилировать?

                                И еще, желательно, задать фиксированные максимальные размеры буферов:

                                $ cat /etc/sysctl.d/60-dirty.conf
                                vm.dirty_bytes = 66554432
                                vm.dirty_background_bytes = 33554432

                                Это рекомендуемые значения для какого количества памяти?
                                Как рассчитать эти значения для 6 Гб?

                                Спасибо!
                                • 0
                                  А не посоветуете что делать если vm.swappiness уже 1 а при 6гб памяти а он всё ещё лезет в подкачку когда занято только 4гб?
                                  Вы уверены, что у вас действительно есть свободная память?

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

                                  Это надо ядро перекомпилировать?
                                  Эти параметры ядра можно задать в загрузчике.

                                  Это рекомендуемые значения для какого количества памяти?
                                  Это фиксированные параметры, для любого количества ОЗУ. Для медленных флешек, может, многовато, но для HDD и SSD в самый раз.
                                  • 0
                                    Вы уверены, что у вас действительно есть свободная память?

                                    Уверен.
                                    Причем список лезущих в своп процессов
                                    выглядит странно
                                    Overall swap used: 606.503 Mb
                                    ========================================
                                    Mb pid name
                                    ========================================
                                    128.13 2242 mysqld
                                    93.78 7779 mysqld
                                    51.34 9696 yandex-disk
                                    32.30 6838 plasmashell
                                    23.97 10757 packagekitd
                                    21.27 18601 firefox
                                    14.02 8546 akonadi_archive
                                    12.22 7774 akonadiserver
                                    11.87 8559 akonadi_sendlat
                                    11.24 6832 baloo_file
                                    9.78 6831 kwin_x11
                                    8.38 2285 Xorg
                                    8.10 8545 akonadi_akonote
                                    8.00 8550 akonadi_ical_re
                                    7.57 8556 akonadi_migrati
                                    7.49 1068 snapd
                                    7.39 7726 korgac
                                    7.28 8555 akonadi_mailfil
                                    7.09 6766 kded5
                                    6.50 6946 org_kde_powerde
                                    6.13 6833 krunner
                                    5.85 8551 akonadi_ical_re
                                    5.78 8557 akonadi_newmail
                                    5.64 6886 kactivitymanage
                                    5.27 1048 NetworkManager
                                    4.20 8552 akonadi_indexin
                                    4.13 7724 yd-tools
                                    3.49 6823 ksmserver
                                    3.32 8553 akonadi_maildir
                                    3.01 6818 kglobalaccel5
                                    2.96 2221 libvirtd
                                    2.92 6812 kaccess
                                    2.79 8548 akonadi_contact
                                    2.78 10292 kuiserver
                                    2.67 8554 akonadi_maildis
                                    2.57 8549 akonadi_followu
                                    2.57 8547 akonadi_birthda
                                    2.50 6870 pulseaudio
                                    2.35 332 systemd-udevd
                                    2.33 6839 polkit-kde-auth
                                    2.27 10294 kdeconnectd
                                    2.23 1095 polkitd
                                    1.85 6763 klauncher
                                    1.64 6949 yakuake
                                    1.58 13633 apache2
                                    1.57 6825 kscreen_backend
                                    1.56 6593 sddm-helper
                                    1.56 13631 apache2
                                    1.55 13630 apache2
                                    1.53 6762 kdeinit5
                                    1.51 2701 apache2
                                    1.50 6840 xembedsniproxy
                                    1.49 13629 apache2
                                    1.47 24602 apache2
                                    1.47 13632 apache2
                                    1.40 18917 apache2
                                    1.38 3803 udisksd
                                    1.38 24601 apache2
                                    1.38 24600 apache2
                                    1.38 24596 apache2



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

                                    Значит только живительная перезагрузка, печально…
                                    • +2

                                      ну если надо, чтобы прямо здесь и сейчас, то:


                                      sudo swapoff -a | sudo swapon -a

                                      И своп полностью ушёл в память. Главное, чтобы этой самой памяти хватило.

                                    • 0
                                      Ядро только выгружает память на диск. Загрузка обратно происходит только при обращении к этой памяти, фоном она не загружается обратно.

                                      Windows может и обратно грузить суперфетчем, в Linux разве никакого похожего механизма нет?
                                • 0
                                  По поводу llvm-clang могу посоветовать использовать линкер gold вместо стандартного ld. Это решает проблему с памятью — debug версия начинает отжирать не 20+ гигабайт оперативки, а, наверное 5-6 (точно не замерял).
                                  • 0
                                    При сборке swift по умолчанию ld.gold как раз используется. Всё равно приходится прерывать сборку c -j10 и ставить -j1 иначе всей системе приходит конец.
                                    Но тут скорее уже make виноват, продолжая спавнить процессы, даже когда ресурсы на пределе.
                                    • 0
                                      Можно, наверное, Kati попробовать прикрутить…
                                      • 0
                                        Kati же просто генерирует Ninja.build на основе Makefile. А весь llvm и так использует CMake, так что использовать Ninja можно и так. Только отличий во времени сборки/потреблению памяти я не заметил.
                                        Это бы нужно добавлять в систему сборки какой-то механизм отслеживания загрузки, и не создавать новые процессы, когда память/ресурсы CPU уже на пределе.

                                        Вот тут даже есть обсуждение чего-то подобного. Но дальше обсуждений дело не продвинулось.
                                        • 0
                                          Там же, собственно, написано что "-l" должна это делать, разве нет?
                                          • 0
                                            "-l" контролирует load average, причём получает его при помощи getloadavg(), так что точность оставляет желать лучшего. И получается так же как у ТС в той ветке. Т.е. линкер сначала памяти использует мало, и ninja спокойно спавнит их 8 штук. А потом каждый линкер начинает использовать по 7-8Гб памяти и всё это уходит в глубокий swap или падает по oom.

                                            Там была идея добавлять к каждому таргету оценочное использование памяти чтобы ninja мог делать оценку перед запуском процесса. И это выглядит единственным достоверным решением.
                                      • 0
                                        earlyoom вам в помощь для облегчения таких ситуаций. Будет жестоко, зато не в ущерб работе и нервам
                                • +3

                                  А мне всегда казалось ровно наоборот :), особенно когда многозадачная винда бросала все силы на попытки прочесть сбойный флоппик или, в последующем, сбойный сидюк. Можно было идти пить чай. Однако, последнее время и на линуксе при сборке тяжёлых пакетов наблюдаю тормоза уи (кде). :( наверное, где-то дефолтные настройки изменились, а искать лееень…

                                  • 0
                                    Да, спорить не буду. Кто-то когда-то подробно объяснял мне почему винда тормозит при дисковых операциях, по-моему речь шла о низкоуровневой конкуренции за какое-то очень важное прерывание. Но процессор тут совсем не при чём.
                                  • +4
                                    Да ну, я такое на любой версии WIndows наблюдал, стоит только обратиться к флоппи приводу, как вся система начинает тормозить, звук рвётся, курсор перепрыгивает с места на место.
                                    • +2
                                      Для этого даже флоппик не нужен. Если на ноуте с вин7 и группировкой по типу объектов «моего компьютера» случайно кликнуть по группе съемных носителей вместо конкретного диска, придется ждать, пока раскочегарится физический дисковод.
                                      • +4
                                        А я только что понял, что живу в будущем, где отсутствуют флопики и си-ди.
                                        • +1
                                          Ткните в сортировку файлов по дате или по типу в папке с тысячей-другой файлов. Вешает всё (i7, 16GB RAM, Intel SSD). Система Windows 8.1 (точнее Explorer/GUI) теряют отзывчивость напрочь.
                                          • 0
                                            Только что провел эксперимент с папкой в 3255 файлов — все норм. Пишу вам в тот момент пока он подходит к концу с сортировкой. i7, HDD
                                            • 0

                                              Ответил выше, возможно дело в том что за файлы и где отображать, но обсуждалось то в аналоге win explorer, у меня dual boot, сравнивал, debian+gnome+nautilus(nemo?) явно проигрывают, другое дело что не так часто это нужно :)

                                              • +2
                                                Я просто регулярно работаю с огромным количеством файлов (3000+) что в линуксе что в винде. Все проблемы и затупы возникают как правило при отображении миниатюр, а сама сортировка примерно одинаковая по времени.
                                            • –1
                                              Это они только на собеседованиях вопросами про сортировки мучают, насколько одно О больше другого, и как низко и недостойно не думать об этом каждый день.

                                              Не удивлюсь, если в реальности там каждый индус на своем уровне абстракции синхронно полным перебором в цикле ищет минимальный элемент/иконку к нему/описание в свойства/MIME-соответствия/чертзнаетчтоеще, и итоговая степень n того О такая, что есть где повеситься несчастному ядру i7 а с ним и остальным — в ожидании чуда.
                                              • –2

                                                В linux не веселее, но ещё и медленнее.

                                                • 0
                                                  А именно? Вот выше про сортировку, зашёл через Dolphin (KDE SC 5) в /usr/bin, 8588 файлов у меня, в том числе разные скрипты и бинарники. Сортировка занимает в пределах секунды, причём я подозреваю бОльшую часть — перерисовка иконочек, но в любом случае, я не успеваю переключиться куда-то там ещё, чтобы посмотреть, что-то ещё замерло у меня или нет.

                                                  Проц i5, 8гб, жёсткий диск.
                                                  • 0

                                                    Наверное есть куча факторов, но через nemo/nautilus отсортировать папку с 100Гб фотографий в 3-10Мб. очень долго, так сложилось что в этой папке лежат все фотографии с зеркалки за 8+лет, так вот судя по поведению даже при сортировке по имени он зачем-то считывает метаданные всех файлов до отображения.
                                                    Я просто сравнивал как это происходит в win8.1 и в Debian, возможно конечно причина в ntfs, надо попробовать на ext4 винт перетащить.
                                                    P.s. phenom II x6, 16 ГБ. Диски sata

                                                    • 0
                                                      Так вы в линуксе директорию на NTFS сортировали? Классный тест, показывающий, что ntfs-3g — тормозное говно.

                                                      Он работает через fuse — он дарит нам кучу переключений контекста, и ту самую однопоточность (fuse вообще не thread safe, afaik). Гляньте на загрузку проца и i/o пока он что-то активно делает, убедитесь.
                                                      • 0

                                                        Там проблема не в этом, а в считывании метаданных, теже папки в mc(shell) сортируются нормально, и кстати проблем со скоростью ntfs вроде, кроме сортировки фото и видео, не замечал

                                                        • 0
                                                          в общем, случаев, чтобы с зеркалки у меня сто гигов в одной директории лежало не случалось, а чтоб тридцать гигов — случалось, но уже упомянутому dolphin было это пофигу даже с включенными тамбнейлами, сортировка, прокрутка — всё быстро и комфортно, на ноуте с 4гб рамы, i5 и диском 5400rpm
                                                          • +1
                                                            Там проблема не в этом, а в считывании метаданных
                                                            Можно очень долго спорить на тему чья это проблема, на самом деле. Вы не замечали тормозов NTFS — а пользовали Git'а от них плачут. Причём на Windows, не на Linux даже.

                                                            Считывание метаданных на нативной файловой системе Linux'а (что ext4, что xfs) — это быстро и дёшево. Потому никто не заморачивается. Миллион stat'ов в секудну сделать — никто не заметит. А в NTFS — дорого и сложно. Даже под Windows. Потому нативные программы стараются метаданные лишний раз не запрашивать, а не нативные… вы сами видите.

                                                            Но, согласитесь, было бы странно оптимизировать Наутилус под работу с NTFS — это, как бы, не совсем профильное использование…
                                                            • 0
                                                              дуалбут — зло, которого надо избегать любыми средствами, одно из лучших средств — элементарный отказ от виндовс
                                                              • 0
                                                                Почему? Не холивара ради
                                                                • 0
                                                                  ну вот перечитайте ветку, если бы не было у нашего клиента дуалбута — не было бы и ситуации, в которой он в линуксе использовал ntfs на локальном диске. Либо он бы в винде использовал нативные приложения, которые не дёргают ntfs почём зря, либо в линусе был бы ext4.
                                                                  • 0
                                                                    То есть дело только в NTFS? А если, скажем, у меня все данные в ext4, а NTFS раздел только для системы, и в него мне из-под linux лезть незачем? Все же дуалбут у нас зло или NTFS?
                                                                    • 0
                                                                      ntfs у нас не зло, если мы работаем исключительно в windows

                                                                      но все же зачем-то хотят получать доступ к одним и тем же разделам и оттуда, и оттуда
                                                                    • 0
                                                                      У вас есть вариант как переносить с ntfs на ext4 несколько забитых под завязку дисков по 2Тб?
                                                                      И кстати с чего вы взяли что не было бы?
                                                                      windows(даже не активирована) используются исключительно для соединения с работой раз в месяц-два, стоит на отдельном разделе и не мешает, проблема в том что по данным citrix-а у меня в системе редко всплывающий баг когда ресивер в linux работает криво (не затирает фон, работать невозможно), а да ещё я в нем иногда в google sketch-up что-то рисую т.к. он так и не захотел у меня в wine работать.
                                                                      • 0
                                                                        Ответил в другой части ветки
                                                                        https://habrahabr.ru/post/332816/#comment_10309826
                                                                        по сути выходит что проблема не в этом.
                                                                  • 0
                                                                    |Можно очень долго спорить на тему чья это проблема, на самом деле. Вы не замечали тормозов NTFS — а пользовали Git'а от них плачут. Причём на Windows, не на Linux даже.
                                                                    На мой взгляд, Другой use-case, очень много маленьких файлов и много больших
                                                                    |Считывание метаданных на нативной файловой системе Linux'а (что ext4, что xfs) — это быстро и дёшево.
                                                                    Имел ввиду информация из самого файла, разрешение, метки, тип, неверно выразился

                                                                    Думаю сегодня сделаю копию на Ext4, попробую.
                                                                    • 0
                                                                      в общем результат, видео приводить не буду, можете верить на слово можете нет.
                                                                      Исходные данные:

                                                                      Раздел №1 ~1Тб ext4 диск 2Тб Sata папка содержит 18583 файла размером 142.1 Гб (более старая копия папки)
                                                                      Раздел №2 ~1Тб ntfs(через ntfs-3g rw) массив dmraid(raid-0) папка содержит 22990 файла размером 171.4 (здесь чуть больше файлов, т.к. основная папка)
                                                                      Разделы монтируются при загрузке.

                                                                      Контроллеры по сути одни и те-же, процессор AMD Phenom II x6 с TDP 95 ватт, RAM 16Гб, ни по процессору ни по памяти 100% потребления нет и близко.

                                                                      Система: Linux home 4.9.0-3-amd64 #1 SMP Debian 4.9.30-2+deb9u2 (2017-06-26) x86_64 GNU/Linux

                                                                      в основном NEF(RAW) + JPG + немного xmp

                                                                      Тест №1
                                                                      mc под root
                                                                      открытие папки: Раздел №1 — мгновенно, Раздел №2 ~2сек.
                                                                      сортировка файлов: Раздел №1 — около секунды, Раздел №2 ~2 сек.

                                                                      Тест №2
                                                                      Nemo 3.2.2 ( root ), режим по умолчанию значки, миниатюры только для файлов <1Mb( таких там меньше 100, ) и дальнейшее переключение на компактный вид, сортировка, переключение в режим список
                                                                      Открытие папки:
                                                                      Раздел №1 — 10 сек. переключение ~40-50сек сортировка 2-4 сек., в режим список ~ 50-70сек.
                                                                      Раздел №2 — 12 сек. переключение ~40-50сек. сортировка 3-4 сек., в режим список ~70-90сек.

                                                                      Из чего делаем вывод:
                                                                      1. Я перепутал тормозит не сортировка а открытие папки и смена способа отображения
                                                                      2. Исходя из размеров нет ощутимой разницы ntfs или ext4 нет проблема в Nemo, сравниваю с ним потому-что он идёт по умолчанию (как и explorer в Windows).
                                                                      3. В explorer работать удобней потому-что при отсутствии сортировки он открывает папку мгновенно и в фоне подгружает данные по файлам, Nemo так не умеет.
                                                                      4. В принципе Nemo и Nautilus-у ИМХО очень далеко до Explorer-а от win8.1 но большинство пользователей этого может и не замечать.

                                                                      Как-то так, в общем у меня окончательно пропало желание переносить архив с ntfs на ext-4 на ближайшее время, т.к. выяснилось что проблема не в FS, а вот в чём огромный плюс linux-а это в симлинках, хотя они в ntfs тоже существуют, пользоваться очень неудобно, т.к. нет инструментов.

                                                                      • 0
                                                                        хотя они в ntfs тоже существуют, пользоваться очень неудобно, т.к. нет инструментов.

                                                                        Link Shell Extension вам в помощь.
                                                                      • 0
                                                                        Удивительные бывают здесь комменты. То сортировка жалких пары-тройки тысяч файлов завешивает систему, то NTFS у кого-то неправильная. Я пользователь гита, почему я не замечаю никаких тормозов на разрабатываемых системах, скажем, в 35 тысяч файлов в 5000 каталогах, ну кроме известных сетевых, конечно? Или это какой-то непонятный мне кайф — изображать выдуманные страдания по винде?
                                                                        • +1
                                                                          Я пользователь гита, почему я не замечаю никаких тормозов на разрабатываемых системах, скажем, в 35 тысяч файлов в 5000 каталогах, ну кроме известных сетевых, конечно?
                                                                          Может потому, что вы не работали с ним под Linux, где «git status» (и прочие всякие «git diff») при подобных параметрах отрабатывают доли секунды и те секунд 10-20, которые для этого требуются под Windows не кажутся вам тормозами?
                                                                          • 0
                                                                            khim, поделитесь с нами всеми — что мы делаем не так, чтобы достичь желаемого эффекта? (Может попой надо сесть на хард, чтобы 10 сек ждать?)
                                                                            • 0
                                                                              Просто вытащите исходники и сравните скорость работы git'а под двумя операционками. Несмотря на большую работу, связанную с допиливанием Git'а под ограничения Windows разница всё ещё очень и очень заметна. Вытаскивать Android с его миллионом файлов не предлагаю, так как сборка его под Windows всё равно не поддерживается…
                                                                              • –1
                                                                                А есть что-нибудь более близкое к жизни (т.е. не требующее чтения длинного мануала ради простого эксперимента)?
                                                                              • 0

                                                                                У меня на рабочем проекте была именно такая фигня — git status выполнялся очень долго. Масштаб количества файлов/папок такой же: что-то типа 35000.
                                                                                А потом ВНЕЗАПНО тормоза пропали. Я спрашивал, делали ли что-то с репозиотрием — мне сказали, что, вроде, ничего.
                                                                                git gc запускал, пробовал 4 разных версии гита.
                                                                                И да, на виртулке с Убунтой летало.

                                                                              • –1
                                                                                Вот видите, чтобы как-то ответить, вам пришлось придумать за меня эту чепуху про 10-20 секунд.
                                                                                • 0
                                                                                  Ну вот, я же говорил: «какой-то непонятный мне кайф — изображать выдуманные страдания по винде». А чтобы изображать не мешали, выдумываются еще как бы жизненные причины. И что особенно доставляет страданий — всем понятно, откуда эти причины выковыриваются, что доставляет страданий дополнительно. Положительная обратная связь.

                                                                                  Простите меня за ваши выдуманные страдания, дорогие минусаторы. Если сможете.
                                                                                  • –3
                                                                                    Особенно доставляют удовольствие мгновенные минусы за отличающееся мнение. Наверное такие люди в жизни всем в нос во время диалога бьют, после чего продолжают общение.
                                                                                    • 0
                                                                                      — Доктор, у меня болит нога!
                                                                                      — А у меня не болит. Следующий!
                                                                                      • 0

                                                                                        Соглашусь, что у кого-то git status и правда может тормозить. Но ведь khim писал про всех пользователей винды — для того, чтобы опровергнуть такое общее утверждение, достаточно одного контрпримера.


                                                                                        Кстати, вот вам второй: у меня тоже не тормозит.

                                                                  • 0
                                                                    Всё мгновенно сортирует, файлов больше 7000 (кеш FF), система i5 3570, 24ГБ ОП и Windows XP x64. Миниатюр понятное дело нет.
                                                                    • 0
                                                                      Как вы это добились? 3435 файлов, сортировка по любому атрибуту, как и полагается для жалких нескольких тысяч, просто мгновенная. Задумывается только для даты, потому что для фотографий и видео считывает эту дату из свойств медиа, а не берет тупо дату создания/изменения файла. Ну как задумывается — трещит стареньким винчестером несколько секунд, никак не влияя на остальные процессы и UI. Win8.1, celeron.
                                                                      • 0
                                                                        Такое поведение наблюдается в папке Dropbox'a.
                                                                        В меньшей степени — в папке Downloads.
                                                                  • +1
                                                                    Это проблема не винды в полной мере, а организации доступа к контроллеру флопика и наследия совместимости чутьли не до 8086 процессоров которые бережно тянут ради какогото дремучего софта

                                                                    Если я не ошибаюсь то ради флопика до недавних пор в чипсетах тащили поддержку ISA шины которую больше 10 лет назад уже похоронили
                                                                    • +1
                                                                      ISA хоть и изменилась, но не исчезла совсем: https://ru.wikipedia.org/wiki/Low_Pin_Count
                                                                  • –3
                                                                    Чем отличался линукс в лучшую сторону — в венде при нагрузке раньше периодически были какие-то дедлоки, при этом шелл (панель задач, пуск, окна проводника, оформление окон) переставали отвечать. Причём тут дело не в загрузке ЦП или памяти, а очевидно именно в каких-то блокировках. При этом работать становилось решительно невозможно, пока это всё не отвиснет, хотя сами приложения обычно оставались работоспособны, но толку, если переключиться нельзя или открыть каталог. Курсор двигался, да, это не утешало :) Кажется где-то в районе 7 эту проблему решили, а может просто компьютеры уже стали достаточно быстрые или SSD помог, точно не знаю. В линуксе этой проблемы не было никогда. Каким бы раком компьютер не стоял, если всё и подтормаживало, то достаточно пропорционально и работать можно было.
                                                                    • 0

                                                                      В винде просто огромное число утилит работает через хуки на окна Проводника (т.е. системного шелла), отсюда и тормоза. Надо по-меньше ерунды ставить, и виснуть не будет.


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


                                                                      PS я свою проблему лагов Проводника решил через удаление TortoiseSVN, TortoiseGIT и TortoiseHg.

                                                                      • 0
                                                                        В 7 эту проблему не то что бы решили, просто стали запускать отдельные потоки для разных окон. Поэтому одна тормозящая папка перестала вешать систему.

                                                                        Разделить панель задач и окна папок можно было уже давно, по крайней мере с XP.
                                                                        • 0
                                                                          я свою проблему лагов Проводника решил через удаление TortoiseSVN, TortoiseGIT и TortoiseHg.


                                                                          Зачем нужен Windows Explorer без этих прекрасных утилит?

                                                                          Я эту проблему решаю опцией «Hide menus for unversioned paths».
                                                                          • 0

                                                                            Теперь у вас Проводник лагает только в рабочих копиях репозиториев? :-)

                                                                        • +3
                                                                          Каким бы раком компьютер не стоял, если всё и подтормаживало, то достаточно пропорционально и работать можно было.
                                                                          Не надо рассказывать сказок. Пару лет назад при попытке копирования видео на флешку можно было спокойно уходить пить кофе, так как не только интерфейс «замораживался», но и мышь переставала двигаться на всё время до окончания этого процесса.

                                                                          Не знаю — может сейчас эту проблему решили, я сейчас флешками не пользуюсь…
                                                                          • +1
                                                                            Это печально знаменитый баг ядра 12309. С ним активно боролись-боролись, и вроде как по заявлениям даже побороли (последнее упоминание об исправлениях такого поведения было в release notes ядра 4.10), хотя иногда встречаются посты о том, что он по-прежнему воспроизводится (или, что более веротно, это другой баг, но с такими же симптомами).
                                                                            • 0
                                                                              Я конкретно сейчас борюсь с его проявлением. Без участия флешки — у меня шифрованный том на sshfs, и если bufferbloat доедает до определённого объёма, то всё зависает. Насколько я заметил — в районе скедулера, который не может дать процессорного тика sshfs'у, что в свою очередь не даёт дозаписать буффер, что в свою очередь не даёт процессорного времени sshfs'у.

                                                                              Умирает всё, что связано с переключением процессов. ping'и при этом ходят, и курсор мышки (ура!) ползает без тормозов. Пользы от него при этом особой уже нет, конечно…
                                                                        • 0
                                                                          Начиная с 98-й я начал замечать, что курсор остаётся живым, даже при сильной загрузке.
                                                                          В универе проверяли TCP SYN flood с одного IP наглухо вешает XP/2003, еще печальнее чем в статье — фризится GUI(и вообще все, даже экран перестает обновляться) пока идет флуд. После остановки флуда через секунду все начинает работать. Windows выше ХР не пробовал (теперь не интересуюсь). В Linux на SYN flood тогда была 90% загрузка одного ядра на core 2 duo. За все время в Linux втречал много тормозов, но не мышки (CPU загружен постоянно — BOINC).
                                                                        • –2
                                                                          Хабр не умеет в юморе.
                                                                        • –73
                                                                          На рабочем компьютере Windows 10

                                                                          Дальше можно было не продолжать :)
                                                                          • +40
                                                                            Вам вот с юмором можно дальше не продолжать :)
                                                                            • +1
                                                                              Расскажите, что нормальному человеку кроме браузера и vi/emacs больше ничего не надо, а все остальное замечательно работает через wine, посмеемся вместе… Может быть…
                                                                              • +12
                                                                                Разве в emacs еще нет браузера?
                                                                                • +1
                                                                                  он там почему-то плохо умеет js :-)
                                                                                  • +2

                                                                                    Он заботится о вашей приватности :)

                                                                                • –18
                                                                                  Через Wine нормально ничего не работает, и Linux как рабочая станция — это прошлый век, если профиль широкий — в Линуксе нечего делать, даже конференцию нормально не провести. Все жалуются на винду, но если написать список на любую оболочку Linux — то совсем тошно станет.

                                                                                  Единственный шанс нормально работать из под Linux — VirtualBox с Windows )

                                                                                  Я за Windows 7 в надежде на нормальное будущее следующей версии Windows. Как по мне, так Windows стоит на месте по потребительским свойствам, пытаясь втулить всякие игрушки. А Linux вообще не изменился по работе с окнами, драйверами и тд. На сегодняшний день установить драйвера ATI до сих пор является проблемой. Тем кому принципиально надо — конечно, справятся, а тем кому нужно просто работать — это долгая морока.
                                                                                  • +4
                                                                                    в Линуксе нечего делать, даже конференцию нормально не провести.

                                                                                    OBS отлично работает, если что)

                                                                                  • 0
                                                                                    В VirtualBox завезли нормальный PCI Passthrough?
                                                                                    • 0
                                                                                      А какие десктопные системы виртуализации поддерживают нормальный PCI Passthrough? Есть ли шанс серьезно увеличить производительность гостевой ОС в сравнении с virtualbox?
                                                                                      • +2
                                                                                        Я сам тесты не проводил, но kvm по тестам из инета — не менее 95% производительность хоста, а в среднем 97-99%.
                                                                                        У меня qemu+kvm, настроен GPU Passthrough. Никаких отличий виндовой виртуалки от хост винды не вижу.
                                                                                        Собственно раньше жил на VirtualBox исключительно. С тех пор как осилил qemu+kvm о Vbox забыл и вспоминать желания нет.
                                                                                        • 0
                                                                                          А подскажите: где-то можно прочесть шаги по настройке «qemu+kvm» c «GPU Passthrough» и чтобы поставить винду и/или линукс? (т.е. нормальный туториал по qemu).

                                                                                          • 0
                                                                                            Я когда впервые настраивал — делал вот по этой доке:
                                                                                            http://vfio.blogspot.ru/2015/05/vfio-gpu-how-to-series-part-1-hardware.html

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

                                                                                            У меня Open Suse — для неё есть адаптированная дока:
                                                                                            https://forums.opensuse.org/showthread.php/522015-VGA-PCI-Passthrough-guide-on-openSuSE-Leap-42-2

                                                                                            Также есть большой материал, который лично я использую как справочник:
                                                                                            https://wiki.archlinux.org/index.php/PCI_passthrough_via_OVMF
                                                                                            • 0
                                                                                              Большое спасибо
                                                                                        • 0
                                                                                          Vmware вроде.
                                                                                      • +1

                                                                                        ATI давно уже нет, поглощены AMD. Ставить драйвера для AMD сейчас не нужно, открытые работают из коробки и намного лучше закрытых. Драйвера видеокарт перешли на KMS, сейчас ведётся работа над поддержкой Atomic Modesetting. На фронте графической подсистемы решается важная задача избежать тиринга и копирования фреймбуфера — Wayland. Игр за последние два года стараниями Valve стало столько, что я не успеваю играть, чаще покупаю просто чтобы поддержать понравившуюся компанию.


                                                                                        Вам стоит актуализировать данные.

                                                                                        • –2
                                                                                          Ничего подобного, драйвера нужны для разработки, то что из коробки не имеет кучу библиотек и AMD выпускает для свежих карт драйвера, но устанавливать их достаточно сложно.
                                                                                          • +1

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


                                                                                            Вы говорите о реализациях графических API, таких как Direct3D или OpenGL. Сейчас есть полноценная реализация OpenGL с аппаратным ускорением, библиотека Mesa. Для современного железа AMD она поддерживает OpenGL 4.5 и работает не хуже старой закрытой fglrx.


                                                                                            Подробнее

                                                                                        • –4
                                                                                          Ты в каком классе учишься?
                                                                                          • 0
                                                                                            Если уж говорить о Windows 7 — там нет удобного терминала, при помощи которого можно автоматизировать или выполнить офигенную часть задач. Конкретно для меня: сборка проекта, работа с VCS, ssh, предварительный анализ логов, генерация простых тестовых данных для нагрузки. В Windows 7 все это можно было сделать только при помощи разнородных окошек с терминалами, которые между собой плохо взаимодействуют или отвратительно выглядят. В этом плане Linux(Ubuntu) реально удобней.
                                                                                            Конференции в Linux проводить можно. Даже скайп работает О_О. Вроде бы как Cisco предлагает кроссплатформенные решения по конференциям.

                                                                                            P.S.: Не надо говорить про Linux on Windows подсистему — внимание было акцентировано на Windows 7, где этого нет и вряд ли будет в ближайшее время.
                                                                                            • 0

                                                                                              Э… что именно вы понимаете под "разнородными окошками с терминалами"?

                                                                                              • 0

                                                                                                http://cmder.net/


                                                                                                Заголовок спойлера

                                                                                                image

                                                                                                • 0
                                                                                                  Кажется, то что надо. А вы можете проверить его работоспособность на Windows 7?

                                                                                                  Жаль, я год назад про него не знал.
                                                                                                  • 0

                                                                                                    Везде должно нормально работать. Это Conemu с кастомизациями, когда я сидел под семёркой — то прекрасно её поддерживало.

                                                                                                • 0

                                                                                                  UPD: я вам уже отвечал вот тут: https://habrahabr.ru/company/jugru/blog/327492/#comment_10196930


                                                                                                  Windows не заставляет вас использовать 4 разных терминала для 4х разных задач, все эти задачи можно делать в одном окне если это вам так важно.


                                                                                                  Не понимаю почему вы до сих пор рассказываете эти мифы.

                                                                                                  • +2
                                                                                                    Потому что я на тот момент не нашел другого решения, кроме как использовать 4 разных терминала?

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

                                                                                                    Самое красивое и удобное окошко терминала я видел у Git Bash, но мне не удалось его подружить в проинсталированным Cygwin.
                                                                                                    • 0

                                                                                                      Вот именно. Вы не нашли другого решения. Вам не удалось их подружить. Это — ваша проблема, а не Windows.


                                                                                                      Я бы понял если бы вы сказали, что это сделать сложно, хотя сам я никаких проблем не вижу. Но вы пишите — невозможно, а это вранье.

                                                                                                      • +2
                                                                                                        Увы, вы кажется правы — я поддался тлетворному влиянию демагогов и сгустил краски.

                                                                                                        У меня не получилось настроить. Я убил на это в общей сумме часов 5-10. Я не нашел способ с имеющимися у меня ограничениями получить столь же удобный и красивый терминал с нужными мне утилитами как, к примеру, дефолтный терминал Ubuntu. Что бы у меня было одно окно терминала с вкладками, с нужными горячими клавишами, с настраиваемыми и красивыми шрифтами, с нормально работающими стрелками и клавишами дополнительного блока клавиатуры.

                                                                                                        У вас есть готовая инструкция как это сделать? Ну или хотя бы вы это делали?

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

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


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


                                                                                                          Конкретно по поводу окна терминала с вкладками — выше уже упомянули Conemu. Я сам его не ставил, но один мой коллега его использует, и матов по поводу Conemu от того коллеги я не слышал.


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

                                                                                                          • +1

                                                                                                            Ставите ConEmu, внутри запускаете powershell, far, да хоть visual studio :-)


                                                                                                            • 0
                                                                                                              Вот как раз таки powershell, far и Visual studio мне не нужны. Нужен cygwin, git, ssh, maven, gradle.
                                                                                                              • 0

                                                                                                                И зачем вам cygwin?

                                                                                                                • 0
                                                                                                                  AWK, Grep, SED, конвееры.
                                                                                                                  • 0

                                                                                                                    А msys2? Там менеджер пакетов от Арча. tmux работает.

                                                                                                                    • 0
                                                                                                                      Не слышал. Надо запомнить, хотя, надеюсь, не пригодится.

                                                                                                                      P.S.: А давно сняли ограничение на слив кармы ниже -4 для Read & Comments пользователей?
                                                                                                                      • +1
                                                                                                                        А оно было? Помню ограничение только в плюс, сначала до нуля, потом до +4 дали возможность повышать.
                                                                                                                        • 0
                                                                                                                          Да вроде бы было, где то читал хД)
                                                                                                                    • 0

                                                                                                                      Эти программы, как и bash, входят в состав Git for Windows.


                                                                                                                      Лежат по умолчанию в "C:\Program Files\Git\usr\bin\" или "C:\Program Files (x86)\Git\usr\bin\"


                                                                                                                      Собственно, это и есть тот самый msys2, про который вам уже говорили выше.

                                                                                                      • +1
                                                                                                        Попробуйте использовать IDE, необходимость в половине окошек просто отпадёт.
                                                                                                        • 0

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

                                                                                                          • 0
                                                                                                            Да не нужен винде линуксовый терминал, для консоли и Far хватает. Для гурманов его можно и в ConEmu запускать.

                                                                                                            А для ssh сойдёт и putty.
                                                                                                            • 0

                                                                                                              https://ru.wikipedia.org/wiki/Windows_PowerShell Позволяет творить и более чудесатые штуки.

                                                                                                            • 0
                                                                                                              и Linux как рабочая станция

                                                                                                              Это полный шикардос. Контактик, скайп (какой ни есть, но он есть), фотку там обрезать — 80% человечества даже не замечает разницы :)
                                                                                                              • 0
                                                                                                                Я за Windows 7 в надежде на нормальное будущее следующей версии Windows.

                                                                                                                Это какой такой будущей версии? Десятка последняя.
                                                                                                                • 0
                                                                                                                  Это какой такой будущей версии? Десятка последняя.


                                                                                                                  I want to believe
                                                                                                                  image



                                                                                                                  А пока что перехожу на другие ОС — Win10 (WinX -?) несовместима с некоторыми занятиями.
                                                                                                                • +1
                                                                                                                  Уже лет 5 наверное как на моем личном нотнике основная ОС — linux. Использую его и для работы и для развлечения. Единственное, что напрягает — обнова скайпа. Он пока еще в бете, и нет полноценной поддержки групповой видеоконференции. Жду, когда мелкомягкие уже выведут его из беты.
                                                                                                                  • 0
                                                                                                                    1) Adobe Creative suite, как для работы так и для домашних фотографий (Lightroom), альтернатив нет (windows, mac, Но не linux, в Wine не запустится)

                                                                                                                    2) Видео кодеки, видео в браузерах очень часто тормозит. Верю, что пофиксить можно, но это +1 Level к опыту

                                                                                                                    3) Как я уже говорил, AMD драйвера ставятся тяжело, то что там из коробки — это в игры играть, я же говорю про разработку (Но для кого нужно принципиально кодить GPU под Linux — тот разберется конечно же, но если OS не принципиальна, зачем себе усложнять жизнь)

                                                                                                                    4) Skype — такой ужасный, что хоть Web версию юзай

                                                                                                                    5) Оболочка тормозит без видимых причин (Особенно Unity), радует только быстрая работа файловой системы

                                                                                                                    6) Безопасность именно оболочки на низком уровне, но это такой — можно пообсуждать

                                                                                                                    7) Частые проблемы с настройкой Аудио гарнитур, часто нужны пляски чтобы запускать акссесуары, иногда невозможно

                                                                                                                    8) Microsoft Office, Open Office, Libre Office, Google Sheats не заменяют его, если клиент высылает огромный перелинкованный сложный файл

                                                                                                                    9) Тестить все всеравно в Windows приоритетно

                                                                                                                    10) Опасно обновляться для неопытного пользователя

                                                                                                                    11) Можно включить чистую устанвоку и увидеть смерть оболочки и снова надо гуглить, при этом случается весьма рендомно

                                                                                                                    12) Любая работа с Медиа — отстутствует на нормальном уровне
                                                                                                                    — За мой опыт одновременного использования 20 машин как рабочих станций, начинали с Fedora, потом Ubuntu, потом Windows 10, заканчиваем похоже Windows 10 и 7.

                                                                                                                    — Если вы в веб разработке, то как вы PSD шабло резать будете, в Avacode? ну это если что-то простое, в реальной жизне столько нюансов, что лучше иметь Adobe в любом случае, снова таки для домашнего использования

                                                                                                                    — Не понимаю вообще о чем можно спорить, если зона Linux — сервера и он далек от пользователя, потому что «Обычному человеку» в Linux нечего делать, даже фоточки с поезкди не обработать паттернмо ) А альтернативы — это учиться, но ради чег оучиться, если на практике разницы нет и реальная разница для потребителя — только софт и больше ничего.

                                                                                                                    • +2
                                                                                                                      Я вам сочувствую, сударь )) Для моих задач разработчика линукс — то что доктор прописал.
                                                                                                                      А вот по поводу скайпа у меня такое ощущение, что это и есть веб-версия воткнутая в оболочку
                                                                                                                      • 0

                                                                                                                        5-я версия и есть вэб версия, -платформа electron

                                                                                                                      • 0
                                                                                                                        А если раз в год задача типа — быстро отредактировать видео — просто вводит в ступор на Linux )
                                                                                                                        • +1
                                                                                                                          для этого есть kdenlive. Для большинства случаев подойдет.
                                                                                                                        • +1
                                                                                                                          lightroom даже даром не нужен, это я вам как пользоватль darktable говорю
                                                                                                                          • 0
                                                                                                                            1) darktable уже назвали, для остальных ищите последнюю Picasa
                                                                                                                            4) skype под винду испортился гораздо раньше.
                                                                                                                            10) применимо к обеим системам.