HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > ИНФО > Статьи
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 03.01.2012, 23:55
_nic
Постоянный
Регистрация: 05.05.2006
Сообщений: 743
Провел на форуме:
2982851

Репутация: 107


По умолчанию

Как линкеру сказать что нужна еще одна секция?
 
Ответить с цитированием

  #2  
Старый 04.01.2012, 12:56
slesh
Познавший АНТИЧАТ
Регистрация: 05.03.2007
Сообщений: 1,985
Провел на форуме:
3288241

Репутация: 3349


По умолчанию

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

#pragma code_seg(push, ".mysection")

код

#pragma code_seg(pop)

Для создания секций другого рода, юзаются другие имена (из-за прав доступа):

code_seg - RE - для кода

bss_seg - RW + для глобальный не инициализированных переменных (т.е. секция есть тока в памяти, и в файле её нет)

data_seg - RW - для глобальных инициализированных переменных

const_seg - RO - для глобальных инициализированных констант
 
Ответить с цитированием

  #3  
Старый 17.01.2012, 17:40
greki_hoy
Познающий
Регистрация: 04.03.2010
Сообщений: 32
Провел на форуме:
32525

Репутация: 23
По умолчанию

за одно и этот док тоже по теме

http://vxheavens.com/lib/vsm00.html
 
Ответить с цитированием

  #4  
Старый 14.09.2021, 17:18
mirvirusov
Новичок
Регистрация: 11.06.2021
Сообщений: 29
Провел на форуме:
10730

Репутация: 0
По умолчанию

Цитата:
Сообщение от slesh  

_nic, а зачем тебе говорить? просто сделай глобальные данные или код в нужной тебе секции и она сама создастся.
#pragma code_seg(push, ".mysection")
код
#pragma code_seg(pop)
Для создания секций другого рода, юзаются другие имена (из-за прав доступа):
code_seg - RE - для кода
bss_seg - RW + для глобальный не инициализированных переменных (т.е. секция есть тока в памяти, и в файле её нет)
data_seg - RW - для глобальных инициализированных переменных
const_seg - RO - для глобальных инициализированных констант
есть obj файл скомпилированный ассемблером fasm с функцией которая линкуется к проекту на Си, задача - поставить экспортируемую функцию либо после кода на Си, либо заинлайнить ее, пробовал с разными опциями оптимизации , __forceinline не срабатывает, но если добавить этот модификатор к любой другой функции в коде на Си, то она инлайнится. Явное указание порядка следования функций через pragma code_seg(...) так же не помогает
 
Ответить с цитированием

  #5  
Старый 21.09.2021, 22:27
b3
Постоянный
Регистрация: 05.12.2004
Сообщений: 647
Провел на форуме:
1698585

Репутация: 818


По умолчанию

Цитата:
Сообщение от DooD  

молодец.надо будет детально изучить.блин пора си учить.)
msfvenom доки покури и учить ничего не нужно))
 
Ответить с цитированием
Ответ





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.