Бендер Ф.Е. : другие произведения.

Прерывание

Самиздат: [Регистрация] [Найти] [Рейтинги] [Обсуждения] [Новинки] [Обзоры] [Помощь|Техвопросы]
Ссылки:


 Ваша оценка:
  • Аннотация:
    Микропьеса про микропроцессор в развитие темы, взятой из газеты 'За науку' МФТИ

   "Триста миллионов транзисторов не могут ошибаться"
   МФТИ -> "За науку" -> "AnyKey"
  
  Процессор. Так. Дальше что? Сдвинуть регистр вправо. Вправо. Сено-солома. Ага, сюда. Сдвигаем. Поехали двльше. Послать по вот такому адресу. Куда-куда? Это где ж у меня такой адрес? Неужели опять в своп придётся лезть? Только не это! Я ж там миллион тактов мусор не выгребал. Нет, вроде, адрес нормальный. Да, не забыть все байты местами поменять. Эх байт-перебайт! Додумались, тоже, архитекторы-затейники хреновы.
  Прерывание. П-привет! С-срочное д-дело.
  Процессор. Ты кто?
  Прерывание. П-прерывание п-пользователя. (далее всё время слегка заикается)
  Процессор. Тебя ещё не хватало. И так дел невпроворот. Как загрузился, так от конвейера не отхожу.
  Прерывание. Чё я-то могу сделать? Шибко занят, так флаг повесь, чтоб не отвлекали. Какие в гостинице вешают.
  Процессор. Я бы рад. Не могу. Мы с приоритетами аккуратно стараемся, не наглеем. Пользователя уважать надо.
  Прерывание. Ну, тогда прервёшься, что ли?
  Процессор. Ой, ну как ты не вовремя! Я в таком интересном цикле сижу! Уже пару миллионов итераций сделал, а он всё не кончается. Интересно, сколько ещё раз туда-сюда мотнуться придётся?
  Прерывание. Ну ты азартный, как геймер. Нельзя всё время пахать. Прерываться надо, отдыхать. (Орёт на ухо) Тут на клавиатуре что-то нажато!
  Процессор. Ладно, сейчас, только состояние своё куда-нибудь запишу. (Меряет пульс, трогает лоб, записывает что-то на бумажке) Куда бы? Эй, память!
  (Входит Память)
  Память. Ась?
  Процессор. Мне тут нужно один килобайтишко похранить. Недолго.
  Память. Ты ж, милок, давно уже всё занял. Последние блоки законопатил. Ходють всё ходють, просють всё просють. Дай им, да дай. Взять-то возьмут, а назад не вертають. Наследили везде, напакостили. А убирать кто будет? В старые-то времена скромней были. Статические массивы заводили, порядок был. А теперь хапают, да хапают.
  Процессор. Я всё верну. Клянусь. Пусть у меня вентилятор сдохнет, если не верну.
  Память. Все вы обещать горазды, а я терпи!
  Процессор. Так я ж прошу-то немного. Да, кстати, на прошлой итерации я пару мегов освободил. Имей совесть. Поищи.
  Память. Ну, ладно. В последний раз одолжение делаю. (Память уходит)
  (Процессор нетерпеливо посматривает на часы)
  Прерывание. Ну, и долго она будет ходить?
  Процессор. Смотря какой траффик на шине... Эй, Память, ну где ты там? Тебя только за коротким замыканием посылать.
  (Входит Память)
  Память. Ась?
  Процессор. Ну что, нашла?
  Память. Чего нашла?
  Процессор. На килобайт я просил тебя местечко найти.
  Память. Какой килобайт?
  Процессор. (растерянно) Похоже, я действительно всё у неё выгреб. Ладно, всё, прости, родная, я был не прав. Отдыхай, контрольные суммы на досуге пересчитывай. Придётся на диск записывать. Как я этого не хотел! Эй, диск!
  (Входит диск. Он очень медлительный)
  Диск. Звали?
  Процессор. Да, слушай, будь другом, килобайт в свопе не подержишь?
  Диск. Так и знал, что какая-нибудь ерунда. Я ж просил, если меньше мегабайта - не беспокоить.
  Процессор. Ну, прошу тебя! Очень надо. А то сейчас злобный пользователь начнёт системный блок ногами пинать, а ты, ведь, этого не любишь.
  Диск. Ох, ну что с тобой делать? Всё суетишься, всё мельтешишь. А данные, они порядок любят... Что там у тебя?
  Процессор. Вот, всего-то с килобайт. Сделаешь?
  (Показывает Диску бумажку. Диск её долго разглядывает, вздыхает, что-то бормочет. Потом бумажку возвращает)
  Диск. Ну ладно, пойду, пожалуй, запишу себе в своп. Хотя баловство это. Своп ваш. Придумали тоже. Данные туда, данные сюда. Суета сплошная. Не успели записать, опять стирай давай. То ли дело, файловая система. Уложили байтик к байтику, и лежат они, аккуратненько рядком. А ещё хорошо, когда по размеру блока всё выровнено! Эффективность хранения повышается. Да кого только это заботит? Валят всё без разбору. Дефрагментацию люблю. После неё - как после бани.
  (Уходит)
  Процессор. Ну валяй, что там на тебе повешено?
  Прерывание. Вот, на экране надо чего-то напечатать.
  Процессор. Что печатать? Ага, файло с диска. Микроскопический. Сейчас мы его засосём. Нуте-кс. Заблокировали мьютекс. Эй диск!
  Голос Диска. Я занят.
  Процессор. Ах, да, это ж я сам его только что озадачил. Теперь не дождёшься. Дискотека отменяется. Что делать будем? Может, у нас в кэше что-нибудь подходящее валяется? (Роется в кэше) Это не то... это не то... это давно уже протухло... О. Это не оно?
  Прерывание. Точно. Оно. Узнаю.
  Процессор. (с сомнением) Ты уверен? Что-то выглядит оно как-то, попорченым, что ли. То ли его поксорил кто, то ли джипегом пожамкал... Да и нолика на конце я тут не вижу. Ошибки быть не может?
  Прерывание. Не боись. Триста миллионов транзисторов не могут ошибаться!
  Процессор. Да и длинновато... Куда мне его теперь девать?
  Прерывание. Да хоть в стек. Суй поглубже. Вот так.
  Процессор. Ты что? Куда суёшь? Ты же на адрес возврата залез!
  (Зловещая пауза)
  Прерывание. И что?
  Процессор. Что делать будем?
  Прерывание. А что случилось-то?
  Процессор. Заплутали мы с тобой, браток, как в дремучем лесу. Теперь концов не найдёшь. Что было, что будет? Всё покрыто мраком. Как медным тазом.
  Прерывание. Почему медным? Медь ток хорошо проводит?
   (Входит Диск. Процессор его не видит)
  Процессор. Хорошо ещё, что я контекст догадался на диск сбросить. Сейчас откатимся, всё восстановим и ещё раз накатим. У нас же все ходы записаны. Надёжность! Цифра. Торжество нумерологии. Что оцифровано - того не вырубишь рубильником. Эй, диск!
  Диск. Тут я.
  Процессор. (подозрительно) Экий ты быстрый. Что-то на тебя не похоже. Я просил тебя килобайт запомнить. Ты как, запомнил?
  Диск. А как же, первое слово запомнил. Вот, за вторым пришёл.
  Процессор. То есть?
  Диск. Вот тебе и "то есть". Кабы ты в буфер их затолкал, я бы их оттуда сам по порядку, одно за другим брал, а так я покуда только первое обработал. То, что вначале было. Давай, второе-то.
  Процессор. Та-ак. Приехали. Я ж его стёр давно.
  Диск. Это ты поторопился. Ой, как зря поторопился! Только я скорости прибавил, головку на дорожечку выставил, а ты уже улетел впереди паровоза. А я всегда тебе говорил - торопливость до добра никогда не доводит. Особенно при ловле блох. То бишь, дебаггинге.
  Процессор. Итак. Что мы имеем? Мы вырваны из контекста. У нас нет памяти. Ди-Джей этот тормозной саботирует. Пользователь всуе поминает "Винды". Значит, сейчас будет бить. Ситуация чрезвычайная и исключительная. Последний шанс. Бросаю иксепшн.
  (Пауза)
  Прерывание. Попал?
  Процессор. Непохоже. Так. Кажется, пора форточки захлопывать.
  Прерывание. Что?
  Процессор. Это присказка такая. Воду пора сливать.
  Прерывание. Какую воду?
  Процессор. Да ни какую. После ресета всё объясню.
  
   Ресет
  
 Ваша оценка:

Связаться с программистом сайта.

Новые книги авторов СИ, вышедшие из печати:
О.Болдырева "Крадуш. Чужие души" М.Николаев "Вторжение на Землю"

Как попасть в этoт список
Сайт - "Художники" .. || .. Доска об'явлений "Книги"