С чего необходимо начать

С чего необходимо начать

Итак, готовы ли вы начать охоту за ошибками? Этот путь может оказаться длинным и полным разочарований. Некоторые ошибки ставили в тупик все сообщество разработчиков ядра на несколько месяцев. К счастью, на каждую из таких злостных ошибок находятся простые, которые легко исправить. Если вам повезет, то все проблемы, с которыми вы столкнетесь, будут простыми и тривиальными. Однако чтобы это проверить, необходимо начать исследования. Для этого понадобится следующее.

• Сама проблема. Может звучать глупо, но дефект должен быть конкретным и хорошо определенным. Очень помогает, если его хотя бы кто-нибудь может устойчиво воспроизвести. Однако, к сожалению, дефекты обычно ведут себя не так хорошо, как хотелось бы, и не всегда могут быть хорошо определены.

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

• Немного удачи, опыта и их комбинации.

Если дефект нельзя воспроизвести, то многие из приведенных ниже подходов становятся бесполезными. Очень важно, чтобы проблему можно было повторить. Если этого не удается сделать, то исправление дефекта становится возможным только путем визуального анализа кода для того, чтобы найти в нем ошибку. На самом деле так случается достаточно часто (например, с разработчиками ядра), но очевидно, что шансы добиться успеха становятся более весомыми, если появляется возможность воспроизвести проблему.

Может также показаться странным, что существуют дефекты, которые кто-то не может воспроизвести. Дело в том, что в пользовательских программах дефекты чаще всего проявляются очень просто, например вызов функции foo приводит к созданию файла core. В ядре все совсем по-другому. Взаимодействия между ядром, пространством пользователя и аппаратурой могут быть достаточно тонкими. Состояния конкуренции за ресурсы могут возникать с вероятностью одно на миллион итераций алгоритма. Плохо спроектированный или даже не правильно скомпилированный код может обеспечивать удовлетворительную производительность на одной системе, но неудовлетворительную на другой, Очень часто происходит так, что на какой-то случайной машине, при очень специфическом характере загрузке, начинают проявляться дефекты, которые больше нигде не проявляются. Чем больше доступно дополнительной информации при локализации дефекта, тем лучше. Во многих случаях, как только удалось устойчиво воспроизвести проблему, можно считать, что большая половина работы сделана.

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг

С чего бы начать?

Из книги Как найти высокооплачиваемую работу с помощью Internet автора Рудинштейн Марк


С чего начать навигацию

Из книги Компьютер на 100. Начинаем с Windows Vista автора Зозуля Юрий

С чего начать навигацию Для начала навигации в Интернете используйте один из следующих способов.? Введите URL нужной страницы в адресную строку, после чего нажмите клавишу Enter. При вводе адреса Internet Explorer может выполнять автозаполнение, автоматически подставляя похожие


С чего начать?

Из книги Введение в Direct3D8 автора Александров Алексей Иванович

С чего начать? Работа с любой новой средой разработки или библиотекой начинается, как правило, с одного и того же вопроса: "Боже мой! Ну почему оно не компилируется???!!!". Для успешной компиляции Direct3D8 проекта Вам необходимо включить некоторые заголовочные файлы и


Для чего необходимо явное создание объектов?

Из книги Основы объектно-ориентированного программирования автора Мейер Бертран

Для чего необходимо явное создание объектов? Объекты создаются явным образом. Объявление сущностиb: BOOK3не влечет за собой создание объекта во время выполнения, это происходит, когда некий элемент системы выполнит операциюcreate bЭто может показаться удивительным. Разве


Глава 1. С чего начать

Из книги Веб-Самоделкин. Как самому создать сайт быстро и профессионально автора Гладкий Алексей Анатольевич

Глава 1. С чего начать В первую очередь необходимо освоить терминологию, которой пользуются веб-разработчики. Об этом, а также о многих других основополагающих вещах пойдет речь в первой главе


С чего начать работу в Skype?

Из книги Наглядный самоучитель работы на нетбуке автора Сенкевич Г. Е.

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


С чего начать увеличение продаж в интернет-магазине

Из книги Удвоение продаж в интернет-магазине автора Парабеллум Андрей Алексеевич

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


С чего начать работу с программой

Из книги Fiction Book Designer 3.2. Руководство по созданию книг автора

С чего начать работу с программой 1. Откройте меню «Settings»,нажав кнопку: .Если Вы видите нечитаемый текст в окне «key words», отметьте «MultiLanguage support».3. Нажмите кнопку «set colors» и назначьте цвета для основных элементов книги (заголовки, подзаголовки и т. д.).4. Нажмите кнопку «set path» и


2.1.1. С чего начать

Из книги Интернет-маркетинг на 100% автора Коллектив авторов

2.1.1. С чего начать Анализ собственного сайта, ваших интернет-покупателей и выбор цели рекламной кампании Вы сотрудник отдела рекламы средней фирмы. Как правило, у небольших и средних фирм отдел рекламы представлен только в вашем лице. Вы и «швец, и жнец и на дуде игрец». И


Кардинальная реформа образования: с чего начать и где поставить точку Василий Щепетнёв

Из книги Цифровой журнал «Компьютерра» № 184 автора Журнал «Компьютерра»

Кардинальная реформа образования: с чего начать и где поставить точку Василий Щепетнёв Опубликовано 03 августа 2013 В одной сетевой статье прочитал: в Детройте лишь семь процентов школьников умеют бегло читать. Ну, семь так семь. Близко к пяти.


С чего начать работу по поисковой оптимизации

Из книги Монетизация сайта. Секреты больших денег в Интернете автора Меркулов Андрей

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


С чего начать?

Из книги Денежный поток из Интернета автора Круглов Александр

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


С чего начать?

Из книги Цифровая фотография от А до Я [2-е издание] автора Газаров Артур Юрьевич

С чего начать? Любое движение, любой интернет-проект начинается с постановки цели. Любая цель ставится по формуле SMART, не SMART-цели не работают!Аббревиатура «SMART» расшифровывается так: цель должна быть• конкретна• измерима• достижима• реалистична во времени.Когда вы


С чего начать

Из книги автора

С чего начать Итак, первое — решимость и твердое желание держать в руках камеру всю оставшуюся жизнь. И никогда не изменять своей спутнице жизни — не бросать свое дело, даже если получается не сразу, а фотосъемка превращается в нелегкое испытание. Хороший мастер без