Чтение онлайн

на главную - закладки

Жанры

Bash.org.ru IT Happens Истории ## 1301 – 1400
Шрифт:

 

 

 

#1380: Я не нарочно, просто совпало

12:00 28.10.2009, IT happens

 

Работаю в хелпдеске крупного банка. На нас свалилась заявка, как позже выяснилось, вполне достойная какой-нибудь айтишной версии Хауса: «Ночью выключили компьютер, сейчас не включается». Звоню. Выглядит всё так:

 

Пользователь нажимает кнопку включения.

Загорается индикатор питания на системнике.

Загорается зеленая лампочка на мониторе (вроде пошёл сигнал), но изображения нет.

Индикатор HDD не мигает — ОС явно не грузится. Писка

нет.

 

Какие могут быть диагнозы? Первое, что пришло в голову — сбой монитора, но тогда система продолжала бы грузиться. Еще вариант — поломался интегрированный видеочип. Но не пищит же! Память, БП — вряд ли, опять же был бы писк. Пищалка поломаться не могла. На этом идеи закончились — надо ехать.

 

Приехал. Включаю. Намётанный взгляд замечает кратковременное включение всех трёх индикаторов на клавиатуре. Система не грузится, монитор пустой. Краткое нажатие на Power выключает компьютер. Подключаю монитор с соседнего места — работает! Но система почему-то грузится из сети, а не с винта. Порядок загрузки верный.

 

Разгадка оказалась проста — объём HDD определился как 0 МБ. Какова вероятность того, что во всем отделении, где около 30 рабочих мест, в одно и то же время умрут винт (SATA, более-менее устойчивый к слабым скачкам напряжения) и монитор, оба стоящие на одном рабочем месте?..

 

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

 

 

 

#1381: Потоковый эксплойт

12:00 28.10.2009, IT happens

 

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

 

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

 

cin >> SumString;

cout << "Сумма строк: " << SumString;

 

На экране же это выглядело так:

 

> Это полов <Enter>

> ина строки <Enter>

> Сумма строк: Это половина строки

> Press any key to continue...

 

Пока препод в ведомости не расписался, нажимать на Any Key я не давал.

 

 

 

#1382: Опилки пяти микрофарад

14:00 28.10.2009, IT happens

 

Работал как-то с отцом — надо было автоматизировать научную установку. Захожу к нему и вижу жуткую картину: на разобранном компе он усердно елозит напильником по плате сопряжения с установкой.

 

В легком офигении спрашиваю:

 

— Пап, ты что вообще делаешь?

— Там конденсатор я один впаял, у него характеристики близкие, но мне надо меньше — я его объём уменьшаю, пока

не получится то, что надо.

 

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

 

Горжусь отцом! Старая гвардия не сдаётся.

 

 

 

#1383: Счастливой отладки!

12:00 29.10.2009, IT happens

 

Однажды мне довелось «подхватывать» проект на C++, оставшийся от одного программиста, уволенного несправедливо (по его личному мнению). Впрочем, проект был почти завершён, и мне оставалось лишь немного дописать интерфейс, провести тестирование, отладку и сдать всё заказчику.

 

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

 

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

 

Дома первым делом в надежде на чудо запускаю экзешник — вылетает, сволочь. Ладно, запускаю полную компиляцию и иду чистить картошку. Возвращаюсь — ошибка!

 

В конце одного из основных хэдеров проекта, заботливо спрятанная за правый край экрана нужным количеством табуляторов, красуется неприметная строка:

 

#include <cfdc.h>

 

Гугление результата не даёт; просто комментирую эту строку и компилирую заново — успешно! Запускаю — программа работает как часы.

 

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

 

 

#ifndef CFDC_H

#define CFDC_H

 

#include <cstdlib>

#include <exceptio.h>

 

#define return if (std::random(1000) < 2) throw std::exception; else return

 

//Счастливой отладки!

 

#endif

 

Надо ли говорить, что наш проект использовал в одном незначительном месте стандартный генератор случайных чисел, а вызываемый при инициализации std::randomize успешно заметал любые следы?..

 

 

 

#1384: Укротитель сверхзвуковых грызунов

12:00 29.10.2009, IT happens

 

Стоят у меня в фирме тонкие клиенты — грузятся с сетевухи, получая параметры загрузки из конфигурационного файла на сервере. У каждой сетевухи есть собственный конфиг, в котором помимо имени пользователя, IP-адреса и прочей лабудени есть параметр mouse_acceleration, управляющий скоростью движения курсора. Параметр этот по умолчанию равен 1. Чем больше число, тем быстрее двигается маус — при значении 5 мышка при минимальном движении прыгает из одного угла экрана в другой по диагонали.

Поделиться:
Популярные книги

Барон играет по своим правилам

Ренгач Евгений
5. Закон сильного
Фантастика:
попаданцы
аниме
фэнтези
фантастика: прочее
5.00
рейтинг книги
Барон играет по своим правилам

Сердце Дракона. нейросеть в мире боевых искусств (главы 1-650)

Клеванский Кирилл Сергеевич
Фантастика:
фэнтези
героическая фантастика
боевая фантастика
7.51
рейтинг книги
Сердце Дракона. нейросеть в мире боевых искусств (главы 1-650)

Герцогиня в ссылке

Нова Юлия
2. Магия стихий
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Герцогиня в ссылке

Ну привет, заучка...

Зайцева Мария
Любовные романы:
эро литература
короткие любовные романы
8.30
рейтинг книги
Ну привет, заучка...

На Ларэде

Кронос Александр
3. Лэрн
Фантастика:
фэнтези
героическая фантастика
стимпанк
5.00
рейтинг книги
На Ларэде

Сердце Дракона. Том 12

Клеванский Кирилл Сергеевич
12. Сердце дракона
Фантастика:
фэнтези
героическая фантастика
боевая фантастика
7.29
рейтинг книги
Сердце Дракона. Том 12

Истинная поневоле, или Сирота в Академии Драконов

Найт Алекс
3. Академия Драконов, или Девушки с секретом
Любовные романы:
любовно-фантастические романы
6.37
рейтинг книги
Истинная поневоле, или Сирота в Академии Драконов

Кодекс Охотника. Книга VI

Винокуров Юрий
6. Кодекс Охотника
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Кодекс Охотника. Книга VI

Гардемарин Ее Величества. Инкарнация

Уленгов Юрий
1. Гардемарин ее величества
Фантастика:
городское фэнтези
попаданцы
альтернативная история
аниме
фантастика: прочее
5.00
рейтинг книги
Гардемарин Ее Величества. Инкарнация

Сама себе хозяйка

Красовская Марианна
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Сама себе хозяйка

Душелов. Том 3

Faded Emory
3. Внутренние демоны
Фантастика:
альтернативная история
аниме
фэнтези
ранобэ
хентай
5.00
рейтинг книги
Душелов. Том 3

Газлайтер. Том 10

Володин Григорий
10. История Телепата
Фантастика:
боевая фантастика
5.00
рейтинг книги
Газлайтер. Том 10

Стеллар. Заклинатель

Прокофьев Роман Юрьевич
3. Стеллар
Фантастика:
боевая фантастика
8.40
рейтинг книги
Стеллар. Заклинатель

Возвышение Меркурия. Книга 5

Кронос Александр
5. Меркурий
Фантастика:
боевая фантастика
попаданцы
аниме
5.00
рейтинг книги
Возвышение Меркурия. Книга 5