.flat section

Тема в разделе "WASM.BEGINNERS", создана пользователем galenkane, 26 янв 2021.

  1. galenkane

    galenkane Active Member

    Публикаций:
    0
    Регистрация:
    13 янв 2017
    Сообщения:
    269
    Почему создается эта секция при компиляции?
     
  2. Mikl___

    Mikl___ Супермодератор Команда форума

    Публикаций:
    14
    Регистрация:
    25 июн 2008
    Сообщения:
    3.708
    galenkane,
    Создается чем? MASM, NASM, FASM, GAS? Хорошо бы еще увидеть bat-файл который вы используете

    Опция линкера /SECTION

    Опция командной строки компоновщика link.exe /SECTION:name,[[!]{DEKPRSW}][,ALIGN=#] позволяет принудительно назначать атрибуты секциям PE-файла. Для секции можно задать один или несколько атрибутов. Следует задавать все атрибуты, которые должна иметь секция; если какой-либо знак атрибута не указан, то его бит будет отключен. Если не указан атрибут R, W или E, то существующее состояние чтения, записи или исполнения остается неизмененным. Чтобы инвертировать атрибут, перед его символом указывают знак «!». С помощью параметра ALIGN=# можно задать значение выравнивания для конкретной секции. Значения знаков атрибутов приведены в следующей таблице.
    букваатрибутзначениеперевод
    DDiscardableMarks the section as discardableСекция помечается как выгружаемая
    EExecuteThe section is executableСекция является выполняемой
    KCacheableMarks the section as not cacheableСекция помечается как некэшируемая
    PPageableMarks the section as not pageableСекция помечается как секция без страничной организации
    RReadAllows read operations on dataДопускаются операции чтения данных
    SSharedShares the section among all processes that load the imageСекция совместно используется всеми процессами, загружающими образ
    WWriteAllows write operations on dataДопускаются операции записи данных
    Допустим вы хотите для секции с именем «.text» (содержащей код программы) и уже имеющей атрибуты R (доступна для чтения) и E (исполнимая), добавить атрибут W (доступна для записи). Тогда:
    /SECTION:.text,W

    Теоретически в MASM и NASM вы можете создать экзешник с любыми именами секций (в том числе и ".flat") не более 8 символов и задать этим секциям любые атрибуты

    Скорее всего ответ на вопрос в следующем. В некоторых исходных файлах для fasm есть следующая строка
    Перевести строку сможете самостоятельно? :)
     
    M0rg0t и galenkane нравится это.
  3. galenkane

    galenkane Active Member

    Публикаций:
    0
    Регистрация:
    13 янв 2017
    Сообщения:
    269
    да, очевидно из-за фасма и создается..
     
    eshmereum нравится это.