Компания Microsoft объявила (https://techcommunity.microsoft.com/t5/Windows-Kernel-Intern...) о портировании системы динамической отладки DTrace для платформы Windows. Подготовленные в рамках проделанной работы изменения, за исключением драйвера ядра, размещены (https://github.com/opendtrace/opendtrace/tree/windows) в форме отдельной ветки в репозитории проекта OpenDTrace (https://github.com/opendtrace/opendtrace), нацеленного на создание переносимой реализации DTrace, способной работать в различных операционных системах. В течение нескольких месяцев планируется добиться включения кода в основной состав OpenDTrace.
Поддержка DTrace в Windows 10 доступна начиная с экспериментальной сборки 18342. Для включения следует активировать опцию dtrace ("bcdedit /set dtrace on") и установить специально подготовленный msi-пакет (http://download.microsoft.com/download/B/D/4/BD4B95A5-0B61-4...). Для отладки событий в ядре Windows дополнительно требуется настройка (https://docs.microsoft.com/en-us/windows-hardware/drivers/de...-) режима удалённой отладки. Управление осуществляется при помощи штатной команды dtrace. Поддерживаются такие провайдеры как syscall (отлеживание системных вызовов NTOS), fbt (отслеживание обращений к функциям ядра), pid (отслеживания процессов в пространстве пользователя) и etw (трассировка событий Windows).
Скрипты на языке D компилируются в промежуточный формат DIF и передаётся для выполнения в специальную виртуальную машину DIF Virtual Machine, работающую на уровне ядра и реализованную в форме драйвера dtrace.sys. Дополнительно применяется ещё один проприетарный драйвер traceext.sys, предоставляющий функции для трассировки на уровне ядра Windows, на основе которых реализованы все основные провайдеры DTrace.Изначально технология DTrace была разработана для операционной системы Solaris для решения задач по динамической трассировке ядра системы и конечных приложений. DTrace предоставляет пользователю возможность детально отслеживать поведение системы и в режиме реального времени производить диагностику проблем, не влияя в процессе отладки на работу и производительность исследуемых приложений, что позволяет организовать анализ работающих систем на лету. Код инструментария и модуля для ядра Linux поставляются (https://oss.oracle.com/projects/DTrace/) компанией Oracle под лицензией GPLv2. Проект OpenDTrace был создан до перелицензирования и поэтому остаётся под лицензией CDDL, несовместимой (https://www.opennet.ru/opennews/art.shtml?num=48078) с GPL.
URL: https://techcommunity.microsoft.com/t5/Windows-Kernel-Intern...
Новость: https://www.opennet.ru/opennews/art.shtml?num=50299
А для семёрки будет?
Ненужно, ибо https://www.microsoft.com/ru-ru/windowsforbusiness/end-of-wi...
Очень даже нужно: есть туева хуча старых проприетарных приложений без свободных аналогов.
> А для семёрки будет?а мне для виндоус95, пожалуйста
На 3.1 кому?
А под DOS 3.30 у вас есть?
Страшная тайна: Windows - это графическая оболочка для DOS. Была и другая графическая оболочка для DOS.
ну с натяжкой можно было считать оболочкой 95 и 98. Но не NT-линейку.
даже 3.0 (в стандартом или как там он назывался режиме) нельзя. дос там был чем-то вроде лоадера, после загрузки превращаясь в виртуалку (да, через эту виртуалку осуществлялся доступ к fs, но если я запущу в линуксе виртуальную винду и пошарю с нее через самбу физический диск с refs, недоступный никакими другими способами, линукс в оболочку для винды не превратится).
В 95 и выше примерно та же концепция сохранялась, но драйвера физических устройств и fs уже были родные виндовые, поэтому оно работало методом виндовое приложение - ядро - виртуальная дос-машина - опять ядро винды - fs - драйвер физического устройства. Самое удивительное во всей этой этажерке было то, что она вообще работала - причем довольно неплохо.
>причем довольно неплохо.Когда пропил памяти в DOS-приложении вызывал нестабильную работу Win95 вплоть до необходимости перезагрузки - разве это неплохо?
>>причем довольно неплохо.
> Когда пропил памяти в DOS-приложении вызывал нестабильную работу Win95 вплоть до необходимости
> перезагрузки - разве это неплохо?на тех процессорах и с теми возможностями - неплохо.
потому что смысл был не в том чтобы сделать "безопастно", а чтобы нормальные, не троянские, дос-приложения могли работать как в своем родном досе, если они тебе нужны, причем успешно друг с другом еще и взаимодействуя (поэтому нельзя было каждое отдельно огородить даже теми методами, которые были доступны на тех древних камнях), при том что под ними были уже вполне себе prot mode драйвера, а над - еще и какой-нибудь dos4gw.
Если немножко быть в курсе как была вся эта конструкция внутри устроена - трудно поверить что она вообще-то могла работать. А она работала, много лет вполне успешно.
Если говорить о том, насколько хорошо там DOS-приложения работали, то да, работали они там отлично. Если говорить о стабильности конструкции в целом, то она была очень плохая. Но работала, это да.
> Страшная тайна: Windows - это графическая оболочка для DOS. Была и другая графическая оболочка для DOS.Оболочкой ДОЗы прозвали в шутку, потому что
1) "ДОЗа во все поля" во внутренностях и при загрузке. Опять же, 16 битные дрова подходили.
2) В 9.x/ME все еще можно было без проблем грохнуть систему юзерспейсной программой, просто записав не то и не туда в память. Ведь доступ к нулевой странице физ. памяти, был таки у всех "как в ДОЗе" -- общий.С:> debug.com
-F 0:0 L 1337 0
(freeze)
> 2) В 9.x/ME все еще можно было без проблем грохнуть систему юзерспейснойне юзерспейсной, а досовской.
> доступ к нулевой странице физ. памяти, был таки у всех "как
таки не у всех, а только у тех, кто ничего про windows не знал, а работу ему требовалось обеспечить. При том что виртуализация в камне в зачаточном состоянии.
> С:> debug.com
это вот как раз дос-программа.
а для виндовых высунулось бы окошко "ой, оно чтой-то тут сдохло, ok".
>> С:> debug.com
> это вот как раз дос-программа.
> а для виндовых высунулось бы окошко "ой, оно чтой-то тут сдохло, ok".Проверил, благо завалялась виртуалка пятилетней давности с win98 для "Panzer General II".
Да, лажанул -- win32 программа не убивает весь хост.
Правда, учитывая ту кучу 16-битных программ, которые тогда или еще (или вообще нигода) не портировали, пользователю от этого не сильно легче было.
Мы ещё про Вин95? 386 процессор? Виртуализация в этом камне была в нормальном состоянии, только оказалось дорогое переключение контекста. 286 - да, хуже, но защищённый режим вполне был. Опять же - дорогое переключение контекста.
Хуже другое - никто тогда не использовал ring1 и ring2, все были на ring0 & ring3. И из-за этого пришлось делать что-то для гипервизоров. Ошибка дизайна(?) вылилась в дикий трэш с виртуализацией (хотя, не помню, I/O вроде на ring1 возможен был)95 была такой, как сказано ранее:
> чтобы нормальные, не троянские, дос-приложения могли работать как в своем родном досе, если они тебе нужны, причем успешно друг с другом еще и взаимодействуяи с железом тоже. Нормальный кейс тех лет - захреначить АЦП на ISA-шине, сделать для него ДОС-программу с <s>шахматами и поэтессами</s> DMA и доступом к портам, выдавать результат в сеть через FTP, например.
С честной виртуализацией того времени доступ к портам и ДМА - только через драйвер ring0.
Microsoft Linux все ближе и ближе.
> Microsoft Linux все ближе и ближе.Как бы он не стал тем самым Linux, которого все ждали.
И пойдёт отлов индивидуумов за установку нелицензионного Linux ...
Да быстрей бы уж... А то вся эта "мимикрия" притомила слегка: Microsoft loves Linux, Red Hat loves Microsoft => aquired by IBM... Пусть будет уже как 30 лет назад: MS-LINUX 2.0 и PC-LINUX 1.0...
тогда еще и DR-Linux, чего уже там.
А вот это крайне опасно для здоровья.
На сколько я помню в DR-DOR был и pthreads и другое POSIX совместимое, так что не опасно, а наоборот интересно как они это сделали. До сих пор меня терзают смутные сомнения...
зачем? ты же всёравно подписку на офис купишь.. а тут какаято разовая денежная транзакция в пару баксов.. кому оно надо?
я такой херни не ждал!
Можно мне винду обратно, без нее?
На линукс обратно я уж не надеюсь, да и поздно уже.
В линуксе же, как всегда "свой путь" - BPF вместо DTrace
линукс уже продается в мс сторе вот пруфирую https://www.microsoft.com/en-us/p/wlinux/9nv1gv1pxz6p?active...
GPL продавать не запрещает, у этих поделий исходники открыты, так что любой красног^W энтузиаст может собрать себе это нену^W этот дистрибутив бесплатно.
Уже. В виде дополнительного сервиса.
> Скрипты на языке D компилируются в промежуточный формат DIFM$ заюзала D-lang?
хорошо бы, нужно больше в него(в D) народу загнать, тогда он станет лучше
Загнать?
да, палкой и крошками от пряника
Если Вы про dlang, который очередной убийца C++, то это не он. Это специальный DSL для DTrace
>> Скрипты на языке D компилируются в промежуточный формат DIF
> M$ заюзала D-lang?
> хорошо бы, нужно больше в него(в D) народу загнать, тогда он станет
> лучше1. Охоххо...
"M$ заюзала" => "народу загнать" => "станет лучше"
"M$ ...." => "станет лучше"Прекрати делить на NIL.
2. Другой D-lang."" Testers write tracing programs (also referred to as scripts) using the D programming language (not to be confused with other programming languages named "D"). "" --https://en.wikipedia.org/wiki/DTrace#Description
А толку то. Тут с соляры то на линь переписывать скрипты не удобно то одно не работает то другое, а уж на винду и подавно.
Совсем другие сисколы. И не надо мне рассказывать что винда умеет многое из POSIX. Это капля в море от API.
То есть то что в винде, ВНЕЗАПНО, можно использовать линукс и dtrace не позволяет вам предположить что через 2 года от этого будет толк?> Есть два типа людей: и те кто может экстраполировать данные.
Предположить можно все что угодно, даже то что NT заменят на другое ядро.
Но это совсем не значит что предположения воплотятся в жизнь.
Скрипты разные, но инструмент все-таки один, что для макоси, что для винды
Что для Oracle(r) Linux
Это позитивная или негативная новость?
дегенеративная.
Сложно сказать. Дело в том, что аудитория Widnows оскуднела после рядо провалов. Проавлился смартфон, провалились языковые платформы. И Microsoft снесло голову и они побежали в сектора где сижят инженеры и просто люди. Они начали портировать одно, второе, третье и делать полезные ништячки, которые за послдние 30 лет так и не сделали портирова Linux вызвы аля epool и т.д. В целом все ясно, но поезд ушел сейчас на гребне Apple с POSIX системой macOS ведущим компилятором clang и рынком смартфонов и планшетов и Swift-ом. Даже и не знаю Microsoft теперь нужен только каким-то бизнесам у которых нет денег и они не понимают что протратят их дожопы на обновления.
Расслабься. Около 88-90% - за Windows. Линухоиды как всегда из пределов погрешности вылезти не могут.
Для Norton Commander мне пожалста завезите.