The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Реализация дизассемблера для встраивания в ядро Linux"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Реализация дизассемблера для встраивания в ядро Linux"  +/
Сообщение от opennews (??) on 03-Апр-12, 00:17 
В списке рассылки разработчиков ядра Linux представлен (https://lkml.org/lkml/2012/4/1/102) набор патчей с реализацией дизассемблера для архитектуры x86, который по задумке разработчиков позволит упростить разбор проблем за счёт вывода осмысленного ассемберного кода вместо шестнадцатеричного дампа во время краха ядра. Дополнительно поддерживается дизассемблирование на лету любой выполняемой функции ядра, используя интерфейс Debugfs, а также интеграция функций дизассемблера во встроенный в ядро отладчик KDB.


В ответ на публикацию патча Инго Молнар (Ingo Molnar), известный разработчик  ядра Linux и автор планировщика задач CFS, предложил (https://lkml.org/lkml/2012/4/2/33) несколько неординарных идей по развитию проекта. Например, доработка с реализацией режима ассемблера, который мог бы использоваться для сборки используемых в ядре ассемблерных вставок, или создание дополнительного режима проверки безопасности выполняемого на уровне ядра бинарного кода.

URL: https://lkml.org/lkml/2012/4/1/102
Новость: http://www.opennet.ru/opennews/art.shtml?num=33515

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по ответам | RSS]

1. "Реализация дизассемблера для встраивания в ядро Linux"  +28 +/
Сообщение от Аноним (??) on 03-Апр-12, 00:17 
Только asm, только kernel, только hardcore!
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

3. "Реализация дизассемблера для встраивания в ядро Linux"  +/
Сообщение от savant (ok) on 03-Апр-12, 00:58 
А ведь иногда нихрена больше и нет. Только асм, только хардкор.
Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

4. "Реализация дизассемблера для встраивания в ядро Linux"  +1 +/
Сообщение от Аноним (??) on 03-Апр-12, 01:03 
> А ведь иногда нихрена больше и нет. Только асм, только хардкор.

А для проца в общем то в конечном итоге ничего кроме потока команд и нет. Логично что неплохо бы видеть на чем оно там споткнулось в виде более удобном чем хексдамп. Самому то хексдамп в уме дизасмить - удовольствие ниже среднего...

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

5. "Реализация дизассемблера для встраивания в ядро Linux"  –8 +/
Сообщение от Аноним (??) on 03-Апр-12, 05:12 
Эмм, а что - в линуксе отладочных символов для ядра ещё не изобрели, что там дизассемблер нужен? FreeBSD вон полноценный stack trace давно пишет.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

6. "Реализация дизассемблера для встраивания в ядро Linux"  +/
Сообщение от BratSinot on 03-Апр-12, 07:58 
Зачем в уме? Кто мешает тот-же дизассемблер использовать?
Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

7. "Реализация дизассемблера для встраивания в ядро Linux"  +2 +/
Сообщение от фтыш on 03-Апр-12, 09:08 
Там возможностей отладки побольше чем во фре.
Кроме того, неужели непонятно что не всем охота держать лишние данные в памяти? Это попросту неоправданно, если ты не разработчик ядра. Я например за 10 лет на разных компах его только 3-4 раза видел.
Так что юзайте дальше вашу винду, не отвлекайтесь на рассуждения.
Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

8. "Реализация дизассемблера для встраивания в ядро Linux"  +2 +/
Сообщение от фтыш on 03-Апр-12, 09:09 
> Я например за 10 лет на разных компах его только 3-4 раза видел.

Имелся в виду кернелпаник.

Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

9. "Реализация дизассемблера для встраивания в ядро Linux"  –2 +/
Сообщение от анон on 03-Апр-12, 10:43 
Символы не грузятся в память. Впрочем, не буду мешать радоваться новому лисапеду.
Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

10. "Реализация дизассемблера для встраивания в ядро Linux"  +2 +/
Сообщение от Sas (ok) on 03-Апр-12, 11:03 
потому как хардкор же
Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

11. "Реализация дизассемблера для встраивания в ядро Linux"  –6 +/
Сообщение от Сергей (??) on 03-Апр-12, 11:12 
Угу, перейдем в ядре на ассемблерные вставки, переносимость к лешему, зато летать будет....
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

12. "Реализация дизассемблера для встраивания в ядро Linux"  +4 +/
Сообщение от z (??) on 03-Апр-12, 11:25 
ВНЕЗАПНО они там всегда были, и будут =)
Ответить | Правка | ^ к родителю #11 | Наверх | Cообщить модератору

13. "Реализация дизассемблера для встраивания в ядро Linux"  +8 +/
Сообщение от rain87 on 03-Апр-12, 11:43 
что, увидел знакомое слово в названии новости, а о чём сама новость - да ну нафиг, читать это для лохов?
Ответить | Правка | ^ к родителю #11 | Наверх | Cообщить модератору

14. "Реализация дизассемблера для встраивания в ядро Linux"  +/
Сообщение от анонимус (??) on 03-Апр-12, 11:56 
Еще как изобрели. Они даже зачем-то есть в стоковых Redhat'овских ядрах, которые ынтырпрайз по всему миру импользует в продакшне.
Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

15. "Реализация дизассемблера для встраивания в ядро Linux"  –1 +/
Сообщение от Kodir (ok) on 03-Апр-12, 12:36 
Конечно, код лучше дампа, но по-моему, в отладочных целях немного в том пользы. Что если порушен IP и переход осуществился в середину инструкции? Что делать с листингом, где непонятно кто и откуда пришёл? Пошаговая отладка - вот что удобно, но как с этим обстоят дела в Линукс - нинай.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

16. "Реализация дизассемблера для встраивания в ядро Linux"  +/
Сообщение от Аноним (??) on 03-Апр-12, 12:42 
> Зачем в уме? Кто мешает тот-же дизассемблер использовать?

Никто, только неудобно в внешнюю прогу то скармливать. А тут оно само дизасмить будет :)

Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

17. "Реализация дизассемблера для встраивания в ядро Linux"  +/
Сообщение от Аноним (??) on 03-Апр-12, 12:43 
> Эмм, а что - в линуксе отладочных символов

Сравнил ж-у с пальцем... символы лишь метки. А какой там код по факту... бcдшники такие бcдшники.

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

18. "Реализация дизассемблера для встраивания в ядро Linux"  +/
Сообщение от Аноним (??) on 03-Апр-12, 12:44 
>  Угу, перейдем в ядре на ассемблерные вставки,

Пингвин вообще был сначала i386-only :D

Ответить | Правка | ^ к родителю #11 | Наверх | Cообщить модератору

19. "Реализация дизассемблера для встраивания в ядро Linux"  +/
Сообщение от Аноним (??) on 03-Апр-12, 12:46 
> Впрочем, не буду мешать радоваться новому лисапеду.

Да уж. Если вы не понимаете отличий между дизассемблингом кода и символами - лучше валите отсюда. Зачем нам тормоза и ламеры?

Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

27. "Реализация дизассемблера для встраивания в ядро Linux"  +/
Сообщение от rshadow (ok) on 03-Апр-12, 13:48 
Лучше бы сделали так чтобы оно ссылку на гитхаб давало, на место где упало.

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

Ответить | Правка | ^ к родителю #16 | Наверх | Cообщить модератору

30. "Реализация дизассемблера для встраивания в ядро Linux"  +1 +/
Сообщение от Аноним (??) on 03-Апр-12, 15:01 
Отладочная печать — вот что удобно. И вся необходимая инфраструктура и свободный исходный код для этого есть.

Студент-выкормыш Visual Studio?

Ответить | Правка | ^ к родителю #15 | Наверх | Cообщить модератору

34. "Реализация дизассемблера для встраивания в ядро Linux"  +/
Сообщение от Aleks Revo email(ok) on 03-Апр-12, 15:52 
А что, разве не даёт? ))
Ответить | Правка | ^ к родителю #27 | Наверх | Cообщить модератору

36. "Реализация дизассемблера для встраивания в ядро Linux"  +2 +/
Сообщение от Аноним (??) on 03-Апр-12, 17:51 
>  Эмм, а что - в линуксе отладочных символов для ядра ещё не изобрели, что там дизассемблер нужен? FreeBSD вон полноценный stack trace давно пишет.

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

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

37. "Реализация дизассемблера для встраивания в ядро Linux"  +1 +/
Сообщение от Аноним (??) on 03-Апр-12, 17:52 
> Да уж. Если вы не понимаете отличий между дизассемблингом кода и символами - лучше валите отсюда. Зачем нам тормоза и ламеры?

Нам - и правда незачем. А вот во FreeBSD они - основная ударная сила.

Ответить | Правка | ^ к родителю #19 | Наверх | Cообщить модератору

38. "Реализация дизассемблера для встраивания в ядро Linux"  +/
Сообщение от Аноним (??) on 03-Апр-12, 17:53 
>  Угу, перейдем в ядре на ассемблерные вставки

Breaking news! Они там присутствуют с незапамятных времен!

Ответить | Правка | ^ к родителю #11 | Наверх | Cообщить модератору

40. "Реализация дизассемблера для встраивания в ядро Linux"  +/
Сообщение от Аноним (??) on 03-Апр-12, 23:07 
> Нам - и правда незачем. А вот во FreeBSD они - основная ударная сила.

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

Ответить | Правка | ^ к родителю #37 | Наверх | Cообщить модератору

42. "Реализация дизассемблера для встраивания в ядро Linux"  +/
Сообщение от Аноним (??) on 03-Апр-12, 23:22 
> Breaking news! Они там присутствуют с незапамятных времен!

С самой первой версии :)

Ответить | Правка | ^ к родителю #38 | Наверх | Cообщить модератору

43. "Реализация дизассемблера для встраивания в ядро Linux"  +/
Сообщение от Аноним (??) on 03-Апр-12, 23:32 
> Пошаговая отладка - вот что удобно,

Ну покажи мне инструментарий для пошаговой отладки ядер операционок. Кстати а ты не думал, что ядро ОС - это чуть больше чем твой кусок третьесортного кода? Ядро ОС работает в чуть более сложной ситуации. В частности,
1) Может быть несколько потоков на нескольких ядрах. Они могут быть как-то синхронизированы. В этом случае пошаговая отладка как минимум может сильно изменить наблюдаемую картину.
2) Ядро ОС вообще-то должно реагировать на всякие там аппаратные прерывания и прочая. На некоторые - быстро. Игнорирование этого факта - чревато массой глюков и проблем.
3) Ядро может обеспечивать сервисы типа таймеров. Если ты будешь пошагово - а они не выстрелят в срок и опять будут какие-то глюки.
4) В общем случае ядро делает довольно много работы. Постоянно его шагать ты устанешь.

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

> но как с этим обстоят дела в Линукс - нинай.

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

Ответить | Правка | ^ к родителю #15 | Наверх | Cообщить модератору

45. "Реализация дизассемблера для встраивания в ядро Linux"  +/
Сообщение от pavlinux (ok) on 04-Апр-12, 02:19 
>>  Угу, перейдем в ядре на ассемблерные вставки,
> Пингвин вообще был сначала i386-only :D

А вот и не фига, это у торвальдца просто был i386 =)

Ответить | Правка | ^ к родителю #18 | Наверх | Cообщить модератору

46. "Реализация дизассемблера для встраивания в ядро Linux"  –1 +/
Сообщение от pavlinux (ok) on 04-Апр-12, 02:46 
Надеюсь он будет как Soft-ICE по Ctrl-D выскакивать???
И в командной строке можно будет:
:export vmlinux
:bpх copy_to_user
...
И консолька будет цветастая, для данных, регистров, флагов, стека,... =)

--
Masami Hiramatsu, оу, да это япошка... значит уже можно вовсю юзать...
Японцы сырые бета версии никогда не показывают!

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

47. "Реализация дизассемблера для встраивания в ядро Linux"  +/
Сообщение от pavlinux (ok) on 04-Апр-12, 02:54 
>> Пошаговая отладка - вот что удобно,
> Ну покажи мне инструментарий для пошаговой отладки ядер операционок.

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

> Кстати а ты не думал, что ядро ...

А дальше текст теоретически буйного с мех-мата МГУП

Ответить | Правка | ^ к родителю #43 | Наверх | Cообщить модератору

48. "Реализация дизассемблера для встраивания в ядро Linux"  +/
Сообщение от Аноним (??) on 04-Апр-12, 03:55 
> --
> Masami Hiramatsu, оу, да это япошка... значит уже можно вовсю юзать...
> Японцы сырые бета версии никогда не показывают!

а если все-таки сырая выйдет, то его из японцев исключат? :)

Ответить | Правка | ^ к родителю #46 | Наверх | Cообщить модератору

49. "Реализация дизассемблера для встраивания в ядро Linux"  +/
Сообщение от анон on 04-Апр-12, 07:06 
И где же ты узрел, что я утверждаю подобное? Придумать глупость за оппонента и звонко ее осмеять - это такой "ловкий" полемический прием. Красноглазые собратья оценят. Уже оценили.
Ответить | Правка | ^ к родителю #19 | Наверх | Cообщить модератору

50. "Реализация дизассемблера для встраивания в ядро Linux"  +/
Сообщение от анон on 04-Апр-12, 07:08 
А смысл? Все равно дебаггер запускать.
Ответить | Правка | ^ к родителю #17 | Наверх | Cообщить модератору

51. "Реализация дизассемблера для встраивания в ядро Linux"  +/
Сообщение от Аноним (??) on 04-Апр-12, 07:26 
> Там возможностей отладки побольше чем во фре.

Я задал конкретный вопрос, не надо мне маркетинговое фуфло гнать.

> Кроме того, неужели непонятно что не всем охота держать лишние данные в памяти?

А никто и не держит их в памяти.

Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

52. "Реализация дизассемблера для встраивания в ядро Linux"  +/
Сообщение от Аноним (??) on 04-Апр-12, 07:28 
> Сравнил ж-у с пальцем... символы лишь метки. А какой там код по
> факту... бcдшники такие бcдшники.

И-и-и? Вы в ядре ошибки компилятора отлаживаете? Или профайлите его руками?

Ответить | Правка | ^ к родителю #17 | Наверх | Cообщить модератору

53. "Реализация дизассемблера для встраивания в ядро Linux"  +/
Сообщение от Аноним (??) on 04-Апр-12, 07:30 
> Таблицы символов и полноценный stack trace в линуксе "изобрели", как обычно, на
> десять лет раньше, чем во фре. А новость про совершенно другую
> фичу, которой во фре не будет лет еще двадцать.

KDB всегда умел disassemble :))

> Но фaнатикам бзди, как обычно, лишь бы ляпнуть.

Приятно видеть что линyпсовый контингент не меняется.

Ответить | Правка | ^ к родителю #36 | Наверх | Cообщить модератору

54. "Реализация дизассемблера для встраивания в ядро Linux"  +/
Сообщение от pavlinux (ok) on 04-Апр-12, 14:57 
>> --
>> Masami Hiramatsu, оу, да это япошка... значит уже можно вовсю юзать...
>> Японцы сырые бета версии никогда не показывают!
> а если все-таки сырая выйдет, то его из японцев исключат? :)

Нет, он должен сам себя исключить - прямая трансляция харакири на багтрекере!

Ответить | Правка | ^ к родителю #48 | Наверх | Cообщить модератору

55. "Реализация дизассемблера для встраивания в ядро Linux"  +/
Сообщение от arisu (ok) on 05-Апр-12, 19:41 
> И где же ты узрел, что я утверждаю подобное?

конечно, не утверждаешь. ты как ёжик из анекдота: «я не обгадился, я не обгадился…»

Ответить | Правка | ^ к родителю #49 | Наверх | Cообщить модератору

56. "Реализация дизассемблера для встраивания в ядро Linux"  +/
Сообщение от arisu (ok) on 05-Апр-12, 19:42 
> Студент-выкормыш Visual Studio?

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

Ответить | Правка | ^ к родителю #30 | Наверх | Cообщить модератору

57. "Реализация дизассемблера для встраивания в ядро Linux"  +/
Сообщение от tester (??) on 11-Апр-12, 02:10 
>Ну покажи мне инструментарий для пошаговой отладки ядер операционок.

отладка kgdb

интересно будем посмотреть на такое дизассемблирование поскольку сейчас обычно только с макросами играются а раньше еще утилита crash была

Ответить | Правка | ^ к родителю #43 | Наверх | Cообщить модератору


Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру