вторник сен 22, 2009
вторник сен 15, 2009
понедельник сен 14, 2009
One would expect dwarfdump to handle all types of ELF files, but until recently, dwardump would often crash when dumping debug information of a relocatable file on x64 and sparcv9 binaries. In this post I'll explain the reasons for crash and why relocation records processing is important when reading DWARF.
[Read More]пятница сен 11, 2009
In this post I describe fairly recent and little known dbx feature - support of separate debug info files through .gnu_debuglink section. This feature was introduced with dbx 7.7 (part of Sun Studio 12) and backported to earlier releases (you have to have latest patch for dbx earlier than 7.7). It is probably most useful on Linux systems where one can easily install packages with the debug info for virtually anything.
Here I'll describe how to step into a random libc function with the source code.
среда авг 13, 2008
A new set of cheatsheets, now with rather frequently used utilities for ELF files examination. Includes nm, readelf, pvs and a bunch of other useful programs:
![]() |
![]() |
![]() |
![]() |
NOTE: .svg files are saved as "Inkscape SVG" and are intended to be edited in Inkscape, not to be viewed by common image viewer (which may display garbage instead of some elemets).
Refs:
- Linker and Libraries Guide - Solaris 10 edition of a classic volume.
вторник июл 22, 2008
I don't use mdb in my everyday work, however sometimes it is not only useful, but essential - when you have to debug at low level, which dbx tends to hide from you (for example, dbx usually can't display stack trace past main()). So here are a few commands that I find useful:
![]() |
![]() |
![]() |
![]() |
NOTE: .svg files are saved as "Inkscape SVG" and are intended to be edited in Inkscape, not to be viewed by common image viewer (which may display garbage instead of some elemets).
Refs:
- Modular Debugger (mdb) cheatsheet - more thorogh version that my drawings.
- Solaris Modular Debugger Guide - official document from docs.sun.com
среда июл 16, 2008
I got tired of looking up what this or that SPARC instruction means and where to find %fp register value when you're in a leaf procedure, so I decided to prepare a few small cheatsheets that have this kind of information in very compact form.
I'm posting PDF and source svg here in hope that this info will be useful for other people as well. Anyone's welcomed to download/print/modify those.
![]() |
![]() |
![]() |
![]() |
NOTE: .svg files are saved as "Inkscape SVG" and are intended to be edited in Inkscape, not to be viewed by common image viewer (which may display garbage instead of some elemets).
Refs:
- SPARC Assembly Language - very useful, minimum to no "syntactic sugar", pure information.
- A Laboratory Manual for the SPARC - older, longer reading, but has more coding examples.
- Technical SPARC CPU Resources - lots of links to other pages. Explore the Web.
- SPARC Architecture Manual, Version 9 - ultimate source of information, comes in PDF form.
вторник янв 29, 2008
На сайте developers.sun.ru появилась статья на практически вечную тему - увеличение производительности за счет лучшего использования процессорного кэша. Обычно под этим подразумевается оптимизация доступа к кэшу данных (поскольку управлять доступом к данным автору программы проще); в этой же статье даются советы по более эффективному использованию кэша инструкций, который больше доступен авторам компилятора и компоновщика, чем прикладным программистам. Полное название статьи - "Улучшаем производительность приложения путем перераспределения кода".
На сходную тему есть также статьи на английском языке:
- http://developers.sun.com/solaris/articles/Feo/feo_content.html - статья, в основном, о том как лучше использовать кэширование данных процессором;
- http://blogs.sun.com/solarisdev/entry/new_article_prefetching - как пользоваться прагмами для упреждающей выборки данных (prefetching).
вторник ноя 27, 2007
Страница с вопросами и ответами о Sun Studio -- на русском языке и с актуальной информацией.
Я перевел существующий FAQ о Sun Studio Криса Квенелли, а заодно и обновил содержащуюся там информацию (во время составления оригинального FAQ актуальной была версия 11, теперь же последняя версия Sun Studio - 12).
четверг ноя 22, 2007
Недавно открылся портал разработчиков Sun, содержащий информацию о массе технологий и продуктов, включая высокопроизводительные вычисления, Солярис, DTrace, ZFS и проч. связанные материи, а также Sun Studio - компиляторы C, C++, Fortran и инструменты для разработчиков. На сайте уже есть и будут появлятся новые статьи, анонсы и прочие материалы, нужные разработчикам для линукса и соляриса.
Сейчас на странице о Sun Studio представлены следующие материалы:
- Обзор Sun Studio со скриншотами среды разработки,
- Статья "Поиск ошибок доступа к памяти с использованием Sun Memory Error Discovery Tool"
- Статья "Отладка AMD64 на уровне машинного кода с помощью отладчика dbx"
- Введение в OpenMP: API параллельных программ для многопроцессорных систем с общей памятью
- Замечания о переходе с модели данных ILP32 (32-битный приложения) на LP64
и другие статьи и новости о технологиях Sun в области разработки ПО.
пятница июл 06, 2007
четверг апр 26, 2007
This post describes setup and (mostly) configuration of Nexenta OS on an W2100z Opteron box.
My configuration (most important parts):
- Static IP address
- Machine is in NIS domain
вторник июл 11, 2006
четверг июн 29, 2006
Some notes on upcoming dbx 7.5 patch 121023-02 (sparc). Two important Run-Time Checking feature fixes.
[Read More]This blog copyright 2009 by Maxim Kartashev


![[PDF]](/dbx/resource/pdf.png)
![[Inkscape SVG]](/dbx/resource/svg.png)



