IT happens. #1-800 - Bash.org.ru
Шрифт:
Интервал:
Закладка:
Больше проблем с временными аномалиями в нашей компании не возникает.
#708: Большому кораблю — большие бэкапы
28 марта 2009, 09:00. рейтинг: 1968
Стоял в американском порту большой научный корабль, готовился к приемо-сдаточным испытаниям. Все на корабле было на совесть, с двойным запасом прочности: сервер телеметрии под управлением HPUX, еще один такой же в горячем резерве, плюс ленточка с полным бэкапом на всякий пожарный. Для пущей сохранности оборудования на борту постоянно дежурили два админа из русской команды – смена три недели, потом на берег. Дошла очередь дежурить и до меня. Узнав, что за сервера будет отвечать мой старший и более опытный напарник, я тихо порадовался — опыт работы с HPUX у меня был небольшой.
И вот мы поднимаемся на борт и заступаем на дежурство. Через некоторое время я вижу, как ложится основной сервер телеметрии. Выяснив, что система не поддерживает кириллицу, мой коллега решил исправить недостаток, что-то напутал, система продержалась 20 минут и легла.
Коллега, как я уже говорил, был старше и опытнее меня, поэтому я решил, что не вправе делать ему замечания. Зря он так, конечно, ну ничего, ситуация под контролем! Сейчас мой старший товарищ поднимет резервный сервер, восстановит из бэкапа основной, и все будет хорошо. Пока я успокаивал себя, напарник поднял резервный сервер и продолжил свои эксперименты.
Главное, что дает нам жизненный опыт – это умение предвидеть последсвия собственных ошибок. В ходе второй части эксперимента коллегу что-то насторожило, и он решил забэкапить уже надломленную систему (лучше поздно, чем никогда). К сожалению, для бэкапа он выбрал ту самую резервную ленточку.
Зачем нужна поддержка кириллицы на сервере телеметрии, работающем только и исключительно с потоками двоичных данных, напарник мне так и не объяснил. Сервера мы всё-таки починили, но для этого нам потребовалось несколько часов переговоров с Москвой по спутниковой связи (от пяти долларов за минуту и выше). Веру в безоговорочный авторитет старших коллег я потерял навсегда.
С возрастом, знаете ли, приходит не только опыт, но и маразм.
#709: Кто кого обманет
28 марта 2009, 09:00. рейтинг: 1629
Задача: протестировать оптимизирующий компилятор С++ (gcc, естественно) для встраиваемого PowerPC-процессора.
Тестовый стенд: отладочная плата, на ней проц, основной способ взаимодействия с которым – интерфейс RS-232. Чтобы не заморачиваться с передачей данных по COM-порту, я решил смухлевать — сделал все тестовые данные константными.
Скомпилировал программу с несколькими уровнями оптимизации, открыл ассемблерный исходник в отладчике и стал сравнивать результаты оптимизации. Вот что получилось.
Уровень оптимизации 0. Код толстый и красивый, все вычисления выполняются самым прямолинейным, тупым и очевидным способом. Предсказуемо...
Уровень оптимизации 1. Код стал компактнее, откровенно тупые действия вырезаны, но некоторая рыхлость всё ещё есть. Не впечатляет.
Уровень оптимизации 2. Объекты пропали. Память больше не задействована, вместо нее работают 32 регистра процессора. Так держать!
Уровень оптимизации 3. Загрузка вычисленного значения в регистр как константы. Всё. Объём кода – 8 байт, или две инструкции (две, потому что загрузка константы на этой архитектуре идёт по полуслову).
Домухлевался. Один-ноль в пользу компилятора!
#710: Охлаждение в стиле хэви-метал
28 марта 2009, 16:45. рейтинг: 1735
Компьютер достался мне от сестры: старый, капризный и с тараканами. Машинка, надо признать, работала стабильно, несмотря на все болячки.
Однажды началось страшное — компьютер начал гудеть, визжать и хрипеть. Беглый осмотр показал, что случай тяжелый: требуется прямое хирургическое вмешательство. Я снял и разобрал блок питания. К слову, если не знаете, сколько там болтов и как крепко они сидят, вы сильно удивитесь. Продул, протёр, собрал, вставил монетку между основанием и верхней крышкой (от дребезжания), включил. Гудение и хрип прекратились, визжание осталось. Стало понятно, что причина не в блоке питания и требуется кардиохирургия.
Снимаю радиатор, отсоединяю кулер, оба продуваю феном, а затем ртом — на всякий случай. Через две минуты комната покрыта пылью. Смазываю подсолнечным маслом — готово!
После трёх неудачных попыток загрузить ОС я осознал, в чем дело. Термопаста рассохлась и разлетелась в пыль, и контакта между камнем и радиатором фактически нет. Обновленная система охлаждения работает вхолостую. Надо что-то делать — машинка нужна срочно! Денег нет, да и где я найду ночью термопасту?
Кладу на процессор рублевую монетку, закрепляю радиатор, включаю. Эффекта нет: 30–40 секунд работы и бай-бай. Обнаруживаю, что монетка толстовата: одну «ногу» крепления радиатора заклинило, а другая не входит в материнскую плату. Полного контакта опять нет. Заклинившая нога при этом вылезать никак не хочет. Бубен, шило, плоскогубцы — @*%$#! — «нога» разлетается на пять-шесть кусков пластика.
Много матерюсь. Много думаю. Убираю злосчастный рубль с проца и обнаруживаю, что он горячий, да и часть основания кулера тоже прогрелась. Выходит, система работает, достаточно плотно и прочно закрепить радиатор.
Русские не сдаются! Я положил системник на пол и выдернул все оставшиеся крепления. На процессор поставил радиатор, запитал кулер. Осталось придавить сверху чем-нибудь тяжелым, но не слишком большим. Инструмент нашелся быстро — доставшаяся от отца консервная банка, наполненная какими-то болтами, транзисторами и другими деталями таинственного назначения.
Банка была торжественно водружена на радиатор. Компьютер включился и работает вот уже третьи сутки подряд — без сбоев.
#711: Беспроводной нумпад
28 марта 2009, 16:45. рейтинг: 3534
Работаю сисадмином. У одной из сотрудниц, скажем так, весьма натянутые отношения с компьютером. Чуть что, кричит: «Алёша, Алёша, у меня то и это не работает», — благо, сидит рядом.
В очередной раз зовёт она меня — не печатаются цифры в Экселе! Подхожу, многозначительно смотрю на сотрудницу и отбираю у неё калькулятор, который лежал справа от клавиатуры.
#712: Как накрутили, так и держится
29 марта 2009, 09:00. рейтинг: 2030
Работаю в техподдержке. Звонит пользователь — не включается монитор. «Работал, работал, потом бах — и всё! Я ничего не делала, он сам».
Прихожу, смотрю на монитор — подсветка работает, кажется, что компьютер завис на заставке. Мышкой подвигал — ноль внимания. Системник шуршит, работает. На всякий случай перезагружаю машину. Пока старенький компьютер пищал спикером и шуршал жестким диском, загружая винду, я решил осмотреться.
Сразу заподозрил неладное — обычно между пользователем и компьютером висит лапша из проводов, а тут они совершенно теряются из вида и появляются только около задней стенки системника.
Какой-то изощренный умник намотал все провода на ножку стула! Минут тридцать я, матерясь, разматывал клубок. Оказалось, что девушка на рабочем месте первый день, а затейники, работавшие тут до этого, не объяснили, что двигать стул не стоит. Естественно, самый короткий из оказавшихся на ножке стула проводов был зверски выдернут из разъёма.
Когда я уже собирался уходить, девушка заметила: «Теперь ясно, почему, когда к я принтеру ехала на стуле, у меня телефон со стола падал».
#713: Есть контакт!
29 марта 2009, 09:00. рейтинг: 2294
У приятеля на хорошей иномарке начала глючить антиблокировочная система. Он отправился в фирменный сервис-центр, где холёные инженеры сразу отправили машину на «новейшую компьютерную диагностику».
Загнали на стенд, подсоединили кучу датчиков к бортовому компу и давай гонять автомобиль во всех режимах. С умным видом смотрят на графики и кучу цифр — утверждают, что с машиной все в порядке, проблем быть не должно. Так сервисмены ничего и не починили.
Звонит мне приятель и говорит: «Ты же электронщик и админ, может, сами посмотрим?» Захватив осциллограф, отправляюсь в гараж, ищу провод, по которому идет сигнал с датчика оборотов колеса — сигнал слабый и «плавает». Напильником подтачиваю площадку под датчиком, собираю — аллилуйя, все работает!
Каким бы технически оснащенным ты ни был, светлую голову и напильник никто не отменял!
#714: Круглое, но не бубен
29 марта 2009, 09:00. рейтинг: 2546
Прежде чем поступать, учился я при нашем ВУЗе на компьютерных курсах. Изучали мы сначала С, затем C++. А учителем у нас был молодой парень-аспирант. Классический компьютерщик (он там ещё админом подрабатывал по совместительству) — худощавый такой, среднего роста, длинноволосый, обычно слегка небритый. Дело своё он знал крепко и, естественно, ошибки в нашем детском коде находил легко — даже там, где самые толковые ребята застревали надолго.