Проект «Сфера-82»: Цвет и слой - Станислав Миков
Книгу Проект «Сфера-82»: Цвет и слой - Станислав Миков читаем онлайн бесплатно полную версию! Чтобы начать читать не надо регистрации. Напомним, что читать онлайн вы можете не только на компьютере, но и на андроид (Android), iPhone и iPad. Приятного чтения!
Шрифт:
Интервал:
Закладка:
— На тридцати восьми файл тоже дошёл, — возразил Птицын.
— Дошёл после повторов, — отозвался Кравец, делая пометку в тетради. — Приёмник двадцать один раз запросил тот же блок. Программа-то передачу вытянула и файл собрала, а вот в физической линии двадцать один раз был сбой.
Громов хмыкнул, переворачивая лист программной распечатки.
— Вот за это я и люблю счётчики. Без них Саня сейчас торжественно объявил бы победу.
Птицын ничуть не обиделся. Он придвинулся к клавиатуре, вывел на дисплей нужную колонку и постучал по корпусу.
— Смотрите сами. Блоки по сто двадцать восемь байт. Из тысячи отправленных на скорости тридцать восемь пришлось повторить всего двадцать один. Это же капля в море.
Люба Ветрова прижала край миллиметровки линейкой.
— Саш, а на второй плате этот результат повторится?
— Вот это и проверим, — Кравец оторвался от записей. — Запас по времени считывания минимальный. Чуть изменится температура в коридоре, возьмём кабель с другой ёмкостью, и момент выборки съедет на пологий край. Счётчик повторов сразу пойдёт вверх. У нас предельное время ожидания сто миллисекунд, три запроса без ответа — и программа рубит обмен.
Пётр Иванович погасил луч и отвернулся от прибора.
— Вадим прав. На двадцати восьми метрах микросхема уверенно защёлкивает сигнал в середине такта только на девятнадцати двести.
Морозов, всё это время молча слушавший спор, подался вперёд.
— Оставляем все три строки. Рабочей называем ту, которую сможем выдержать всю смену и повторить на плате Любы.
Липатов пододвинул к Птицыну бланк испытаний.
— И рядом отмечаем условия. Двадцать восемь метров, экранированная пара, размер блока, число повторов. Тогда другой инженер соберёт схему по описанию и получит точно такие же цифры.
Птицын помедлил, затем сам вписал значение «19,2 Кбод» в графу рабочего режима. Скорости тридцать восемь и шестьдесят две с половиной он перенёс в колонку опытных данных.
— С физикой провода понятно, — Громов отложил распечатку. — Передай теперь обычный файл.
Птицын прервал циклический прогон линии, вывел на дисплей каталог дискеты и занёс руки над клавиатурой.
— Исходный текст системного макроассемблера. Около двадцати четырёх килобайт, — пояснил он.
— Передаю?
— Кому? — Громов остановил его прежде, чем Птицын коснулся клавиш. — На том конце надо программу приёма запустить, забыл?
Липатов встал, взял чистую дискету и исписанный от руки листок.
— Давайте я. Заодно посмотрю, насколько ваша памятка понятна человеку со стороны.
Птицын попытался сходу объяснить сразу три команды запуска, но Липатов попросил оставить одну рабочую последовательность и ушёл по коридору к дальней машине.
Спустя пару минут нижнее поле экрана очистилось. Появился короткий текст:
«МАШИНА 2. ПРИЁМ ГОТОВ. ПЕРЕДАВАЙТЕ.»
— Вот теперь передаю, — Птицын набрал команду и нажал ввод.
В корпусе сухо щёлкнул шаговый двигатель дисковода ИЗОТ, загорелся красный индикатор. На дисплее начали обновляться номера уходящих блоков по сто двадцать восемь байт. При скорости около девятнадцати килобит в секунду счётчик быстро мотал значения в нижнем углу экрана.
Примерно на восемнадцатой секунде светодиод погас. Аппаратное подтверждение появилось сразу, однако инженеры продолжали смотреть на дисплей.
«ФАЙЛ ПРИНЯТ. 24576 БАЙТ. СУММА СОВПАЛА.»
— Уже лучше, — кивнул Громов. — Машина подтверждает, что блоки дошли и сумма сошлась. Посмотрим, что скажет Липатов, когда вернётся.
Кравец сделал пометку в таблице состояний:
— Эти два ответа в описании надо чётко различить. Иначе однажды примем подтверждение линии за успешную работу всей программы.
Липатов вернулся в лабораторию и положил листок на край стола.
— На второй команде пришлось задуматься. Пока вы тут неделю сидели, выучили всё наизусть, а свежему человеку догадаться трудно, как этот приём запускать.
Птицын попробовал оправдать синтаксис, но под спокойным взглядом Липатова сдался, вздохнул и исправил памятку карандашом.
Птицын убрал с экрана сводку обмена. На столе рядом с клавиатурой лежала стопка распечаток исходного текста.
— Свои подпрограммы я помню, — Громов придержал листы рукой. — Покажи мне, где ты поставил подтверждение и где повторяешь блок.
Птицын вытянул два листа с собственными дополнениями.
— Вот здесь контрольная сумма. Дальше: при ошибке — просим повторить блок. Совпала — шлём подтверждение. А передатчик при молчании приёмника просто ждёт истечения времени и кидает блок заново.
Кравец оперся ладонями о край стола.
— Допустим, приёмник записал блок на диск. Подтверждение отправить не успел. В этот момент произошёл аппаратный сброс. Что увидит отправитель?
— Время ожидания выйдет, и он повторит передачу, — уверенно ответил Птицын.
— А приёмник после перезапуска?
— Примет… — Птицын нахмурился, переводя взгляд на ассемблерные строки.
— Примет тот же самый блок, — закончил Громов. — И запишет его второй раз, ведь память о первой записи стёрлась.
Птицын упрямо мотнул головой:
— Но для обычного обрыва это работает!
— Работает, — признал Кравец. — Только обычная помеха не возвращает программу приёмника в начальное состояние.
Он вынул ручку из кармана и нарисовал на полях распечатки цепочку состояний: ожидание блока, проверка, запись, подтверждение, восстановление.
Морозов следил за наброском.
— Какое минимальное состояние мы можем сохранить? И как отличить повтор от следующего блока?
— Значит, проблема уже не в проводе, — Громов откинулся на спинку стула. — Проблема в том, что две машины должны одинаково понимать, на чём остановились.
— Вот это и запишем в таблице документации, — Кравец обвёл квадрат восстановления. — До реализации алгоритма восстановления передачу после перезапуска придётся начинать заново.
Птицын отложил ручку и придвинул к себе распечатку, выискивая место для правки.
— Номер блока, — произнёс он наконец. — Передаём номер и проверяем его до повторной записи на диск.
Громов вытянул из стопки бумаг несколько отпечатанных листов.
— Кстати, позавчера с зеленоградской почтой пришла бумажка про CP/NET — это их сетевые дела под CP/M. Они прислали только общее описание архитектуры без готового кода, но подход здравый. Программа просто делает стандартный системный вызов, а МикроДОС сама разбирается, где искать файл — на местном дисководе или у соседа по кабелю.
— Давайте прямо сейчас встроим процедуры пересылки в систему, — оживился Птицын.
— Лучше решать вопросы по порядку. Сперва нужно закрыть вопрос со сбросом, — напомнил Кравец. — При обычной помехе повтор восстанавливает передачу. Но стоит перезагрузить принимающую машину, и она теряет номер последнего записанного блока. Зашьём такую ошибку в базовые вызовы — потом замучаемся искать источник сбоя.
— Пока идёт отладка, держите
Прочитали книгу? Предлагаем вам поделится своим отзывом от прочитанного(прослушанного)! Ваш отзыв будет полезен читателям, которые еще только собираются познакомиться с произведением.
Уважаемые читатели, слушатели и просто посетители нашей библиотеки! Просим Вас придерживаться определенных правил при комментировании литературных произведений.
- 1. Просьба отказаться от дискриминационных высказываний. Мы защищаем право наших читателей свободно выражать свою точку зрения. Вместе с тем мы не терпим агрессии. На сайте запрещено оставлять комментарий, который содержит унизительные высказывания или призывы к насилию по отношению к отдельным лицам или группам людей на основании их расы, этнического происхождения, вероисповедания, недееспособности, пола, возраста, статуса ветерана, касты или сексуальной ориентации.
- 2. Просьба отказаться от оскорблений, угроз и запугиваний.
- 3. Просьба отказаться от нецензурной лексики.
- 4. Просьба вести себя максимально корректно как по отношению к авторам, так и по отношению к другим читателям и их комментариям.
Надеемся на Ваше понимание и благоразумие. С уважением, администратор knigkindom.ru.
Оставить комментарий
-
Semmi22 июль 17:17
Не знаю, кто выложил эту книгу здесь без разрешения и без указания чтецов, но хочу чтобы слушатели знали: Над начиткой этой книги...
Priest - В башне над мостом
-
Гость Наталья22 июль 08:37
Отлично,даже очень захотелось продолжения этой истории....
Перо бумажной птицы - Елена Ивановна Михалкова
-
Гость Татьяна17 июль 09:40
Начала читать эту книгу из-за предыдущего отзыва. Ну не ВАУ!, но интересно ...
Неправильные - Катрин Корр
