psilogic: (Default)
psilogic ([personal profile] psilogic) wrote2008-12-20 12:11 pm

Секрет фирмы

Наша автопромышленность выпускает говно на колесах, которое даже при диких пошлинах на иномарки покупать не желают.

Мне вот стало интересно, как же так это получается? Самолеты и космические корабли у нас строят не хуже, чем у людей. Со своей спецификой, конечно, но. А тут - сколько ни пытаются реанимировать отечественную автопромышленность, а "она упорно ползет на кладбище." Прямо "секрет фирмы" какой-то. В чем же дело?

P.S. Моя - не автомобилист, так что я могу совсем не понимать чего-то очевидного водителю со стажем. Прошу не стесняться писать прописные истины и подробности :] Также любые холивары и разборки в коментах только приветствуются :]

[identity profile] psilogic.livejournal.com 2008-12-20 06:26 pm (UTC)(link)
ну и сравни весь этот гемор с простым обращением к переменной или функции

[identity profile] alisarin.livejournal.com 2008-12-20 06:35 pm (UTC)(link)
Любая продукция отечественной промышленности ... является технически отсталой. В случае соответствия мировому уровню следует говорить об исключениях.

Увы, это так. А проблема одна - уровень культуры производства. Стандарты, технический контроль, качество материалов, массоэнергетические пропорции, насыщенность техническими решениями и т.п., и т.д. :)

[identity profile] metaclass.livejournal.com 2008-12-20 06:39 pm (UTC)(link)
В многопоточных прогах для 24/7 работы нету простых обращений. Начиная с обычных блокировок и заканчивая сложными схемами синхронизации для уменьшения затыков на блокировках. А еще очереди, обработка ошибок, итд, итп, в общем, без разницы становится, в одном это процессе или нескольких. Заодно если в нескольких разных процессах - повреждение памяти в одном не влияет на другие.

Re: на грубость нарываетесь?

[identity profile] seryjvolk.livejournal.com 2008-12-20 06:56 pm (UTC)(link)
"а мне не совсем понятно - зачем тогда дикие пошлины...."

Новые заводы на территории страны + увеличение пошлин на ввозимые иномарки = качественные отечественные машины,
обеспечение рабочих мест.

Заводов у нас полно. Что тогда Вам непонятно?

[identity profile] psilogic.livejournal.com 2008-12-20 06:58 pm (UTC)(link)
есть данные только-для-чтения, однажды загруженные - там никаких блокировок не надо. есть данные, к которым обращение через блокировку до и после. сравни вызов мутекс-лок-мутекс-анлок и создание, открытие, чтение, запись метафайла...

[identity profile] metaclass.livejournal.com 2008-12-20 07:00 pm (UTC)(link)
Да это, в общем-то, у всех, кому надо давно под слоем своих врапперов живет, но похоже, достаточно редкая задача, чтобы эти врапперы не были общепринятыми.

У меня реальная потребность в использовании IPC возникла только в этом году (сервисом управлять из приложения GUI-шного), а я уже 10 лет программирую профессионально.

[identity profile] psilogic.livejournal.com 2008-12-20 07:06 pm (UTC)(link)
я это к только тому, что отдельный тред и отдельный процесс - все же немножко разные вещи по функционалу и количеству заморочек :) а форк - и вовсе непонятная экзотика...

[identity profile] metaclass.livejournal.com 2008-12-20 07:42 pm (UTC)(link)
fork это какая-то странная вещь, да. Для винды)
а для юниксов вообще стандарт.

[identity profile] os80.livejournal.com 2008-12-20 09:20 pm (UTC)(link)
А нам эти люди вообще советуют сменить место жительства, чтобы была возможность подключиться к интернету из линуха...

[identity profile] http://technorati.com/people/technorati/ketmar/ (from livejournal.com) 2008-12-20 10:10 pm (UTC)(link)
угу. а что, по-твоему, тритыщипиццот вызовов IPC — это получается шустрее, чем на уровне ядра скопировать несколько структур? бугога. у вас CreateThread() работает в идеальных условиях примерно так же, как у нас fork(). только если ваш поток насрёт в память — вся программа наебнётся. а если у нас процесс заглючит — остальные спокойно продолжат работать, а главный родитель, увидев, что дитё подохло, форканёт новое. как думаешь, что надёжней и лучше — когда завалился весь сервер, или когда на долю секунды пропало соединение и всё вернулось на место?

[identity profile] http://technorati.com/people/technorati/ketmar/ (from livejournal.com) 2008-12-20 10:12 pm (UTC)(link)
уже бегу внедрять. только скажи, куда.

под «не вижу необходимости» я подразумевал всего лишь то, что провайдеры ещё не один год будуть чесать яйца. поэтому пока острой необходимости и нет.

[identity profile] http://technorati.com/people/technorati/ketmar/ (from livejournal.com) 2008-12-20 10:19 pm (UTC)(link)
а чего тут сравнивать-то? когда ты будешь писать софт, который должен работать годами не падая и не засирая всю память, где дедлоки недопустимы и ты пы — вот тут ты так намудохаешься с потоками, что проклянёшь тот день и час, гда сел за клаву. именно потому писать подобный софт на винде — как минимум показатель проблем с гойловным мозгом.

[identity profile] psilogic.livejournal.com 2008-12-20 10:20 pm (UTC)(link)
на уровне ядра скопировать нескоьлко структур? мы говорим о fork или о чем? :)

[identity profile] http://technorati.com/people/technorati/ketmar/ (from livejournal.com) 2008-12-20 10:22 pm (UTC)(link)
наивный ты. это древний, покоцаный m$ формат, на ELF похожий так же, как я за рулём похож на Шумахера. искренне тебе желаю никогда не работать с ELF. после них ты будешь вспоминать PE с нежностью и ностальгией.

[identity profile] http://technorati.com/people/technorati/ketmar/ (from livejournal.com) 2008-12-20 10:23 pm (UTC)(link)
Portable Executable != ELF. и даже общего только то, что секции есть. PE совсем из другой жопы вылезло. из той же жопы, в принципе, вылез ELF, но пошёл совсем в другую пивнуху.

[identity profile] http://technorati.com/people/technorati/ketmar/ (from livejournal.com) 2008-12-20 10:32 pm (UTC)(link)
1) что-то не наблюдаю поток жалоб в броадком «сделайте дрова». буратины покупают кактусы, а потом плачут. выкинуть нахуй и взять то, что работает. потому что очень сложно делать дрова, когда производитель спеков не даёт.
ладно. броадком. ещё? даже это через ндис можно завести, в принципе.
кстати, под «известное» подходит, под «хорошее» — нет. потому что нет ни спеков, ни драйверов — какое же оно «хорошее»? говнохлам.
2) ну да. %-) тормозилла говно, факт. Koqueror лучше, конечно. а Опера ещё лучше, да. жду, пока сделают что-то нормальное на WebKit, движок очень достойный.
4) я бы тоже с удовольствием их всех собрал в большие контейнеры без воздуха и отправил на Солнце. но увы.
5) уговорил, я тебе слив защитал, нивапрос. так и запишем: «за смену языка морды в винде тоже надо платить». ящитаю, охуенный лохотрон.
6) не спорю, как минимум половина решений в никсах — окаменевшее мамонтячье говно. legacy, блядь. это, однако, не отмянет того, что в винде чуть менее, чем всё рождено анусом. а запустить вложение таки не получится. каждую голову не вылечишь, поэтому можно подпилить инструмент.
7) бубунту я взял как самую общеизвестную, натурально, я ней не пользуюсь. зачем мне недовинда? опять же: больше не к чему придолбаться, только к постгресу? давай ещё про апач поговорим. я их упомянул в плане того, что для винды, аднака, их «искаропки» не поставишь. как ничего, в принципе, не поставишь, потому что всю «каропку» засрала жирная винда.

давай ещё о репликации/бэкапе системы поговорим. о deployment'е на 150 машин, например. о радости каждую винду регать или покупать за бешеные деньги спецверсии. о том, что custom install винды делать нельзя, и unattended install aka install scripts ни разу не заменяет собраный за пол-часа дистриб линукса со всем нужным софтом, который с нуля разворачивается на машину и сразу готов к работе. это, правда, уже не домашние десктопы. для простоты возьмём даже одинаковую технику.

чур, не забывать, что EULA запрещает модификацию дистрибутива винды.

[identity profile] http://technorati.com/people/technorati/ketmar/ (from livejournal.com) 2008-12-20 10:33 pm (UTC)(link)
именно о fork(). и именно так оно и сделано. и именно потому оно lightning fast.

[identity profile] psilogic.livejournal.com 2008-12-20 10:40 pm (UTC)(link)
все хорошо к месту - тред для одних вещей, процесс - для других. вот только форк нахрен не припекся :) программа A хочет запустить программу B. при этом она зачем-то создает свою копию A', а только потом запускает B. Бредятина, которая самым мерзким виндусоидам, придумавшим COM/CORBA в голову не пришла :)

[identity profile] http://technorati.com/people/technorati/ketmar/ (from livejournal.com) 2008-12-20 11:04 pm (UTC)(link)
нет, программа A хочет запустить программу A. это раз.

два: вот тебе задача: программа A открыла сокетное соединение. дальше она хочет запустить программу B, которая с этим соединением будет работать. вперёд, решай без форка. а я поржу над накромождением костылей, которые еле-еле со скрипом это всё реализуют через жопу. а сценарий из real life, обычный многоклиентский сервер, промеждупрочим.

ну, и подумай над тем, как легче подготовить среду исполнения процесса: долго-долго ебясь вызовами, которые свитчат контексты и что-то там упорно пишут в чужое АП и чужие структуры, или непосредсвенно из АП и окружения, в котором будет жить сей процесс. и что быстрее. и почему у винды никогда не будет быстрого запуска процессов.

хинт: потому что у винды в природе нет механизма fork(), да, который и обеспечивает скорость в данном случае.

ну, и в качестве бонуса ещё задача: проапдейтить работающий бинарь из самого себя. пусть он один себе работает, без соединений всяких. т.е. клиентов на время апдейта можно отстрелить. где новый бинарь — известно, пусть на диске валяется. права, положим, есть.

[identity profile] http://technorati.com/people/technorati/ketmar/ (from livejournal.com) 2008-12-20 11:07 pm (UTC)(link)
а, да. когда придумаешь решение задачи с сокетами, попробуй добавить в него ещё несколько открытых файлов, которые надо не переоткрывать в новом процессе, а использовать уже открытыми. когда добавишь в код лапши, я могу дальше дописать условий. так, глядишь, доберёмся до нужной функциональности и посмотрим на понятность твоего кода и кода с fork()'ом, который автоматом дупит и хэндлы в том числе.

[identity profile] http://technorati.com/people/technorati/ketmar/ (from livejournal.com) 2008-12-20 11:09 pm (UTC)(link)
если интересно, почему именно не переоткрывать файлы — потому что они удалены. и открывать нечего. а хэндл есть и с файлом можно работать, пока последний хэндл на него не закрыли. виндовый DeleteOnClose — не то решение.

[identity profile] ex-xj-dimon367.livejournal.com 2008-12-20 11:47 pm (UTC)(link)
Значит вам повезло. Умелых специалистов выше уровня ПТУ не так уж и много. Приходит иностранный инвестор, строит завод, начинает искать кадры... и тут песец, а кадров-то нету! Вот и предлагают с отчаяния немаленькую зарплату, авось кто-то сдуру подал документы в техникум, а не в институт экономики и права.

[identity profile] shmel39.livejournal.com 2008-12-21 03:45 am (UTC)(link)
В Calc'е? Где?

Где в Writer'е я сам знаю, если чо :-)

[identity profile] psilogic.livejournal.com 2008-12-21 05:22 am (UTC)(link)
Не понял, про какой древний m$ формат ты говоришь. До PE в виндах и MS-DOS был формат MZ - очень простенький.

[identity profile] psilogic.livejournal.com 2008-12-21 05:25 am (UTC)(link)
[ не спорю, как минимум половина решений в никсах — окаменевшее мамонтячье говно. legacy, блядь. ]

и эти люди говорят нам о виндовых проблемах, порожденных стремлением к совместимости...

Page 5 of 6