Форум программистов, компьютерный форум, киберфорум
Наши страницы
Assembler: Linux
Войти
Регистрация
Восстановить пароль
 
politoto
135 / 127 / 7
Регистрация: 23.07.2018
Сообщений: 279
1

Небольшой elf32-i386 в нулевой странице адресного пространства

10.09.2018, 15:21. Просмотров 93. Ответов 0

Сделал себе такой ELF для 32-разрядного линукса из двух заголовков с одним сегментом:
Код
00000000  7f 45 4c 46 01 01 01 00  00 00 00 00 b0 01 cd 80  |.ELF............|
00000010  02 00 03 00 01 00 00 00  0c 00 00 00 34 00 00 00  |........T...4...|
00000020  00 00 00 00 00 00 00 00  34 00 20 00 01 00 28 00  ||.......4. ...(.|
00000030  00 00 00 00 01 00 00 00  0c 00 00 00 0c 00 00 00  |........T...T...|
00000040  0c 00 00 00 04 00 00 00  04 00 00 00 07 00 00 00  |T...............|
00000050  00 00 00 00                                       |....|
00000054
Смещение в файле равно виртуальному адресу загрузки.
В одном из симуляторов работает, как задумано.
Насколько корректно такое расположение кода для реальной 32-разрядной системы?

Код
/var/root # objdump -x sse                                                      
                                                                                
sse:     file format elf32-i386                                                 
sse                                                                             
architecture: i386, flags 0x00000102:                                           
EXEC_P, D_PAGED                                                                 
start address 0x0000000c                                                        
                                                                                
Program Header:                                                                 
    LOAD off    0x0000000c vaddr 0x0000000c paddr 0x0000000c align 2**0         
         filesz 0x00000004 memsz 0x00000004 flags rwx
Код
/var/root # readelf -e sse                                                      
ELF Header:                                                                     
  Magic:   7f 45 4c 46 01 01 01 00 00 00 00 00 b0 01 cd 80                      
  Class:                             ELF32                                      
  Data:                              2's complement, little endian              
  Version:                           1 (current)                                
  OS/ABI:                            UNIX - System V                            
  ABI Version:                       0                                          
  Type:                              EXEC (Executable file)                     
  Machine:                           Intel 80386                                
  Version:                           0x1                                        
  Entry point address:               0xc                                        
  Start of program headers:          52 (bytes into file)                       
  Start of section headers:          0 (bytes into file)                        
  Flags:                             0x0                                        
  Size of this header:               52 (bytes)                                 
  Size of program headers:           32 (bytes)                                 
  Number of program headers:         1                                          
  Size of section headers:           40 (bytes)                                 
  Number of section headers:         0                                          
  Section header string table index: 0                                          
                                                                                
There are no sections in this file.                                             
                                                                                
Program Headers:                                                                
  Type           Offset   VirtAddr   PhysAddr   FileSiz MemSiz  Flg Align       
  LOAD           0x00000c 0x0000000c 0x0000000c 0x00004 0x00004 RWE 0
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.09.2018, 15:21
Ответы с готовыми решениями:

Просмотрщики разбивки адресного пространства
Народ, подскажите какую-нибудь утилитку, которая отображает как система разбивает всё адресное...

Проверка адресного пространства ProbeForRead
Добрый день. Подскажите пожалуйста, если мы используем функцию ProbeForRead для проверки...

Конечность адресного пространства IPv4?
Помогите пожалуйста разложить все по полочкам в мозгу. Вот все шумели о том что скоро не будет...

Визуальное отображение фрагментации адресного пространства
Добрый день Задача: у провайдера есть пул белых адресов. Для визуальной оценки использования его...

Расчет конфигурации и планирование адресного пространства
объясните мне что означает IP1-IP6 и IPbr, и если не трудно напишите что туда записать

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.09.2018, 15:21

Простой сканер адресного пространства процесса
Привет всем. Стоит задача написать простенький сканер адресового пространства процесса. Т.е. поиск...

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

Заворот адресного пространства 3тб server 2003 r2
Столкнулся с "заворачиванием" 3тб винта. Система Windows Server 2003 R2, контроллер Intel ICH10R....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru