Раз уж installer.app запускается автоматически, то я бы делал это в виде «апдейта на айтюнс» — все равно пользователь, который устанавливает «антивирус» не разберется в чем отличие от software update — а неожиданно выскочившее предложение проапдейтится выглядит куда правдоподобнее предложения установить антивирус.
Кто? Ну кто Вам сказал, что ввод пароля это безопаснее, чем клик по кнопке?
1. Административный доступ совершенно не нужен для участия в ботнете, воровства персональных данных (identity theft) и рассылки себя дальше по адресной книге
2. Ввод пароля без нажатия SAS всегда МЕНЕЕ безопасен, чем простое нажание на кнопку.
3. Если хочется снизить безопасность, то UAC можно сконфигурировать на ввод пароля даже для группы Administrators, а для обычных пользователей он и так всегда запрашивается.
Месяц не ставить апдейты безопасности и выключить включенный по дефолту файрвол — это никак не тянет на «не использующую в том или ином виде человеческую глупость».
Не в языках с ручным управлением памятью, а в Obj-C. C++0x лямбды имеют достаточно прозрачную семантику и способ захвата указывается в самом замыкании, а не в объявлении переменной. Сами лямбды тоже можно передавать как по значению так и по ссылке/указателю.
Причем как для самих лямбд так и для захваченных свободных переменных применяются те же правила, основанные на здравом смысле, что и для всех остальных объектов: делать объект, живущий меньше, чем ссылки/указатели на него — ОЧЕНЬ плохая идея.
Это же SJVN. Он же на следующий день после покупки скайпа разразился (технически неверным) постом про то какой скайп плохой, через пару дней после того как MilleniumExchange (дада, та которая LSE) рассылала неверные котировки — он рассказывал про то, как в этом виноваты те, кто эти котировки примал. А через пару дней после заявления LSE о том, что в блекауте на пике торговли (новости о фанни и фредди были такие) было виновато сетевое оборудование, разразился (ага, он всегда разражается) постом про том, что во всем виноваты индусы из Майкрософта.
Классический фрик — готов сказать любую чушь и сам же в нее поверить, если это согласуется с его религиозной доктриной.
Дуополист. В США два провайдера наземного интернета (Comcast и Verizon) и ни один из них особо не интересуется модернизацией. Все мелкие «домашние сети» давно вымерли. FCC похоже «прикормлена» (вот, например, забавная статейка про то, как государственный чиновник, позволивший слияние Comcast и NBC после своего решения ушла непосредственно в лоббисты комкаста на зарплате).
С мобильной связью все не менее печально. Есть 4 оператора (2 крупных и 2 мелких, причем прямо сейчас один из крупных пытается купить одного из мелких), которые практически не конкурируют — одинаковые цены, одинаковое качество связи (хотя нет, крупнейший — AT&T — общепризнанный лидер по говености связи), одинаковый застой как в тарифах так и в накладывании всевозможных ограничений.
Фишка в том, что комкаст — это провайдер наземного (DOCSYS) интернета. И даже если не пользоваться торрентами все равно нужно постоянно следить за тем, чтоб не превысить «безлимитный» лимит. За двойное превышение в течение полугода — отключение.
Вообще говоря, ограничение совсем даже не условное ибо, если не подключать cable (там и смотреть то нечего), то выходит что то вроде этого:
«Хостингом» ворованного ПО не занимаюсь (те кто занимаются уже отметились в этом посте с терабайтами трафика в месяц). И это при том, что я совсем не любитель спорта и новостей (всякие ESPN и целая пачка новостных каналов в пролете — «экономия» нескольких часов стриминга в день).
Ну а глядя на цены/скорости того же укртелекома (не говоря уже о домашних сетях) мне хочется плакать:
Это без налогов и парочки файнпринтов (типа страховки, аренды модема и пр.)
вопрос звучал так: как без анализа содержимого делителя обработать ошибку деления на ноль:
предполагается ответ с try...catch
Неправильный ответ. Правильный: средствами C++ это сделать невозможно.
ISO/IEC 14882, глава 5 Expressions [expr], параграф 4 говорит нам следующее:
If during the evaluation of an expression, the result is not mathematically defined or not in the range of
representable values for its type, the behavior is undefined. [ Note: most existing implementations of C++
ignore integer overflows. Treatment of division by zero, forming a remainder using a zero divisor, and all
floating point exceptions vary among machines, and is usually adjustable by a library function. —end note ]
Это UB.
В разных РЕАЛИЗАЦИЯХ C++ это можно сделать при помощи implementation-specific функционала. Более того, такие ошибки практически никогда не транслируются в C++ исключения автоматом.
В Windows будет сгенерировано SEH исключение, которое можно словить через __try/__except либо с помощью _set_se_translator сконвертировать в C++ исключение. Кроме того, если включить обработку асинхронных исключений catch-all блок будет ловить и SEH исключения (примечательно, что именно divide-by-zero использовано в качестве примера в статье про разные типы обработки исключений).
В POSIX системах будет сгенерирован сигнал (SIGFPE), который можно обработать предварительной установкой хендлера.
В общем, задавать на собеседовании вопросы про UB можно только если принимаете на какую нибудь senior/principal должность. Новички этого знать не обязаны — им бы с defined поведением разобраться.
И? Вы же сами подтвердили мои слова. Для поддержки виртуальной памяти нужно запускать отдельное приложение и при этом изоляции адресных пространств все равно не происходит, потому что вся система рассчитана на то, что все будет в одном.
Расположение разных частей системы в памяти называется не mapping а layout. Но даже с такой поправкой Ваше утверждение не имеет никакого смысла. Даже у Win9x никогда не было ограничений на 64к, не говоря уже об NT. Или «не так давно» это 30 лет назад во времена MS-DOS?
О боже, какая чушь. У классик маков не было не только меммеппинга, но даже виртуальной памяти (надеюсь не нужно объяснять как они связаны). А все потому что MC680x0 не имели встроенного MMU, а отдельный был весьма дорогим. В ту же ловушку попалась и AmigaOS. Эппл совершенно заслуженно обанкротились из-за того, что их ОС была хуже вообще всего, что было представлено на рынке (в том числе и довольно говеных Win9x) — там даже многозадачности как таковой не было, а не только изоляции адресных пространств.
И да, Гейтс не только не говорил ничего о 640к, но даже не имел никакого отношения к этому ограничению — это было аппаратное ограничение платформы IBM PC, вызванное в частности аппаратными ограничениями процессоров 8086/8088
Кнопка с флажком -> Help and Support
Кликнуть туда где написано «Search help» и ввести pppoe <энтер>
Кликнуть на первый результат «Create PPPoE connection to Internet»
Следовать инструкциям (причем визард подключения открывается прямо из справки)
Хм, я пытался проговорить это все о-о-о-о-о-о-оч-е-е-е-е-е-е-е-ень м-е-е-е-е-е-е-е-дле-е-е-е-е-е-енноо-о-о-о-о, но 15 минут все равно не получилось
1. Административный доступ совершенно не нужен для участия в ботнете, воровства персональных данных (identity theft) и рассылки себя дальше по адресной книге
2. Ввод пароля без нажатия SAS всегда МЕНЕЕ безопасен, чем простое нажание на кнопку.
3. Если хочется снизить безопасность, то UAC можно сконфигурировать на ввод пароля даже для группы Administrators, а для обычных пользователей он и так всегда запрашивается.
PS: Stuxnet не подходит, ибо не был масштабным.
авторана с флешекавторана загруженных из интернета файлов (инсталляторы являются «безопасными»).Причем как для самих лямбд так и для захваченных свободных переменных применяются те же правила, основанные на здравом смысле, что и для всех остальных объектов: делать объект, живущий меньше, чем ссылки/указатели на него — ОЧЕНЬ плохая идея.
Классический фрик — готов сказать любую чушь и сам же в нее поверить, если это согласуется с его религиозной доктриной.
С мобильной связью все не менее печально. Есть 4 оператора (2 крупных и 2 мелких, причем прямо сейчас один из крупных пытается купить одного из мелких), которые практически не конкурируют — одинаковые цены, одинаковое качество связи (хотя нет, крупнейший — AT&T — общепризнанный лидер по говености связи), одинаковый застой как в тарифах так и в накладывании всевозможных ограничений.
И комментарии, комментарии почитайте. Телекомы уже всех достали, но выхода не видно.
«Хостингом» ворованного ПО не занимаюсь (те кто занимаются уже отметились в этом посте с терабайтами трафика в месяц). И это при том, что я совсем не любитель спорта и новостей (всякие ESPN и целая пачка новостных каналов в пролете — «экономия» нескольких часов стриминга в день).
Ну а глядя на цены/скорости того же укртелекома (не говоря уже о домашних сетях) мне хочется плакать:
Это без налогов и парочки файнпринтов (типа страховки, аренды модема и пр.)
Неправильный ответ. Правильный: средствами C++ это сделать невозможно.
ISO/IEC 14882, глава 5 Expressions [expr], параграф 4 говорит нам следующее:
Это UB.
В разных РЕАЛИЗАЦИЯХ C++ это можно сделать при помощи implementation-specific функционала. Более того, такие ошибки практически никогда не транслируются в C++ исключения автоматом.
В Windows будет сгенерировано SEH исключение, которое можно словить через __try/__except либо с помощью _set_se_translator сконвертировать в C++ исключение. Кроме того, если включить обработку асинхронных исключений catch-all блок будет ловить и SEH исключения (примечательно, что именно divide-by-zero использовано в качестве примера в статье про разные типы обработки исключений).
В POSIX системах будет сгенерирован сигнал (SIGFPE), который можно обработать предварительной установкой хендлера.
В общем, задавать на собеседовании вопросы про UB можно только если принимаете на какую нибудь senior/principal должность. Новички этого знать не обязаны — им бы с defined поведением разобраться.
Расположение разных частей системы в памяти называется не mapping а layout. Но даже с такой поправкой Ваше утверждение не имеет никакого смысла. Даже у Win9x никогда не было ограничений на 64к, не говоря уже об NT. Или «не так давно» это 30 лет назад во времена MS-DOS?
Как видно, первая и третья ветка вообще используют один и тот же код, а четвертая — после странной проверки делает все тот же memset.
И да, Гейтс не только не говорил ничего о 640к, но даже не имел никакого отношения к этому ограничению — это было аппаратное ограничение платформы IBM PC, вызванное в частности аппаратными ограничениями процессоров 8086/8088
Кнопка с флажком -> Help and Support
Кликнуть туда где написано «Search help» и ввести pppoe <энтер>
Кликнуть на первый результат «Create PPPoE connection to Internet»
Следовать инструкциям (причем визард подключения открывается прямо из справки)
Хм, я пытался проговорить это все о-о-о-о-о-о-оч-е-е-е-е-е-е-е-ень м-е-е-е-е-е-е-е-дле-е-е-е-е-е-енноо-о-о-о-о, но 15 минут все равно не получилось