powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Как отловить ошибки на уровне ОС / оборудования / языка?
25 сообщений из 49, страница 1 из 2
Как отловить ошибки на уровне ОС / оборудования / языка?
    #38096234
GermanV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Предположим у нас есть идеальный код с точки зрения языка. Но если эта программа будет крутиться неделю, то никто не даст гарантию, что наше оборудование не сбойнет, а может и код операционки пошалить или язык подкнет очень редкий выкрутас...

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

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

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

Может есть что-то еще?
...
Рейтинг: 0 / 0
Как отловить ошибки на уровне ОС / оборудования / языка?
    #38096251
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GermanV, задай вопрос по С++.
...
Рейтинг: 0 / 0
Как отловить ошибки на уровне ОС / оборудования / языка?
    #38096254
Edd.Dragon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Используй железо повышенной надежности. Память обязательно с ECC.

GermanVВ математике есть много легких способов поиска ошибки.
А твоя программа что неделю крутить будет? Не "математику"?
...
Рейтинг: 0 / 0
Как отловить ошибки на уровне ОС / оборудования / языка?
    #38096261
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GermanVПредположим у нас есть идеальный код с точки зрения языка. Но если эта программа будет крутиться неделю, то никто не даст гарантию, что наше оборудование не сбойнет, а может и код операционки пошалить или язык подкнет очень редкий выкрутас...

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

Вероятность того что ваша программа сбоит из-за оборудования, ошибки в компиляторе или ОС, а не просто криво написана, стремится к нулю.
Ну может, после 20 лет опыта в системном программировании, вы получите вероятность 0.1%.
Так что не надо переводить с больной головы на здоровую.
...
Рейтинг: 0 / 0
Как отловить ошибки на уровне ОС / оборудования / языка?
    #38096286
GermanV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Edd.Dragon,

Математику.
...
Рейтинг: 0 / 0
Как отловить ошибки на уровне ОС / оборудования / языка?
    #38096296
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Edd.DragonИспользуй железо повышенной надежности. Память обязательно с ECC.
а как же тройное резерыирование ЦПУ?
...
Рейтинг: 0 / 0
Как отловить ошибки на уровне ОС / оборудования / языка?
    #38096299
Edd.Dragon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну так и проверяй результаты.

Вообще забудь о компах и представь, что ты решаешь свою дифуру на листке. У тебя есть какие-то способы (кроме проверки результата), которые помогут проверить, не очепятался ли ты в процессе? Сбой железа - это ровно та же очепятка, тот же сбой мозга, руки, помутнение разума. Как можно проверить правильность результата без проверки правильности результата? У меня лично нет датчика, который бы пищал, когда голова хочет написать двойку, а рука пишет тройку. Только проверка, только хардкор

Модератор: Тема перенесена из форума "C++".
...
Рейтинг: 0 / 0
Как отловить ошибки на уровне ОС / оборудования / языка?
    #38096315
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GermanV, по теме можно искать в гугле: отазоустойчивость, надёжность, живучесть.

Из технологий: application cluster, failover, hardware clustering.
...
Рейтинг: 0 / 0
Как отловить ошибки на уровне ОС / оборудования / языка?
    #38096335
Edd.Dragon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я вот тут подумал, а есть способы проверки правильности способов провеки правильности?
...
Рейтинг: 0 / 0
Как отловить ошибки на уровне ОС / оборудования / языка?
    #38096340
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это типа протестировать тестирование. Думаю что можно. При условии что тест
будет проще тестируемого модуля хотя-бы в пропорции Парето.
...
Рейтинг: 0 / 0
Как отловить ошибки на уровне ОС / оборудования / языка?
    #38096371
ev-kov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GermanV,

От BSOD'а не спасут алгоритмы, если железо глюканет, то останется minidump в windows - его только ковырять и останется.
...
Рейтинг: 0 / 0
Как отловить ошибки на уровне ОС / оборудования / языка?
    #38096385
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BSOD-ы как тема для анекдотов конечно интересны. Но их решение лежит в другой
плоскости. Если ты разрабочик драйверов оборудования то БСОД ты можешь видеть
каждый день пока идёт отладка дравера. А так... для бизнесов. Для Java, .Net
БСОД достаточно редок.
...
Рейтинг: 0 / 0
Как отловить ошибки на уровне ОС / оборудования / языка?
    #38096388
GermanV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Edd.DragonНу так и проверяй результаты.

Вообще забудь о компах и представь, что ты решаешь свою дифуру на листке. У тебя есть какие-то способы (кроме проверки результата), которые помогут проверить, не очепятался ли ты в процессе? Сбой железа - это ровно та же очепятка, тот же сбой мозга, руки, помутнение разума. Как можно проверить правильность результата без проверки правильности результата? У меня лично нет датчика, который бы пищал, когда голова хочет написать двойку, а рука пишет тройку. Только проверка, только хардкор

Модератор: Тема перенесена из форума "C++".

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

Ну может есть какой-то паттерн программирования, чтобы такое отловить. Например, в бухгалтерии придумали двойную запись и теперь легко ловят ошибки, если баланс "не сходится".
...
Рейтинг: 0 / 0
Как отловить ошибки на уровне ОС / оборудования / языка?
    #38096390
GermanV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Edd.DragonЯ вот тут подумал, а есть способы проверки правильности способов провеки правильности?

Я привел пример про двойную запись (применять определенные паттерны программирования). Ну на крайний случай- совпадение двух неправильностей :)
...
Рейтинг: 0 / 0
Как отловить ошибки на уровне ОС / оборудования / языка?
    #38096393
GermanV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
maytonЭто типа протестировать тестирование. Думаю что можно. При условии что тест
будет проще тестируемого модуля хотя-бы в пропорции Парето.

Ну что-то подобное я написал о краевых условиях и частных случаях дифура в топике.
...
Рейтинг: 0 / 0
Как отловить ошибки на уровне ОС / оборудования / языка?
    #38096404
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GermanVНе в том смысле математика. То есть у меня "перемалывание чисел", но не по каким-то заранее известным математическим правилам. Так сказать, я сам алгоритм обработки придумываю.
Если ты - создатель некого ... кхм... алгоритма. То ты должен пройти через некое
мат. доказательство правоты или достоверности его результата. Если этого
доказательства нет то твой алгоритм это художественный свист.
...
Рейтинг: 0 / 0
Как отловить ошибки на уровне ОС / оборудования / языка?
    #38096420
GermanV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
maytonGermanVНе в том смысле математика. То есть у меня "перемалывание чисел", но не по каким-то заранее известным математическим правилам. Так сказать, я сам алгоритм обработки придумываю.
Если ты - создатель некого ... кхм... алгоритма. То ты должен пройти через некое
мат. доказательство правоты или достоверности его результата. Если этого
доказательства нет то твой алгоритм это художественный свист.

Да, не спорю, что свист. Главное, чтобы свистело как я хочу, а не как хочет комп :)
...
Рейтинг: 0 / 0
Как отловить ошибки на уровне ОС / оборудования / языка?
    #38096430
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Расскажи в общих словах что там у тебя за математика и если
не я то кто-то другой (более продвинутый в математике) предложит
тебе методику тестирования или самодиагностики.
...
Рейтинг: 0 / 0
Как отловить ошибки на уровне ОС / оборудования / языка?
    #38096441
Edd.Dragon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GermanVНу может есть какой-то паттерн программирования, чтобы такое отловить.
Ты можешь вообще на двух не связанных машинах запустить свою прогу, периодически сравнивая результаты. Без всяких паттернов и громоздких алгоритмических трюков. По принципу - одна голова хорошо, а две лучше. А сэкономленное время направить на оптимизацию алгоритма или иную полезную деятельность.
...
Рейтинг: 0 / 0
Как отловить ошибки на уровне ОС / оборудования / языка?
    #38096480
GermanV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
maytonРасскажи в общих словах что там у тебя за математика и если
не я то кто-то другой (более продвинутый в математике) предложит
тебе методику тестирования или самодиагностики.

Да я и сам неплохо математикой владею (учился на Физтехе). Но тут сложный алгоритм, который не опишешь словами.
...
Рейтинг: 0 / 0
Как отловить ошибки на уровне ОС / оборудования / языка?
    #38096481
GermanV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Edd.DragonGermanVНу может есть какой-то паттерн программирования, чтобы такое отловить.
Ты можешь вообще на двух не связанных машинах запустить свою прогу, периодически сравнивая результаты. Без всяких паттернов и громоздких алгоритмических трюков. По принципу - одна голова хорошо, а две лучше. А сэкономленное время направить на оптимизацию алгоритма или иную полезную деятельность.

скорее всего так и сделаю.
...
Рейтинг: 0 / 0
Как отловить ошибки на уровне ОС / оборудования / языка?
    #38096484
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GermanVДа я и сам неплохо математикой владею (учился на Физтехе). Но тут сложный алгоритм, который не опишешь словами.
Вообще великолепно! Тоесть протестировать его нельзя ибо сложно. И словами описать
тоже нельзя. Что после этого остаётся делать? Можно пригласить священника
чтоб освятил датацентр.
...
Рейтинг: 0 / 0
Как отловить ошибки на уровне ОС / оборудования / языка?
    #38097389
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GermanVПредположим у нас есть идеальный код с точки зрения языка. Но если эта программа будет крутиться неделю, то никто не даст гарантию, что наше оборудование не сбойнет, а может и код операционки пошалить или язык подкнет очень редкий выкрутас...Вот как человек, отвечающий за эксплуатацию вполне реальной системы на железе вполне обычной серверной, вполне ответственно заявляю, что вы собираетесь заняться хернёй за пределами зоны собственной ответственности и компетенции.
На скриншоте вверху - секунды из журнала системных событий, внизу - результат деления на 86400.
Если правильно помню, предыдущая остановка была связана с работами, требовавших длительного обесточивания (какой-то части) здания.
Так вот, за несколько лет эксплуатации системы, я не помню ни одной проблемы из-за "сбоев памяти".
Если говорить о "чиста десктопах", то за много лет (моей) работы в IT ситуации типа "оно сбоило, вытащили плашку, протёрли контакты и всё прошло", конечно, бывали, но их можно пересчитать по пальцам одной руки.
...
Рейтинг: 0 / 0
Как отловить ошибки на уровне ОС / оборудования / языка?
    #38097606
Edd.Dragon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. SidorovЕсли говорить о "чиста десктопах", то за много лет (моей) работы в IT ситуации типа "оно сбоило, вытащили плашку, протёрли контакты и всё прошло", конечно, бывали, но их можно пересчитать по пальцам одной руки.
Ну это не совсем та проблема. Имеются ввиду не аварии по вине железа, а ошибки во время работы.
Винт имеет право прочесть неправильно один бит на 10-1000 прочитанных терабайт (это с учетом проверки контрольных сумм). Память - аналогично (порядок цифр не помню).

Вот только никто не сказал, что эта ошибка произойдет именно в обрабатываемых данных и что она как-то себя проявит и повлияет на результат. А когда никто не мешает произвести расчет дважды, то смысл забивать себе голову этим совсем исчезает.
...
Рейтинг: 0 / 0
Как отловить ошибки на уровне ОС / оборудования / языка?
    #38097708
GermanV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
[quot Edd.Dragon
Ну это не совсем та проблема. Имеются ввиду не аварии по вине железа, а ошибки во время работы.
Винт имеет право прочесть неправильно один бит на 10-1000 прочитанных терабайт (это с учетом проверки контрольных сумм). Память - аналогично (порядок цифр не помню).

Вот только никто не сказал, что эта ошибка произойдет именно в обрабатываемых данных и что она как-то себя проявит и повлияет на результат. А когда никто не мешает произвести расчет дважды, то смысл забивать себе голову этим совсем исчезает.[/quot]

Вот и я про тоже! А насчет не проявит: ну извините, если вместо одного числа (например, 100200) у меня в расчетах будет (120200), то для меня это критично. Думаю двойной расчет даст ответ этому спору.
...
Рейтинг: 0 / 0
25 сообщений из 49, страница 1 из 2
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Как отловить ошибки на уровне ОС / оборудования / языка?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]