Билл Гейтс, нобелевка и битвы на кухне

Мнения, новости, комментарии
MAKAPOB
Уже с Приветом
Posts: 3210
Joined: 14 Jan 2009 01:42

Re: Билл Гейтс, нобелевка и битвы на кухне

Post by MAKAPOB »

f_evgeny wrote:
Flash-04 wrote: тогда и я могу сказать что в Windows накладные расходы на создание нового процесса-двойника почти нулевые. :pain1: Ведь код уже загружен в память, а Windows использует одну и ту же страницу с кодом (Execute-only) для каждого процесса созданного для того же исполняемого файла.
Сказать-то Вы можете, только это не будет правдой.
fork содает клон процесса. т.е. полную копию, причем даже без копирования, клон получает копию всех ресурсов (без копирования), ну там сокеты, файлы.
В виндовс создается новый процесс с нуля.
Или я заблуждаюсь?
Расскажите, f_evgeny, как можно создать копию без копирования? Как называется этот магический процесс? Мне это жутко пригодится...
Или вы имеете ввиду, что не мы копируем, а кто-то другой? Это было бы большим разочарованием...
Zombie416
Уже с Приветом
Posts: 8881
Joined: 17 Jun 2003 04:41

Re: Билл Гейтс, нобелевка и битвы на кухне

Post by Zombie416 »

f_evgeny wrote:Ну в нулевом же кольце.
А изрядная часть вообще в железе реализована, потому как ну долго прокручивать окошко программными способами. И что?

Я вам еще страшную вещь скажу, есть еще http.sys - в kernel mode HTTP запросы разбирает.
User avatar
f_evgeny
Уже с Приветом
Posts: 10367
Joined: 12 Apr 2001 09:01
Location: Lithuania/UK

Re: Билл Гейтс, нобелевка и битвы на кухне

Post by f_evgeny »

Flash-04 wrote:
f_evgeny wrote:Строго по моим тезисам. Не находите?
не совсем. я уже написал что правильное приложение не падает никогда, и организация в виде процессов ему не нужна.
То что Вы написали, не значит, что все приложения правильные.
По моему, сделали правильно, прикинули историю, уровень требований к надежности и безопасности бюджет, сроки и исходя из этого выбрали архитектуру.
Вы же рассуждаете как "русский программист", надо было все переписать с нуля на новой "правильной" библиотеке.
Дальше, все будет только хуже. Оптимист.
User avatar
f_evgeny
Уже с Приветом
Posts: 10367
Joined: 12 Apr 2001 09:01
Location: Lithuania/UK

Re: Билл Гейтс, нобелевка и битвы на кухне

Post by f_evgeny »

MAKAPOB wrote: Расскажите, f_evgeny, как можно создать копию без копирования? Как называется этот магический процесс? Мне это жутко пригодится...
Или вы имеете ввиду, что не мы копируем, а кто-то другой? Это было бы большим разочарованием...
http://www.google.com/search?q=copy-on-write
Дальше, все будет только хуже. Оптимист.
User avatar
f_evgeny
Уже с Приветом
Posts: 10367
Joined: 12 Apr 2001 09:01
Location: Lithuania/UK

Re: Билл Гейтс, нобелевка и битвы на кухне

Post by f_evgeny »

Zombie416 wrote:
f_evgeny wrote:Ну в нулевом же кольце.
А изрядная часть вообще в железе реализована, потому как ну долго прокручивать окошко программными способами. И что?

Я вам еще страшную вещь скажу, есть еще http.sys - в kernel mode HTTP запросы разбирает.
Зомби, тут идет мирная беседа, а Вы все ищете п-бки. Это не наш стиль.
Дальше, все будет только хуже. Оптимист.
User avatar
Flash-04
Уже с Приветом
Posts: 63377
Joined: 03 Nov 2004 05:31
Location: RU -> Toronto, ON

Re: Билл Гейтс, нобелевка и битвы на кухне

Post by Flash-04 »

f_evgeny wrote:Вы же рассуждаете как "русский программист", надо было все переписать с нуля на новой "правильной" библиотеке.
я рассуждаю о правильном подходе 8) от того что он более дорогой, он не становится менее правильным :umnik1:
Not everyone believes what I believe but my beliefs do not require them to.
MAKAPOB
Уже с Приветом
Posts: 3210
Joined: 14 Jan 2009 01:42

Re: Билл Гейтс, нобелевка и битвы на кухне

Post by MAKAPOB »

f_evgeny wrote:
MAKAPOB wrote: Расскажите, f_evgeny, как можно создать копию без копирования? Как называется этот магический процесс? Мне это жутко пригодится...
Или вы имеете ввиду, что не мы копируем, а кто-то другой? Это было бы большим разочарованием...
http://www.google.com/search?q=copy-on-write
Так я и думал... Развеялись грезы о создании копии без копирования... Вы с утверждениями и формулировками-то поосторожнее - внушаете, понимаешь, пустые надежды... Мне в свое время на физтехе за лабу по физике трояк влепили - за формулировку в принципе правильную, но двусмысленную... Мы же точными науками занимаемся, а не стихи пишем :mrgreen:
User avatar
Flash-04
Уже с Приветом
Posts: 63377
Joined: 03 Nov 2004 05:31
Location: RU -> Toronto, ON

Re: Билл Гейтс, нобелевка и битвы на кухне

Post by Flash-04 »

f_evgeny wrote:
MAKAPOB wrote: Расскажите, f_evgeny, как можно создать копию без копирования? Как называется этот магический процесс? Мне это жутко пригодится...
Или вы имеете ввиду, что не мы копируем, а кто-то другой? Это было бы большим разочарованием...
http://www.google.com/search?q=copy-on-write
так он все равно реализован программно. у x86 нет такой команды - "скопировать страницу при обращении к ней" :-) есть page fault, а OS обрабатывает это исключение. Всего что вы добиваетесь таким подходом - копирование памяти происходит не за один прием, а становится on-demand и размазывается по времени.
Not everyone believes what I believe but my beliefs do not require them to.
User avatar
Flash-04
Уже с Приветом
Posts: 63377
Joined: 03 Nov 2004 05:31
Location: RU -> Toronto, ON

Re: Билл Гейтс, нобелевка и битвы на кухне

Post by Flash-04 »

MAKAPOB wrote:Мне в свое время на физтехе за лабу по физике трояк влепили - за формулировку в принципе правильную, но двусмысленную... Мы же точными науками занимаемся, а не стихи пишем :mrgreen:
[off]это ктож такой зверь был? :) [/off]
Not everyone believes what I believe but my beliefs do not require them to.
Zombie416
Уже с Приветом
Posts: 8881
Joined: 17 Jun 2003 04:41

Re: Билл Гейтс, нобелевка и битвы на кухне

Post by Zombie416 »

f_evgeny wrote:Зомби, тут идет мирная беседа, а Вы все ищете п-бки. Это не наш стиль.
Да какие еще "п-бки"?

С точки зрения производительности имеется смысл запихать все компоненты делающие много системных вызовов в kernel mode. Более того, если получается обеспечить безопасность другими способами (например, тщательным тестированием или трансляцией модулей исполняемых в режиме ядра безопасным компилятором), то это отличный рабочий вариант.

Объясните, почему то что тонкая прослойка между пользовательским кодом и драйвером и железом видеокарточки (что есть более сложные и намного хуже тестированные вещи) исполняется тоже в режиме ядра вызывает у вас такой ужас?
MAKAPOB
Уже с Приветом
Posts: 3210
Joined: 14 Jan 2009 01:42

Re: Билл Гейтс, нобелевка и битвы на кухне

Post by MAKAPOB »

Flash-04 wrote:
MAKAPOB wrote:Мне в свое время на физтехе за лабу по физике трояк влепили - за формулировку в принципе правильную, но двусмысленную... Мы же точными науками занимаемся, а не стихи пишем :mrgreen:
[off]это ктож такой зверь был? :) [/off]
[off]Вы смеетесь, с моим склерозом помнить фамилию препа, влепившего мне трояк 29 лет назад? :) Но урок я запомнил на всю жизнь. Было там чего-то вроде:
- Эта фигня воздействует на эту фигню...
- Чем воздействует?
- Ну, магнитным полем...
- Это "ну, магнитным полем" обходится вам в минус 2 балла.

Может, это Микаелян был... Не помню...
:)
[/off]
User avatar
Flash-04
Уже с Приветом
Posts: 63377
Joined: 03 Nov 2004 05:31
Location: RU -> Toronto, ON

Re: Билл Гейтс, нобелевка и битвы на кухне

Post by Flash-04 »

прикольно :D
Not everyone believes what I believe but my beliefs do not require them to.
User avatar
f_evgeny
Уже с Приветом
Posts: 10367
Joined: 12 Apr 2001 09:01
Location: Lithuania/UK

Re: Билл Гейтс, нобелевка и битвы на кухне

Post by f_evgeny »

MAKAPOB wrote: Так я и думал... Развеялись грезы о создании копии без копирования... Вы с утверждениями и формулировками-то поосторожнее - внушаете, понимаешь, пустые надежды... Мне в свое время на физтехе за лабу по физике трояк влепили - за формулировку в принципе правильную, но двусмысленную... Мы же точными науками занимаемся, а не стихи пишем :mrgreen:
Товарищ МАКАРОВ, Вы же учились на физтехе, а пишете как журналист. Какие-то эмоции. Я не виноват в том, что Вы не знакомы с принятой терминологией:
In computing, when a process forks, it creates a copy of itself....

The fork operation creates a separate address space for the child. The child process has an exact copy of all the memory segments of the parent process, though if copy-on-write semantics are implemented actual physical memory may not be assigned (i.e., both processes may share the same physical memory segments for a while). Both the parent and child processes possess the same code segments, but execute independently of each other.
Вы опять на тройку напрашиваетесь.
Golyadkin wrote: Так сервера писали лет двадцать пять тому назад. Когда число одновременных запросов исчислялось сотнями.
Товарищ Голядкин, не люблю такую манеру изложения, попахивает журноламерством. Мне больше нравится так: Прцессы по сравнению с тредами потребляют на 20-30 процентов больше процессорного времени на переключение контекста.
Дальше, все будет только хуже. Оптимист.
User avatar
f_evgeny
Уже с Приветом
Posts: 10367
Joined: 12 Apr 2001 09:01
Location: Lithuania/UK

Re: Билл Гейтс, нобелевка и битвы на кухне

Post by f_evgeny »

Flash-04 wrote:Всего что вы добиваетесь таким подходом - копирование памяти происходит не за один прием, а становится on-demand и размазывается по времени.
А вот тут Вы не совсем правы, добиваемся мы того, что все окружение, которое мы читаем мы получаем по наследству, и только то, куда мы пишем нам нужно выделять.
Очевидно, мне кажется.
Дальше, все будет только хуже. Оптимист.
User avatar
Slava V
Уже с Приветом
Posts: 9142
Joined: 30 Jun 2004 15:49

Re: Билл Гейтс, нобелевка и битвы на кухне

Post by Slava V »

f_evgeny wrote:не люблю такую манеру изложения, попахивает журноламерством.
а вот такая манера не попахивает? :D
f_evgeny wrote:Виндовс кстати сделал синонимами термины софт и ненадежность.
User avatar
f_evgeny
Уже с Приветом
Posts: 10367
Joined: 12 Apr 2001 09:01
Location: Lithuania/UK

Re: Билл Гейтс, нобелевка и битвы на кухне

Post by f_evgeny »

Zombie416 wrote:Объясните, почему то что тонкая прослойка между пользовательским кодом и драйвером и железом видеокарточки (что есть более сложные и намного хуже тестированные вещи) исполняется тоже в режиме ядра вызывает у вас такой ужас?
Такая архитектура мне нравится больше по многим причинам, в частности я считаю, что это более грамотный дизайн и дает большие возможности для изменений с минимальными затратами. Вы, конечно, можете иметь другое мнение.
Дальше, все будет только хуже. Оптимист.
User avatar
f_evgeny
Уже с Приветом
Posts: 10367
Joined: 12 Apr 2001 09:01
Location: Lithuania/UK

Re: Билл Гейтс, нобелевка и битвы на кухне

Post by f_evgeny »

Slava V wrote:
f_evgeny wrote:не люблю такую манеру изложения, попахивает журноламерством.
а вот такая манера не попахивает? :D
f_evgeny wrote:Виндовс кстати сделал синонимами термины софт и ненадежность.
Извините, погорячился, больше не повторится.
Дальше, все будет только хуже. Оптимист.
User avatar
Flash-04
Уже с Приветом
Posts: 63377
Joined: 03 Nov 2004 05:31
Location: RU -> Toronto, ON

Re: Билл Гейтс, нобелевка и битвы на кухне

Post by Flash-04 »

f_evgeny wrote:
Flash-04 wrote:Всего что вы добиваетесь таким подходом - копирование памяти происходит не за один прием, а становится on-demand и размазывается по времени.
А вот тут Вы не совсем правы, добиваемся мы того, что все окружение, которое мы читаем мы получаем по наследству, и только то, куда мы пишем нам нужно выделять.
Очевидно, мне кажется.
а фиг :twisted: вы лучше подумайте вот над каким противоречием: если у вас есть область динамических данных, то как обеспечить чтобы потомок поимел её точную копию, если она сразу не скопирована была? либо надо копировать сразу, либо строить довольно сложный диспетчер памяти который будет такие изменения отслеживать, либо тупо отображать одну и ту же writable страницу памяти в оба адресных пространства. При этом первые два подхода будут дорогостоящими, а последний - напрочь убъет так восхвалаемую вами концепцию безопасности процессов и попутно создаст трудно уловимые баги.
Так что куда ни кинь - всюду клин :twisted:
что все окружение, которое мы читаем мы получаем по наследству
вы читаете что я пишу? В Windows окружение "близнецов" шарится.
Not everyone believes what I believe but my beliefs do not require them to.
Zombie416
Уже с Приветом
Posts: 8881
Joined: 17 Jun 2003 04:41

Re: Билл Гейтс, нобелевка и битвы на кухне

Post by Zombie416 »

f_evgeny wrote:Такая архитектура мне нравится больше по многим причинам, в частности я считаю, что это более грамотный дизайн и дает большие возможности для изменений с минимальными затратами. Вы, конечно, можете иметь другое мнение.
В чем грамотный дизайн?

Задача. У вас есть видеокарта которая умеет, посредством собственного драйвера и аппаратно, исполнять все или почти все вызовы некоторого API (GDI/OpenGL/DirectX не суть важно). Все это не просто в kernel mode, но еще и с электрическим доступом к шине, собственному вентилятору и нагревателю на сотни ватт - при злоупотреблении может черный дым из корпуса повалить :)

И у вас есть пользовательская программа, в user mode, делающая вызовы этого API.

Вопрос: какая разница где находится пол-процента complexity обеспечивающей доставку сообщений от user mode к драйверу? Притом что засовывание в kernel mode существенно улучшает производительность. А производительность в данном вопросе имеет колоссальное значение.
MAKAPOB
Уже с Приветом
Posts: 3210
Joined: 14 Jan 2009 01:42

Re: Билл Гейтс, нобелевка и битвы на кухне

Post by MAKAPOB »

f_evgeny wrote:Товарищ МАКАРОВ, Вы же учились на физтехе, а пишете как журналист. Какие-то эмоции. Я не виноват в том, что Вы не знакомы с принятой терминологией ... Вы опять на тройку напрашиваетесь.
Цитируем вас:
fork содает клон процесса. т.е. полную копию, причем даже без копирования, клон получает копию всех ресурсов (без копирования),
Тройка.
(Полагаете, преп не знал, что фигня на фигню воздейтвует именно магнитным полем? Был не знаком с терминологией? Нет - он учил не делать заявлений, которые выставят заявляющего... ммм... в ложном свете.
Человека, сделавшего заявление, приведенное выше, я сочту полным невеждой)
User avatar
f_evgeny
Уже с Приветом
Posts: 10367
Joined: 12 Apr 2001 09:01
Location: Lithuania/UK

Re: Билл Гейтс, нобелевка и битвы на кухне

Post by f_evgeny »

Flash-04 wrote:
f_evgeny wrote:
Flash-04 wrote:Всего что вы добиваетесь таким подходом - копирование памяти происходит не за один прием, а становится on-demand и размазывается по времени.
А вот тут Вы не совсем правы, добиваемся мы того, что все окружение, которое мы читаем мы получаем по наследству, и только то, куда мы пишем нам нужно выделять.
Очевидно, мне кажется.
а фиг :twisted: вы лучше подумайте вот над каким противоречием: если у вас есть область динамических данных, то как обеспечить чтобы потомок поимел её точную копию, если она сразу не скопирована была? либо надо копировать сразу, либо строить довольно сложный диспетчер памяти который будет такие изменения отслеживать, либо тупо отображать одну и ту же writable страницу памяти в оба адресных пространства. При этом первые два подхода будут дорогостоящими, а последний - напрочь убъет так восхвалаемую вами концепцию безопасности процессов и попутно создаст трудно уловимые баги.
Так что куда ни кинь - всюду клин :twisted:
что все окружение, которое мы читаем мы получаем по наследству
вы читаете что я пишу? В Windows окружение "близнецов" шарится.
- По третьему варианту и багов нет. В основном базируется на механизмах процессора. Однако переписывать главу из книжки я не буду.
- Вы про CreateProcess? Если да, то например у Танненбаума написано по другому, все создается заново.
Дальше, все будет только хуже. Оптимист.
User avatar
f_evgeny
Уже с Приветом
Posts: 10367
Joined: 12 Apr 2001 09:01
Location: Lithuania/UK

Re: Билл Гейтс, нобелевка и битвы на кухне

Post by f_evgeny »

f_evgeny wrote:
Flash-04 wrote:
f_evgeny wrote:
Flash-04 wrote:Всего что вы добиваетесь таким подходом - копирование памяти происходит не за один прием, а становится on-demand и размазывается по времени.
А вот тут Вы не совсем правы, добиваемся мы того, что все окружение, которое мы читаем мы получаем по наследству, и только то, куда мы пишем нам нужно выделять.
Очевидно, мне кажется.
а фиг :twisted: вы лучше подумайте вот над каким противоречием: если у вас есть область динамических данных, то как обеспечить чтобы потомок поимел её точную копию, если она сразу не скопирована была? либо надо копировать сразу, либо строить довольно сложный диспетчер памяти который будет такие изменения отслеживать, либо тупо отображать одну и ту же writable страницу памяти в оба адресных пространства. При этом первые два подхода будут дорогостоящими, а последний - напрочь убъет так восхвалаемую вами концепцию безопасности процессов и попутно создаст трудно уловимые баги.
Так что куда ни кинь - всюду клин :twisted:
что все окружение, которое мы читаем мы получаем по наследству
вы читаете что я пишу? В Windows окружение "близнецов" шарится.
- По третьему варианту и багов нет. В основном базируется на механизмах процессора. Однако переписывать главу из книжки я не буду.
- Вы про CreateProcess? Если да, то например у Танненбаума написано по другому, все создается заново.
Дальше, все будет только хуже. Оптимист.
User avatar
f_evgeny
Уже с Приветом
Posts: 10367
Joined: 12 Apr 2001 09:01
Location: Lithuania/UK

Re: Билл Гейтс, нобелевка и битвы на кухне

Post by f_evgeny »

MAKAPOB wrote:Цитируем вас:
Если что-то непонятно, я дал ссылку на литературу. Если и в литературе, что-то непонятно, спрашивайте, я не гуру, но постараюсь помочь. А мне в свою очередь непонятно, чего Вы хотите.
Дальше, все будет только хуже. Оптимист.
User avatar
f_evgeny
Уже с Приветом
Posts: 10367
Joined: 12 Apr 2001 09:01
Location: Lithuania/UK

Re: Билл Гейтс, нобелевка и битвы на кухне

Post by f_evgeny »

Zombie416 wrote:Вопрос: какая разница где находится пол-процента complexity обеспечивающей доставку сообщений от user mode к драйверу? Притом что засовывание в kernel mode существенно улучшает производительность. А производительность в данном вопросе имеет колоссальное значение.
Извините, Зомби, у меня кончается время. Постараюсь обдумать и ответить завтра. ОК?
Дальше, все будет только хуже. Оптимист.
User avatar
Flash-04
Уже с Приветом
Posts: 63377
Joined: 03 Nov 2004 05:31
Location: RU -> Toronto, ON

Re: Билл Гейтс, нобелевка и битвы на кухне

Post by Flash-04 »

f_evgeny wrote:- По третьему варианту и багов нет. В основном базируется на механизмах процессора. Однако переписывать главу из книжки я не буду.
- Вы про CreateProcess? Если да, то например у Танненбаума написано по другому, все создается заново.
похоже у нас немного разное представление как работает механизм трансляции и защиты памяти в x86 :-) поясните пожалуйста.

А что CreateProcess? AFAIK Windows не держит копии страниц с одим и тем же кодов для разных процессов запущенных из одного и того же файла.
Not everyone believes what I believe but my beliefs do not require them to.

Return to “Политика”