|
|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Dmitry Sidoroff 2:5020/1124.5 23 Dec 2001 00:52:41 To : Zahar Kiselev Subject : перенос софта в Линукс -------------------------------------------------------------------------------- 22 Дек 01 07:03, Zahar Kiselev -> Vladimir Bormotov: ZK> Еще раз повторю - программа уже есть, написана и работает. Основная ZK> часть в ней - "прикладная" логика, которой все равно под какой ZK> системой работать. Если тебе так угодно - задачу можно сформулировать ZK> как "переписать нижний уровень работы с сетью так, чтобы добиться ZK> переносимости". Естественно предполагается использование gcc, в том ZK> числе и для сборки на виндах. Вот это уже понятнее, но все равно подземный стук. Объем? Сколько сил предполагается потратить? Какой % task-исходника? Как организована программа? Пока могу предложить такой вариант. Подготовка к портированию. 1. Делаешь виндовым сервисом с выносом морды в отдельный экзешник. 2. Выносишь системно-зависимый код в особо обученные места. 3. Убираешь зависимость от byte-order с помощью макросов/процедур. И от типов, заменяя все int-ы и пр. на что-то типа int32. 4. Перелопачиваешь работу с сокетами. Hастоятельно рекомендуется отлаживатся после каждого этапа. Само портирование после этого довольно тривиально. Имхо основная проблема будет с сокетами, в виндах три способа работы с ними. Юниксовый (почти 1:1), 3.1 виндов (через хуки) и NTишный (через overlaped). Понятно, что тебе либо придется переписать софтину под первый, но в общем случае этот метод работы в винде тормознутый, либо делать врапер. ZK> Вот потому и спрашивал о различиях реализации языка в gcc и msvc. В С не натыкался, в ++ минимальные. Dmitry --- GoldED/W32 3.0.0-dam9 * Origin: Общество специальной справедливости. (2:5020/1124.5) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/38773c252c02.html, оценка из 5, голосов 10
|