URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 116797
[ Назад ]

Исходное сообщение
"Microsoft портировал DTrace для Windows"

Отправлено opennews , 12-Мрт-19 10:14 
Компания 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


Содержание

Сообщения в этом обсуждении
"Microsoft портировал DTrace для Windows"
Отправлено Аноним , 12-Мрт-19 10:15 
А для семёрки будет?

"Microsoft портировал DTrace для Windows"
Отправлено robot228 , 12-Мрт-19 10:21 
Ненужно, ибо https://www.microsoft.com/ru-ru/windowsforbusiness/end-of-wi...

"Microsoft портировал DTrace для Windows"
Отправлено Аноним , 12-Мрт-19 22:56 
Очень даже нужно: есть туева хуча старых проприетарных приложений без свободных аналогов.

"Microsoft портировал DTrace для Windows"
Отправлено Аноним , 12-Мрт-19 11:46 
> А для семёрки будет?

а мне для виндоус95, пожалуйста


"Microsoft портировал DTrace для Windows"
Отправлено nobody , 12-Мрт-19 11:47 
На 3.1 кому?

"Microsoft портировал DTrace для Windows"
Отправлено Ag , 12-Мрт-19 16:12 
А под DOS 3.30 у вас есть?

"Microsoft портировал DTrace для Windows"
Отправлено Аноним , 12-Мрт-19 18:00 
Страшная тайна: Windows - это графическая оболочка для DOS. Была и другая графическая оболочка для  DOS.

"Microsoft портировал DTrace для Windows"
Отправлено Crazy Alex , 12-Мрт-19 18:54 
ну с натяжкой можно было считать оболочкой 95 и 98. Но не NT-линейку.

"Microsoft портировал DTrace для Windows"
Отправлено пох , 12-Мрт-19 20:25 
даже 3.0 (в стандартом или как там он назывался режиме) нельзя. дос там был чем-то вроде лоадера, после загрузки превращаясь в виртуалку (да, через эту виртуалку осуществлялся доступ к fs, но если я запущу в линуксе виртуальную винду и пошарю с нее через самбу физический диск с refs, недоступный никакими другими способами, линукс в оболочку для винды не превратится).
В 95 и выше примерно та же концепция сохранялась, но драйвера физических устройств и fs уже были родные виндовые, поэтому оно работало методом виндовое приложение - ядро - виртуальная дос-машина - опять ядро винды - fs - драйвер физического устройства. Самое удивительное во всей этой этажерке было то, что она вообще работала - причем довольно неплохо.


"Microsoft портировал DTrace для Windows"
Отправлено Школьник , 12-Мрт-19 23:13 
>причем довольно неплохо.

Когда пропил памяти в DOS-приложении вызывал нестабильную работу Win95 вплоть до необходимости перезагрузки - разве это неплохо?


"Microsoft портировал DTrace для Windows"
Отправлено пох , 12-Мрт-19 23:46 
>>причем довольно неплохо.
> Когда пропил памяти в DOS-приложении вызывал нестабильную работу Win95 вплоть до необходимости
> перезагрузки - разве это неплохо?

на тех процессорах и с теми возможностями - неплохо.

потому что смысл был не в том чтобы сделать "безопастно", а чтобы нормальные, не троянские, дос-приложения могли работать как в своем родном досе, если они тебе нужны, причем успешно друг с другом еще и взаимодействуя (поэтому нельзя было каждое отдельно огородить даже теми методами, которые были доступны на тех древних камнях), при том что под ними были уже вполне себе prot mode драйвера, а над - еще и какой-нибудь dos4gw.

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


"Microsoft портировал DTrace для Windows"
Отправлено Школьник , 13-Мрт-19 13:19 
Если говорить о том, насколько хорошо там DOS-приложения работали, то да, работали они там отлично. Если говорить о стабильности конструкции в целом, то она была очень плохая. Но работала, это да.

"Microsoft портировал DTrace для Windows"
Отправлено Аноним84701 , 12-Мрт-19 22:12 
> Страшная тайна: Windows - это графическая оболочка для DOS. Была и другая графическая оболочка для  DOS.

Оболочкой ДОЗы прозвали в шутку, потому что
1) "ДОЗа во все поля" во внутренностях и при загрузке. Опять же, 16 битные дрова подходили.
2) В 9.x/ME все еще можно было без проблем грохнуть систему юзерспейсной программой, просто записав не то и не туда в память. Ведь доступ к нулевой странице физ. памяти, был таки у всех "как в ДОЗе" -- общий.

С:> debug.com
-F 0:0 L 1337 0
(freeze)


"Microsoft портировал DTrace для Windows"
Отправлено пох , 12-Мрт-19 23:49 
> 2) В 9.x/ME все еще можно было без проблем грохнуть систему юзерспейсной

не юзерспейсной, а досовской.

> доступ к нулевой странице физ. памяти, был таки у всех "как

таки не у всех, а только у тех, кто ничего про windows не знал, а работу ему требовалось обеспечить. При том что виртуализация в камне в зачаточном состоянии.

> С:> debug.com

это вот как раз дос-программа.

а для виндовых высунулось бы окошко "ой, оно чтой-то тут сдохло, ok".


"Microsoft портировал DTrace для Windows"
Отправлено Аноним84701 , 13-Мрт-19 01:12 
>> С:> debug.com
> это вот как раз дос-программа.
> а для виндовых высунулось бы окошко "ой, оно чтой-то тут сдохло, ok".

Проверил, благо завалялась виртуалка пятилетней давности с win98 для "Panzer General II".

Да, лажанул -- win32 программа не убивает весь хост.
Правда, учитывая ту кучу 16-битных программ, которые тогда или еще (или вообще нигода) не портировали, пользователю от этого не сильно легче было.


"Microsoft портировал DTrace для Windows"
Отправлено Тыгра , 13-Мрт-19 23:01 
Мы ещё про Вин95? 386 процессор? Виртуализация в этом камне была в нормальном состоянии, только оказалось дорогое переключение контекста. 286 - да, хуже, но защищённый режим вполне был. Опять же - дорогое переключение контекста.
Хуже другое - никто тогда не использовал ring1 и ring2, все были на ring0 & ring3. И из-за этого пришлось делать что-то для гипервизоров. Ошибка дизайна(?) вылилась в дикий трэш с виртуализацией (хотя, не помню, I/O вроде на ring1 возможен был)

95 была такой, как сказано ранее:
> чтобы нормальные, не троянские, дос-приложения могли работать как в своем родном досе, если они тебе нужны, причем успешно друг с другом еще и взаимодействуя

и с железом тоже. Нормальный кейс тех лет - захреначить АЦП на ISA-шине, сделать для него ДОС-программу с <s>шахматами и поэтессами</s> DMA и доступом к портам, выдавать результат в сеть через FTP, например.
С честной виртуализацией того времени доступ к портам и ДМА - только через драйвер ring0.


"Microsoft портировал DTrace для Windows"
Отправлено shjfbg , 12-Мрт-19 10:41 
Microsoft Linux все ближе и ближе.

"Microsoft портировал DTrace для Windows"
Отправлено ssh , 12-Мрт-19 10:50 
> Microsoft Linux все ближе и ближе.

Как бы он не стал тем самым Linux, которого все ждали.


"Microsoft портировал DTrace для Windows"
Отправлено Ydro , 12-Мрт-19 10:57 
И пойдёт отлов индивидуумов за установку нелицензионного Linux ...

"Microsoft портировал DTrace для Windows"
Отправлено FreeBSD desktop user , 12-Мрт-19 11:11 
Да быстрей бы уж... А то вся эта "мимикрия" притомила слегка: Microsoft loves Linux, Red Hat loves Microsoft => aquired by IBM... Пусть будет уже как 30 лет назад: MS-LINUX 2.0 и PC-LINUX 1.0...

"Microsoft портировал DTrace для Windows"
Отправлено Anananaan , 12-Мрт-19 17:40 
тогда еще и DR-Linux, чего уже там.

"Microsoft портировал DTrace для Windows"
Отправлено Аноним , 12-Мрт-19 18:01 
А вот это крайне опасно для здоровья.

"Microsoft портировал DTrace для Windows"
Отправлено Аноним , 13-Мрт-19 02:25 
На сколько я помню в DR-DOR был и pthreads и другое POSIX совместимое, так что не опасно, а наоборот интересно как они это сделали. До сих пор меня терзают смутные сомнения...

"Microsoft портировал DTrace для Windows"
Отправлено адмирал третьего флота очевидно , 12-Мрт-19 18:42 
зачем? ты же всёравно подписку на офис купишь.. а тут какаято разовая денежная транзакция в пару баксов.. кому оно надо?

"Microsoft портировал DTrace для Windows"
Отправлено пох , 12-Мрт-19 13:04 
я такой херни не ждал!
Можно мне винду обратно, без нее?
На линукс обратно я уж не надеюсь, да и поздно уже.

"Microsoft портировал DTrace для Windows"
Отправлено nobody , 12-Мрт-19 11:45 
В линуксе же, как всегда "свой путь" - BPF вместо DTrace

"Microsoft портировал DTrace для Windows"
Отправлено Аноним , 12-Мрт-19 16:06 
линукс уже продается в мс сторе вот пруфирую https://www.microsoft.com/en-us/p/wlinux/9nv1gv1pxz6p?active...

"Microsoft портировал DTrace для Windows"
Отправлено Анонас , 12-Мрт-19 16:59 
GPL продавать не запрещает, у этих поделий исходники открыты, так что любой красног^W энтузиаст может собрать себе это нену^W этот дистрибутив бесплатно.

"Microsoft портировал DTrace для Windows"
Отправлено Xiaomi , 15-Мрт-19 00:30 
Уже. В виде дополнительного сервиса.

"Microsoft портировал DTrace для Windows"
Отправлено Аноним , 12-Мрт-19 11:37 
> Скрипты на языке D компилируются в промежуточный формат DIF

M$ заюзала D-lang?
хорошо бы, нужно больше в него(в D) народу загнать, тогда он станет лучше


"Microsoft портировал DTrace для Windows"
Отправлено Аноним , 12-Мрт-19 11:41 
Загнать?

"Microsoft портировал DTrace для Windows"
Отправлено Аноним , 12-Мрт-19 11:49 
да, палкой и крошками от пряника

"Microsoft портировал DTrace для Windows"
Отправлено nobody , 12-Мрт-19 11:46 
Если Вы про dlang, который очередной убийца C++, то это не он. Это специальный DSL для DTrace

"Microsoft портировал DTrace для Windows"
Отправлено Andrey Mitrofanov , 12-Мрт-19 11:46 
>> Скрипты на языке 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


"Microsoft портировал DTrace для Windows"
Отправлено GentooBoy , 12-Мрт-19 16:04 
А толку то. Тут с соляры то на линь переписывать скрипты не удобно то одно не работает то другое, а уж на винду и подавно.
Совсем другие сисколы. И не надо мне рассказывать что винда умеет многое из POSIX. Это капля в море от API.

"Microsoft портировал DTrace для Windows"
Отправлено Григорий Федорович Конин , 12-Мрт-19 17:12 
То есть то что в винде, ВНЕЗАПНО, можно использовать линукс и dtrace не позволяет вам предположить что через 2 года от этого будет толк?

> Есть два типа людей: и те кто может экстраполировать данные.


"Microsoft портировал DTrace для Windows"
Отправлено GentooBoy , 12-Мрт-19 17:54 
Предположить можно все что угодно, даже то что NT  заменят на другое ядро.
Но это совсем не значит что предположения воплотятся в жизнь.

"Microsoft портировал DTrace для Windows"
Отправлено Аноним , 12-Мрт-19 19:44 
Скрипты разные, но инструмент все-таки один, что для макоси, что для винды

"Microsoft портировал DTrace для Windows"
Отправлено Аноним , 12-Мрт-19 19:45 
Что для Oracle(r) Linux

"Microsoft портировал DTrace для Windows"
Отправлено Дегенератор , 12-Мрт-19 18:07 
Это позитивная или негативная новость?

"Microsoft портировал DTrace для Windows"
Отправлено пох , 12-Мрт-19 20:27 
дегенеративная.

"Microsoft портировал DTrace для Windows"
Отправлено Аноним , 13-Мрт-19 02:28 
Сложно сказать. Дело в том, что аудитория Widnows оскуднела после рядо провалов. Проавлился смартфон, провалились языковые платформы. И Microsoft снесло голову и они побежали в сектора где сижят инженеры и просто люди. Они начали портировать одно, второе, третье и делать полезные ништячки, которые за послдние 30 лет так и не сделали портирова Linux вызвы аля epool и т.д. В целом все ясно, но поезд ушел сейчас на гребне Apple с POSIX системой macOS ведущим компилятором clang и рынком смартфонов и планшетов и Swift-ом. Даже и не знаю Microsoft теперь нужен только каким-то бизнесам у которых нет денег и они не понимают что протратят их дожопы на обновления.

"Microsoft портировал DTrace для Windows"
Отправлено Xiaomi , 15-Мрт-19 00:30 
Расслабься. Около 88-90% - за Windows. Линухоиды как всегда из пределов погрешности вылезти не могут.

"Microsoft портировал DTrace для Windows"
Отправлено Gannet , 13-Мрт-19 04:08 
Для Norton Commander мне пожалста завезите.