The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

LoadLibrary, прослойка для загрузки Windows DLL в Linux-прил..., opennews (?), 13-Мрт-20, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


30. "LoadLibrary, прослойка для загрузки Windows DLL в Linux-прил..."  +/
Сообщение от Аноним (30), 13-Мрт-20, 15:28 
Что именно завязано? Для загрузки библиотеки надо-то отобразить память (mmap) и настроить атрибуты страниц. Релокации и экспорт обрабатываются собственным кодом. Если dll ничего не импортирует, в первом приближении, этого достаточно, что бы вызывать её функции (без учёта исключений).
Ответить | Правка | Наверх | Cообщить модератору

34. "LoadLibrary, прослойка для загрузки Windows DLL в Linux-прил..."  +2 +/
Сообщение от Аноним (4), 13-Мрт-20, 15:41 
Может у меня конечно специфичные библиотеки были, или сейчас наблюдаем последствия распространения кроссплатформенного ПО, но то что я отлаживал было сильно завязано на ядро, системные либы и винапи. От такого кода в других системах толку мало. Какие-то функции конечно можно дёргать независимо, но их мало и они примитивные — можно и переписать.

>dll ничего не импортирует

Что-то не помню таких, наверняка они где-то существуют.

Ответить | Правка | Наверх | Cообщить модератору

37. "LoadLibrary, прослойка для загрузки Windows DLL в Linux-прил..."  +/
Сообщение от Аноним (30), 13-Мрт-20, 15:50 
Наверное, какие-то импортируемые функции реализуют. У них ограниченный список применений, в "видеокодеках, антивирусных сканерах, библиотеках распаковки данных, декодировщиках изображений" не так много надо.
Ответить | Правка | Наверх | Cообщить модератору

69. "LoadLibrary, прослойка для загрузки Windows DLL в Linux-прил..."  +/
Сообщение от Павел Отредиезemail (?), 13-Мрт-20, 21:24 
Релоакации и экспорт обрабатываются чем? Поясни пожалуйста. Я знаю, что если программа грузится по виртуальном адресу 0, то релокации уже содержат правильные цифры. А если по Base address, то релокации надо выполнять, как это dll сама выполняет? Это лоадер делает.
Ответить | Правка | К родителю #30 | Наверх | Cообщить модератору

103. "LoadLibrary, прослойка для загрузки Windows DLL в Linux-прил..."  +1 +/
Сообщение от Аноним (30), 14-Мрт-20, 08:41 
Загрузчик из новости и настраивает релоки. Под "собственным кодом" подразумевался код, написанный Гуглом (или, скорее, авторами NDISwrapper-а?), а не LoadLibrary() из Win32 API. То есть сам загрузчик не завязан на ntdll.dll и kernel32.dll.

Ответить | Правка | Наверх | Cообщить модератору

99. "LoadLibrary, прослойка для загрузки Windows DLL в Linux-прил..."  +1 +/
Сообщение от SR_team (ok), 14-Мрт-20, 05:51 
> надо-то отобразить память (mmap)

Надо еще разбрасать секции по памяти, а не просто их отобразить

Ответить | Правка | К родителю #30 | Наверх | Cообщить модератору

102. "LoadLibrary, прослойка для загрузки Windows DLL в Linux-прил..."  +/
Сообщение от Аноним (30), 14-Мрт-20, 08:34 
Вспомнился Граф Володуа и его фундаментальный труд "об упаковщиках в последний раз". Вот для него разбор заголовков PE был делом не простым, специалисты долго разжёвывали.))
Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру