Как стать автором
Обновить
0
0

Пользователь

Отправить сообщение

Да, 3 года разницы - это конечно же всё меняет! )

А почему вы мертвым родились, а в интернетах пишете? Что, не мёртвым??? да не мелочитесь вы так, десяток лет туда-сюда по сравнению с возрастом Солнца тааакиииее мелочи!

А разница всё же есть. NTFS появился в 1993 году - тогда с ваших слов и появились симлинки. Вот только в релаьности симлинки появились 3-5 лет назад, когда программы стали массово отказываться работать на WinXP. До того времени завязываться на симлинки было нельзя. И поэтому практически все программы и все библиотеки, которые писались под win32 до самого недавнего прошлого пользоваться симлинками не могли. А переписывать их теперь тоже никто не будет.

Ну а вообще Hard link'ами вообще никто не пользуется - ибо оно совершенно не нужно

Строго говоря хардлинк - это просто имя файла. Просто в некоторых системах, "выросших" из 8-битного CP/M, заложили ограничение, что имя может быть только одно. Но вообще да, в контексте установки программы удобства от них немного. Но как минимум они использовались, чтобы запускать на Windows DOS-программы. Тем самые 8.3-имена с тильдочкой - это хардлинки. И установочные диски Windows ими пользовались, когда у каждой редакции была своя папка для установки. Удобно. Только если посчитать размер файлов - он был в 2-3 раза больше самого диска.

Ну и наконец, та самая папка WinSxS, которую вы выше ставили в пример Юниксам, хотя она для программистов бесполезна, ибо под запретом, тоже построена на множественных именах файлов (хардлинках) - https://learn.microsoft.com/ru-ru/windows-hardware/manufacture/desktop/manage-the-component-store - но я с вами согласен, что в текущем виде WinSxS "совершенно не нужна" (с).

Вообще-то - можно установить и свои dll

Интересная ссылка, спасибо. Нашлись неуёмные, разломали таки :-D

Однако, где эта технология описана на MSDN ? Где гарантии, что это будет работать завтра? Хакеры обсуждают, как одному из них удалось взломать Windows и попользоваться недокументированными функциями. Это увлекательно, не спорю. Я вот тоже иногда Windows патчу, чтобы при копировании русские буквы не ломались. Но кряк - это кряк. Надёжность таких трюков - сомнительна.

Хотя если вам все равно, запустится ли ваша старая программ лет через 5-10 у пользователей новой Windows, или на оборот у пользователей Windows на 5-10 лет старше программы (на той же Win2000) - то можно. Это будут проблемы пользователей, не ваши.

А вот симлинки в Юниксах - часть фундамента и они предназначены для использования всеми программистами и пользователями, а не только Майкрософтом. Пока есть POSIX - будут работать симлинки. И в этом отличие от азартного и изобретательного, но ненадежного пользования недокументированными трюками. Кстати, не помню чтобы хоть раз видел реальную программу-кукушку, которая свои яйца подrидывала в WinSxS. Скорее всего их количество - стат-погрешность.

-----

Но в целом да, хардлинки нужны редко. А речь шла про симлинки. Которые в Windows появились номинально в 2006, а по сути 3-5 лет назад.

Но даже и это не важно, потому что разговор шёл совсем не про Windows.

А разговор шёл про то, что якобы злой Линукс запрещает добрым программам использовать точные, подходящие именно им, версии библиотек. Правда термин DLL Hell появился именно в Windows, а не в Юниксах.

Так я вам и объясняю, что использовать только новый софт - это плохая идея.

Как плохая? Вы же только что говорили, что это хо-ро-шо, когда Windows вам говорит обновить программу. А когда то же самое говорит Линукс - уже плохо. Ох ,как вы неравнодушны :-)

  • софт могут перестать разрабатывать, а аналогов - нет

Так ставьте тот софт, которые пользуется стандартными и всегда существовавшими в UNIX'ах средствами разрешения конфликта. Ставьте программы, которые собраны с привязкой к конкретной версии библиотеки, и которые не будут мешать другим версиям библиотеки нужной для других программ.

Вы почему-то выбираете плохие программы, но обвиняете в этом вашем выборе операционную систему. Linux не может заставить коня пить. Подвести к реке может, заставить пить - нет.

Кстати, я еще не говорил про древний root-jail. Про старый OpenVZ. Про новомодные flatpack/snap/0install/appimage. На самом деле средств изолировать кривую программу от остальных в Linux'е есть.Изучайте, пользуйтесь.

Ага. А через год - повторить. А потом еще разок.

Нет, не повторяйте. Вы же только что сказали, что обновляться - плохо. Не обновляйтесь. Вы же не обновляете ваши склады старых ISO, так и не надо сравнивать тёплое с мягким.

Потому что всюду уязвимости

Какая ересь! Вас взломали! Настоящий Fahrain никогда бы такого не сказал. Настоящий Fahrain всегда говорит наоборот!

>>> Ну не обязательно ж оно в сеть торчать должно. Да и армии любителей ХР с семеркой явно ж не просто так появились...

ТАК говорил Fahrain.

работать на старой версии ОС со старыми версиями библиотек == создавать себе проблемы.

...и поэтому вы одержимо, как археолог, раскапываете мёртвые курганы в поисках уcтановочных ISO 10-20 летней давности.

Нет, вы точно подделка. Настоящий Fahrain говорит, что проблемы создают новые программы, а не старые!

ОС заставляет тебя постоянно обновляться

Прям так и заставляет??? взяла в заложники домашнюю кошку и начала ей усы выдёргивать, пока не обновите???

ты ловишь проблемы со старыми версиями, которые не хотел обновлять

...но вы не хотите поработать (ни как программист, ни как наниматель программиста), чтобы решить вашу проблему.

Я открою вам секрет: ВСЕ остальные в мире люди кроме вас хотят решать ваши проблемы меньше, чем вы сами. И если уж ваше желание близко к нулю, то у всех остальных и вовсе в минуса уходит.

...девиз libre software, один из - "scratch your itch". А если вы не чешетесь, то значит не сильно у вас на деле-то и зудит. Ну и с чего тогда все остальные будут отвлекаться от своих проблем и бежать решать ваши?

Должностные инструкции зиц-прелседателя Фукса тоже много чего предполагали. Но просили его всё же об исполнении несколько другой роли

Нечто, созданное для того, чтобы рисовать Хром и только Хром... Наверное, это была бы слишком ограничивающая замена.

Ещё можно найти программиста-фрилансера, который выполнит вашу хотелку и "напишет коммит."

Разраб (как я его вижу) сидит за относительно навороченой машиной и реализует свои хотелки (а в голове у каждого даже нормального человека своё видение)

Это очень романтическое мнение.

За навороченной - возможно. Хотя лично я не сторонник и предпочитаю сам сидеть за средними.

А вот насчет "хотелок разраба" - ровно наоборот. Над разрабом стоит отдел продаж. Который ему на примерах и фактах докажет, что скорость всем покупателям нужна только на словах, а не деле им нужно всё, что угодно, кроме скорости. И, кстати, вся эта статья - тому подтверждение.

Только полгода назад была жалоба от потенциального покупателя. Медленная работа одного окна, условно говоря прайслиста (хотя не совсем). Проверяем на его навороченной БД, в самом деле, на простейшие действия реакция - десятки секунд. Ищу что это за окно, и у кого спрашивать зачем оно вообще нужно, какие бизнес-процессы как и у кого покрывает.

Выясняю, что написано оно на совершенно неподходящей китайской библиотеке, причем в заголовке библиотеки написано, что это примитивная замена X для примитивных случаев, когда скорость не нужна, а разбираться с нормальной библиотекой некогда. Ну что же, оцениваю работу в неделю. За неделю разберусь, что это за модуль и перепишу его с нуля, Х я плюс-минус знаю. Ура, говорит отдел продаж, накидывает ещё неделю на три контура тестирования - и уходить подписывать договор.

Потом я за продажниками бегал 3 месяца, когда, когда же разрешите "сделать красиво". Через три месяца продажники развели руками и сказали, что покупатель платить отказывается. Работы хочет, но чтобы бесплатно.

Причем и проблема была, вроде бы, острая. И пользователь сам пришёл с ней. И переписать этот модуль я был готов. Но - именно пользователь отказался ускорять программу, не разраб и даже не продажник - а пользователь. Ну или его начальство, для "разрабов" это одно и то же. Сидит, любуется часиками, и ждёт другого дурака, чтобы оплатил, а он потом на халяву бы обновился.

Когда пользователь скачивает первое, он ожидает, что получит рабочую стандартную библиотеку, а не второе.

А вот про это ещё в 1970-е была написана статья The rise of Worse Is Better

Которая была эпилогом другой книжки, объясняющей почему дешманский колхозный UNIX - это беда. Не Linux (тогда его автора даже в проекте не было), а UNIX в принципе.

И в эпилоге этом на пальцах показывалось, что нет, пользователю не нужна вылизанная как бриллиант программа. Что как только пользователь от слов переходит к делу - он почти всегда выбирает недоделанные и глючные программы. И естественный отбор поэтому выкосит остальных. Эволюция не заморачивается поиском прекрасного.

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

Впрочем, про BIND software были предположения, что они намеренно делают опенсорсную версию глючной и запутанной, чтобы более-менее крупным компаниям приходилось покупать платную версию. И - они были поставщиком номер один. То есть по факту, когда пользователь перестал говорить лозунгами и выбирает действием, пользователю не нужны надежные программы.

Функционал симлинков существует со времен появления ntfs и заложен в неё изначально.

Это не правда.

The feature was first introduced in NTFS 3.0 that shipped with Windows 2000

В каком году появилась NTFS и первая версия WinNT ?

Практически ничем не отличается от соотв. функционала в линукса

И это тоже не правда.

Junction Points  ... contains link to a directory

Во всех моих примерах симлинк вёл на файлы и только на файлы. NTFS reparse points этого в принципе не умеет, они - аналог команды mount в юниксах, подключение другого диска вместо папки, а отнюдь не аналог симлинка.

Ну и кроме того Reparse Points не умеют указывать на сетевые диски, хотя в контексте установки программ это и не важно.

В проводнике симлинку не создать, да - но получится ли у вас это в соотв. гуевых приложениях из линукса сделать?

Речь шла про установку программ же, при чём тут GUI.

А теперь давайте сделаем всё это стандартными инструментами через gui-интерфейс "для всех"

Насколько помню времена Linux 2.6 в Альте alternatives был частью общих настроек системы. Мышкой выбираем из списка библиотеку или программу и мышкой е й ставим версию по умолчанию.

Странно, а почему это Линукс ее за это по пальцам не бил еще в момент выпуска? Ну, чтобы вот такой фигни не происходило?

А почему плохой Линукс вообще должен запрещать что-то делать хорошей (как вы утверждаете) программе?

Для меня вообще дико выглядит сама идея "а давай завяжемся не внешнюю библиотеку любой версии - и пофигу, если в ней потом вдруг всё api возьмут и поменяют"

Но это делают не разработчики "плохого" Линукса, а разработчики "хороших" программ. Если хорошим разработчикам хороших программ не хочется думать о зависимостях - то в чем вина именно Линукса?

А опенсорс-разработчикам под линукс - почему-то нормально, постоянно так и делают.

Потому что гораздо проще, да и увлекательнее, брать новые библиотеки, в которых решены старые проблемы и добавлены новые фишки.

В коммерческом софте, кстати, то же самое. Исправления ошибок "не продаются". Продать "новую кнопку" можно. Продать "программа будет выполнять эту функцию на треть быстрее" - практически никогда.

За такие выкрутасы придет МС и пропишет для программы режим совместимости. Который незаметно для неё все эти условия и выполнит

Как бы мне на Windows 7 запустить последнюю версию Google Chrome или Vivaldi? Вы говорите, что волшебный режим совместимости должен все исправить, но увы... не исправляет.

P.S. в WinSxS лежат только библиотеки Майкрософта насколько знаю. Положить туда библиотеки сторонних фирм не получится. А именно на сторонних библиотеках ломаются зависимости, а вовсе не на версии ядра (Линукс - это ядро).

Или выкатит сообщение, что программа "савсем плахая, слушай" и предложит скачать новую

Ваш конфликт зависимостей - это ИМЕННО оно и есть. Вам и говорят скачать новую, а вы именно на это и обижаетесь.

А у линукса - лапки. Ой, "сообщество" конечно же.

Это ваш шанс. Возьмите любой дистрибутив Линукса, и переделайте программы, чтобы они ссылались на конкретные версии библиотек.

Не хотите, у вас лапки? Ну вот вы и есть сообщество.

 всегда у всех были

Нет, не "у всех", а "у Майкрософта".

Повторяю: "На одной только Win10". Не в фотошопе, не в оракле, не в кваке - а в Windows и только в ней, три разных поведения одного (по-человечески глядя) контрола в разных окнах.

  • При продолжительном контакте с химическим веществом, принявшим твёрдую форму, кожный покров человека может быть серьёзно повреждён

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

  • Если химическое вещество попадёт в лёгкие человека даже в небольшом объёме, велика вероятность летального исхода

  • Химическое вещество было обнаружено в язвах, нарывах, злокачественных опухолях и других болезненных телесных изменениях

  • Химическое вещество вызывает наркотическую зависимость, и если жертвы будут воздерживаться от его употребления в течение 168 часов, им грозит смерть

Что попросили - то они и сделали. Апгрейд работающего и достаточного ноутбука на такой-же только новый сам себя не продаст

они работают над тем, чтобы .... новых моделей ноутбуков Securebook 6 на замену Securebook 5

Уууу! и как же это вовремя, что "внезапно" (с)

организация перепродала их, продав 100 экземпляров Securebook на eBay.

...и по чистой удаче на коленке забрутфорсили 40-символьный SHA-1

Для них уже есть zeronet, i2p и прочие безсерверные торренты.

Кстати, мю-Торрент/BitTorrent уже пытались запилить параллельную сеть раздачи контента, опираясь на огромную базу установленных клиентских программ. Не взлетела даже в этих тепличных условиях

Case random(10) of

0:....

1:...

Как раз наоборот

left parts of identifiers such as, but not limited to, primary keys

Речь явно идёт о составном (из нескольких столбцов) PK

Насколько понимаю, имеется в виду "составной индекс" в SQL.

Когда несколько столбцов таблицы, явно перечисленных, назначаются единой логической сущностью.

Ну например, номер телефона состоит из кода страны, кода города внутри страны, и номера абонента внутри города. Вполне можно положить как три столбца. Но чтобы обеспечить уникальность, эти три столбца надо рассматривать как одно логическое целое.

При этом порядок столбцов в объявлении ключа/индекса не обязан совпадать с порядком столбцов в объявлении таблицы. А уж в каком порядке сервер БД положит столбцы на диск, и вообще будет ли он хранить таблицу построено или постолбцово - это теоретически вообще чёрный ящик.

Соответственно "левая часть ключа" - это просто первый столбец в объявлении ключа/индекса. А как оно физически хранится при этом никого не волнует.

Чтобы я мог поставить в ОС с десяток версий каких-нить libcurl или libssl и радовался используя софт

Ну вообще-то именно в линуксах и прочих юниксах это можно было сделать всегда, потому что версия библиотеки была частью имени файла, с помощью symbolic links, которых в DOS/Windows не было до самого недавнего времени (да кажется и сейчас только для админов есть).

Правда надо учитывать, что "счастливо пользуясь" дырявой libssl вы становитесь счастливым рассадником вирусов для всех остальных. Но это же не ваши проблемы, правда?

В норме на Линуксе вы ставите (цифры от балды) например

  • libssl.so.2.4.5

  • libssl.so.2.3.8

  • libssl.so.2.2.1

  • libssl.so.2.1.5

  • libssl.so.2.0.3

  • libssl.so.1.3.4

  • libssl.so.1.2.12

  • libssl.so.1.1.6

  • libssl.so.1.0.1

При этом вы ещё устанавливает в систему "симлинки"

  • libssl.so.2.4 -> libssl.so.2.4.5

  • libssl.so.2.3 -> libssl.so.2.3.8

И так далее. И поверх этого

  • libssl.so.2 -> libssl.so.2.4

  • libssl.so.1 -> libssl.so.1.3

И наконец

  • libssl.so -> libssl.so.2

А для пользователей с особенным потребностями ещё есть команда alternatives, которая может переключать эти стрелочки, эти "подверсии по умолчанию".

В системе все давно есть. А ваша "хорошая старая программа" должна просить версию libssl ту, которая ей нужна. И пожалуйста, хоть миллион версий библиотеки держите на радость взломщикам.

А вот если две ваши "прекрасные старые программы" отказываются указывать, какая им версия нужна, и вместо этого требуют у вас удалять все чужие версии библиотеки и оставить только одну (при этом - разные и несовместимые), то может быть не такие уж они и прекрасные? Если в системе все давно заложено, но ваши программы отказываются играть по правилам и учитывать ваш интерес к другим программаи - точно ли виновата система?

Открываем combobox (редактор со списком выбора), начинаем крутить колёсико мышки. На одной только Win10 в разных окнах я видел три варианта поведения

  1. Комбик закрывается, аналогично Esc

  2. Меняется выбранная строка в открытом комбике, бегаем по списку, аналогично стрелкам

  3. Окно прокручивается, комбик куда-то уезжает, а открытый список (логически - часть комбика) остаётся висеть на месте, оторвавшись от родительского окна

Из-за слишком большого получаемого значения MCAS принимал решение переложить стабилизатор на пикирование.

Он не может принять такое решение в принципе. Вам надо перечитать что такое MCAS первой версии (которая была задокументирована) и второй (которую ставили на самолёты).

Насколько помню, MCAS 1 перекладывал плоскости на 0,5 градусов максимум.
MCAS 2 - на 1,5 градусов.

Ни то ни другое не тянет на ваша "переложить на пикирование".

Через 20 секунд MCAS запускался еще раз и принимал новое решение, и снова поворачивал колесо стабилизатора ещё на примерно один градус.

При этом MCAS 1 суммировал все свои возмущения, чтобы не вносить суммарные возмущения больше 5 градусов (иначе он бы вышел за пределы класса Augmentation и его нельзя было бы ставить в самолёты без обоснования безопасности и без полноценной проверки государством).

В MCAS 2 удалили сумматор и он мог вносить сколь угодно большие возмущения, но порциями примерно по одному градусу раз в 20 секунд.

Маленькие повороты плоскостей 2-3 раза в минуту - нормальное поведение автопилота и подозрений не вызывают и "runaway" не являются. Хотя для того, чтобы свалить вину с руководства богатой фирмы на мёртвого и молчащего пилота, при правильной работе с судьей, что угодно будет чем угодно.

Разные конструкции бывают.

How is angle of attack measured?

The AOA is measured by using the pressure difference between the two orifices. The magnitude of the pressure difference depends on the shape of the nose of the tube and the angular position of the orifices.

https://www.meltingpointathens.com/how-does-angle-of-attack-sensor-work/

Какой вариант пользовал Макс 10 лет назад - уже не помню, да и лень искать.

Главное - что сигнализация поломки какого-то из датчиков была, но только как люксовая комплектация, а не базовая безопасность.

The AoA sensor thus became a single point of failure. Despite the existence of two angle-of-attack sensors on the nose of the aircraft, the MCAS system not only used data from either one of the sensors but also did not expect concurrence between the two sensors to infer that the aircraft was stalling. Further, Lion Air did not pay up to equip its aircraft with a warning light that could have alerted the crew to a disagreement between the AoA sensors.

https://www.rightattitudes.com/2020/01/07/boeing-737-max-achilles-heel-mcas-sensor/

И да, насколько помню, речь идёт о датчиках давления воздуха, они же трубки Пито.

Трех трубок там в самом деле быть не может, потому что 80286 просто не вытягивает сравнение данных с трёх трубок параллельно с обсчётом всех остальных параметров полёта.

1
23 ...

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность