Вообще-то на Хабре уже были статьи про Go-ассемблер, но они перегружены мудрёными терминами, разной низкоуровневой спецификой и не дают ясного понимания когда и зачем нам помогут помочь ассемблерные функции.В этой статье я постараюсь дать больше сути, необходимый минимум, чтобы стало ясно, в каких случаях и зачем нам может помочь ассемблер в Го. Ну и с чем его едят. Читать далее
В этой части (первая тут) мы поговорим о структуре Go-программы с использованием ассемблера, о хитростях макросов. Будем писать дальше нашу ассемблерную функцию. Читать далее
Макросы - это механизм генерации кода во время компиляции. В отличие от макросов в C, где препроцессор работает исключительно на уровне текста, макросы Rust работают с токенами языка, а не с текстом программы. Процедурные макросы получают TokenStream и возвращают новый TokenStream, а декларативные сопоставляют поток токенов с заданными шаблонами. После раскрытия макросов полученный код компилируется так же, как если бы его написал программист вручную. Читать далее
Структура образов разделов, содержащих файловую систему. Часть 2. Начало публикации читайте в Часть 1. ОглавлениеЧасть 2 3.2._sparsechunk-файлы. 3.2.1.Структура _sparsechunk-файлов. 3.2.2.Примеры работы с _sparsechunk-файлами. 4.Создание dat-файлов. 4.1.Структура dat-файлов. 4.1.1.Структура transfer_list-файла.…