· Начало · Статистика · WASM.RU · Noir.Ru ·

 WASM Phorum (Оффлайн - 24.11.2003) —› WASM.HEAP —› Стоит ли линковать MSVCRT.LIB статически?

<< . 1 . 2 . 3 . >>

Посл.отвђт Сообщенiе


Дата: Окт 3, 2003 22:27:00 · Поправил: Kba3iM0go

volodya
НЕ ОПИРАТЬСЯ НА ДИРЕКТОРИЮ ВИНДЫ. НИКОГДА. НИ ЗА ЧЕМ!
Ну почему? Если так мыслить - то вообще надо "все свое носить с собой". Так можно в инсталятор и kernel32.dll ложить.
Можно считать, что у 99,9% процентов пользователей при исчезновении msvcrt не будет работать еще куча програм, кроме твоей. Потому что они в своем преобладающем количестве используют msvcrt. А тогда какой резон, что твоя программа работает, когда у юзера не будет работать, например, ворд или иексплорер? Все равно он понесет машину на переставляние ОСи...

В общем - я думаю, что msvcrt не надо статически прилинковывать, а msvcrt.dll не надо включать в инсталятор.

А по поводу фактической реализации - в чем проблема? В вызове call [function] vs call function? Все равно загрузчик хоть один раз просмотрит таблицу експорта, а значит адрес будет лежать в кеше, а значит время выполнения будет одно и то же. Первый вариант даже лучше - можно организовать наследование и полиморфизм функций :)))


Дата: Окт 3, 2003 22:32:53

А по поводу фактической реализации - в чем проблема?

Гы-гы.


Дата: Окт 3, 2003 22:35:21

volodya
Гы-гы
?


Дата: Окт 3, 2003 22:44:06

Что до фактической реализации. Разговор идет о разнице кода C, что внутри msvcrt. Ты знаешь, сколько новых функций проверки стека, строк, поинтеров и прочей радости появилось в VS.NET+? По поводу таблицы экспорта никто ничего и не говорит. Что до адреса в кеше - звучит классно. Что за кеш такой, просвети.


Дата: Окт 3, 2003 22:46:46 · Поправил: Quantum

Kba3iM0go
А по поводу фактической реализации - в чем проблема?
Сегодня _random использует алгоритм by Donald Knuth. А что будет завтра? Тоже самое относится к любой ф-ции из MSVCRT.

[пока вспоминал имя Кнута, Володя уже ответил]


Дата: Окт 3, 2003 22:50:20

volodya
Разговор идет о разнице кода C, что внутри msvcrt.

Нет, но если ты предлагаешь заменить msvcrt на что-либо другое (не знаю как оно там в .net называется)...

По поводу таблицы экспорта никто ничего и не говорит.

это хорошо :)

Что за кеш такой, просвети.

Кеш процессоров iAPx86. Потому что при вызове call [addr] надо одно лишнее обращение в ОЗУ, а вот если туда обращение уже было (что сделал загрузчик), то никуда в ОЗУ ссылаться не надо, ибо адрес уже есть вот именно в этом кеше...

PS: Если откровенно что-то гоню - про сказать, ибо я сейчас уже за 4й бутылкой пива. Бухгалтера еще работают, бедолаги, а я их жду чтобы... ну в общем - чтобы :)))


Дата: Окт 3, 2003 22:52:26

Quantum

Сегодня _random использует алгоритм by Donald Knuth. А что будет завтра?

А какая разница? Если ты собрался использовать стандартные библиотеки - то должен быть к етому готов.
Если не нравиться быть готовым - пиши свои функции. Все равно прилинкуеш кучу ненужного барахла...


Дата: Окт 3, 2003 22:59:28

ибо я сейчас уже за 4й бутылкой пива
надо одно лишнее обращение в ОЗУ, а вот если туда обращение уже было

Ты знаешь, без обид, ты протрезвей сначала. Потом вернись сюда еще раз. Перечитай что написал, внимательно только перечитай, так как что такое кеш, я знаю неплохо, и что такое его очистка - тоже. Так вот, перечитай, поправь СВОИ ошибки и перепирательства, а потом попытайся надрать мне задницу еще раз, потому что ты здесь уже просто откровенно не прав. Вот и усе ;) Жду тебя трезвого.


Дата: Окт 3, 2003 23:02:50

volodya

Вообще-то я никому задницу надирать не собираюсь. И ни на кого не наезжаю. Просто учавствую в диалоге.

В чем я конкретно не прав? Хотя бы обознач...

Я что - не правильно понял постановку вопроса?


Дата: Окт 3, 2003 23:04:39

Ладно, замяли. Ухожу. Если что не так - искренне извиняюсь...


Дата: Окт 4, 2003 12:29:43

PS: Если откровенно что-то гоню - про сказать, ибо я сейчас уже за 4й бутылкой пива. Бухгалтера еще работают, бедолаги, а я их жду чтобы... ну в общем - чтобы :)))

Мдяя, я что-то тоже начинаю прозревать...
Про call и про кешь?
Где связь??
А причём здесь ТАБЛИЦА ИМПОРТА/ЭКСПОРТА?? %)))


Дата: Окт 4, 2003 12:33:38

Я уже протрезвел :) Сорі, конечно
Про кеш я точно прогнал.

Но вот вопрос остался - стоил ли линковать...


Дата: Окт 4, 2003 12:35:38

Kba3iM0go
В чем я конкретно не прав? Хотя бы обознач...

Хотя в том, что пьёшь четвёртую бутылку пива один, и даже меня не пригласил.. :))
Вот так!!!

А насчёт твоего поста я согласен с Володей, объясни, что ты имел ввиду?


Дата: Окт 4, 2003 12:40:02

Edmond
А насчёт твоего поста я согласен с Володей, объясни, что ты имел ввиду?

Ну, насколько я помню :) идея была в том, что если использовать msvcrt.dll и если линковать ее статически, то время доступа к функциям будет одинаковое (или практически одинаковое).
Ну а насчет кеша - конечно фигня, в любом случае, первое же переключение задач его сбросит.

Я предлагаю забыть про гон с кешем - спишите на пьяную голову...


Дата: Окт 5, 2003 23:45:59

Да перемать растак, разве не очевидно?
Тебе кто-нибудь гарантирует, что функция будет работать ОДИНАКОВО в msvcrt под 9x и 2k? НЕТ. Никто. И что тут тогда дальше мусолить?

<< . 1 . 2 . 3 . >>


Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.067